Locked History Actions

Skirtumas „NaujasŽodisTemplate“

Pakeitimai tarp versijų 91 ir 92
Versija 91 nuo 2013-04-03 21:44:36
Dydis: 3194
Redaktorius: Ramunas
Komentaras:
Versija 92 nuo 2013-04-08 05:50:39
Dydis: 6175
Redaktorius: PovilasMarazas
Komentaras:
Pašalinimai yra pažymėti taip. Pridėjimai yra pažymėti taip.
Eilutė 2: Eilutė 2:
Non-atomic dycription attack Public-key cryptography
Eilutė 7: Eilutė 7:
nevienalyčio dešifravimo ataka Viešojo rakto kriptografija
Eilutė 14: Eilutė 14:
SSH (Secure shell) – tai tinklo protokolas, aprašantis apsaugotą kliento prisijungimą prie serverio aplinkos (shell) ir komandų vykdymą. SSH buvo sukurtas kaip alternatyva Telnet ir kitiems nesaugiems prisijungimo protokolams, kuriais vartotojo siunčiama informacija - vardai, slaptažodžiai ir komandos, siunčiami atviru tekstu, kuris gali būti lengvai perimtas. SSH naudojamas šifravimas užtikrina duomenų saugumą ir vientisumą perduodant juos nesaugiais tinklais. Šifravimo metodas panaudojant asimetrinių raktų algoritmus. Jį naudojant nereikia gavėjui ir siuntėjui pasikeisti vienu ar daugiau slaptų raktų. Jame naudojama dviejų matematiškai susijusių raktų pora: viešas ir privatus raktai. Tačiau jie sudaromi taip, kad iš viešo rakto nėra paprasta nustatyti privataus rakto. Privatus raktas saugomas pas save, o viešas yra išplatinamas. Dokumento autentiškumas užtikrinamas skaitmeniniu parašu, sukurtu naudojant privatų raktą, o jį patikrinti galima panaudojant viešą raktą. Taip pat galima užšifruoti tekstą naudojant viešą raktą, - dešifravimui būtina turėti privatų raktą. Ši schema yra naudojamas Interneto standartuose TLS (SSL įpėdinis), PGP ir GPG.
Neblogai šio metodo veikimą paaiškina analogija su pašto dėžute. Pašto dėžutės anga yra atvira ir prieinama kiekvienam; jo vieta (adresas) iš esmės yra viešas raktas. Kiekvienas, žinantis adresą, gali ateiti ir įmesti pranešimą į pašto dėžutę per jos angą. Tačiau tik tas, kuris turi raktą, gali ją atrakinti ir perskaityti joje esančius laiškus. O skaitmeninį parašą galima paaiškinti analogija su vaškiniu antspaudu. Laišką atplėšti ir perskaityti gali bet kas, tačiau nepažeistas antspaudas liudija jo autentiškumą.
Pagrindinė problema, naudojant viešojo rakto metodus, yra konfidencialumas, t.y. užtikrinimas, kad raktas priklauso tam asmeniui, kuris teigia jį turįs. Įprastas konfidencialumą užtikrinantis principas yra viešo rakto infrastruktūros (PKI) naudojimas, tai yra schema, kai viena ar daugiau trečiųjų šalių, vadinamų sertifikatų tiekėjais, garantuoja raktų porų priklausomybę. Kitas principas, kurį naudoja PGP, remiasi „pasitikėjimu“.
Silpna vieta
Deja, visos viešo rakto sistemos nėra atsparios „grubios jėgos“ panaudojimui. Tai nėra praktiška tuo atveju, jei skaičiavimų skaičius („darbo veiksnys“, pagal Claude Shannon) yra per didelis potencialiems nulaužėjams. Daugeliu atvejų „darbo veiksnys“ gali būti padidintas tiesiog panaudojant ilgesnius raktus. Tačiau kai kurie metodams „darbo veiksnys“ yra gerokai mažesnis nei naudojant „grubią jėgą“. Tiek RSA, tiek ElGamal šifrai turi galimus nulaužimo būdus, greitesnius nei „grubi jėga“. Šifrų įveikiamumas padidėjo išaugus kompiuterių galingumui bei padarius naujus atradimus matematikos srityje. Bet ir tai galima apeiti parenkant pakankamai ilgus raktus, tokius, kad, kol dešifruosi informaciją, ji jau nebebus aktuali.
Keliuose, atrodžiusiems perspektyviais, asimetrinių raktų algoritmuose rastos rimtos silpnos vietos. Pvz., nesaugiu pasirodė esąs „kuprinės sudėjimo“ algoritmas. Tikslaus laiko, reikalingo teksto iššifravimui, žinojimas gali supaprastinti reikiamų raktų paiešką. Taigi, asimetrinių raktų algoritmai negarantuoja saugumo ir šioje srityje vyksta aktyvūs ieškojimai, kaip nustatyti ir išvengti galimų naujų atakų.
Kitas potencialus pažeidžiamumas yra galimybė trečiajai šaliai perimti viešų raktų apsikeitimą ir pakeisti viešus raktus. Gali būti perimti ir užšifruoti pranešimai, dešifruoti ir vėl užšifruoti naudojant korektišką raktą, kad nebūtų sukeltas įtarimas. Tai nelengva realizuoti, tačiau įmanoma, kai komunikuojama nesaugia terpe (pvz., viešais tinklais, tokiais kaip Internetas). Tokį perėmimą nesunkiai gali atlikti Interneto paslaugų tiekėjo personalas. Tokį pažeidžiamumą pašalinti leidžia sertifikatai, patikimų trečių šalių patikinimas, kad rakto vartotojas yra teisėtas rakto savininkas. Tačiau ir tai turi savo silpnų vietų – ir vis tik šis principas plačiai naudojamas (pvz., SSL ir tolimesnis jo išvystyme TLS).
Viešą raktą gali žinoti didėlis ir praktiškai nežinomas vartotojų skaičius. Tad, prireikus, viešo rakto panaikinimas ar pakeitimas gali pareikalauti ilgo laiko tarpo, nes reikia informuoti visus raktą naudojančius vartotojus. Tad sistemos, privalančios reaguoti į realaus laiko įvykius (pvz., kritinio saugumo ar nacionalinio saugumo sistemos) neturėtų naudoti viešų raktų kriptografijos.
Eilutė 16: Eilutė 23:
AES (Advanced Encryption Standard) – pažangus šifravimo standartas, šifravimo algoritmas. Dar vadinamas Rijndael algoritmu. Rijndael yra blokinis simetrinis algoritmas. Šifravimo raktai gali būti 128, 192, arba 256 bitų ilgio, o blokų ilgis gali būti 128, 192 arba 256 bitų. '''''GPG: '''''
Eilutė 18: Eilutė 25:
'''''Ataka: ''''' GPG (GNU Privacy Guard) – yra GPL licencijuota alternatyva PGP, sudaranti kriptografijos programinę įrangą. GnuPG užšifruoja pranešimus naudodamas asimetrinės rakto poras individualiai su generuotas GnuPG vartotojo. Viešaisiais raktasi galima keistis sus kitais vartotojais įvairiais būdais pvz.: interneto raktų serveriais. Apsikeitimai visada turi būti saugūs, kad užtikrinti, kad duomenys nebus sugadinti, pažeidžiant raktą. Yra galimybė pridėti skaitmeninį parašą į pranešimą, taip žinutė bus apsaugota nuo pažeidimo, ir neteisėto skaitymo. GnuPG taip palaiko simetrinių kodavimų algoritmus. Pagal nutylėjimą GnuPG naudoja CAST5 simetrinį algoritmą. GnuPG nenaudoja patentuotų ar kitaip apribotos programinės įrangos ar algoritmų, tokių kaip IDEA šifravimo algoritmas naudojamas PGP. Vietoj to GnuPG naudoja įvairius kitus , nepatentuotus algoritmus:
• Blokiniai šifrai (simetrinis šifravimo algoritmas): CAST5, Camellia, triple DES, AES, Blowfish ir Twofish.
• Simetriniai rakto šifrai: EIGamal ir RSA.
• Kriptografiniai „hash“: RIPEMD-160, MD5, SHA-1, SHA-2, ir TIGER.
• Skaitmeniniai parašai: DSA ir RSA.
GnuPG yra hibridinė šifravimo programa, kuri naudoja kombinacija įprastų simetrinių raktų kriptografija didesniam greičiui pasiekti ir viešojo rakto kriptografija, saugiam ir lengvam apsikeitimui. Paprastai naudojamas vartotojo viešasis raktas yra užšifruotas taip kad galima būtų panaudoti tik kartą. Ši galimybė yra dalis OpenPGP standarto ir tai buvo dalis PGP nuo pat pirmo versijos.
Eilutė 20: Eilutė 32:
Pavyzdžiu laikysime SSH „binary packet“ protokolo ataką.

