Sei sulla pagina 1di 4

Teorema cinese del resto

1. Oggetto Consideriamo il generico sistema di n congruenze lineari a1 x b1 (mod m1 ) a2 x b2 (mod m2 ) . . . an x bn (mod mn ) in una incognita intera x, dove i coecienti a1 , a2 , . . . , an e i termini noti b1 , b2 , . . . , bn sono interi, e i moduli m1 , m2 , . . . , mn sono interi positivi. Per assicurare lesistenza di soluzioni a ciscuna congruenza lineare indipendentemente dal termine noto, e per evitare inconsistenze fra le vare equazioni, imponiamo le condizioni (ai , mi ) = 1, (mi , mj ) = 1, i = 1, 2, . . . , n, i, j = 1, 2, . . . , n.

Sotto queste condizioni, il minimo comune multiplo M dei moduli coincide col loro prodotto: M = m1 m2 mp . Osserviamo che, se x = s e una soluzione del sistema, allora anche ogni intero del tipo . . . , s 2M, s M, s, s + M, s + 2M, . . . e ancora una soluzione del sistema. Ora, in questa successione ce esattamente un intero s compreso fra 0 e M 1 : questo intero viene detto soluzione fondamentale del sistema di congruenze. 2. Esercizio Proveremo che, sotto le condizioni sopra imposte, il sistema ha una ed una sola soluzione fondamentale. Prima di stabilire e dimostrare questo risultato, proviamo a risolvere un tale sistema, ad esempio x x x 1 (mod 10) 2 (mod 21) 3 (mod 11).

Risolviamo la prima congruenza, ottenendo gli interi x = 10y + 1, dove y varia in Z ; 1

sostiuiamo nelle altre due congruenze, ottenendo 10y 10y 1 (mod 21) 2 (mod 11),

Si noti che in ciascuna di queste due congruenze il coeciente della y e coprimo col modulo della congruenza. Risolviamo la prima congruenza, ottenendo gli interi y = 21z + 19, dove z varia in Z ; sostiuiamo nellaltra congruenza, ottenendo z 10 (mod 11)

Risolviamo questa congruenza, ottenendo z = 10. Sostituendo a ritroso, ritroviamo inne x = = = = 10y + 1 10(21z + 19) + 1 10(21(10) + 19) + 1 2100 + 190 + 1 = 2291.

Dunque il sistema dato ha esattamente una soluzione fondamentale: x = 2291. 3. Teorema Il sistema a1 x a2 x . . . an x b1 (mod m1 ) b2 (mod m2 )

bn (mod mn )

di n congruenze lineari nellincognita intera x, sotto le condizioni (a) (ai , mi ) = 1 per ogni i; (b) i moduli m1 , m2 , ..., mn sono a due a due coprimi

ammette esattamente una soluzione modulo M = m1 m2 ...mn . In particolare, il sistema x x . . . x b1 (mod m1 ) b2 (mod m2 )

bn (mod mn )

di n congruenze lineari nellincognita intera x, sotto la condizione (a) i moduli m1 , m2 , ..., mn sono a due a due coprimi ammette esattamente una soluzione modulo M = m1 m2 ...mn . Questo e lenunciato del classico Teorema cinese del resto. Dimostrazione Dimostriamo lenunciato per induzione sul numero n di equazioni. Per n = 1 lenunciato e vero per quanto visto sulle congruenze lineari. Proviamo che dalla verita dellenunciato per n1(> 0) segue la verita dellenunciato per n. Risolviamo la prima congruenza, ottenendo gli interi x = m1 y + s, dove y varia in Z e 0 s < m1 . Sostiuiamo nelle altre n 1 congruenze, ottenendo il sistema a2 m1 y . . . b2 a2 s (mod m2 )

an m1 y

bn an s (mod mn )

Si noti che in ciascuna di queste congruenze il coeciente della y e coprimo col modulo della congruenza: (ai m1 , mi ) = 1. Ora, per lipotesi di induzione, questo sistema ha esattamente una soluzione fondamentale y = r, con 0 r < m2 mn . Dunque il sistema di partenza ha lunica soluzione x = m 1 r + s; si noti che 0 m1 r + s < m1 (m2 ms 1) + m1 = m1 m2 ms . 3

Algoritmo RSA - Descrizione schematica

In maniera informale, possiamo dire che il nostro discorso riguarda un insieme di nodi A, B, C, . . . , ciascuno contraddistinto da un intero; ciascun nodo puo trasmettere un messaggio, cioe un intero, a un altro nodo, e questo messaggio e potenzialmente visibile anche a tutti gli altri nodi; ciascun nodo vuole poter trasmettere un messaggio a ciascun altro nodo come se questo messaggio fosse visibile solo a questi due nodi e non agli altri. Questo obiettivo e reso possibile dallalgoritmo RSA come segue. 1. Ogni nodo costruisce il suo indirizzo come prodotto di due numeri primi grandi; rende pubblico il suo indirizzo, e ne mantiene segreta la fattorizzazione. 2. Tutti i nodi si accordano su un certo intero e, da usare come segue. 3. Un nodo A, per trasmettere un messaggio m ad un nodo B allindirizzo n, con 0 m < n, opera cosi: calcola la potenza me , ne prende il rappresentante fondamentale m modulo n, m me (mod n), 0 m < n,

e trasmette m al nodo B. Tutti gli altri nodi vedono m. 4. Il nodo B, nel momento in cui ha costruito il suo indirizzo n = pq come prodotto di due primi p, q, ha calcolato la funzione di Eulero (n) = n p q + 1, ha della costante e ha determinato linverso moltiplicativo d modulo (n) : ed 1 (mod (n)). Si sara avuta laccortezza di prendere i due primi p, q in modo che la costante e sia davvero invertibile modulo (n). 5. Il nodo B riceve il messaggio m, calcola la potenza md , ne prende il rappresentante fondamentale modulo n, e ritrova cosi il messaggio m : m md (mod n), 0 m < n.

Ci si puo rendere conto di questa uguaglianza cosi: (mod n) md (me ) med m1+h(n) m m(n)
d h

m1 m.

Questa uguaglianza non vale se m e uno dei due fattori primi di n, ... ma questo e un evento altamente improbabile.