Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau

Ke lohe ʻoe i ka huaʻōlelo "cryptography," hoʻomanaʻo kekahi poʻe i kā lākou ʻōlelo huna WiFi, ka padlock ʻōmaʻomaʻo e pili ana i ka helu wahi o kā lākou punaewele punahele, a pehea ka paʻakikī o ke komo ʻana i ka leka uila a kekahi. Hoʻomanaʻo ka poʻe ʻē aʻe i ke ʻano o nā mea palupalu i nā makahiki i hala iho nei me ka haʻi ʻana i nā pōkole (DROWN, FREAK, POODLE...), nā logo nani a me kahi ʻōlelo aʻo e hoʻohou koke i kāu polokalamu kele pūnaewele.

Hoʻopili ka Cryptography i nā mea a pau, akā Tuhinga o ka i kekahi. ʻO ka manaʻo, aia kahi laina maikaʻi ma waena o ka maʻalahi a me ka paʻakikī. He mea maʻalahi kekahi mau mea, akā paʻakikī ke hoʻohui hou, e like me ka haki ʻana i ka hua. He mea maʻalahi nā mea ʻē aʻe ke hana akā paʻakikī ke hoʻi i ka wā e nalo ana kahi ʻāpana liʻiliʻi, koʻikoʻi, koʻikoʻi: no ka laʻana, wehe i ka puka paʻa inā ʻo ka "ʻāpana koʻikoʻi" ke kī. Hoʻopaʻa ʻo Cryptography i kēia mau kūlana a pehea e hoʻohana ʻia ai i ka hana.

I kēia mau makahiki i hala iho nei, ua lilo ka hōʻiliʻili o nā hōʻeha cryptographic i zoo o nā hōʻailona uila, i hoʻopiha ʻia me nā ʻano hoʻohālikelike mai nā pepa ʻepekema, a hāʻawi ʻia i kahi manaʻo pōʻino ākea ua haki nā mea a pau. Akā ʻo ka mea ʻoiaʻiʻo, ua hoʻokumu ʻia ka nui o nā hoʻouka ʻana ma luna o kekahi mau loina maʻamau, a ʻo nā ʻaoʻao pau ʻole o nā formula e hoʻolapalapa pinepine ʻia i nā manaʻo maʻalahi.

Ma kēia pūʻulu ʻatikala, e nānā mākou i nā ʻano like ʻole o ka hoʻouka kaua cryptographic, me ka manaʻo nui i nā kumu kumu. Ma nā ʻōlelo maʻamau a ʻaʻole pololei ma kēia ʻano, akā e uhi mākou i kēia:

  • Nā papahana kumu: ka ikaika ʻino, ka loiloi pinepine, ka interpolation, ka hoʻohaʻahaʻa ʻana a me nā kuʻina cross-protocols.
  • ʻO nā mea nāwaliwali i hōʻailona ʻia: FREAK, CRIME, POODLE, DROWN, Logjam.
  • Nā hoʻolālā kiʻekiʻe: nā hōʻeha ʻōlelo (Vodenet attack, Kelsey attack); ʻO ke ʻano hui-i-ka-waena, hoʻouka lā hānau, helu helu (ka ʻokoʻa cryptanalysis, integral cryptanalysis, etc.).
  • Hoʻouka ʻaoʻao ʻaoʻao a me ko lakou mau ohana pili, ke ano o ka hoopau ana.
  • ʻO nā hoʻouka ʻana i ka cryptography kī lehulehu: kumu cube, hoʻolaha, memo pili, Coppersmith hoouka, Pohlig-Hellman algorithm, kānana helu, Wiener hoouka, Bleichenbacher hoouka.

Hoʻopili kēia ʻatikala i nā mea i luna a hiki i ka hoʻouka ʻana o Kelsey.

Nā Kuleana Kumu

He maʻalahi kēia mau hoʻouka ʻana ma ke ʻano he hiki ke wehewehe piha ʻia me ka ʻole o nā kikoʻī loea. E wehewehe mākou i kēlā me kēia ʻano o ka hoʻouka ʻana ma nā ʻōlelo maʻalahi, me ka ʻole o ka hele ʻana i nā hiʻohiʻona paʻakikī a i ʻole nā ​​hihia hoʻohana holomua.

ʻO kekahi o kēia mau hoʻouka ʻana ua lilo i mea kahiko a ʻaʻole hoʻohana ʻia no nā makahiki he nui. ʻO nā poʻe ʻē aʻe he poʻe kahiko e hele mau ana i nā mea hoʻomohala cryptosystem ʻike ʻole i ke kenekulia 21. Hiki ke noʻonoʻo ʻia ke au o ka cryptography hou me ka hiki ʻana mai o IBM DES, ka cipher mua i kū i nā hoʻouka kaua āpau ma kēia papa inoa.

ʻO ka ikaika maʻalahi

Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikauʻElua mau ʻāpana o ka ʻōnaehana hoʻopunipuni: 1) ka hana hoʻopunipuni, e lawe i kahi memo (plaintext) i hui pū ʻia me kahi kī, a laila hana i kahi memo i hoʻopili ʻia - ciphertext; 2) he hana decryption e lawe i ka ciphertext a me ke kī a hana i ka plaintext. Pono e maʻalahi ka hoʻopili ʻana a me ka decryption e helu me ke kī-a paʻakikī ke helu me ka ʻole.

E manaʻo mākou e ʻike mākou i ka ciphertext a e hoʻāʻo e hoʻokaʻawale iā ia me ka ʻole o ka ʻike hou aku (ua kapa ʻia kēia he ciphertext-only attack). Inā loaʻa iā mākou ke kī pololei, hiki iā mākou ke hōʻoia maʻalahi i ka pololei inā he memo kūpono ka hopena.

E hoʻomaopopo he ʻelua mau manaʻo kuhi hewa ma aneʻi. ʻO ka mea mua, ʻike mākou pehea e hana ai i ka decryption, ʻo ia hoʻi, pehea e hana ai ka cryptosystem. He manaʻo maʻamau kēia i ka wā e kūkākūkā ai i ka cryptography. ʻO ka hūnā ʻana i nā kikoʻī hoʻokō o ka cipher mai nā mea hoʻouka e like paha me kahi ana palekana hou, akā i ka manawa e ʻike ai ka mea hoʻouka i kēia mau kikoʻī, ua nalowale kēia palekana hou aʻe. Pēlā Kumukānāwai Kerchoffs: ʻAʻole pono ka ʻōnaehana hāʻule i ka lima o ka ʻenemi.

ʻO ka lua, ke manaʻo nei mākou ʻo ke kī pololei ke kī wale nō e alakaʻi i kahi decryption kūpono. He manaʻo kūpono hoʻi kēia; ʻoluʻolu inā ʻoi aku ka lōʻihi o ka ciphertext ma mua o ke kī a hiki ke heluhelu ʻia. ʻO kēia ka mea maʻamau i ka honua maoli, koe wale nō nui kī impractical ai ole ia, ʻO nā hana ʻino ʻē aʻe i waiho ʻia ma ka ʻaoʻao (inā ʻaʻole ʻoe makemake ua hoʻokuʻu mākou i ka wehewehe, e ʻoluʻolu e ʻike i ka Theorem 3.8 maanei).

Hāʻawi ʻia i luna, e ala mai kahi hoʻolālā: e nānā i kēlā me kēia kī hiki. Kapa ʻia kēia ʻano ikaika ʻino, a ʻo ia hoʻouka kaua ʻia e hana kūʻē i nā ciphers pono āpau - ma hope. No ka laʻana, ua lawa ka ikaika e hack ʻO Kaisara cipher, he cipher kahiko kahi kī hoʻokahi leka o ka pīʻāpā, e hōʻike ana ma luna o 20 mau kī hiki.

ʻO ka pōʻino no ka poʻe cryptanalysts, ʻo ka hoʻonui ʻana i ka nui kī he pale maikaʻi ia mai ka ikaika ʻino. Ke piʻi aʻe ka nui kī, piʻi nui ka helu o nā kī hiki. Me nā kī nui o kēia wā, ʻaʻole hiki ke hana maʻalahi. No ka hoʻomaopopo ʻana i ke ʻano o kā mākou manaʻo, e lawe mākou i ka supercomputer kaulana loa ma waena o 2019: Summit mai IBM, me ka hana kiʻekiʻe ma kahi o 1017 mau hana i kekona. I kēia lā, ʻo ka lōʻihi kī maʻamau he 128 bits, ʻo ia hoʻi he 2128 hiki ke hui pū ʻia. No ka huli ʻana i nā kī āpau, pono ka Summit supercomputer i ka manawa ma kahi o 7800 mau manawa o ka makahiki o ke ao holoʻokoʻa.

Pono anei e noʻonoʻo ʻia ka manaʻo hoʻomāinoino i ka ʻike mōʻaukala? ʻAʻole loa: he mea pono ia i loko o ka puke kuke cryptanalysis. Kakaʻikahi ka nawaliwali o nā ciphers a hiki ke haki wale ʻia e ka hoʻouka akamai, me ka hoʻohana ʻole ʻana i ka ikaika i kekahi degere a i ʻole. Nui nā hacks kūleʻa e hoʻohana i kahi ala algorithmic e hoʻonāwaliwali i ka cipher target ma mua, a laila hana i kahi hoʻouka kaua ikaika.

Kaʻike pinepine

Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikauʻAʻole naʻaupō ka hapa nui o nā kikokikona. No ka laʻana, ma ka ʻōlelo Pelekania he nui nā leka 'e' a me nā ʻatikala 'the'; i nā faila binary, nui nā zero bytes e like me ka padding ma waena o nā ʻāpana ʻike. ʻO ka loiloi pinepine ka hoʻouka ʻana e hoʻohana pono i kēia ʻoiaʻiʻo.

ʻO ka laʻana canonical o kahi cipher hiki ke hoʻouka ʻia ʻo ia ka cipher pani maʻalahi. Ma kēia cipher, ʻo ke kī he papaʻaina me nā leka a pau i pani ʻia. No ka laʻana, ua pani ʻia ka 'g' e ka 'h', 'o' e ka j, no laila ua lilo ka huaʻōlelo 'go' i 'hj'. He mea paʻakikī kēia cipher no ka mea he nui nā papa ʻimi ʻimi. Inā makemake ʻoe i ka makemakika, ʻo ka lōʻihi o ke kī ma kahi o 88 bits: ʻo ia
Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau. Akā, hoʻopau koke ka ʻike pinepine ʻana i ka hana.

E noʻonoʻo i ka ciphertext ma lalo nei i hana ʻia me kahi cipher pani maʻalahi:

XDYLY ALY UGLY XDWNKE WN DYAJYN ANF YALXD DGLAXWG XDAN ALY FLYAUX GR WN OGQL ZDWBGEGZDO

Mai ka Y hiki pinepine, me ka hope o nā huaʻōlelo he nui, hiki iā mākou ke manaʻo ʻo ia ka leka e:

XDeLe ALe UGLe XDWNKE WN DeAJeN ANF eALXD DGLAXWG XDAN ALe FLeAUX GR WN OGQL ZDWBGEGZDO

ʻO ka wahine XD hana hou ʻia ma ka hoʻomaka ʻana o kekahi mau huaʻōlelo. ʻO ka mea kūikawā, ʻo ka hui ʻana o XDeLe e hōʻike maopopo i ka huaʻōlelo these ai ole ia, there, no laila e hoʻomau kāua:

theLe ALe UGLe thWNKE WN heAJeN ANF eALth DGLAtWG than ALe FLeAUt GR WN OGQL ZDWBGEGZDO

