[Hejmen]Ĉifrado

Hejmpaĝo | Lastaj Ŝanĝoj | Preferoj | Uzu X-Sistemon

Inventita ĉirkaŭ -2500, ĉifrado ne alvenis al sia ora epoko ĝis la invento de la komputilo? en la jarcento X. La plej fortikaj ĉifro?j 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 sufiĉe grandegaj, la bezonata komputilo estos preter la havebleco de individuo, kompanio aŭ eĉ registaro.

Moderna ĉifro konsistas de algoritmo kaj ŝlosilo (angle, key). La ŝlosilo estas la magia nombro kiu, kiam ĝi estas aplikita de la algoritmo de la ĉifro (t.e., la komputika programo?), ĉifras aŭ malĉifras la mesaĝon korekte. Ĉiu mesaĝo povas havi malsaman ŝlosilon, sed la algoritmo samas.

Estas du ĉefaj klasoj de ĉifroj: la simetria ĉifro kaj la ĉifro de publika ŝlosilo (speco de nesimetria ĉifro).

Simetria ĉifro uzus unu kaŝan ŝlosilon, kiu povas ĉifri kaj malĉifri mesaĝon. Sed tia ĉifro estas malsekura ĉar oni devas iel sekure komunikas la ŝlosilon sen ĉifro!

La solvo estas la ĉifro de publika ŝlosilo, eltrovita en 1975 de Whitfield DIFFIE de Stanfordo. La ĉifro havas du ŝlosilojn, unu kaŝa, unu publika. Mesaĝon ĉifrita de la publika ŝlosilo estas malĉifrebla nur de la kaŝa. Kaj inverse. La kaŝa ŝlosilo ne estas sendita, tial estas tute sekura. Plue, por kalkuli la kaŝan ŝlosilon el la publika, vi devas faktorigi la primojn de grandegan nombron, procezo praktike nekomputebla por nombro sufiĉe grandega.

La plej populara ĉifro por sendi trans la Interreton estas PGP, kiu uzas publikan ŝlosilon. PGP estas la normo por sendi dosierojn kaj retpoŝton sekure (sekure eĉ kontraŭ la registaro!) trans la Interreton.

La povo de komputilo donas al civitano la eblecon de fortikega ĉifrado. Kontraŭ la volo de registaroj. Eĉ en la relative liberama Usono, la registaro deziras malpermesi aŭ subfosi fortikegan ĉifradon por civitanoj kaj kompanioj. Sed por privateco kaj komerco flori surrete, tiaj ĉifroj estas necesaj, kiel la koverto kaj subskribo estas necesaj en la eksterreta mondo (kaj la sigelo en la antikva mondo).

Ĉifroj

La tri nune ĉefaj ĉifroj estas DES, RSA kaj PGP.

DES: simetria ĉifro inventita en 1976 de IBM kaj la usona registaro. Ĝi estas la ĉifro kiun usonaj bankoj uzas por intersendi monon. Unikso uzas ĝin en la programo crypt por ĉifri signoĉenojn. DES estas mallongiĝo de la angla "Data Encryption Standard" ("Normo de Datuma Ĉifrado") kaj devenas de la Lucifera Ĉifro de IBM de 1970. Ĝi uzas unu kaŝan ŝlosilon de 56 bitoj (maksimume). Iuj diras ke la ĉifro estas tro fortika por kompanioj sed ne por la registaro. La manko de leĝo kontraŭ ĝi implicas tian.

RSA: unu nokton en aprilo 1977, Ron RIVEST, sendorma pro kapdoloro, inventis la algoritmon de RSA, la unua sukcesa ĉifro de publika ŝlosilo . La nomo devenas de la nomoj de la tri inventistoj: Rivest, Shamir kaj Adleman de MIT. Ĝi estis priskribita en septembro 1977 en Scientific American. RSA uzas du ŝlosilojn, unu ŝlosilo publika, la alia kaŝa. Kie ŝlosilo de DES havas maksimume 56 bitojn, la de RES estas senlima, tial pli malrompebla. Sed eĉ kun ŝlosilo de 56 bitoj, RSA estas multe pli sekura ol DES ĉar la kaŝa ŝlosilo ne estas sendita aŭ eĉ sciita de alia. Aliflanke, la algoritmo de RSA estas 1000-oble pli malrapida ol DES. Por la baza logiko? de RSA, klaku ĉi tie.