SSH naudoja „binary packet“ protokolą pranešimų siuntimui tarp kliento ir serverio. SSH naudoja vadinamą šifravimo ir po to „MAC“ taikymo mechanizmą, tai reiškia, kad kartu su paketu siunčiamas MAC sudarytas iš duomenų bloko. Tipinis SSH paketas susideda iš eilės numerio, paketo ilgio, duomenų lauko bei priedo lauko (pad). Visa tai šifruojama naudojant „CBC“ šifravimą. Tačiau pagrindinė šio paketo savybė leidžianti vykti atakoms yra paketo dekodavimas. Paketo dekodavimas vyksta pirmiausia atkoduojant bloko ilgio lauką, po to nuskaitant tiek paketų kiek parodo bloko ilgio laukas ir tik tada vyksta MAC tikrinimas ir jei randama klaida išsiunčiamas kaidos pranešimas. Taigi šiame procese nėra įmanoma patikrinti ar bloko ilgio laukas yra teisingas, nes jis iššifruojamas prie iššifruojant visą bloką. Taigi jeigu piktavalis perima vieno bloko ilgio pranešimą kuriame yra norimas atpažinti pranešimas „P“ užkoduotas raktu „R“. B = AES(R, P). Taigi piktavalis turėdamas perimtą bloko ilgio pranešimą įterpia tą pranešima į duomenų bloko pradžia ir siunčia serveriui. Serveris iššifruoja pirmus bloko bitus laikydamas, kad tai yra bloko ilgis ir tikisi gauti tokio ilgio pranešimą. Taigi piktavalis siunčia serveliui viena baitą per vieną kartą paeiliui tol kol serveris gauną reikiamą baitų kiekį, dešifruoja visą bloką, patikrina „MAC“ ir žinoma siunčia klaidą. Tačiau piktavalis skaičiuodamas kiek baitų priėmė serveris sužino kokia pirmųjų 32 bitų reikšmė. Taigi naudodamas šia ataką piktavalis gali sužinoti kiekvieno bloko pirmus 32 bitus.

{{attachment:4.jpg}}

Veiksmingi būdi kovoti prieš šia ataką: naudoti vienalytes sistemas kurioje visas paketas iššifruojamas iš karto. Nenaudoti šifravimo bloko ilgio laukui. Naudoti papildoma MAC kuris būtų skirtas tik bloko ilgio laukui.
Eilutė 30: Eilutė 35:
1.  http://lt.wikipedia.org/wiki/SSH 1. http://en.wikipedia.org/wiki/Public-key_cryptography
Eilutė 32: Eilutė 37:
2. http://lt.wikipedia.org/wiki/AES

3. St
anford University online Cryptography course
2. http://en.wikipedia.org/wiki/GNU_Privacy_Guard

Žodis angliškai

Public-key cryptography

Žodis Lietuviškai

Viešojo rakto kriptografija


Paaiškinimai

Teorija:

Šifravimo metodas panaudojant asimetrinių raktų algoritmus. Jį naudojant nereikia gavėjui ir siuntėjui pasikeisti vienu ar daugiau slaptų raktų. Jame naudojama dviejų matematiškai susijusių raktų pora: viešas ir privatus raktai. Tačiau jie sudaromi taip, kad iš viešo rakto nėra paprasta nustatyti privataus rakto. Privatus raktas saugomas pas save, o viešas yra išplatinamas. Dokumento autentiškumas užtikrinamas skaitmeniniu parašu, sukurtu naudojant privatų raktą, o jį patikrinti galima panaudojant viešą raktą. Taip pat galima užšifruoti tekstą naudojant viešą raktą, - dešifravimui būtina turėti privatų raktą. Ši schema yra naudojamas Interneto standartuose TLS (SSL įpėdinis), PGP ir GPG. Neblogai šio metodo veikimą paaiškina analogija su pašto dėžute. Pašto dėžutės anga yra atvira ir prieinama kiekvienam; jo vieta (adresas) iš esmės yra viešas raktas. Kiekvienas, žinantis adresą, gali ateiti ir įmesti pranešimą į pašto dėžutę per jos angą. Tačiau tik tas, kuris turi raktą, gali ją atrakinti ir perskaityti joje esančius laiškus. O skaitmeninį parašą galima paaiškinti analogija su vaškiniu antspaudu. Laišką atplėšti ir perskaityti gali bet kas, tačiau nepažeistas antspaudas liudija jo autentiškumą. Pagrindinė problema, naudojant viešojo rakto metodus, yra konfidencialumas, t.y. užtikrinimas, kad raktas priklauso tam asmeniui, kuris teigia jį turįs. Įprastas konfidencialumą užtikrinantis principas yra viešo rakto infrastruktūros (PKI) naudojimas, tai yra schema, kai viena ar daugiau trečiųjų šalių, vadinamų sertifikatų tiekėjais, garantuoja raktų porų priklausomybę. Kitas principas, kurį naudoja PGP, remiasi „pasitikėjimu“. Silpna vieta Deja, visos viešo rakto sistemos nėra atsparios „grubios jėgos“ panaudojimui. Tai nėra praktiška tuo atveju, jei skaičiavimų skaičius („darbo veiksnys“, pagal Claude Shannon) yra per didelis potencialiems nulaužėjams. Daugeliu atvejų „darbo veiksnys“ gali būti padidintas tiesiog panaudojant ilgesnius raktus. Tačiau kai kurie metodams „darbo veiksnys“ yra gerokai mažesnis nei naudojant „grubią jėgą“. Tiek RSA, tiek ElGamal šifrai turi galimus nulaužimo būdus, greitesnius nei „grubi jėga“. Šifrų įveikiamumas padidėjo išaugus kompiuterių galingumui bei padarius naujus atradimus matematikos srityje. Bet ir tai galima apeiti parenkant pakankamai ilgus raktus, tokius, kad, kol dešifruosi informaciją, ji jau nebebus aktuali. Keliuose, atrodžiusiems perspektyviais, asimetrinių raktų algoritmuose rastos rimtos silpnos vietos. Pvz., nesaugiu pasirodė esąs „kuprinės sudėjimo“ algoritmas. Tikslaus laiko, reikalingo teksto iššifravimui, žinojimas gali supaprastinti reikiamų raktų paiešką. Taigi, asimetrinių raktų algoritmai negarantuoja saugumo ir šioje srityje vyksta aktyvūs ieškojimai, kaip nustatyti ir išvengti galimų naujų atakų. Kitas potencialus pažeidžiamumas yra galimybė trečiajai šaliai perimti viešų raktų apsikeitimą ir pakeisti viešus raktus. Gali būti perimti ir užšifruoti pranešimai, dešifruoti ir vėl užšifruoti naudojant korektišką raktą, kad nebūtų sukeltas įtarimas. Tai nelengva realizuoti, tačiau įmanoma, kai komunikuojama nesaugia terpe (pvz., viešais tinklais, tokiais kaip Internetas). Tokį perėmimą nesunkiai gali atlikti Interneto paslaugų tiekėjo personalas. Tokį pažeidžiamumą pašalinti leidžia sertifikatai, patikimų trečių šalių patikinimas, kad rakto vartotojas yra teisėtas rakto savininkas. Tačiau ir tai turi savo silpnų vietų – ir vis tik šis principas plačiai naudojamas (pvz., SSL ir tolimesnis jo išvystyme TLS). Viešą raktą gali žinoti didėlis ir praktiškai nežinomas vartotojų skaičius. Tad, prireikus, viešo rakto panaikinimas ar pakeitimas gali pareikalauti ilgo laiko tarpo, nes reikia informuoti visus raktą naudojančius vartotojus. Tad sistemos, privalančios reaguoti į realaus laiko įvykius (pvz., kritinio saugumo ar nacionalinio saugumo sistemos) neturėtų naudoti viešų raktų kriptografijos.