E manao hou kakou i kela L соответствует r, A - a a laila. E ho'āʻo paha ia, akā i ka hoʻohālikelike ʻia me ka hoʻouka kaua ikaika piha, hoʻihoʻi kēia hoʻouka i ka kikokikona kumu i ka manawa pōkole:

ʻoi aku ka nui o nā mea ma ka lani a me ka honua horatio ma mua o ka mea i moeʻuhane ʻia i loko o kou akeakamai

No kekahi, ʻo ka hoʻoponopono ʻana i ia mau "cryptograms" he leʻaleʻa hoihoi.

ʻOi aku ka nui o ka manaʻo o ka loiloi pinepine ma mua o ka mea i ʻike mua ʻia. A pili ia i nā ciphers paʻakikī loa. I loko o ka mōʻaukala, ua hoʻāʻo nā ʻano hoʻolālā cipher e kūʻē i kēlā hoʻouka kaua me ka hoʻohana ʻana i ka "polyalphabetic substitution". Maʻaneʻi, i ka wā o ka hoʻopili ʻana, ua hoʻololi ʻia ka papa hoʻololi i ka leka ma nā ala paʻakikī akā hiki ke wānana i hilinaʻi ʻia ma ke kī. ʻO kēia mau cipher a pau i manaʻo ʻia he paʻakikī ke wāwahi i ka manawa hoʻokahi; a ʻo ka loiloi alapine haʻahaʻa naʻe ua lanakila lākou a pau.

ʻO ka cipher polyalphabetic koʻikoʻi loa i ka mōʻaukala, a ʻo ka mea kaulana loa paha, ʻo ia ka Enigma cipher o ke Kaua Honua II. He mea paʻakikī ia i ka hoʻohālikelike ʻia i kona mau mua, akā ma hope o ka hana nui, ua haki nā cryptanalysts Pelekane me ka hoʻohana ʻana i ka loiloi pinepine. ʻOiaʻiʻo, ʻaʻole hiki iā lākou ke hoʻomohala i kahi hoʻouka nani e like me ka mea i hōʻike ʻia ma luna; pono lākou e hoʻohālikelike i nā ʻōlelo paʻa a me ka ciphertext (ka mea i kapa ʻia ʻo "plaintext attack"), me ka hoʻonāukiuki ʻana i nā mea hoʻohana Enigma e hoʻopili i kekahi mau memo a me ka nānā ʻana i ka hopena (ʻo "ka hoʻouka paʻi kikokikona i koho ʻia"). ʻAʻole naʻe kēia i maʻalahi i ka hopena o nā pūʻali ʻenemi i pio a hoʻopaʻa i nā submarines.

Ma hope o kēia lanakila, ua nalowale ka loiloi pinepine mai ka mōʻaukala o cryptanalysis. Hoʻolālā ʻia nā ciphers i ka wā kikohoʻe hou e hana me nā bits, ʻaʻole nā ​​leka. ʻO ka mea nui, ua hoʻolālā ʻia kēia mau ciphers me ka ʻike ʻeleʻele o ka mea i kapa ʻia ma hope Kānāwai o Schneier: Hiki i kekahi ke hana i kahi algorithm encryption hiki ʻole iā lākou ke uhaʻi. ʻAʻole lawa no ka ʻōnaehana hoʻopunipuni me he mea la paʻakikī: e hōʻoia i kona waiwai, pono ia e hana i kahi loiloi palekana aloha ʻole e nā cryptanalysts he nui e hana i kā lākou mea maikaʻi loa e haki i ka cipher.

Helu mua

Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikauE lawe i ke kūlanakauhale hypothetical o Precom Heights, heluna 200. Loaʻa i kēlā me kēia hale ma ke kūlanakauhale ka awelika o $000 o nā waiwai waiwai, akā ʻaʻole i ʻoi aku ma mua o $ 30. ʻO ka mākeke palekana ma Precom ua monopoli ʻia e ACME Industries, nāna e hoʻopuka i nā laka puka papa Coyote™. Wahi a ka loiloi loea, hiki ke wāwahi ʻia kahi laka Coyote-class e kahi mīkini hypothetical paʻakikī, ʻo ka hana ʻana o ia mea e pono ai ma kahi o ʻelima mau makahiki a me $000 i ka hoʻopukapuka. Ua palekana anei ke kulanakauhale?

ʻAʻole paha. I ka hopena, e puka mai ana kekahi kanaka hana hewa. E noʻonoʻo ʻo ia penei: "ʻAe, e hoʻolilo wau i nā kumukūʻai nui. ʻElima makahiki o ka hoʻomanawanui ʻana, a me $50. Akā ke pau au, hiki iaʻu ke komo i ka waiwai a pau o keia kulanakauhale. Inā wau e pāʻani pololei i kaʻu mau kāleka, e uku nui kēia kālā iā ia iho. "

Pela no ka cryptography. ʻO ka hoʻouka kaua ʻana i kekahi cipher ma lalo o ka nānā ʻana i nā kumukūʻai maikaʻi ʻole. Inā maikaʻi ka ratio, ʻaʻole hiki ke hoʻouka ʻia. Akā ʻo ka hoʻouka kaua ʻana e kūʻē i ka nui o ka poʻe i hoʻopilikia ʻia i ka manawa hoʻokahi, ʻaneʻane e uku mau ʻia, ʻo ia ka hana hoʻolālā maikaʻi loa e manaʻo ʻia ua hoʻomaka lākou mai ka lā hoʻokahi. Loaʻa iā mākou kahi mana cryptographic o Murphy's Law: "ʻO kēlā me kēia mea hiki ke uhaʻi maoli i ka ʻōnaehana e wāwahi i ka ʻōnaehana."

ʻO ka hiʻohiʻona maʻalahi o kahi cryptosystem i hiki ke hoʻouka i ka precomputation attack he cipher kīʻole mau. ʻO kēia ka hihia me Ka cipher a Kaisara, e hoʻololi wale ana i kēlā me kēia leka o ka pīʻāpā i ʻekolu mau leka i mua (ua hoʻopaʻa ʻia ka papa ʻaina, no laila ua hoʻopili ʻia ka leka hope o ka pīʻāpā i ke kolu). Eia hou ke kumu o Kerchhoffs i ka pāʻani: i ka manawa i hacked kahi ʻōnaehana, ua hacked mau loa ia.

He maʻalahi ka manaʻo. E ʻike paha ka mea hoʻomohala cryptosystem novice i ka hoʻoweliweli a hoʻomākaukau e like me ia. Ke nānā nei i ka ulu ʻana o ka cryptography, ʻaʻole kūpono ia mau hoʻouka ʻana no ka hapa nui o nā ciphers, mai nā mana mua i hoʻomaikaʻi ʻia o ka cipher Caesar a hiki i ka emi ʻana o nā ciphers polyalphabetic. ʻO ia mau hoʻouka kaua wale nō i hoʻi mai me ka hiki ʻana mai o ke au hou o ka cryptography.

ʻO kēia hoʻihoʻi ma muli o nā kumu ʻelua. ʻO ka mea mua, ua ʻike ʻia nā cryptosystems paʻakikī, kahi i ʻike ʻole ʻia ai ka hiki ke hoʻohana ʻia ma hope o ka hacking. ʻO ka lua, ua laha loa ka cryptography a hiki i ka miliona o ka poʻe i hoʻoholo i kēlā me kēia lā e pili ana i kahi a me nā ʻāpana o ka cryptography e hoʻohana hou. Ua lōʻihi ka manawa ma mua o ka ʻike ʻana o ka poʻe loea i nā pilikia a hoʻāla i ke ala.

E hoʻomanaʻo i ka hoʻouka kaua precomputation: ma ka hopena o ka ʻatikala e nānā mākou i ʻelua mau hiʻohiʻona cryptographic maoli kahi i hana nui ai.

Hoʻohālikelike

Eia ka mea makaʻu kaulana ʻo Sherlock Holmes, e hana ana i kahi hoʻouka kaua ma luna o ke Kauka Watson pōʻino.

Ua manaʻo koke wau ua hele mai ʻoe mai Afghanistan ... ʻO kaʻu kaʻaahi o ka manaʻo penei: “He kauka kēia kanaka ma ke ʻano, akā he ʻano koa kona. No laila, he kauka koa. Ua hōʻea mai nei ʻo ia mai ka ʻāina ʻoʻoleʻa - ʻeleʻele kona helehelena, akā ʻaʻole kēia ka malu maoli o kona ʻili, no ka mea, ʻoi aku ka keʻokeʻo o kona mau lima. Ua ʻeha ka maka - maopopo, ua ʻeha nui ʻo ia a ua loaʻa i ka maʻi. Ua ʻeha ʻo ia ma kona lima hema - paʻa ʻo ia me ka neʻe ʻole a me ke ʻano ʻole. Ma hea kahi e hiki ai i ke kauka koa Pelekane ke pilikia a ʻeha? ʻOiaʻiʻo, ma Afghanistan. " ʻAʻole i lōʻihi ke kaʻaahi o ka manaʻo i hoʻokahi kekona. A no laila au i ʻōlelo ai ua hele mai ʻoe mai Afghanistan mai, a kāhāhā ʻoe.

Hiki iā Holmes ke unuhi i ka ʻike liʻiliʻi mai kēlā me kēia ʻāpana hōʻike. Hiki iā ia ke hōʻea i kāna hopena ma ka noʻonoʻo ʻana iā lākou a pau. Hoʻohana like ka hoʻouka kaua interpolation ma ka nānā ʻana i nā paʻa kikokikona a me ciphertext i ʻike ʻia mai ke kī like. Mai kēlā me kēia pālua, lawe ʻia nā ʻike pilikino e hiki ai ke huki i ka hopena maʻamau e pili ana i ke kī. ʻO kēia mau hopena a pau he pohihihi a ʻike ʻole ʻia a hiki i ka hiki koke ʻana i kahi nui koʻikoʻi a alakaʻi i ka hopena hiki wale nō: ʻaʻohe mea kupanaha, he ʻoiaʻiʻo. Ma hope o kēia, hōʻike ʻia ke kī, a i ʻole e hoʻomaʻemaʻe ʻia ke kaʻina decryption i hiki ke hana hou ʻia.

E hoʻohālike me kahi laʻana maʻalahi pehea e hana ai ka interpolation. E ʻōlelo mākou makemake mākou e heluhelu i ka diary pilikino o ko mākou ʻenemi, ʻo Bob. Hoʻopili ʻo ia i kēlā me kēia helu ma kāna diary me ka hoʻohana ʻana i kahi cryptosystem maʻalahi āna i aʻo ai mai kahi hoʻolaha ma ka puke "A Mock of Cryptography." Ke hana nei ka ʻōnaehana penei: Koho ʻo Bob i ʻelua helu āna i makemake ai: Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau и Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau. Mai kēia manawa, e hoʻopili i kekahi helu Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau, helu ia Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau. No ka laʻana, inā koho ʻo Bob Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau и Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau, a laila ka helu Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau e hoʻopili ʻia e like me Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau.

E ʻōlelo kākou ma ka lā 28 o Kekemapa ua ʻike mākou e ʻakaʻaka ana ʻo Bob i kekahi mea ma kāna puke moʻolelo. Ke pau ʻo ia, e ʻohi mālie mākou a nānā i ke komo hope:

Lā: 235/520

Aloha Diary,

He lā maikaʻi kēia lā. Ma o 64 I kēia lā, loaʻa iaʻu kahi lā me Alisa, e noho ana i kahi keʻena 843. Manaʻo maoli wau ʻo ia paha 26!