PGP: estis inventita de Phil ZIMMERMAN de MIT en 1991 kiel senkosta, rapida, vulgara formo de RSA. PGP estas la mallongiĝo de la angla "Pretty Good Privacy" ("Sufiĉe Bona Privateco"). Zimmerman deziris -- tial verkis (kaj preskaŭ perdis sian domon pro manko de mono) -- rapidan sed fortikan ĉifron por retanoj. Unu ŝlosilon vi tenas private, la alian publike. Per la publika ŝlosilo, iu ajn povas sendi al vi retpoŝton kiu estas malĉifrebla sole per la privata ŝlosilo, kiun vi sole scias. Ĉi tio ankaŭ ebligas vin subskribi retdosieron: dosiero malĉifrebla sole per la publika ŝlosilo devas esti ĉifrita sole de la tenanto de la privata ŝlosilo. La ŝlosilo kutime estas havas 1024 bitojn.

Algoritmoj

Por komputika kodo? por diversaj ĉifroj (DES, RSA, IDEA, PGP, ktp), klaku ĉi tie.

Por klarigo de la baza logiko de RSA, legu la jenon:

  1. Elektu du primojn, p kaj q.
  2. n = p x q
  3. j = (p-1)(q-1)

  4. Elektu nombron e, kie e > 3 kaj e < n kaj e estas primo relative al j -- t.e., ne ekzistas nombro kiu estas faktoro de e kaj j.

  5. d = (1 mod j) / e

  6. Nun, por ĉifri la mesaĝon, konvertu ĝin al nombro M kaj diru:

      C = Me mod n

    kie C estas la mesaĝo ĉifrita.

  7. Por malĉifri diru:

      M = Cd mod n

La publika ŝlosilo estas (d, n) kaj la kaŝa ŝlosilo estas (e, n). Kiun unu ŝlosilo ĉifras, tiun la alia povas malĉifri. La ĉifrado (#6) kaj malĉifrado (#7) estas relative rapida, sed la kreo de ŝlosiloj (#1-#5) estas malrapida. Aliflanke, La kreo de ŝlosiloj ne ofte okazas.

Ekzemplo: se p=5, q=11 kaj e=7, tiam n=55, j=40 kaj d=23. Tial mesaĝo de 2 estas ĉifrita kiel 18.

Por programi la algoritmon, vi unue bezonos programojn povas:

Por rompi la ĉifron, vi devas kalkuli la kaŝan ŝlosilon el la publika:

Sed j estas (p-1)(q-1), kaj p kaj q estas la primaj faktoroj de n. Sed por n sufiĉe granda, la faktorigado estos praktike nekomputebla. Ekzemple, por faktorigi nombron de 664 bitoj, komputilo, programita laŭ nuna scio, bezonus almenaŭ 1023 da cikloj -- t.e., gigaherca komputilo bezonus pli ol miliono da jaroj! Aliflanke, ĉar la rapideco de komputiloj duobliĝas ĉiu 18 monatoj (la Leĝo de Moore), la vulgara komputilo de la jaro 2020 povos faktorigi tiun nombron post kelkaj sekundoj!

Alivorte, RSA funkcias ĉar 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.

/Priparolu


Hejmpaĝo | Lastaj Ŝanĝoj | Preferoj | Uzu X-Sistemon
Eblas nur legi tiun ĉi paĝon | Vidu aliajn reviziojn
Laste redaktita December 11, 2001 4:18 am by Stefano KALB (diferencoj)
Serĉu: