Enciklopedio Kalblanda > komputiko > cxifrado |
Inventita cxirkaux -2500, cxifrado ne alvenis al sia ora epoko gxis la invento de la komputilo en la jarcento XX. La plej fortikaj cxifroj nune estas bazitaj sur grandegaj primoj: estas facila fari novan nombron per la multiplikado de grandegaj primoj, sed la inverso, faktorigado (= trovi la primojn kiuj faris la novan nombron) de tia nombro, estas tre malfacilega, kaj bezonas grandan komputilon. Se la primoj estas suficxe grandegaj, la bezonata komputilo estos preter la havebleco de individuo, kompanio aux ecx registaro.
Moderna cxifro konsistas de algoritmo kaj sxlosilo (angle, key). La sxlosilo estas la magia nombro kiu, kiam gxi estas aplikita de la algoritmo de la cxifro (t.e., la komputika programo), cxifras aux malcxifras la mesagxon korekte. Cxiu mesagxo povas havi malsaman sxlosilon, sed la algoritmo samas.
Estas du cxefaj klasoj de cxifroj: la simetria cxifro kaj la
cxifro de publika sxlosilo (speco de nesimetria cxifro).
Simetria cxifro uzus unu kasxan sxlosilon,
kiu povas cxifri kaj malcxifri mesagxon. Sed tia cxifro estas malsekura
cxar oni devas iel sekure komunikas la sxlosilon sen cxifro!
La solvo estas la cxifro de publika sxlosilo, eltrovita en
1975 de Whitfield DIFFIE de Stanfordo. La cxifro havas du
sxlosilojn, unu kasxa, unu publika. Mesagxon cxifrita de la publika
sxlosilo estas malcxifrebla nur de la kasxa. Kaj inverse. La kasxa sxlosilo
ne estas sendita, tial estas tute sekura. Plue, por kalkuli la kasxan
sxlosilon el la publika, vi devas faktorigi la primojn de grandegan
nombron, procezo praktike nekomputebla por nombro suficxe grandega.
La plej populara cxifro por sendi trans la Interreton estas PGP, kiu uzas publikan sxlosilon. PGP estas la
normo por sendi dosierojn kaj retposxton sekure (sekure ecx kontraux la
registaro!) trans la Interreton.
La povo de komputilo donas al civitano la eblecon de fortikega
cxifrado. Kontraux la volo de registaroj. Ecx en la relative liberama
Usono, la registaro deziras malpermesi aux subfosi fortikegan cxifradon por
civitanoj kaj kompanioj. Sed por privateco kaj komerco flori surrete, tiaj
cxifroj estas necesaj, kiel la koverto kaj subskribo estas
necesaj en la eksterreta mondo (kaj la sigelo en la antikva mondo).
La tri nune cxefaj cxifroj estas DES, RSA kaj PGP.
DES: simetria cxifro inventita en
1976 de IBM kaj la usona registaro. Gxi estas la cxifro kiun
usonaj bankoj uzas por intersendi monon. Unikso uzas gxin en
la programo crypt por cxifri signocxenojn. DES estas mallongigxo de
la angla "Data Encryption Standard" ("Normo de Datuma Cxifrado") kaj
devenas de la Lucifera Cxifro de IBM de 1970. Gxi uzas unu
kasxan sxlosilon de 56 bitoj (maksimume). Iuj diras ke la cxifro estas
tro fortika por kompanioj sed ne por la registaro. La manko de legxo
kontraux gxi implicas tian.
Laux Michael Wiener, oni povus rompi la cxifron kun komputilo
kostanta 500 kilodenaroj kaj 7 horoj. Laux Diffie, la malforteco de DES ne estas komputika
sed politika: la sistemestro rifuzus iri al malliberejo por protekti vian
informon. Tamen post 20 jaroj kaj tutmonda uzo, gxi ankoraux restas sana
kaj sekura.
RSA: unu nokton en aprilo 1977, Ron RIVEST,
sendorma pro kapdoloro, inventis la algoritmon de RSA, la unua sukcesa
cxifro de publika sxlosilo. La nomo devenas de
la nomoj de la tri inventistoj: Rivest, Shamir kaj Adleman de MIT. Gxi
estis priskribita en septembro 1977 en Scientific
American. RSA uzas du sxlosilojn, unu sxlosilo publika, la alia
kasxa. Kie sxlosilo de DES havas maksimume 56 bitojn,
la de RES estas senlima, tial pli malrompebla. Sed ecx kun sxlosilo de 56
bitoj, RSA estas multe pli sekura ol DES cxar la kasxa sxlosilo ne estas
sendita aux ecx sciita de alia. Aliflanke, la algoritmo de RSA estas
1000-oble pli malrapida ol DES. Por la baza logiko de RSA, klaku cxi tie.
RSA estas usona patento #4405829, sed neniu, ne ecx Phil
ZIMMERMAN (vidu cxisube), estis procesita sub la
patento, tial gxi estas neprovita en jugxejo. RSA ne estas patentita ekster
Usono kaj Kanado.
Cxiu TTT-servilo kaj TTT-legilo de Microsoft, Sun, Netscape,
Oracle, ktp, uzas RSA-on en ia formo. Netscape 4.0 uzas gxin por
sendi retposxton. La legilo de Netscape sendas datumon cxifritan kiam la
bildo de sxlosilo (en la maldesktra fundo) ne estas rompita.
PGP: estis inventita de Phil ZIMMERMAN de MIT en
1991 kiel senkosta, rapida, vulgara formo de RSA. PGP estas la mallongigxo de la angla "Pretty Good
Privacy" ("Suficxe Bona Privateco"). Zimmerman deziris -- tial verkis (kaj
preskaux perdis sian domon pro manko de mono) -- rapidan sed fortikan
cxifron por retanoj. Unu sxlosilon vi tenas private, la alian publike. Per
la publika sxlosilo, iu ajn povas sendi al vi retposxton kiu estas
malcxifrebla sole per la privata sxlosilo, kiun vi sole scias. Cxi tio
ankaux ebligas vin subskribi retdosieron: dosiero malcxifrebla sole
per la publika sxlosilo devas esti cxifrita sole de la tenanto de la
privata sxlosilo. La sxlosilo kutime estas havas 1024 bitojn.
PGP uzas du algoritmojn: RSA kaj IDEA. IDEA estas simetria sed rapida cxifro. PGP cxifras la mesagxon
per IDEA, sed tiam cxifras la sxlosilon (128 bitoj) de IDEA per la
malrapida RSA. Tial PGP kunigas rapidecon kun sekurecon.
Por komputika kodo por diversaj cxifroj (DES, RSA, IDEA, PGP,
ktp), klaku cxi tie.
Por klarigo de la baza logiko de RSA, legu la jenon:
kie C estas la mesagxo cxifrita kaj ^ reprezentas eksponentadon
(ekz., 5^2 = 25).
La publika sxlosilo estas (d, n) kaj la kasxa sxlosilo
estas (e, n). Kiun unu sxlosilo cxifras, tiun la alia povas malcxifri. La
cxifrado (#6) kaj malcxifrado (#7) estas relative rapida, sed la kreo de
sxlosiloj (#1-#5) estas malrapida. Aliflanke, La kreo de sxlosiloj ne ofte
okazas.
Ekzemplo: se p=5, q=11 kaj e=7, tiam n=55, j=40 kaj d=23. Tial
mesagxo de 2 estas cxifrita kiel 18.
Por programi la algoritmon, vi unue bezonos programojn
povas:
Por rompi la cxifron, vi devas kalkuli la kasxan sxlosilon
el la publika:
Alivorte, RSA funkcias cxar p x q => n estas facila, sed la
inverso, n => p x q, estas tre malfacilega por grandega n.
Notu: Se iu eltrovas algoritmon kiu multe faciligas faktorigadon,
la sekureco de RSA (kaj PGP) forfandos. Esperu ke la usona registaro ne
sekrete eltrovos tian algoritmon.
gxenerala
historio
politiko
cxifroj
PGP
Cxifroj
Algoritmoj
C = M^e mod n
M = C^d mod n
e = (1 mod j) / d
Sed j estas (p-1)(q-1), kaj p kaj q estas la primaj faktoroj de n. Sed por
n suficxe granda, la faktorigado estos praktike nekomputebla. Ekzemple, por
faktorigi nombron de 664 bitoj, komputilo, programita laux nuna scio,
bezonus almenaux 10^23 da cikloj -- t.e., gigaherca komputilo bezonus pli
ol miliono da jaroj! Aliflanke, cxar la rapideco de komputiloj duobligxas
cxiu 18 monatoj (la Legxo de Moore), la vulgara komputilo de la jaro 2020
povos faktorigi tiun nombron post kelkaj sekundoj!
Ligiloj:
Originale verkita de Stefano KALB
je januaro 1997.