Ma muli o ko mākou koʻikoʻi e pili ana i ka hahai ʻana iā Bob i kāna lā (ʻo mākou ʻelua 15 i kēia hiʻohiʻona), he mea nui e ʻike i ka lā a me ka helu ʻana o Alice. ʻO ka mea pōmaikaʻi, ʻike mākou ua pilikia ka cryptosystem a Bob i kahi hoʻouka kaua interpolation. ʻAʻole paha mākou i ʻike Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau и Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau, akā ʻike mākou i ka lā o kēia lā, no laila, loaʻa iā mākou ʻelua mau paʻa kikokikona-ciphertext. ʻO ia hoʻi, ʻike mākou i kēlā Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau hoʻopili ʻia i loko Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikaua me ka Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau - ma Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau. Eia kā mākou e kākau ai:

Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau

Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau

ʻOiai he 15 mau makahiki mākou, ua ʻike mua mākou e pili ana i kahi ʻōnaehana o nā hoʻohālikelike ʻelua me ʻelua mau mea ʻike ʻole, a ma kēia kūlana ua lawa ka loaʻa. Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau и Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau me ka pilikia ole. Ke kau nei kēlā me kēia paʻa kikokikona-ciphertext i kahi kaohi ma ke kī a Bob, a ua lawa nā paʻa ʻelua e hoʻihoʻi hou i ke kī. Ma kā mākou hiʻohiʻona ka pane Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau и Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau (ma Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau, pela 26 i loko o ka diary e pili ana i ka hua'ōlelo 'ka mea', 'o ia ho'i, "ka mea like" - approx. alanui).

ʻO ka hoʻouka kaua interpolation, ʻoiaʻiʻo, ʻaʻole i kaupalena ʻia i nā hiʻohiʻona maʻalahi. ʻO kēlā me kēia cryptosystem e hōʻemi ana i kahi mea makemakika i hoʻomaopopo maikaʻi ʻia a me kahi papa inoa o nā ʻāpana e pili ana i kahi hoʻouka interpolation - ʻoi aku ka maʻalahi o ka mea, ʻoi aku ka kiʻekiʻe o ka pilikia.

Hoʻopiʻi pinepine ka poʻe hou i ka cryptography "ke akamai o ka hoʻolālā ʻana i nā mea e like me ka maikaʻi ʻole." ʻO ka hoʻouka kaua ʻana paha ke kumu nui o ka hewa. Hiki iā Bob ke hoʻohana i kahi hoʻolālā makemakika nani a i ʻole e hoʻopaʻa pilikino i kāna lā me Alice - akā naʻe, ʻaʻole hiki iā ʻoe ke loaʻa i nā ala ʻelua. E akaka loa kēia i ka wā e hiki ai mākou i ke kumuhana o ka cryptography kī lehulehu.

ʻO ka protocol cross/downgrade

Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikauMa Now You See Me (2013), kahi hui o ka poʻe illusionists e hoʻāʻo e hoʻopunipuni i ka mea hoʻokele waiwai hewa ʻo Arthur Tressler mai kāna waiwai holoʻokoʻa. No ka loaʻa ʻana o ka waihona waihona kālā a Arthur, pono e hāʻawi ka poʻe illusionists i kona inoa inoa a me ka ʻōlelo huna a i ʻole e koi iā ia e hele kino ma ka panakō a komo i ka papahana.

He paʻakikī loa nā koho ʻelua; Ua maʻa nā kāne i ka hana ma ke kahua, ʻaʻole i komo i nā hana naʻauao. No laila, koho lākou i ke kolu o ka koho: kāhea kā lākou hoa hana i ka panakō a hoʻohālike ʻo Arthur. Nīnau ka panakō i kekahi mau nīnau e hōʻoia i ka ʻike, e like me ka inoa o ka ʻanakala a me ka inoa o ka pipi mua; ko kakou mau koa ma mua unuhi maʻalahi lākou i kēia ʻike mai Arthur me ka hoʻohana ʻana i ka ʻenekinia kaiapuni akamai. Mai kēia manawa, ʻaʻole mea nui ka palekana ʻōlelo huna maikaʻi.

(E like me ka moʻolelo o ke kūlanakauhale a mākou i hōʻoia ponoʻī a hōʻoiaʻiʻo ai, ua hālāwai ʻo cryptographer ʻo Eli Beaham i kahi mea haʻi kālā nāna i koi e hoʻonohonoho i kahi nīnau palekana. liʻiliʻi y, ʻekolu ... ").

Ua like ia i ka cryptography, inā hoʻohana ʻia nā protocol cryptographic ʻelua e pale i ka waiwai like, a ʻoi aku ka nāwaliwali o kekahi ma mua o kekahi. ʻO ka ʻōnaehana hopena e lilo i mea palupalu i kahi hoʻouka kaua cross-protocol, kahi i hoʻouka ʻia ai kahi protocol nāwaliwali i mea e hiki ai i ka makana me ka hoʻopā ʻole i ka mea ikaika.

I kekahi mau hihia paʻakikī, ʻaʻole lawa ka hoʻopili wale ʻana i ke kikowaena me ka hoʻohana ʻana i kahi protocol nāwaliwali, akā koi i ke komo ʻole o ka mea kūʻai aku. Hiki ke hoʻonohonoho ʻia me ka hoʻohana ʻana i ka mea i kapa ʻia ʻo downgrade attack. No ka hoʻomaopopo ʻana i kēia hoʻouka kaua, e manaʻo kākou he ʻoi aku ka paʻakikī o kā mākou poʻe hoʻopunipuni ma mua o ke kiʻiʻoniʻoni. E noʻonoʻo kākou ua hālāwai kekahi limahana panakō (cashier) lāua ʻo Arthur i kekahi mau kūlana i manaʻo ʻole ʻia, i hopena i kēia kamaʻilio ʻana:

ʻaihue: Aloha? ʻO Arthur Tressler kēia. Makemake au e hoʻihoʻi i kaʻu ʻōlelo huna.

Luna kālā: Nui. E ʻoluʻolu e nānā i kāu puke code huna pilikino, ʻaoʻao 28, huaʻōlelo 3. E hoʻopili ʻia nā memo a pau e hoʻohana ana i kēia huaʻōlelo kikoʻī ma ke kī. PQJGH. LOTJNAM PGGY MXVRL ZZLQ SRIU HHNMLPPPV…

ʻaihue: E, e, e kali, e kali. He mea pono anei keia? ʻAʻole hiki iā mākou ke kamaʻilio e like me ka poʻe maʻamau?

Luna kālā: ʻAʻole wau manaʻo e hana i kēia.

ʻaihue: ʻO wau wale nō ... nānā, he lā pōʻino koʻu, ʻeā? He mea kūʻai VIP wau a ʻaʻohe oʻu manaʻo e ʻeli i kēia mau puke code naʻaupō.

Luna kālā: Maikaʻi. Ke koi ʻoe, e Mr. Tressler. He aha kou makemake?

ʻaihue: E ʻoluʻolu, makemake wau e hāʻawi i kaʻu kālā āpau i ka Arthur Tressler National Victims Fund.

(Hoʻomaha).

Luna kālā: Ua maopopo i keia manawa. E ʻoluʻolu e hāʻawi i kāu PIN no nā hana nui.

ʻaihue: ʻO kaʻu aha?

Luna kālā: Ma kāu noi pilikino, pono nā hana o kēia nui i PIN no nā kālepa nui. Ua hāʻawi ʻia kēia code iā ʻoe i kou wehe ʻana i kāu moʻokāki.

ʻaihue:... Ua nalowale au. He mea pono anei keia? ʻAʻole hiki iā ʻoe ke ʻae wale i ka ʻaelike?

Luna kālā: ʻAʻole. E kala mai, e Mr. Tressler. Eia hou, ʻo kēia ke ana palekana āu i noi ai. Inā makemake ʻoe, hiki iā mākou ke hoʻouna i kahi code PIN hou i kāu pahu leta.

Hoʻopaneʻe kā mākou mau koa i ka hana. Hoʻolohe lākou i kekahi o nā kālepa nui a Tressler, me ka manaʻo e lohe i ka PIN; akā i kēlā me kēia manawa e lilo ai ke kamaʻilio ʻana i ka ʻōlelo ʻino ma mua o ka haʻi ʻia ʻana o kekahi mea hoihoi. ʻO ka hope, hoʻokahi lā maikaʻi, hoʻokō ʻia ka hoʻolālā. Kali lākou me ka hoʻomanawanui no ka manawa e hana ai ʻo Tressler i kahi kālepa nui ma ke kelepona, hele ʻo ia ma ka laina, a laila ...

mea hoʻokele waiwai: Aloha. Makemake wau e hoʻopau i kahi kālepa mamao, e ʻoluʻolu.

Luna kālā: Nui. E ʻoluʻolu e nānā i kāu puke code huna pilikino, ʻaoʻao...

(Pīhi ka ʻaihue i ke pihi; lilo ka leo o ke kālā i walaʻau ʻike ʻole ʻia).

Luna kālā: - #@$#@$#*@$$@#* e hoʻopili ʻia me kēia huaʻōlelo ma ke kī. AAAAYRR PLRQRZ MMNJK LOJBAN…

mea hoʻokele waiwai: E kala mai, ʻaʻole maopopo iaʻu. hou? Ma ka ʻaoʻao hea? He aha ka ʻōlelo?

Luna kālā: ʻO kēia ka ʻaoʻao @#$@#*$)#*#@()#@$(#@*$(#@*.

mea hoʻokele waiwai: Pehea?

Luna kālā: Hua'ōlelo helu iwakālua @$#@$#%#$.

mea hoʻokele waiwai: ʻOiaʻiʻo! Ua lawa! ʻO ʻoe a me kāu protocol palekana kekahi ʻano circus. ʻIke wau hiki iā ʻoe ke kamaʻilio maʻamau iaʻu.

Luna kālā: ʻAʻole wau e paipai…

mea hoʻokele waiwai: A ʻaʻole wau e aʻo iā ʻoe e hoʻopau i koʻu manawa. ʻAʻole au makemake e lohe hou e pili ana i kēia a hiki i kou hoʻoponopono ʻana i kāu mau pilikia laina kelepona. Hiki iā mākou ke hoʻopau i kēia kuʻikahi a ʻaʻole paha?

Luna kālā:… ʻAe. Maikaʻi. He aha kou makemake?

mea hoʻokele waiwai: Makemake au e hoʻoili i $20 i Lord Business Investments, helu moʻokāki...

Luna kālā: Hoʻokahi minute, e ʻoluʻolu. He mea nui kēia. E ʻoluʻolu e hāʻawi i kāu PIN no nā hana nui.

mea hoʻokele waiwai: He aha? ʻAe, pololei. 1234.

Eia kahi hoʻouka ʻana i lalo. ʻO ka protocol nāwaliwali "ʻōlelo pololei" i manaʻo ʻia e like me koho inā pilikia. Eia nō naʻe mākou.

Hiki paha iā ʻoe ke noʻonoʻo ʻo wai ma ko lākou noʻonoʻo pono e hoʻolālā i kahi ʻōnaehana "palekana a hiki i ka nīnau ʻana ʻē aʻe" e like me ka mea i hōʻike ʻia ma luna. Akā, e like me ka mālama ʻana i nā mea kūʻai mai makemake ʻole i ka cryptography, ʻo nā ʻōnaehana maʻamau e hoʻopili pinepine i nā koi i manaʻo ʻole a i ʻole ʻino loa i ka palekana.

ʻO kēia ka mea i hana ʻia me ka protocol SSLv2 ma 1995. Ua hoʻomaka lōʻihi ke aupuni US e nānā i ka cryptography ma ke ʻano he mea kaua i mālama maikaʻi ʻia mai nā ʻenemi ʻē aʻe a me ka home. Ua ʻae ʻia nā ʻāpana code no ka lawe ʻana aku mai ʻAmelika Hui Pū ʻIa, pinepine me ke ʻano i hoʻonāwaliwali ʻia ka algorithm. Ua hāʻawi ʻia ʻo Netscape, ka mea nāna i hoʻomohala i ka polokalamu kele kaulana loa, ʻo Netscape Navigator, no SSLv2 wale nō me ke kī RSA 512-bit koʻikoʻi (a me 40-bit no RC4).

I ka pau ʻana o ka millennium, ua hoʻomaha nā lula a ua loaʻa nui ka loaʻa ʻana o ka encryption hou. Eia nō naʻe, ua kākoʻo nā mea kūʻai aku a me nā kikowaena i ka cryptography nāwaliwali "hoʻokuʻu aku" no nā makahiki ma muli o ka inertia like e mālama i ke kākoʻo no kekahi ʻōnaehana hoʻoilina. Manaʻo nā mea kūʻai aku e hālāwai paha lākou me kahi kikowaena ʻaʻole kākoʻo i kekahi mea ʻē aʻe. Ua hana like nā kikowaena. ʻOiaʻiʻo, ʻōlelo ka protocol SSL ʻaʻole pono nā mea kūʻai aku a me nā kikowaena e hoʻohana i kahi protocol nāwaliwali ke loaʻa kahi mea ʻoi aku ka maikaʻi. Akā ua pili ka manaʻo like iā Tressler a me kāna panakō.

Ua loaʻa kēia manaʻo i kona ala i loko o ʻelua hoʻouka kaua kiʻekiʻe i hoʻonāueue i ka palekana o ka protocol SSL ma 2015, ʻike ʻia e nā mea noiʻi Microsoft a INRIA. ʻO ka mea mua, ua hōʻike ʻia nā kikoʻī o ka hoʻouka kaua FREAK i Pepeluali, a ma hope o ʻekolu mahina ma hope o kahi hoʻouka like ʻana i kapa ʻia ʻo Logjam, a mākou e kūkākūkā nui ai i ka wā e neʻe ai mākou i ka hoʻouka ʻana i ka cryptography kī lehulehu.

Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikauPalekana KAUKA (ʻike ʻia ʻo "Smack TLS") i ʻike ʻia i ka wā i kālailai ai nā mea noiʻi i ka hoʻokō ʻana o ka mea kūʻai aku/server TLS a loaʻa iā lākou kahi ʻōpala. I kēia mau hoʻokō, inā ʻaʻole noi ka mea kūʻai aku e hoʻohana i ka cryptography export nāwaliwali, akā pane mau ka server me ia mau kī, ʻōlelo ka mea kūʻai aku "ʻAe" a hoʻololi i kahi suite cipher nāwaliwali.

I kēlā manawa, ua manaʻo nui ʻia ka export cryptography i ka wā kahiko a me nā palena ʻole, no laila ua hele mai ka hoʻouka ʻana me kahi haʻalulu piha a hoʻopilikia i nā kikowaena koʻikoʻi he nui, me ka Hale Paʻi, IRS, a me nā pūnaewele NSA. ʻOi aku ka maikaʻi loa, ʻike ʻia ka nui o nā kikowaena nāwaliwali e hoʻomaikaʻi ana i ka hana ma ka hoʻohana hou ʻana i nā kī like ma mua o ka hana ʻana i nā mea hou no kēlā me kēia kau. ʻO kēia ka mea i hiki ai, ma hope o ka hoʻohaʻahaʻa ʻana i ka protocol, e hoʻokō i ka hoʻouka ʻana ma mua o ka helu ʻana: ʻoi aku ka maikaʻi o ka haki ʻana i hoʻokahi kī ($ 100 a me 12 mau hola i ka manawa o ka paʻi ʻana), akā ua hoʻemi nui ʻia ke kumukūʻai kūpono no ka hoʻouka ʻana i ka pilina. Ua lawa ke koho ʻana i ke kī kikowaena i hoʻokahi manawa a haki i ka encryption no nā pili hope a pau mai ia manawa.

A ma mua o ko mākou neʻe ʻana, aia kahi hoʻouka kaua holomua e pono e haʻi ʻia ...

Hoʻouka ʻo Oracle

Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikauMoxie Marlinspike ʻike maikaʻi ʻia ʻo ia ka makuakāne o ka palapala noi leka uila crypto cross-platform Signal; akā makemake mākou i kekahi o kāna mau mea hou i ʻike ʻole ʻia - kumu o ka hoʻopaʻi cryptographic (Cryptographic Doom Principle). No ka hoʻohālikelike iki, hiki iā mākou ke ʻōlelo i kēia: "Inā hana ka protocol kekahi hana i kahi hana cryptographic ma kahi leka mai kahi kumu hoʻomāinoino a ʻokoʻa kona ʻano ma muli o ka hopena, ua hoʻopaʻi ʻia." A i ʻole ma kahi ʻano ʻoi aku ka maikaʻi: "Mai lawe i ka ʻike mai ka ʻenemi no ka hana ʻana, a inā pono ʻoe, a laila ʻaʻole e hōʻike i ka hopena."

E haʻalele kākou i ka hoʻomāhuahua ʻana o ka buffer, ke kauoha ʻana, a me nā mea like; aia lākou ma waho o ke kiko o kēia kūkākūkā. ʻO ka uhaki ʻana i ka "document principle" e alakaʻi i nā hacks cryptography koʻikoʻi ma muli o ke ʻano o ka protocol e like me ka mea i manaʻo ʻia.

E like me ka laʻana, e lawe mākou i kahi hoʻolālā fictitious me kahi cipher pani hakahaka, a laila hōʻike i kahi hoʻouka kaua. ʻOiai ua ʻike mua mākou i ka hoʻouka ʻana i kahi cipher hoʻololi me ka hoʻohana ʻana i ka loiloi pinepine, ʻaʻole ia he "ʻano ʻē aʻe e wāwahi i ka cipher hoʻokahi." ʻO ka mea ʻē aʻe, ʻo ka hoʻouka ʻana i ka ʻōlelo aʻoaʻo he mea hou i kēia manawa, pili i nā kūlana he nui i hāʻule ʻole ka loiloi pinepine, a e ʻike mākou i kahi hōʻike o kēia ma ka ʻāpana aʻe. Maʻaneʻi ua kohoʻia ka cipher maʻalahi e hoʻomaopopo i ka laʻana.

No laila, kamaʻilio ʻo Alice lāua ʻo Bob me ka hoʻohana ʻana i kahi cipher pani maʻalahi e hoʻohana ana i kahi kī i ʻike ʻia iā lāua wale nō. He koʻikoʻi loa lākou e pili ana i ka lōʻihi o nā memo: he 20 kikoʻī ka lōʻihi. No laila ua ʻae lākou inā makemake kekahi e hoʻouna i kahi leka pōkole, pono lākou e hoʻohui i kahi kikokikona dummy i ka hope o ka memo e hoʻolilo iā ia i 20 mau huaʻōlelo. Ma hope o kekahi kūkākūkā ʻana, ua hoʻoholo lākou e ʻae wale lākou i kēia mau kikokikona dummy: a, bb, ccc, dddd etc. No laila, ʻike ʻia kahi kikokikona dummy o kēlā me kēia lōʻihi i makemake ʻia.

Ke loaʻa iā Alice a i ʻole ʻo Bob kahi leka, ʻike mua lākou i ka lōʻihi o ka memo (20 mau huaʻōlelo) a ʻo ka suffix ka kikokikona dummy pololei. Inā ʻaʻole kēia ka hihia, a laila pane lākou me kahi memo hewa kūpono. Inā maikaʻi ka lōʻihi o ka kikokikona a me ke kikokikona dummy, heluhelu ka mea lawe i ka memo a hoʻouna i kahi pane i hoʻopili ʻia.

I ka wā o ka hoʻouka kaua ʻana, hoʻohālikelike ka mea hoʻouka iā Bob a hoʻouna i nā leka hoʻopunipuni iā ​​Alice. He mea lapuwale nā ​​memo - ʻaʻohe kī o ka mea hoʻouka, a no laila ʻaʻole hiki ke hana i kahi leka koʻikoʻi. Akā, no ka mea, ua uhaki ka protocol i ke kumu hoʻohewa, hiki i ka mea hoʻouka ke hoʻopaʻa iā Alice i ka hōʻike ʻana i ka ʻike nui, e like me ka mea i hōʻike ʻia ma lalo nei.

ʻaihue: PREWF ZHJKL MMMN. LA

Alice: Hewa ke kikokikona dummy.

ʻaihue: PREWF ZHJKL MMMN. LB

Alice: Hewa ke kikokikona dummy.

ʻaihue: PREWF ZHJKL MMMN. LC

Alice: ILCT? TLCT RUWO PUT KCAW CPS OWPOW!

ʻAʻohe manaʻo o ka ʻaihue i ka mea a Alice i ʻōlelo ai, akā ʻike ʻo ia ka hōʻailona C pono e kūlike a, ʻoiai ua ʻae ʻo Alice i ka kikokikona dummy.

ʻaihue: REWF ZHJKL MMMN. LAA

Alice: Hewa ke kikokikona dummy.

ʻaihue: REWF ZHJKL MMMN. LBB

Alice: Hewa ke kikokikona dummy.

Ma hope o kekahi mau ho'āʻo...

ʻaihue: REWF ZHJKL MMMN. LGG

Alice: Hewa ke kikokikona dummy.

ʻaihue: REWF ZHJKL MMMN. LHH

Alice: TLQO JWCRO FQAW SUY LCR C OWQXYJW. IW PWWR TU TCFA CHUYT TLQO JWFCTQUPOLQZ.

Eia hou, ʻaʻohe manaʻo o ka mea hoʻouka i ka mea a Alice i ʻōlelo ai, akā e hoʻomaopopo ʻo H pono e hoʻohālikelike i ka b no ka mea ua ʻae ʻo Alice i ka kikokikona dummy.

A pēlā aku a ʻike ka mea hoʻouka i ke ʻano o kēlā me kēia ʻano.

I ka nānā mua ʻana, ua like ke ʻano me ka hoʻouka ʻana i ka plaintext i koho ʻia. I ka hopena, koho ka mea hoʻouka i nā ciphertexts, a hoʻolohe ke kikowaena iā lākou. ʻO ka ʻokoʻa nui e hiki ai kēia mau hoʻouka ʻana i ka honua maoli, ʻaʻole pono ka mea hoʻouka i ke komo ʻana i ka transcript maoli - kahi pane server, ʻo ia hoʻi ka hewa ʻole e like me "Invalid dummy text," lawa.

ʻOiai he mea aʻoaʻo kēia hoʻouka kaua, mai hoʻopili nui ʻoe i nā kikoʻī o ke kumumanaʻo "dummy text", ka cryptosystem kikoʻī i hoʻohana ʻia, a i ʻole ke kaʻina pololei o nā memo i hoʻouna ʻia e ka mea hoʻouka. ʻO ka manaʻo kumu ke ʻano ʻokoʻa o ka hana ʻana o Alice ma muli o nā waiwai o ka plaintext, a hana pēlā me ka ʻole o ka hōʻoia ʻana i hele maoli mai ka ciphertext e pili ana i kahi hui hilinaʻi. No laila, ʻae ʻo Alice i ka mea hoʻouka e ʻoki i ka ʻike huna mai kāna mau pane.

Nui nā mea hiki ke hoʻololi ʻia ma kēia ʻano. ʻO nā hōʻailona a Alice i pane ai, a i ʻole ka ʻokoʻa loa o kāna ʻano, a i ʻole ka cryptosystem i hoʻohana ʻia. Akā, e mau ana ke kumukānāwai, a ʻo ka hoʻouka ʻana ma ke ʻano holoʻokoʻa e hoʻomau ʻia ma kekahi ʻano a i ʻole. ʻO ka hoʻokō maʻamau o kēia hoʻouka kaua i kōkua i ka wehe ʻana i nā pōpoki palekana, a mākou e nānā koke ai; aka, aia ma mua kekahi mau haʻawina theoretical e aʻo ʻia. Pehea e hoʻohana ai i kēia "Alice script" i ka hoʻouka kaua e hiki ke hana i kahi cipher hou? Hiki paha kēia, ʻoiai ma ke kumumanaʻo?

I ka makahiki 1998, ua pane ʻo Swiss cryptographer Daniel Bleichenbacher i kēia nīnau ma ka ʻae. Ua hōʻike ʻo ia i ka hoʻouka kaua ʻana i ka cryptosystem RSA ākea ākea, me ka hoʻohana ʻana i kahi papahana memo kikoʻī. Ma kekahi mau hoʻokō RSA, pane ke kikowaena me nā memo hewa ʻē aʻe ma muli o ke kūlike o ka plaintext i ka hoʻolālā a i ʻole; ua lawa kēia i ka hoʻouka kaua.

ʻEhā mau makahiki ma hope mai, i ka makahiki 2002, ua hōʻike ʻo Serge Vaudenay ka mea kākau moʻolelo Farani i kahi hoʻouka ʻōlelo aʻoaʻo e like me ka mea i hōʻike ʻia ma ke kiʻi ʻo Alice ma luna - koe naʻe ma kahi o ka cipher fictitious, ua uhaʻi ʻo ia i kahi papa hanohano o nā ciphers hou i hoʻohana maoli ʻia e nā kānaka. ʻO ka mea nui, ʻo ka hoʻouka kaua ʻana o Vaudenay e hoʻopaʻa i nā ciphers nui hoʻokomo ("block ciphers") ke hoʻohana ʻia lākou i ka mea i kapa ʻia ʻo "CBC encryption mode" a me kekahi ʻano padding kaulana, e like me ka mea ma ke ʻano o Alice.

I ka makahiki 2002, ʻo John Kelsey ka mea kākau moʻolelo ʻAmelika - ka mea kākau Pālua - hoʻopuka i nā ʻano hoʻouka ʻōlelo aʻoaʻo i nā ʻōnaehana e hoʻopaʻa i nā memo a laila hoʻopili iā lākou. ʻO ka mea kaulana loa i waena o kēia mau mea, he hoʻouka kaua i hoʻohana i ka ʻoiaʻiʻo e hiki ke hoʻomaopopo i ka lōʻihi kumu o ka plaintext mai ka lōʻihi o ka ciphertext. Ma ke kumumanaʻo, ʻae kēia i kahi hoʻouka ʻōlelo e hoʻihoʻi i nā ʻāpana o ka plaintext kumu.

Ma lalo nei mākou e hāʻawi i kahi wehewehe kikoʻī o ka hoʻouka ʻana o Vaudenay a me Kelsey (e hāʻawi mākou i kahi wehewehe kikoʻī o ka hoʻouka ʻana o Bleichenbacher i ka wā e neʻe ai mākou i nā hoʻouka ʻana i ka cryptography kī lehulehu). ʻOiai kā mākou hoʻoikaika nui ʻana, lilo ka kikokikona i mea ʻenehana; no laila inā lawa nā mea i luna iā ʻoe, e hoʻokuʻu i nā ʻāpana ʻelua e hiki mai ana.

Hoouka kaua a Vodene

No ka hoʻomaopopo ʻana i ka hoʻouka kaua ʻana o Vaudenay, pono mua mākou e kamaʻilio liʻiliʻi e pili ana i nā block ciphers a me nā ʻano hoʻopunipuni. ʻO ka "block cipher", e like me ka mea i ʻōlelo ʻia, he cipher e lawe ana i kahi kī a me kahi hoʻokomo o kekahi lōʻihi paʻa ("lōʻihi poloka") a hana i kahi poloka i hoʻopili ʻia o ka lōʻihi like. Hoʻohana nui ʻia nā ciphers poloka a manaʻo ʻia he palekana. ʻO ka DES i hoʻomaha loa i kēia manawa, i manaʻo ʻia ʻo ka cipher hou mua, he poloka cipher. E like me ka mea i ʻōlelo ʻia ma luna nei, ʻoiaʻiʻo nō ia no AES, i hoʻohana nui ʻia i kēia lā.

ʻO ka mea pōʻino, loaʻa i nā ciphers poloka kekahi nāwaliwali ʻikea. ʻO ka nui o ka poloka maʻamau he 128 bits, a i ʻole 16 mau huapalapala. ʻIke loa, pono ka hana cryptography hou me ka ʻikepili hoʻokomo ʻoi aku ka nui, a ma laila kahi e pāʻani ai nā ʻano hoʻopunipuni. He hack maoli ke ʻano hoʻopunipuni: he ala ia e hoʻopili ai i kahi cipher poloka e ʻae wale i ka hoʻokomo ʻana o kekahi nui i ka hoʻokomo ʻana i kahi lōʻihi like ʻole.

Hoʻokumu ʻia ka hoʻouka ʻana o Vodene i ke ʻano hana CBC (Cipher Block Chaining) kaulana. Hoʻopili ka hoʻouka ʻana i ka cipher block underlying ma ke ʻano he pahu ʻeleʻele hiki ʻole ke hoʻopau ʻia a kāpae loa i kona palekana.

Eia kahi kiʻi e hōʻike ana i ka hana ʻana o ke ʻano CBC:

Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau

Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau

ʻO ka pōʻai hoʻohui e hōʻike ana i ka hana XOR (kūʻokoʻa OR). No ka laʻana, loaʻa ka poloka lua o ka ciphertext:

  1. Ma ka hana ʻana i kahi hana XOR ma ka poloka plaintext ʻelua me ka poloka ciphertext mua.
  2. Hoʻopili i ka poloka i loaʻa me kahi cipher poloka me ke kī.

No ka hoʻohana nui ʻana o CBC i ka hana binary XOR, e hoʻomanaʻo mākou i kekahi o kāna mau waiwai:

  • Idepotency: Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau
  • Hoʻololi: Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau
  • Huihui: Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau
  • Hiki ke hoʻololi iā ia iho: Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau
  • Ka nui byte: byte n o Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau = (byte n o Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau) Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau (byte n o Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau)

ʻO ka mea maʻamau, hōʻike kēia mau waiwai inā loaʻa iā mākou kahi hoohalike e pili ana i nā hana XOR a me kahi ʻike ʻole, hiki ke hoʻoholo ʻia. No ka laʻana, inā ʻike mākou i kēlā Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau me ka mea i ike ole ia Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau a kaulana Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau и Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau, a laila hiki iā mākou ke hilinaʻi i nā waiwai i ʻōlelo ʻia ma luna e hoʻonā i ka hoohalike no Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau. Ma ka hoohana ana i ka XOR ma na aoao elua o ka hoohalike me Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau, loaʻa iā mākou Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau. E lilo kēia i mea pili loa i ka manawa.

ʻElua mau ʻokoʻa liʻiliʻi a hoʻokahi ʻokoʻa nui ma waena o kā mākou ʻano ʻo Alice a me ka hoʻouka ʻana o Vaudenay. ʻElua mau mea liʻiliʻi:

  • Ma ka palapala, ua manaʻo ʻo Alice e hoʻopau ʻia nā palapala maʻamau me nā huaʻōlelo a, bb, ccc a laila. I ka hoouka kaua Wodene, mana'o ka mea i pepehiia e hoopau i na kikokikona me ka N byte (oia hoi, hexadecimal 01 a i ole 02 02, a i ole 03 03 03, a pela aku). He ʻokoʻa cosmetic wale nō kēia.
  • Ma ke ʻano ʻo Alice, ua maʻalahi ka haʻi ʻana inā ua ʻae ʻo Alice i ka memo ma o ka pane "Incorrect dummy text." I ka hoouka kaua ana o Vodene, pono hou ka noonoo ana a he mea nui ka hoohana pololei ana ma ka aoao o ka mea i pepehiia; akā, no ka pōkole, e lawe kākou ma ke ʻano he hiki ke hiki i kēia loiloi.

ʻokoʻa nui:

  • No ka mea ʻaʻole mākou e hoʻohana i ka cryptosystem like, ʻokoʻa ka pilina ma waena o nā ciphertext bytes a me nā mea huna (key a plaintext). No laila, pono e hoʻohana ka mea hoʻouka i kahi hoʻolālā ʻokoʻa i ka wā e hana ai i nā ciphertexts a me ka unuhi ʻana i nā pane kikowaena.

ʻO kēia ʻokoʻa nui ka ʻāpana hope o ka puʻupuʻu e hoʻomaopopo ai i ka hoʻouka kaua ʻana o Vaudenay, no laila e noʻonoʻo kākou i ke kumu a pehea e hiki ai ke kau ʻia kahi hoʻouka kaua ma CBC ma kahi mua.

Inā paha ua hāʻawi ʻia iā mākou he CBC ciphertext o 247 poloka, a makemake mākou e hoʻokaʻawale iā ia. Hiki iā mākou ke hoʻouna i nā leka hoʻopunipuni i ke kikowaena, e like me ka hiki iā mākou ke hoʻouna i nā leka hoʻopunipuni iā ​​Alice ma mua. Na ke kikowaena e hoʻokaʻawale i nā memo no mākou, akā ʻaʻole ia e hōʻike i ka decryption - akā, e like me Alice, e hōʻike ke kikowaena i hoʻokahi wahi o ka ʻike: inā he padding kūpono a ʻaʻole paha ka plaintext.

E noʻonoʻo i ke ʻano o Alice i loaʻa iā mākou nā pilina penei:

$$hōʻike$$ kikokikona{SIMPLE_SUBSTITUTION}(kikokikona{ciphertext}, kikokikona{ki}) = kikokikona{plaintext}$$hōʻike$$

E kapa kakou i keia "ka hoohalike ana o Alice." Ua mālama mākou i ka ciphertext; ua hoʻopuka ke kikowaena (Alice) i ka ʻike maopopo ʻole e pili ana i ka plaintext i loaʻa; a ua ʻae kēia iā mākou e unuhi i ka ʻike e pili ana i ke kumu hope - ke kī. Ma ka hoʻohālikelike, inā hiki iā mākou ke ʻike i kahi pilina no ka palapala CBC, hiki iā mākou ke unuhi i kekahi ʻike huna ma laila.

ʻO ka pōmaikaʻi, aia maoli nā pilina ma waho e hiki ai iā mākou ke hoʻohana. E noʻonoʻo i ka hoʻopuka ʻana o ke kelepona hope e hoʻokaʻawale i kahi cipher poloka a e kuhikuhi i kēia pukana Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau. Hōʻike pū mākou i nā poloka o ka plaintext Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau a me nā poloka ciphertext Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau. E nānā hou i ke kiʻikuhi CBC a ʻike i ka mea e hana nei:

Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau

E kapa mākou i kēia ka "CBC equation."

Ma ke ʻano o Alice, ma ka nānā ʻana i ka ciphertext a me ka nānā ʻana i ka leak plaintext e pili ana, ua hiki iā mākou ke hoʻouka i kahi hoʻouka ʻana i hoʻihoʻi i ke kolu o ka huaʻōlelo i ka hoohalike—ke kī. Ma ka CBC scenario, ke nānā pū nei mākou i ka ciphertext a nānā i ka ʻike leaks ma ka plaintext pili. Inā paʻa ka hoʻohālikelike, hiki iā mākou ke loaʻa ka ʻike e pili ana Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau.

E manaʻo mākou ua hoʻihoʻi maoli mākou Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau, pehea la? A laila hiki iā mākou ke paʻi i ka poloka hope loa o ka plaintext i ka manawa hoʻokahi (Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau), ma ke komo wale ʻana Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau (i loaʻa iā mākou) a
loaʻa Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau i ka hoohalike CBC.

I kēia manawa ua manaʻo mākou e pili ana i ka hoʻolālā holoʻokoʻa o ka hoʻouka ʻana, ʻo ia ka manawa e hana ai i nā kikoʻī. E ʻoluʻolu e nānā pono i ke ʻano o ka ʻike ʻana i ka plaintext ma ke kikowaena. Ma ka palapala a Alice, ua hiki mai ka leak no ka mea e pane wale ana o Alice me ka memo pololei ina $inline$text{SIMPLE_SUBSTITUTION}(text{ciphertext},text{key})$inline$ i pau me ka laina. a (ai ole bb, a pēlā aku, akā, liʻiliʻi loa nā kūlana o kēia mau kūlana i hoʻomaka ʻia e ka manawa. E like me CBC, ʻae ke kikowaena i ka padding inā a inā wale nō Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau pau i ka hexadecimal 01. No laila e hoʻāʻo kākou i ka hoʻopunipuni hoʻokahi: hoʻouna ʻana i nā ciphertexts hoʻopunipuni me kā mākou mau waiwai hoʻopunipuni Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikaua hiki i ka manawa e ʻae ai ke kikowaena i ka hoʻopiha.

Ke ʻae ke kikowaena i kahi padding no kekahi o kā mākou mau leka hoʻopunipuni, ʻo ia hoʻi:

Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau

I kēia manawa, hoʻohana mākou i ka waiwai byte-byte XOR:

Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau

ʻIke mākou i ka huaʻōlelo mua a me ke kolu. A ua ʻike mua mākou e hiki iā mākou ke hoʻihoʻi i ke koena o ka huaʻōlelo - ka byte hope mai Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau:

Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau

Hāʻawi kēia iā mākou i ka byte hope o ka poloka plaintext hope ma o ka CBC equation a me ka waiwai byte-by-byte.

Hiki iā mākou ke haʻalele iā ia a ʻoluʻolu ua hoʻokō mākou i kahi hoʻouka kaua ma kahi cipher ikaika. Akā ʻoiaʻiʻo hiki iā mākou ke hana i nā mea hou aku: hiki iā mākou ke hoʻihoʻi maoli i nā kikokikona āpau. Pono kēia i kahi hoʻopunipuni ʻaʻole i loko o ka palapala kumu mua a Alice a ʻaʻole koi ʻia no ka hoʻouka ʻōlelo, akā pono nō ke aʻo ʻana.

No ka hoʻomaopopo ʻana, e hoʻomaopopo mua i ka hopena o ka hoʻopuka ʻana i ka waiwai kūpono o ka byte hope Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau he mana hou ko makou. I kēia manawa, i ka hana ʻana i nā ciphertexts, hiki iā mākou ke hana i ka byte hope o ka plaintext pili. Eia hou, pili kēia i ka CBC equation a me ka waiwai byte-by-byte:

Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau

No ka mea ʻike mākou i ka huaʻōlelo ʻelua, hiki iā mākou ke hoʻohana i kā mākou mana ma luna o ka mua e hoʻomalu i ke kolu. E helu wale mākou:

Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau

ʻAʻole hiki iā mākou ke hana i kēia ma mua no ka mea ʻaʻole i loaʻa iā mākou ka byte hope loa Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau.

Pehea kēia e kōkua ai iā mākou? Inā mākou e hana i kēia manawa i nā ciphertexts a i loko o nā plaintexts pili ka byte hope e like me 02. I kēia manawa, ʻae wale ke kikowaena i ka padding inā pau ka plaintext me 02 02. Ma muli o ko mākou hoʻoponopono ʻana i ka byte hope, e hana wale kēia inā ʻo ka byte penultimate o ka plaintext he 02. Hoʻouna mau mākou i nā poloka ciphertext hoʻopunipuni, e hoʻololi i ka byte penultimate, a hiki i ke kikowaena e ʻae i ka padding no kekahi o lākou. I kēia manawa loaʻa iā mākou:

Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau

A hoʻihoʻi mākou i ka byte penultimate Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau e like me ka mea hope i hoʻihoʻi ʻia. Hoʻomau mākou i ka ʻuhane like: hoʻoponopono mākou i nā bytes hope ʻelua o ka plaintext i 03 03, ke hana hou nei mākou i kēia hoʻouka ʻana no ke kolu o ka byte mai ka hopena a pēlā aku, e hoʻihoʻi hou ana Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau.

Pehea ke koena o ka kikokikona? E ʻoluʻolu e hoʻomaopopo i ka waiwai Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau ʻo ia ka $inline$text{BLOCK_DECRYPT}(text{key},C_{247})$inline$. Hiki iā mākou ke kau i kekahi poloka ʻē aʻe Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau, a e holomua ana ka hoouka ana. ʻOiaʻiʻo, hiki iā mākou ke noi i ke kikowaena e hana $inline$text{BLOCK_DECRYPT}$inline$ no kekahi ʻikepili. I kēia manawa, ua pau ka pāʻani - hiki iā mākou ke hoʻokaʻawale i kekahi ciphertext (e nānā hou i ka CBC decryption diagram e ʻike i kēia; a e hoʻomaopopo i ka lehulehu o ka IV).

He hana koʻikoʻi kēia ʻano hana i ka hoʻouka ʻōlelo oracle a mākou e hālāwai ai ma hope.

Ka hoouka kaua a Kelsey

ʻO kā mākou ʻoluʻolu ʻo John Kelsey i waiho i nā kumumanaʻo e pili ana i nā hoʻouka kaua he nui, ʻaʻole wale nā ​​kikoʻī o kahi hoʻouka kaua ma kahi cipher kikoʻī. ʻO kāna ʻ articlelelo 2002 o ka makahiki he aʻo ʻana i nā hoʻouka ʻana i ka ʻikepili i hoʻopili ʻia. Ua manaʻo paha ʻoe ʻaʻole lawa ka ʻike i hoʻopaʻa ʻia ka ʻikepili ma mua o ka hoʻopili ʻana no ka hoʻouka ʻana? Ua lawa ia.

ʻO kēia hopena kamahaʻo ma muli o nā kumu ʻelua. ʻO ka mua, aia kahi pilina ikaika ma waena o ka lōʻihi o ka plaintext a me ka lōʻihi o ka ciphertext; no ka nui o na ciphers i kaulike pololei. ʻO ka lua, i ka wā e hoʻokō ʻia ai ka paʻi ʻana, aia kekahi pilina ikaika ma waena o ka lōʻihi o ka memo i hoʻopaʻa ʻia a me ke ʻano o ka "noisiness" o ka plaintext, ʻo ia hoʻi, ka hapa o nā huaʻōlelo hou ʻole (ʻo ka huaʻōlelo ʻenehana ʻo "high entropy" ).

No ka ʻike ʻana i ka manaʻo i ka hana, e noʻonoʻo i ʻelua mau ʻōlelo maʻalahi:

kikokikona 1: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

kikokikona 2: ATVXCAGTRSVPTVVULSJQHGEYCMQPCRQBGCYIXCFJGJ

E manaʻo mākou ua hoʻopili ʻia nā plaintext ʻelua a laila hoʻopili ʻia. Loaʻa iā ʻoe nā ciphertext ʻelua a pono ʻoe e koho i ka ciphertext e pili ana i ka plaintext:

Ciphertext 1: PVOVEYBPJDPVANEAWVGCIUWAABCIYIKOOURMYDTA

Ciphertext 2: DWKJZXYU

Ua maopopo ka pane. Ma waena o nā kikokikona, hiki ke hoʻopili ʻia ke kikokikona 1 wale nō i loko o ka lōʻihi liʻiliʻi o ka ciphertext ʻelua. Ua noʻonoʻo mākou i kēia me ka ʻike ʻole i kekahi mea e pili ana i ka algorithm compression, ke kī encryption, a i ʻole ka cipher ponoʻī. Ke hoʻohālikelike ʻia i ka hierarchy o ka hiki ke hoʻouka cryptographic, ʻano pupule kēia.

Hōʻike hou ʻo Kelsey ma lalo o kekahi mau kūlana maʻamau hiki ke hoʻohana ʻia kēia kumukānāwai no ka hoʻokō ʻana i kahi hoʻouka ʻōlelo. Ma keʻano kūikawā, wehewehe ia pehea e hiki ai i ka mea hoʻouka ke hoʻihoʻi i ka plaintext huna inā hiki iā ia ke koi i ka server e hoʻopili i ka ʻikepili palapala (ka plaintext i ukali ʻia e Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikauoiai oia e hoomalu ana Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau a hiki ke nānā i ka lōʻihi o ka hopena i hoʻopili ʻia.

Eia hou, e like me nā ʻōlelo hoʻouka kaua, loaʻa iā mākou ka pilina:

Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau

Eia hou, mālama mākou i hoʻokahi huaʻōlelo (Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau), ʻike mākou i kahi leka liʻiliʻi o ka ʻike e pili ana i kekahi lālā (ciphertext) a hoʻāʻo e hoʻihoʻi i ka mea hope (plaintext). ʻOiai ʻo ka hoʻohālikelike, he kūlana ʻokoʻa kēia i hoʻohālikelike ʻia me nā hoʻouka ʻōlelo a mākou i ʻike ai.

No ka hōʻike ʻana i ke ʻano o ka hoʻouka ʻana, e hoʻohana kākou i kahi hoʻolālā hoʻopiʻi hoʻopunipuni a mākou i hana ai: TOYZIP. ʻImi ia i nā laina kikokikona i ʻike mua ʻia i loko o ka kikokikona a pani iā ​​​​lākou me ʻekolu wahi paita e hōʻike ana i kahi e loaʻa ai kahi laʻana mua o ka laina a me ka nui o ka manawa i ʻike ʻia ma laila. Eia kekahi laʻana, ka laina helloworldhello hiki ke hoʻokomo i loko helloworld[00][00][05] 13 paita ka lōʻihi i hoʻohālikelike ʻia me ka 15 paita kumu.

Inā ho'āʻo ka mea hoʻouka e hoʻihoʻi hou i ka ʻōlelo kikoʻī o kahi palapala password=..., kahi i ʻike ʻole ʻia ai ka ʻōlelo huna. Wahi a ke kumu hoʻouka kaua a Kelsey, hiki i ka mea hoʻouka ke noi i ke kikowaena e kaomi a laila hoʻopili i nā memo puka (plaintext ukali e Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau), kahi Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau - kikokikona manuahi. Ke pau ka hana a ke kikowaena, hōʻike ia i ka lōʻihi o ka hopena. Penei ka hoouka ana:

ʻaihue: E ʻoluʻolu e kaomi a hoʻopili i ka plaintext me ka ʻole o kahi pale.

Server: Ka lōʻihi o ka hopena 14.

ʻaihue: E ʻoluʻolu e kaomi a hoʻopili i ka plaintext i hoʻopili ʻia password=a.

Server: Ka lōʻihi o ka hopena 18.

'Ōlelo ka pahūpahū: [14 kumu mua] + [ʻekolu paita i pani password=] + a

ʻaihue: E ʻoluʻolu e kaomi a hoʻopili i ka plaintext i hoʻohui ʻia password=b.

Server: Ka lōʻihi o ka hopena 18.

ʻaihue: E ʻoluʻolu e kaomi a hoʻopili i ka plaintext i hoʻohui ʻia password=с.

Server: Ka lōʻihi o ka hopena 17.

'Ōlelo ka pahūpahū: [14 kumu mua] + [ʻekolu paita i pani password=c]. Manaʻo kēia aia ke kaula i ka plaintext kumu password=c. ʻO ia hoʻi, hoʻomaka ka ʻōlelo huna me kahi leka c

ʻaihue: E ʻoluʻolu e kaomi a hoʻopili i ka plaintext i hoʻohui ʻia password=сa.

Server: Ka lōʻihi o ka hopena 18.

'Ōlelo ka pahūpahū: [14 kumu mua] + [ʻekolu paita i pani password=с] + a

ʻaihue: E ʻoluʻolu e kaomi a hoʻopili i ka plaintext i hoʻohui ʻia password=сb.

Server: Ka lōʻihi o ka hopena 18.

(… Ma hope o kekahi manawa…)

ʻaihue: E ʻoluʻolu e kaomi a hoʻopili i ka plaintext i hoʻohui ʻia password=со.

Server: Ka lōʻihi o ka hopena 17.

'Ōlelo ka pahūpahū: [14 kumu mua] + [ʻekolu paita i pani password=co]. Ke hoʻohana nei i ka loiloi like, hoʻoholo ka mea hoʻouka e hoʻomaka ka ʻōlelo huna me nā leka co

A pēlā aku a hiki i ka hoʻihoʻi ʻia ʻana o ka ʻōlelo huna a pau.

E kala ʻia ka mea heluhelu no ka noʻonoʻo ʻana he hana hoʻonaʻauao maʻemaʻe kēia a ʻaʻole loa e kū mai kēlā ʻano hoʻouka kaua ma ka honua maoli. Auē, e like me kā mākou e ʻike koke ai, ʻoi aku ka maikaʻi o ka haʻalele ʻana i ka cryptography.

Nā nāwaliwali o ka brand: CRIME, POODLE, DROWN

ʻO ka mea hope loa, ma hope o ke aʻo ʻana i ke kumumanaʻo i nā kikoʻī, hiki iā mākou ke ʻike pehea e hoʻohana ʻia ai kēia mau ʻenehana i nā hoʻouka cryptographic maoli.

KAHI

Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikauInā pili ka hoʻouka ʻana i ka polokalamu kele pūnaewele a me ka pūnaewele o ka mea i pepehi ʻia, e maʻalahi kekahi a ʻoi aku ka paʻakikī o kekahi. No ka laʻana, he mea maʻalahi ke ʻike i ke kaʻa o ka mea i pepehi ʻia: e noho wale me ia i ka cafe like me WiFi. No kēia kumu, ʻōlelo pinepine ʻia ka poʻe i hoʻopilikia ʻia (ʻo ia hoʻi. E ʻoi aku ka paʻakikī, akā hiki nō naʻe ke hana i nā noi HTTP no ka mea i hōʻeha ʻia i kekahi pūnaewele ʻaoʻao ʻekolu (no ka laʻana, Google). Pono ka mea hoʻouka e hoʻowalewale i ka mea i pepehi ʻia i kahi ʻaoʻao pūnaewele ʻino me kahi palapala e hana ai i ka noi. E hāʻawi 'akomi ka polokalamu kele pūnaewele i ke kuki hālāwai kūpono.

He mea kupanaha kēia. Inā hele ʻo Bob i evil.com, hiki i ka palapala ma kēia pūnaewele ke noi wale iā Google e leka uila i ka ʻōlelo huna a Bob [email protected]? ʻAe, ma ke kumumanaʻo ʻae, akā ma ka ʻoiaʻiʻo ʻaʻole. Ua kapa ʻia kēia hiʻohiʻona he hoʻouka hoʻopunipuni hoʻopiʻi kahua kahua (Noi Kea i ka hoopunipuni, CSRF), a kaulana ia ma ka waena o 90s. I kēia lā inā evil.com e ho'āʻo i kēia hana hoʻopunipuni, Google (a i ʻole kekahi pūnaewele hoʻohanohano iā ia iho) e pane pinepine me, "Maikaʻi, akā ʻo kāu hōʻailona CSRF no kēia kālepa ʻana ʻo ia ... um... три триллиона и семь. E ʻoluʻolu e hana hou i kēia helu." Loaʻa i nā polokalamu kele pūnaewele hou kekahi mea i kapa ʻia he "kulekele kumu hoʻokahi" kahi i loaʻa ʻole ai i nā palapala ma ka pūnaewele A i ka ʻike i hoʻouna ʻia e ka pūnaewele B. evil.com hiki ke hoʻouna i nā noi i google.com, akā ʻaʻole hiki ke heluhelu i nā pane a i ʻole hoʻopau maoli i ke kālepa.

Pono mākou e koʻikoʻi inā ʻaʻole e hoʻohana ʻo Bob i kahi pilina i hoʻopili ʻia, ʻaʻohe kumu o kēia mau pale a pau. Hiki i ka mea hoʻouka ke heluhelu wale i ka huakaʻi a Bob a hoʻihoʻi i ka cookie session Google. Me kēia kuki, e wehe wale ʻo ia i kahi ʻaoʻao Google hou me ka haʻalele ʻole i kāna polokalamu kele ponoʻī a hoʻohālikelike iā Bob me ka ʻole e ʻike i nā kulekele kumu like ʻole. Akā naʻe, ʻo ka mea pōʻino no ka mea ʻaihue, ua emi a emi iki kēia. Ua hoʻolaha lōʻihi ka Internet holoʻokoʻa i ke kaua ma nā pilina i hoʻopili ʻole ʻia, a ua hoʻopili ʻia paha ka hele ʻana o Bob, inā makemake ʻo ia a ʻaʻole paha. Eia kekahi, mai ka hoʻomaka ʻana o ka hoʻokō ʻana i ka protocol, ʻo ke kaʻa kekahi emi iho ma mua o ka hoʻopili ʻana; He hana maʻamau kēia e hoʻemi i ka latency.

ʻO kēia kahi e pāʻani ai KAHI (Compression Ratio Infoleak Made Easy, leakage maʻalahi ma o ka ratio hoʻoemi). Ua hōʻike ʻia ka nāwaliwali ma Kepakemapa 2012 e nā mea noiʻi palekana ʻo Juliano Rizzo a me Thai Duong. Ua noʻonoʻo mua mākou i ke kumu aʻoaʻo holoʻokoʻa, e hiki ai iā mākou ke hoʻomaopopo i kā lākou hana a pehea. Hiki i ka mea hoʻouka kaua ke koi aku i ka polokalamu kele pūnaewele ʻo Bob e hoʻouna i nā noi iā Google a laila hoʻolohe i nā pane ma ka pūnaewele kūloko ma kahi ʻano i hoʻopili ʻia. No laila, loaʻa iā mākou:

Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikau

Ma ʻaneʻi ke hoʻomalu nei ka mea hoʻouka i ka noi a loaʻa iā ia ka sniffer traffic, me ka nui o ka ʻeke. Ua ola ke ʻano moʻokalaleo a Kelsey.

Ma ka hoʻomaopopo ʻana i ke kumumanaʻo, ua hana nā mea kākau o CRIME i kahi hoʻohana e hiki ke ʻaihue i nā kuki hālāwai no kahi ākea o nā pūnaewele, me Gmail, Twitter, Dropbox a me Github. Ua hoʻopili ʻia ka nāwaliwali i ka hapa nui o nā polokalamu kele pūnaewele hou, a ua hoʻokuʻu ʻia nā ʻāpana i kanu mālie i ka hiʻohiʻona paʻi ma SSL i ʻole e hoʻohana ʻia. ʻO ka mea hoʻokahi wale nō i pale ʻia mai ka nāwaliwali ʻo ia ka Internet Explorer hanohano, ʻaʻole loa i hoʻohana i ka hoʻopili SSL.

POODLE

Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikauI ʻOkakopa 2014, ua hana ka hui palekana Google i nā nalu i ke kaiāulu palekana. Ua hiki iā lākou ke hoʻohana i kahi nāwaliwali i ka protocol SSL i hoʻopaʻa ʻia ma mua o ʻumi mau makahiki i hala.

ʻIke ʻia ʻoiai e holo ana nā kikowaena i ka TLSv1.2 hou ʻālohilohi, nui ka poʻe i haʻalele i ke kākoʻo no ka SSLv3 hoʻoilina no ka hoʻokō ʻana i hope me Internet Explorer 6. Ua kamaʻilio mua mākou e pili ana i nā hōʻeha downgrade, no laila hiki iā ʻoe ke noʻonoʻo i ka mea e hana nei. ʻO kahi sabotage i hoʻonohonoho maikaʻi ʻia o ka protocol lulu lima a ua mākaukau nā kikowaena e hoʻi i ka SSLv3 kahiko maikaʻi, me ka wehe ʻana i nā makahiki he 15 o ka noiʻi palekana.

No ka pōʻaiapili mōʻaukala, eia kahi hōʻuluʻulu pōkole o ka moʻolelo o SSL a hiki i ka mana 2 mai Matthew Green:

ʻO ka Transport Layer Security (TLS) ka protocol palekana nui loa ma ka Pūnaewele. [..] ʻaneʻane pili nā hana a pau āu e hana ai ma ka Pūnaewele ma TLS. [..] Akā ʻaʻole ʻo TLS i TLS mau. Ua hoʻomaka ka protocol i kona ola ma Nā Kūkākūkā Netscape kapa ʻia ʻo "Secure Sockets Layer" a i ʻole SSL. Ua ʻōlelo ʻia he weliweli loa ka mana mua o SSL a ua hōʻiliʻili nā mea hoʻomohala i nā paʻi āpau o ke code a kanu iā lākou i kahi ʻāina huna ma New Mexico. ʻO ka hopena, ʻo ka mana mua o ka SSL i loaʻa i ka lehulehu mana SSL 2. He mea weliweli loa ia, a [..] he huahana ia o ka waena o 90s, i manaʻo ʻia e nā cryptographers hou he "nā makahiki pōuliuli o ka cryptography" ʻAʻole i ʻike ʻia ka nui o nā hōʻeha cryptographic weliweli loa a mākou i ʻike ai i kēia lā. ʻO ka hopena, ua waiho ʻia nā mea hoʻomohala o ka protocol SSLv2 e hoʻoheheʻe i ko lākou ala i ka pōʻeleʻele, a ua kū lākou i mua. ka nui o na monster weliweli - i ko lākou huhū a me ko mākou pōmaikaʻi, ʻoiai ua waiho ka hoʻouka ʻana ma SSLv2 i nā haʻawina koʻikoʻi no ka hanauna hou o nā protocols.

Ma hope o kēia mau hanana, i ka makahiki 1996, ua hoʻolālā hou kahi Netscape huhū i ka protocol SSL mai ka wā ʻōpala. ʻO ka hopena he SSL version 3, ʻo ia ua hoʻoponopono i kekahi mau pilikia palekana i ʻike ʻia o kona mua.

ʻO ka mea pōmaikaʻi no ka poʻe ʻaihue, ʻaʻole i manaʻo ʻo "kakaikahi" ʻo "nā mea āpau." Ma keʻano holoʻokoʻa, hāʻawi ʻo SSLv3 i nā poloka hale e pono ai e hoʻomaka i kahi hoʻouka kaua Vodene. Ua hoʻohana ka protocol i kahi CBC mode block cipher a me kahi hoʻolālā padding insecure (ua hoʻoponopono ʻia kēia ma TLS; no laila pono ka hoʻouka ʻana i ka hoʻouka ʻana). Inā hoʻomanaʻo ʻoe i ka hoʻolālā padding i kā mākou wehewehe mua ʻana i ka hoʻouka kaua ʻana o Vaudenay, ua like loa ke ʻano SSLv3.

Akā, ʻo ka mea pōʻino no ka poʻe ʻaihue, "like" ʻaʻole ia he "like". ʻO ka hoʻolālā padding SSLv3 he "N random bytes i ukali ʻia e ka helu N". E hoʻāʻo, ma lalo o kēia mau kūlana, e koho i kahi poloka noʻonoʻo o ka ciphertext a hele i nā ʻanuʻu āpau o ka hoʻolālā kumu mua a Vaudene: e ʻike ʻoe i ka hoʻouka ʻana o ka hoʻouka ʻana i ka byte hope loa mai ka poloka like o ka plaintext, akā ʻaʻole e hele i mua. ʻO ka wehe ʻana i kēlā me kēia 16th byte o ka ciphertext he hana hoʻopunipuni nui, akā ʻaʻole ia he lanakila.

I mua o ka hiki ʻole, ua hoʻohana ka hui Google i kahi ala hope loa: ua hoʻololi lākou i kahi kumu hoʻoweliweli ikaika loa - ka mea i hoʻohana ʻia ma CRIME. Ke manaʻo nei ʻo ka mea hoʻouka he palapala e holo ana ma ka ʻaoʻao pūnaewele o ka mea i pepehi ʻia a hiki iā ia ke unuhi i nā kuki hālāwai, ʻoi aku ka maikaʻi o ka hoʻouka ʻana. ʻOiai ka liʻiliʻi o ka hoʻohālikelike hoʻoweliweli ākea, ua ʻike mākou ma ka ʻāpana o mua e hiki ke kūpono kēia ʻano hoʻohālike.

Hāʻawi ʻia i kēia mau mea hoʻouka kaua ikaika, hiki ke hoʻomau i kēia manawa. E hoʻomaopopo i ka ʻike ʻana o ka mea hoʻouka i kahi e ʻike ʻia ai ka cookie session i hoʻopili ʻia ma ke poʻo a mālama i ka lōʻihi o ka noi HTTP ma mua o ia. No laila, hiki iā ia ke hoʻololi i ka noi HTTP i hoʻohālikelike ʻia ka byte hope o ka kuki me ka hopena o ka poloka. I kēia manawa kūpono kēia byte no ka decryption. Hiki iā ʻoe ke hoʻohui i hoʻokahi ʻano i ka noi, a ʻo ka byte penultimate o ka kuki e noho ma kahi hoʻokahi a kūpono no ke koho ʻana me ke ʻano like. Ke hoʻomau nei ka hoʻouka ʻana ma kēia ʻano a hiki i ka hoʻihoʻi ʻia ʻana o ka faila kuki. Kapa ʻia ʻo POODLE: Padding Oracle ma Downgraded Legacy Encryption.

POLOLE

Hoʻouka kaua Cryptographic: he wehewehe no nā manaʻo huikauE like me kā mākou i ʻōlelo ai, loaʻa i ka SSLv3 kona mau hemahema, akā ʻokoʻa loa ia mai kona mua, no ka mea, ʻo ka leaky SSLv2 kahi huahana o kahi wā ʻokoʻa. Ma laila hiki iā ʻoe ke hoʻopau i ka memo ma waena: соглашусь на это только через мой труп lilo i соглашусь на это; hiki i ka mea kūʻai a me ke kikowaena ke hui ma ka pūnaewele, hoʻokumu i ka hilinaʻi a hoʻololi i nā mea huna i mua o ka mea hoʻouka, a laila hiki iā ia ke hoʻohālike maʻalahi i nā mea ʻelua. Aia kekahi pilikia me ka cryptography export, a mākou i ʻōlelo ai i ka wā e noʻonoʻo ai iā FREAK. ʻO kēia ka cryptographic Sodoma a me Gomora.

I Malaki 2016, ua hui pū kekahi hui o nā mea noiʻi mai nā ʻenehana ʻenehana like ʻole a loaʻa kahi ʻike weliweli: hoʻohana mau ʻia ʻo SSLv2 i nā ʻōnaehana palekana. ʻAe, ʻaʻole hiki i nā mea hoʻouka ke hoʻohaʻahaʻa hou i nā kau TLS hou i SSLv2 mai ka wā i pani ʻia ai kēlā puka ma hope o FREAK a me POODLE, akā hiki iā lākou ke hoʻopili i nā kikowaena a hoʻomaka i nā kau SSLv2 iā lākou iho.

E nīnau paha ʻoe, no ke aha mākou e mālama ai i kā lākou hana ma laila? Loaʻa iā lākou kahi hālāwai palupalu, akā ʻaʻole pono ia e pili i nā kau ʻē aʻe a i ʻole ka palekana o ke kikowaena - pololei? ʻAe, ʻaʻole loa. ʻAe, ʻo ia ke ʻano o ka manaʻo. Akā ʻaʻole - no ka mea, ʻo ka hoʻokumu ʻana i nā palapala SSL ke kau nei i kekahi kaumaha, e hopena i nā kikowaena he nui e hoʻohana ana i nā palapala like a, ma muli o ka hopena, nā kī like RSA no nā pilina TLS a me SSLv2. I mea e ʻoi aku ka hewa, ma muli o kahi pahu OpenSSL, ʻaʻole i hana maoli ka koho "Disable SSLv2" i kēia hoʻokō SSL kaulana.

Ua hiki kēia i ka hoʻouka kaua cross-protocol ma TLS, i kapa ʻia POLOLE (E hoʻokaʻawale i ka RSA me ka Obsolete a Weakened eNcryption, e hoʻokaʻawale i ka RSA me ka hoʻopunipuni a nāwaliwali). E hoʻomanaʻo ʻaʻole like kēia me kahi hoʻouka pōkole; ʻAʻole pono ka mea hoʻouka kaua e hana ma ke ʻano he "kanaka ma waena" a ʻaʻole pono e hoʻokomo i ka mea kūʻai aku e komo i kahi kau palekana. Hoʻomaka wale nā ​​mea hoʻouka i kahi hālāwai SSLv2 insecure me ke kikowaena ponoʻī, hoʻouka i ka protocol nāwaliwali, a hoʻihoʻi i ke kī pilikino RSA o ka server. Pono pū kēia kī no nā pilina TLS, a mai kēia manawa aku, ʻaʻohe nui o ka palekana TLS e pale iā ia mai ka hoʻololi ʻana.

Akā no ka paʻi ʻana, pono ʻoe i kahi hoʻouka kaua e kūʻē iā SSLv2, kahi e hiki ai iā ʻoe ke hoʻihoʻi ʻaʻole wale i nā kaʻa kikoʻī, akā ʻo ke kī huna RSA pū kekahi. ʻOiai he hoʻonohonoho paʻakikī kēia, hiki i nā mea noiʻi ke koho i nā nāwaliwali i pani ʻia ma hope o SSLv2. Ua loaʻa iā lākou kahi koho kūpono: ka hoʻouka kaua ʻo Bleichenbacher, a mākou i ʻōlelo ai ma mua a mākou e wehewehe kikoʻī ma ka ʻatikala aʻe. Mālama ʻia ʻo SSL a me TLS mai kēia hoʻouka ʻana, akā ua hiki i kekahi mau hiʻohiʻona o SSL, i hui pū ʻia me nā kī pōkole i ka cryptography export-grade. kahi hoʻokō kikoʻī o DROWN.

I ka manawa o ka paʻi ʻana, 25% o nā pūnaewele kiʻekiʻe o ka Pūnaewele i hoʻopilikia ʻia e ka vulnerability DROWN, a hiki ke hoʻokō ʻia ka hoʻouka ʻana me nā kumuwaiwai haʻahaʻa i loaʻa i nā hacker lone kolohe. No ka hoʻihoʻi ʻana i ke kī RSA o ke kikowaena, pono ʻewalu hola o ka helu ʻana a me $440, a ua hele ʻo SSLv2 mai ka wā kahiko a i ka radioactive.

E kali, pehea ʻo Heartbleed?

ʻAʻole kēia he hoʻouka cryptographic ma ke ʻano i hōʻike ʻia ma luna; ʻO kēia ka hoʻohāhā ʻana.

E hoʻomaha kāua

Ua hoʻomaka mākou me kekahi mau ʻenehana kumu: brute force, interpolation, downgrading, cross-protocol, a me precomputation. A laila nānā mākou i hoʻokahi ʻenehana holomua, ʻo ia paha ka mea nui o nā hoʻouka cryptographic hou: ka hoʻouka ʻōlelo. Ua hoʻohana mākou i kekahi manawa no ka noʻonoʻo ʻana - a hoʻomaopopo ʻaʻole wale i ke kumu kumu, akā ʻo nā kikoʻī ʻenehana o nā hoʻokō kikoʻī ʻelua: ka hoʻouka ʻana o Vaudenay i ka mode encryption CBC a me ka hoʻouka ʻana o Kelsey i nā protocol encryption pre-compression.

I ka nānā ʻana i nā hoʻouka hoʻohaʻahaʻa a me ka precomputation, ua wehewehe pōkole mākou i ka hoʻouka kaua FREAK, e hoʻohana ana i nā ala ʻelua ma o ka hoʻohaʻahaʻa ʻana i nā pae i nā kī nāwaliwali a laila hoʻohana hou i nā kī like. No ka ʻatikala aʻe, e mālama mākou i ka hoʻouka ʻana (like loa) Logjam, ka mea e kuhikuhi ana i nā algorithm kī nui.

A laila nānā mākou i ʻekolu mau laʻana o ka hoʻohana ʻana i kēia mau loina. ʻO ka mea mua, CRIME a me POODLE: ʻelua hoʻouka kaua i hilinaʻi i ka hiki o ka mea hoʻouka ke hoʻokomo i ka plaintext arbitrary ma hope o ka plaintext target, a laila e nānā i nā pane a ke kikowaena a alaila, me ka hoʻohana ʻana i ke ʻano o ka hoʻouka kaua ʻana, e hoʻohana i kēia ʻike liʻiliʻi e hoʻihoʻi hapa i ka plaintext. Ua hele ʻo CRIME i ke ala o ka hoʻouka ʻana o Kelsey i ka hoʻopili SSL, ʻoiai ua hoʻohana ʻo POODLE i kahi ʻano like ʻole o ka hoʻouka ʻana a Vaudenay ma CBC me ka hopena like.

A laila huli mākou i ko mākou manaʻo i ka hoʻouka kaua cross-protocol DROWN, kahi e hoʻokumu ai i kahi pilina i ke kikowaena me ka hoʻohana ʻana i ka protocol SSLv2 hoʻoilina a laila hoʻihoʻi i nā kī huna o ka server me ka hoʻohana ʻana i ka hoʻouka kaua Bleichenbacher. Ua hoʻokuʻu mākou i nā kikoʻī loea o kēia hoʻouka ʻana i kēia manawa; e like me Logjam, pono ia e kali a hiki i ko mākou ʻike maikaʻi ʻana i nā cryptosystems kī lehulehu a me ko lākou mau nāwaliwali.

Ma ka ʻatikala aʻe e kamaʻilio mākou e pili ana i nā hōʻeha holomua e like me ka hui-i-ka-waena, ʻokoʻa cryptanalysis a me nā hōʻeha lā hānau. E hoʻomaka koke kākou i ka hoʻouka kaua ʻaoʻao, a laila neʻe aku i ka ʻāpana leʻaleʻa: nā ʻōnaehana kī lehulehu.

Source: www.habr.com

Pākuʻi i ka manaʻo hoʻopuka