GPG:

GPG (GNU Privacy Guard) – yra GPL licencijuota alternatyva PGP, sudaranti kriptografijos programinę įrangą. GnuPG užšifruoja pranešimus naudodamas asimetrinės rakto poras individualiai su generuotas GnuPG vartotojo. Viešaisiais raktasi galima keistis sus kitais vartotojais įvairiais būdais pvz.: interneto raktų serveriais. Apsikeitimai visada turi būti saugūs, kad užtikrinti, kad duomenys nebus sugadinti, pažeidžiant raktą. Yra galimybė pridėti skaitmeninį parašą į pranešimą, taip žinutė bus apsaugota nuo pažeidimo, ir neteisėto skaitymo. GnuPG taip palaiko simetrinių kodavimų algoritmus. Pagal nutylėjimą GnuPG naudoja CAST5 simetrinį algoritmą. GnuPG nenaudoja patentuotų ar kitaip apribotos programinės įrangos ar algoritmų, tokių kaip IDEA šifravimo algoritmas naudojamas PGP. Vietoj to GnuPG naudoja įvairius kitus , nepatentuotus algoritmus: • Blokiniai šifrai (simetrinis šifravimo algoritmas): CAST5, Camellia, triple DES, AES, Blowfish ir Twofish. • Simetriniai rakto šifrai: EIGamal ir RSA. • Kriptografiniai „hash“: RIPEMD-160, MD5, SHA-1, SHA-2, ir TIGER. • Skaitmeniniai parašai: DSA ir RSA. GnuPG yra hibridinė šifravimo programa, kuri naudoja kombinacija įprastų simetrinių raktų kriptografija didesniam greičiui pasiekti ir viešojo rakto kriptografija, saugiam ir lengvam apsikeitimui. Paprastai naudojamas vartotojo viešasis raktas yra užšifruotas taip kad galima būtų panaudoti tik kartą. Ši galimybė yra dalis OpenPGP standarto ir tai buvo dalis PGP nuo pat pirmo versijos.

Literatūra

1. http://en.wikipedia.org/wiki/Public-key_cryptography

2. http://en.wikipedia.org/wiki/GNU_Privacy_Guard