Mifumo ya ulinganifu ya crypto. Kutumia vifaa mahiri katika uthibitishaji wa ufunguo wa umma. Hebu turudi kwenye hesabu

Mifumo ya ulinganifu ya crypto

Mifumo ya siri linganifu (pia usimbaji fiche linganifu, misimbo linganifu) ni mbinu ya usimbaji ambayo data sawa hutumiwa kwa usimbaji fiche na kusimbua. ufunguo wa kriptografia. Kabla ya uvumbuzi wa mzunguko a usimbaji fiche linganifu njia pekee iliyokuwepo ilikuwa usimbaji fiche linganifu. Ufunguo wa algoriti lazima uwe siri na pande zote mbili. Kitufe cha algorithm kinachaguliwa na wahusika kabla ya ubadilishanaji wa ujumbe kuanza.

Hivi sasa, misimbo linganifu ni:

1. Zuia misimbo - kuchakata habari katika vizuizi vya urefu fulani (kawaida 64, 128 bits), ukitumia ufunguo kwenye kizuizi ndani kwa utaratibu uliowekwa, kwa kawaida kupitia mizunguko kadhaa ya kuchanganya na kubadilisha, inayoitwa mizunguko. Matokeo ya kurudia raundi ni athari ya anguko - upotezaji unaoongezeka wa mawasiliano kati ya vizuizi vya data wazi na iliyosimbwa.

2. Tiririsha misimbo - ambamo usimbaji fiche unafanywa kwa kila biti au baiti ya maandishi asilia (wazi) kwa kutumia gamma. Cipher ya mkondo inaweza kuundwa kwa urahisi kulingana na block cipher (kwa mfano, GOST 28147-89 katika hali ya gamma), iliyozinduliwa kwa hali maalum.

Mfumo wa kriptografia na ufunguo wa umma

Mfumo wa siri wa ufunguo wa umma (au usimbaji fiche wa Asymmetric, Asymmetric cipher) ni mfumo wa usimbaji wa habari ambao ufunguo ambao ujumbe umesimbwa kwa njia fiche na ujumbe wenyewe uliosimbwa hupitishwa kupitia chaneli iliyo wazi (yaani, isiyolindwa, inayoonekana). Ili kutengeneza ufunguo wa umma na kusoma ujumbe uliosimbwa, mpokeaji hutumia Ufunguo wa siri. Mifumo muhimu ya kriptografia ya umma kwa sasa inatumika sana katika anuwai itifaki za mtandao, hasa katika Itifaki ya SSL na itifaki kulingana nayo kiwango cha maombi HTTPS, SSH, nk.

Mchele. 7.

1. Mpokeaji hutoa ufunguo. Ufunguo umegawanywa katika sehemu iliyo wazi na iliyofungwa. Katika kesi hii, ufunguo wa umma haupaswi kupitishwa kupitia fungua kituo. Au uhalisi wake lazima uhakikishwe na mamlaka fulani inayoidhinisha.

2. Mtumaji husimba ujumbe kwa njia fiche kwa kutumia kitufe cha umma.

3. Mpokeaji anasimbua ujumbe kwa kutumia ufunguo wa faragha.

Ubaya wa mbinu: Ingawa ujumbe umesimbwa kwa njia salama, mpokeaji na mtumaji wanafichuliwa na ukweli wa kutuma ujumbe uliosimbwa.

Wazo la jumla la mfumo wa siri wa ufunguo wa umma ni kutumia, wakati wa kusimba ujumbe, kazi kama hiyo kutoka kwa ufunguo wa umma na ujumbe (kazi ya cipher), ambayo ni ngumu sana kugeuza kinyume chake, yaani, kuhesabu hoja yake. kutoka kwa thamani ya chaguo la kukokotoa, hata kujua thamani ya ufunguo.

Vipengele vya Mfumo

Faida A sifa linganifu Faida ya ciphers linganifu ni kwamba hakuna haja ya kusambaza ufunguo wa siri. Mhusika anayetaka kupokea maandishi ya siri, kwa mujibu wa kanuni iliyotumika, hutengeneza jozi ya "ufunguo wa umma - ufunguo wa faragha". Maadili muhimu yanahusiana, lakini kuhesabu thamani moja kutoka kwa mwingine inapaswa kuwa haiwezekani kutoka kwa mtazamo wa vitendo. Ufunguo wa umma unachapishwa fungua saraka na hutumika kusimba maelezo na mhusika. Ufunguo wa faragha huwekwa siri na hutumika kusimbua ujumbe uliotumwa kwa mwenye jozi ya funguo. Sifa zisizolinganishwa zilianzishwa mnamo 1976 na Whitfield Diffie na Martin Hellman, Mielekeo Mipya katika Uandikaji wa Kisasa. Walipendekeza mfumo wa ubadilishanaji wa ufunguo wa siri ulioshirikiwa kulingana na shida ya logarithm tofauti. Kwa ujumla, msingi wa cryptosystems inayojulikana ya asymmetric ni mojawapo ya matatizo magumu ya hisabati, ambayo inaruhusu ujenzi wa kazi za njia moja na kazi za mtego. Kwa mfano, mfumo wa kificho wa Rivest-Shamir-Adelman hutumia tatizo la factorization idadi kubwa, na mifumo ya siri ya Merkle-Hellman na Hoare-Rivest inategemea kinachojulikana kama tatizo la knapsack.

Mapungufu- mifumo ya kriptografia isiyolinganishwa inahitaji rasilimali kubwa zaidi za kompyuta. Kwa kuongeza, ni muhimu kuhakikisha uhalisi (ukweli) wa funguo za umma wenyewe, ambazo vyeti hutumiwa kwa kawaida.

Mfumo wa mseto (au pamoja) ni mfumo wa usimbuaji ambao una faida zote za mfumo wa ufunguo wa umma, lakini bila shida yake kuu - kasi ya chini ya usimbuaji.

Kanuni: Mifumo ya kriptografia inachukua faida ya mifumo miwili kuu ya siri: ulinganifu na a kriptografia linganifu. Programu kama vile PGP na GnuPG zimejengwa juu ya kanuni hii.

Hasara kuu Usimbaji fiche usiolinganishwa una sifa ya kasi ya chini kutokana na ukokotoaji changamano unaohitajika na algoriti zake, huku usimbaji fiche linganifu kwa kawaida unaonyesha utendakazi mzuri. Walakini, mifumo ya ulinganifu ya cryptosystems ina moja drawback muhimu-- matumizi yake yanakisia kuwepo kwa njia salama ya kutuma funguo. Ili kuondokana na kasoro hii, wanaamua kutumia mifumo ya siri ya asymmetric ambayo hutumia jozi ya funguo: za umma na za kibinafsi.

Usimbaji fiche: Mifumo mingi ya usimbaji fiche hufanya kazi kama ifuatavyo. Kwa algorithm ya ulinganifu (3DES, IDEA, AES au nyingine yoyote), ufunguo wa random hutolewa. Ufunguo kama huo kawaida una ukubwa kutoka kwa bits 128 hadi 512 (kulingana na algorithm). Algorithm ya ulinganifu hutumika kusimba ujumbe kwa njia fiche. Katika kesi ya kuzuia ciphers, ni muhimu kutumia hali ya usimbuaji (kwa mfano, CBC), ambayo itawawezesha ujumbe kusimbwa kwa urefu zaidi ya urefu wa kuzuia. Kuhusu ufunguo wa nasibu wenyewe, ni lazima usimbwe kwa njia fiche kwa ufunguo wa umma wa mpokeaji ujumbe, na ni katika hatua hii ambapo mfumo wa siri wa ufunguo wa umma (RSA au Diffie-Hellman Algorithm) unatumika. Kwa kuwa ufunguo wa nasibu ni mfupi, usimbaji fiche huchukua muda kidogo. Kusimba kwa njia fiche seti ya ujumbe kwa kutumia algoriti isiyolinganishwa ni kazi ngumu zaidi kwa hesabu, kwa hivyo ni vyema kutumia usimbaji linganifu. Kisha inatosha kutuma ujumbe uliosimbwa na algorithm ya ulinganifu, pamoja na ufunguo unaofanana katika fomu iliyosimbwa. Mpokeaji kwanza anasimbua ufunguo kwa kutumia ufunguo wake wa faragha, na kisha hutumia ufunguo unaotokana kupokea ujumbe wote.

Sahihi ya dijiti hutoa:

* Utambulisho wa chanzo cha hati. Kulingana na maelezo ya ufafanuzi wa hati, sehemu kama vile "mwandishi", "mabadiliko yaliyofanywa", "muhuri wa wakati", n.k. zinaweza kusainiwa.

* Ulinzi dhidi ya mabadiliko ya hati. Mabadiliko yoyote ya bahati mbaya au ya kimakusudi kwa hati (au saini) yatabadilisha msimbo, kwa hivyo, saini itakuwa batili.

Vitisho vifuatavyo vya sahihi vya dijitali vinawezekana:

*Mshambulizi anaweza kujaribu kughushi saini kwa hati anayoipenda.

*Mshambulizi anaweza kujaribu kulinganisha hati na sahihi fulani ili sahihi ilingane nayo.

Unapotumia kitendakazi dhabiti cha msimbo, ni vigumu kukokotoa kuunda hati ghushi yenye misimbo sawa na ile halisi. Hata hivyo, matishio haya yanaweza kutekelezwa kwa sababu ya udhaifu katika algoriti maalum za kuweka akiba, saini au hitilafu katika utekelezaji wake. Walakini, vitisho vifuatavyo kwa mifumo ya sahihi ya dijiti pia vinawezekana:

*Mshambulizi anayeiba ufunguo wa faragha anaweza kutia sahihi hati yoyote kwa niaba ya mmiliki wa ufunguo.

*Mshambulizi anaweza kumlaghai mmiliki kutia sahihi hati, kwa mfano kwa kutumia itifaki ya sahihi ya upofu.

*Mshambulizi anaweza kubadilisha ufunguo wa umma wa mmiliki na kuweka ufunguo wake mwenyewe, akimwiga.

Sehemu hii inashughulikia masuala yafuatayo:

  • Aina za ciphers
  • Sifa mbadala
  • Sifa za vibali
  • Mbinu za usimbaji fiche
  • Algorithms linganifu na linganifu
  • Siri linganifu
  • Kriptografia isiyolinganishwa
  • Zuia na utiririshe misimbo
  • Vekta za uanzishaji
  • Mbinu za usimbuaji mseto
Sifa za ulinganifu zimegawanywa katika aina mbili kuu: uingizwaji na upitishaji. Sifa mbadala badilisha biti, alama, au vizuizi kwa biti, alama au vizuizi vingine. Sifa za vibali usibadilike maandishi asilia, badala yake wanahama maadili ya awali ndani ya maandishi asilia - hupanga upya vipande, vibambo au vibambo ili kuficha maana asili.

Nakala mbadala hutumia ufunguo unaobainisha jinsi ubadilishaji unafaa kufanywa. KATIKA Sifa ya Kaisari kila herufi ilibadilishwa na herufi nafasi tatu chini zaidi kutoka humo katika alfabeti. Algorithm ilikuwa alfabeti, na ufunguo ulikuwa maagizo "kuhama kwa herufi tatu."

Ubadilishaji hutumiwa na algoriti za kisasa za ulinganifu, lakini ni vigumu kulinganisha na njia rahisi kama vile cipher ya Kaisari. Hata hivyo, cipher ya Kaisari ni mfano rahisi na wazi wa dhana ya jinsi cipher badala hufanya kazi.

Katika cipher ya vibali, maadili hupigwa au kuwekwa kwa mpangilio tofauti. Ufunguo unabainisha mahali ambapo thamani inapaswa kuhamishiwa, kama inavyoonyeshwa kwenye Mchoro 6-6.

Kielelezo 6-6. Msimbo wa kibali


Hii mfano rahisi zaidi permutation cipher, inaonyesha tu jinsi uidhinishaji unavyofanywa. Ikiwa tata kazi za hisabati, upangaji upya unaweza kuwa mgumu sana kupasuka. Algoriti za kisasa za ulinganifu kwa wakati mmoja hutumia mifuatano mirefu ya vibadala changamano na vibali vya alama za ujumbe uliosimbwa. Algorithm ina inawezekana njia za uingizwaji na michakato ya vibali (iliyowakilishwa katika fomula za hisabati). Muhimu ni maagizo ya algorithm, ikibainisha jinsi gani lazima usindikaji hutokea na katika mlolongo gani. Ili kuelewa uhusiano kati ya algorithm na ufunguo, angalia Mchoro 6-7. Kwa kusema kwa mfano, algorithm huunda masanduku anuwai, ambayo kila moja ina seti yake (tofauti na zingine) za fomula za hesabu zinazoonyesha hatua za uingizwaji na upitishaji ambazo lazima zifanyike kwenye bits zinazoanguka kwenye kisanduku hiki. Ili kusimba ujumbe kwa njia fiche, thamani ya kila biti lazima ipite kwenye visanduku tofauti. Hata hivyo, ikiwa kila moja ya ujumbe wetu itapitia seti sawa ya visanduku vya barua kwa mfuatano sawa, mshambulizi anaweza kubadilisha mchakato huu wa uhandisi, kuvunja msimbo na kupata maandishi ya ujumbe wetu.

Kielelezo 6-7. Uhusiano kati ya ufunguo na algorithm


Ili kuzuia mshambuliaji, ufunguo hutumiwa, ambayo ni seti ya maadili ambayo yanaonyesha ni masanduku gani yanapaswa kutumika, kwa mlolongo gani na kwa maadili gani. Kwa hivyo, ikiwa ujumbe A umesimbwa kwa ufunguo 1, ufunguo unahitaji ujumbe kupitia visanduku 1, 6, 4 na 5. Tunapohitaji kusimba ujumbe B, tunatumia ufunguo wa 2, ambao unahitaji ujumbe kupitia visanduku 8. , 3, 2 na 9. Ufunguo huongeza nasibu na usiri kwenye mchakato wa usimbaji fiche.

Ubadilishaji rahisi na misimbo ya vibali huathiriwa na mashambulizi yanayotekelezwa uchambuzi wa mzunguko (uchambuzi wa masafa). Katika kila lugha, baadhi ya maneno na ruwaza hutumiwa mara nyingi zaidi kuliko nyingine. Kwa mfano, katika maandishi ya Kiingereza herufi “e” hutumiwa mara nyingi zaidi. Wakati wa kufanya uchanganuzi wa marudio ya ujumbe, mshambuliaji hutafuta mifumo inayorudiwa mara kwa mara ya biti 8 (ambazo huunda herufi). Ikiwa ndani ujumbe mfupi anapata, kwa mfano, mifumo 12-bit nane, anaweza kuhitimisha kuwa kuna uwezekano mkubwa wa barua "e" - barua inayotumiwa zaidi katika lugha. Sasa mshambuliaji anaweza kuchukua nafasi ya bits hizi na barua "e". Hii itampa mguu juu katika mchakato ambao utamruhusu kugeuza mhandisi na kurejesha ujumbe wa asili.

Algorithms za kisasa za ulinganifu hutumia mbinu mbadala na za vibali katika mchakato wa usimbaji fiche, lakini hutumia (zinapaswa kutumia) hisabati ambayo ni changamano sana kuruhusu shambulio hilo rahisi la uchanganuzi wa marudio kufaulu.

Vipengele muhimu vya uzalishaji. Ili kutoa funguo ngumu, ufunguo mkuu kawaida huundwa kwanza, ambayo funguo za ulinganifu hutolewa. Kwa mfano, ikiwa programu ina jukumu la kutoa ufunguo wa kipindi kwa kila huluki inayoifikia, haipaswi tu kutoa nakala za ufunguo huo. Huluki tofauti zinahitaji funguo tofauti za ulinganifu kwenye kila muunganisho ili kupunguza urefu wa muda zinatumika. Hata kama mshambulizi ataingilia trafiki na kuvunja ufunguo, ataweza tu kuona maelezo yaliyotumwa ndani ya kipindi husika. Kipindi kipya kitatumia ufunguo tofauti. Ikiwa funguo mbili au zaidi zinazalishwa kutoka kwa ufunguo mkuu, zinaitwa funguo ndogo (subkey).

Vitendaji muhimu vya uundaji (KDF - kitendakazi cha utokaji wa ufunguo) hutumiwa kutengeneza funguo zinazojumuisha maadili ya nasibu. Thamani tofauti zinaweza kutumika kwa kujitegemea au kwa pamoja kama nyenzo muhimu za nasibu. Algorithms huundwa ambayo hutumia heshi, manenosiri na/au chumvi maalum ambazo hupitishwa kupitia utendakazi wa hisabati uliobainishwa na algoriti mara nyingi. Mara nyingi nyenzo hii muhimu inapita kazi zilizobainishwa, ndivyo kiwango kikubwa cha imani na usalama ambacho mfumo wa siri kwa ujumla unaweza kutoa.


KUMBUKA. Kumbuka kwamba algorithm inabaki tuli. Nasibu ya michakato ya kriptografia inahakikishwa haswa na nyenzo muhimu.


Ingawa kuna sehemu nyingi za mchakato wa usimbaji fiche, kuna sehemu kuu mbili: algoriti na funguo. Kama ilivyoelezwa hapo awali, algorithms iliyotumiwa katika mifumo ya kompyuta, ni ngumu fomula za hisabati kuamuru sheria za mabadiliko maandishi wazi kwa maandishi. Ufunguo ni mfuatano wa biti nasibu ambazo hutumiwa na algorithm kuongeza nasibu kwenye mchakato wa usimbaji fiche. Ili vyombo viwili kuwasiliana kwa kutumia usimbaji fiche, lazima vitumie algorithm sawa na, katika hali nyingine, ufunguo sawa. Katika baadhi ya teknolojia za usimbaji fiche, mpokeaji na mtumaji hutumia ufunguo sawa, wakati katika teknolojia nyingine lazima watumie funguo tofauti lakini zinazohusiana ili kusimba na kusimbua taarifa. Sehemu zifuatazo zinaelezea tofauti kati ya aina hizi mbili za njia za usimbaji fiche.

Algorithms ya kriptografia imegawanywa katika algorithms linganifu ambayo hutumia funguo za ulinganifu (pia huitwa funguo za siri), na algorithms asymmetrics , ambayo hutumia funguo za asymmetric (pia huitwa funguo za umma na funguo za kibinafsi).

Katika mfumo wa siri unaotumia ulinganifu wa kriptografia, mtumaji na mpokeaji hutumia nakala mbili za ufunguo sawa kusimba na kusimbua maelezo, kama inavyoonyeshwa kwenye Mchoro 6-8. Kwa hivyo, ufunguo una utendaji wa pande mbili na hutumiwa katika mchakato wa usimbuaji na usimbuaji. Vifunguo vya ulinganifu pia huitwa funguo za siri, kwa sababu Aina hii ya usimbaji fiche inahitaji kila mtumiaji kuweka siri muhimu na kuilinda ipasavyo. Mshambulizi akipata ufunguo huu, anaweza kuutumia kusimbua ujumbe wowote uliosimbwa juu yake ambao umezuiwa.

Kielelezo 6-8. Wakati wa kutumia algoriti linganifu, mtumaji na mpokeaji hutumia ufunguo sawa kusimba na kusimbua data.


Kila jozi ya watumiaji inahitaji nakala mbili za ufunguo sawa ili kubadilishana data kwa usalama kwa kutumia kriptografia linganifu. Kwa mfano, ikiwa Dan na Irina wanahitaji kubadilishana data, wote wawili wanahitaji kupata nakala ya ufunguo sawa. Ikiwa Dan pia anataka kuingiliana na Norm na Dave kwa kutumia kriptografia linganifu, anahitaji kuwa na funguo tatu tofauti - moja kwa kila rafiki. Hili si tatizo kubwa hadi Dan atakapohitaji kuwasiliana na mamia ya watu wengine kwa muda wa miezi kadhaa na kudumisha historia ya mazungumzo. Baada ya yote, hii itahitaji matumizi ya ufunguo unaofaa kwa mawasiliano na kila mpokeaji maalum. Katika kesi hii, inaweza kuwa kazi ngumu. Ikiwa watu kumi wangehitaji kuwasiliana kwa usalama kwa kutumia kriptografia linganifu, wangehitaji funguo 45. Ikiwa watu mia moja wanahitaji kuingiliana, watahitaji funguo 4950. Njia ya kuhesabu nambari inayohitajika ya funguo za ulinganifu ni kama ifuatavyo.

Idadi ya funguo = N(N - 1)/2, ambapo N ni idadi ya waliojiandikisha


Wakati wa kutumia algoriti linganifu, mtumaji na mpokeaji hutumia ufunguo sawa kwa michakato ya usimbaji fiche na usimbuaji habari. Usalama wa algoriti kama hizo unategemea kabisa jinsi watumiaji wanavyolinda funguo. Katika kesi hii, usalama unategemea kabisa wafanyakazi, ambao wanapaswa kuweka funguo zao kwa siri. Ufunguo ukiingiliwa, barua pepe zote zilizosimbwa kwa ufunguo huo zinaweza kusimbwa na kusomwa na mvamizi. Kwa kweli, inakuwa ngumu zaidi kwa sababu funguo zinahitaji kusambazwa kwa usalama na kusasishwa inapohitajika. Ikiwa Den inahitaji kuingiliana na Norm kwa mara ya kwanza, Den lazima iamue jinsi ya kumpa Norm ufunguo kwa usalama. Ikiwa atafanya hivi bila usalama, kwa mfano kwa kutuma ufunguo tu kwa barua pepe, ufunguo huu unaweza kuingiliwa kwa urahisi na kutumiwa na mshambuliaji. Kwa hivyo Dan lazima atoe ufunguo kwa Norm kwa njia isiyo ya kawaida. Kwa mfano, Dan angeweza kuandika ufunguo kwenye kiendeshi cha flash na kuiweka kwenye meza ya Norm au kuituma kwa Norm kupitia mjumbe anayeaminika. Mchakato wa kusambaza funguo za ulinganifu inaweza kuwa kazi ngumu sana na ngumu.

Kwa sababu watumiaji wote wawili hutumia ufunguo sawa kusimba na kusimbua ujumbe, mifumo ya siri linganifu inaweza kutoa usiri lakini si uthibitishaji au kutokataa. Algorithm kama hiyo ya kriptografia haitakuruhusu kudhibitisha ni nani aliyetuma ujumbe, kwa sababu watumiaji wote wawili hutumia ufunguo sawa.

Lakini ikiwa mifumo ya ulinganifu ya cryptosystems ina mapungufu na shida nyingi, kwa nini hutumiwa karibu kila mahali? Kwa sababu wanatoa sana kasi kubwa usindikaji wa data na ni vigumu sana kudukua. Algorithms ya ulinganifu ni ya haraka zaidi kuliko yale ya asymmetric. Wanaweza kusimba na kusimbua idadi kubwa ya data kwa haraka kiasi. Kwa kuongeza, data iliyosimbwa kwa algorithm ya ulinganifu kwa kutumia ufunguo mrefu ni vigumu sana kupasuka.

Orodha ifuatayo inaelezea nguvu na pande dhaifu mifumo ya crypto na funguo za ulinganifu:

Nguvu:

Pande dhaifu:
  • Inahitaji utaratibu salama wa kuhamisha ufunguo
  • Kila jozi ya watumiaji inahitaji ufunguo wa kipekee; Kadiri idadi ya watumiaji inavyoongezeka, idadi inayoongezeka ya funguo inaweza kufanya usimamizi kuwa usio wa kweli.
  • Hutoa usiri lakini haitoi uthibitishaji au kutokataa
Ifuatayo ni baadhi ya mifano ya algoriti linganifu, ambayo itajadiliwa kwa kina baadaye katika sehemu ya Zuia na Tiririsha Ciphers.
  • RC4, RC5 na RC6
Viungo vinavyohusiana:
  • Usalama katika Mifumo Huria, Node 208, "Symmetric Key Cryptography," na Paul Markovitz, NIST Special Publication 800-7 (Julai 1994)
Katika usimbaji fiche wa vitufe vya ulinganifu, ufunguo huo wa siri hutumiwa kwa usimbaji fiche na usimbuaji, ambapo katika mifumo ya funguo za umma, funguo tofauti hutumiwa kwa madhumuni haya. isiyo na usawa ) funguo. Katika kesi hii, funguo mbili tofauti za asymmetric zinahusiana kihisabati. Ikiwa ujumbe umesimbwa kwa njia fiche kwa ufunguo mmoja, ufunguo mwingine unahitajika ili kusimbua.

Katika mifumo ya ufunguo wa umma, jozi ya funguo huundwa, moja ambayo ni ya faragha na nyingine ni ya umma. Ufunguo wa umma(ufunguo wa umma) inaweza kujulikana kwa kila mtu, na ufunguo wa kibinafsi(ufunguo wa kibinafsi) unapaswa kujulikana tu na mmiliki wake. Mara nyingi, funguo za umma huhifadhiwa katika saraka na hifadhidata za anwani za barua pepe ambazo zinapatikana kwa umma kwa mtu yeyote anayetaka kutumia funguo hizo kusimba na kusimbua data anapowasiliana na watu binafsi. Mchoro 6-9 unaonyesha matumizi ya funguo tofauti za asymmetric.
Funguo za umma na za kibinafsi za mfumo wa siri usiolinganishwa zinahusiana kihisabati, lakini ikiwa mtu ana ufunguo wa umma wa mtu mwingine, haiwezekani kujua ufunguo wao wa kibinafsi unaolingana. Kwa hivyo, ikiwa mshambuliaji atapata nakala ya ufunguo wa umma wa Bob, hii haimaanishi kwamba kwa uchawi fulani wa hisabati ataweza kupata ufunguo wa kibinafsi unaolingana wa Bob. Walakini, ikiwa mtu atapata ufunguo wa kibinafsi wa Bob, kutakuwa na shida tatizo kubwa. Kwa hivyo, hakuna mtu mwingine isipokuwa mmiliki anayepaswa kupata ufunguo wa kibinafsi.

Kielelezo 6-9. Mfumo wa crypto usio na usawa


Ikiwa Bob alisimba data kwa njia fiche kwa ufunguo wake wa faragha, mpokeaji angehitaji ufunguo wa umma wa Bob ili kusimbua. Mpokeaji hawezi tu kusimbua ujumbe wa Bob, lakini pia kujibu Bob kwa ujumbe uliosimbwa. Ili kufanya hivyo, anahitaji kusimba jibu lake kwa ufunguo wa umma wa Bob, kisha Bob anaweza kusimbua jibu hili kwa ufunguo wake wa kibinafsi. Unapotumia algoriti isiyolinganishwa, haiwezekani kusimba na kusimbua ujumbe kwa ufunguo sawa; funguo hizi, ingawa zinahusiana kihisabati, hazifanani (tofauti na algoriti za ulinganifu). Bob anaweza kusimba data kwa njia fiche kwa kutumia ufunguo wake wa faragha, kisha mpokeaji anaweza kusimbua kwa kutumia ufunguo wa umma wa Bob. Kwa kusimbua ujumbe kwa kutumia ufunguo wa umma wa Bob, mpokeaji anaweza kuwa na uhakika kwamba ujumbe huo ulitoka kwa Bob, kwa sababu ujumbe unaweza tu kusimbwa kwa kutumia ufunguo wa umma wa Bob ikiwa ulisimbwa kwa njia fiche kwa kutumia ufunguo wa faragha unaolingana wa Bob. Hii inatoa uwezo wa uthibitishaji kwa sababu Bob ndiye (labda) pekee ambaye ana ufunguo huu wa kibinafsi. Iwapo mpokeaji anataka kuwa na uhakika kwamba ndiye pekee anayeweza kusoma jibu lake atakuwa Bob, lazima asimbe ujumbe wake kwa Bob kwa ufunguo wa umma wa Bob. Kisha ni Bob pekee ataweza kusimbua ujumbe huu, kwa kuwa yeye pekee ndiye ana ufunguo wa faragha unaohitajika kufanya hivyo.

Zaidi ya hayo, mpokeaji anaweza kuchagua kusimba data kwa njia fiche kwa kutumia ufunguo wake wa faragha badala ya ufunguo wa umma wa Bob. Hii itampa nini? Uthibitisho. Bob atajua kwamba ujumbe huo ulitoka kwake na haungeweza kutoka kwa mtu mwingine yeyote. Ikiwa atasimba data kwa ufunguo wa umma wa Bob, hii haitatoa uthibitishaji kwa sababu mtu yeyote anaweza kupata ufunguo wa umma wa Bob. Ikiwa atatumia ufunguo wake wa faragha kusimba data kwa njia fiche, basi Bob anaweza kuwa na uhakika kwamba ujumbe huo ulitoka kwake. Vifunguo vya ulinganifu havitoi uthibitishaji kwa sababu pande zote mbili hutumia ufunguo sawa, ambao hauwezi kuthibitisha kwamba ujumbe unatoka kwa mtu maalum.

Ikiwa mtumaji anajali zaidi kuhusu usiri habari zinazosambazwa, anapaswa kusimba ujumbe wake kwa njia fiche kwa ufunguo wa umma wa mpokeaji. Inaitwa umbizo la ujumbe salama (umbizo salama la ujumbe), kwa kuwa ni mtu aliye na ufunguo wa faragha unaolingana tu ndiye ataweza kusimbua ujumbe huu.

Ikiwa uthibitishaji ni muhimu zaidi kwa mtumaji, anapaswa kusimba kwa njia fiche data iliyotumwa kwa ufunguo wake wa faragha. Hii itamruhusu mpokeaji kuwa na uhakika kwamba mtu ambaye alisimba data ndiye aliye na ufunguo wa faragha unaolingana. Ikiwa mtumaji anasimba data kwa njia fiche kwa ufunguo wa umma wa mpokeaji, hii haitoi uthibitishaji kwa sababu ufunguo wa umma unapatikana kwa kila mtu.

Kusimba data kwa kutumia ufunguo wa faragha wa mtumaji kunaitwa umbizo wazi ujumbe (umbizo la ujumbe wazi), kwa sababu mtu yeyote anaweza kusimbua data hii kwa kutumia ufunguo wa umma wa mtumaji. Siri haijahakikishwa.

Vifunguo vya faragha na vya umma vinaweza kutumika kusimba na kusimbua data. Usifikirie kuwa ufunguo wa umma unahitajika tu kwa usimbaji fiche, na ufunguo wa faragha unahitajika tu kwa usimbuaji. Inapaswa kueleweka kuwa ikiwa data imesimbwa kwa njia fiche kwa ufunguo wa faragha, haiwezi kusimbwa nayo. Data iliyosimbwa kwa njia fiche kwa ufunguo wa faragha inaweza kusimbwa kwa ufunguo wake wa umma unaolingana. Na kinyume chake.

Algorithm ya ulinganifu ni polepole kuliko algoriti ya ulinganifu kwa sababu algoriti linganifu hufanya kazi rahisi za hisabati kwenye biti katika michakato ya usimbaji na usimbuaji. Wanabadilisha na kuchanganya (kusonga) biti karibu, ambayo sio ngumu sana na haitumii CPU nyingi. Sababu inayowafanya kuwa sugu kwa udukuzi ni kwamba wanafanya kazi hizi mara nyingi. Kwa hivyo, katika algorithms ya ulinganifu, seti ya bits hupitia mfululizo mrefu wa uingizwaji na vibali.

Algorithms linganifu ni polepole kuliko algoriti linganifu kwa sababu wanatumia hisabati changamano zaidi kutekeleza majukumu yao, ambayo yanahitaji muda zaidi wa CPU. Hata hivyo, algoriti zisizolinganishwa zinaweza kutoa uthibitishaji na kutokataa kulingana na kanuni iliyotumika. Zaidi ya hayo, mifumo isiyolinganishwa inaruhusu mchakato wa usambazaji wa ufunguo rahisi na unaoweza kudhibitiwa zaidi kuliko mifumo ya ulinganifu na haina masuala ya ulinganifu ambayo mifumo ya ulinganifu inayo. Sababu ya tofauti hizi ni kwamba kwa mifumo ya ulinganifu, unaweza kutuma ufunguo wako wa umma kwa watu wote unaotaka kuingiliana nao, badala ya kutumia ufunguo tofauti wa kibinafsi kwa kila mmoja wao. Kisha, katika sehemu ya Mbinu za Usimbaji Mseto za Kikoa hiki, tutaangalia jinsi mifumo hii miwili inaweza kutumika pamoja ili kufikia matokeo bora.

KUMBUKA. Ufunguo wa ufunguo wa umma ni kriptografia isiyolinganishwa. Maneno haya yanatumika kwa kubadilishana.

Zifuatazo ni nguvu na udhaifu wa algoriti za ufunguo wa asymmetric:

Nguvu

  • Mchakato bora wa usambazaji wa ufunguo kuliko mifumo linganifu
  • Uboreshaji bora kuliko mifumo ya ulinganifu
  • Inaweza kutoa uthibitishaji na kutokataa
Pande dhaifu
  • Inafanya kazi polepole zaidi kuliko mifumo ya ulinganifu
  • Fanya mabadiliko changamano ya hisabati
Chini ni mifano ya algorithms na funguo za asymmetric.
  • Mfumo wa kificho wa mviringo wa mviringo (ECC)
  • Algorithm ya Diffie-Hellman
  • El Gamal
  • Algorithm ya Sahihi Dijiti (DSA - Kanuni ya Sahihi ya Dijiti)
  • Kifuko
Tutazingatia algoriti hizi zaidi katika Kikoa hiki, katika sehemu ya "Aina za mifumo isiyolingana".

Jedwali la 6-1 linatoa muhtasari mfupi wa tofauti kuu kati ya mifumo ya ulinganifu na asymmetric.

Jedwali 6-1. Tofauti kati ya mifumo ya ulinganifu na asymmetrical


KUMBUKA. Sahihi za kidijitali zitajadiliwa baadaye katika sehemu ya Sahihi Dijitali.
Viungo vinavyohusiana:
  • Usalama katika Mifumo Huria, Node 210, "Asymmetric Key Cryptography," na Paul Markovitz, NIST Special Publication 800-7 (Julai 1994)
  • Maswali Yanayoulizwa Mara Kwa Mara Kuhusu Firifi ya Leo, Toleo la 4.1, Sehemu ya 2.1.4.5, "Njia ya Maoni ya Pato ni nini?" na Maabara za RSA
Kuna aina mbili kuu za algorithms za ulinganifu: misimbo ya kuzuia, ambayo hufanya kazi kwenye vizuizi vya bits, na misimbo ya mkondo, ambayo hufanya kazi kwa kidogo moja kwa wakati.

Ikiwa unatumia kusimba na kusimbua data block cipher , ujumbe umegawanywa katika vipande vya bits. Vitalu hivi basi hupitishwa kwa kazi za hisabati kwa usindikaji, block moja kwa wakati. Fikiria unahitaji kusimba ujumbe kwa mama yako kwa kutumia block cipher ambayo inafanya kazi katika vizuizi 64-bit. Ujumbe wako una urefu wa biti 640, kwa hivyo umegawanywa katika vizuizi 10 tofauti vya 64-bit. Kila kizuizi hupitishwa kwa mtiririko kwa pembejeo ya kazi ya hisabati. Utaratibu huu unaendelea hadi kila kizuizi kigeuzwe kuwa maandishi ya siri. Baada ya hapo, unatuma ujumbe uliosimbwa kwa mama yako. Inatumia block cipher sawa na ufunguo sawa. Vitalu hivi 10 vya maandishi ya siri huingizwa kwenye algoriti kwa mpangilio wa kinyume hadi maandishi asilia yapatikane.


Ili kuhakikisha nguvu ya cipher, lazima itumie njia mbili za msingi za kutosha: kuchanganyikiwa na kueneza. Kuchanganya kawaida hufanywa kwa kutumia mbadala, ambapo uenezaji - kutumia kupanga upya. Ili sifa iwe na nguvu ya kweli, ni lazima itumie mbinu hizi zote mbili kufanya uhandisi wa kurudi nyuma usiwezekane. Kiwango cha kuchanganya na kutawanyika kinaonyeshwa na randomness ya thamani muhimu na utata wa kazi za hisabati zinazotumiwa.

Katika algorithms, kutawanya kunaweza kutokea kwa kiwango cha bits za kibinafsi kwenye vizuizi na kwa kiwango cha vitalu wenyewe. Mchanganyiko unafanywa kwa kutumia kazi ngumu vibadala ili mshambulizi asiweze kuelewa jinsi thamani asili zilivyobadilishwa na kupata maandishi asilia. Fikiria kuwa nina vitalu 500 vya mbao, kila moja ikiwa na herufi juu yake. Ninazipanga ili kutengeneza ujumbe (maandishi wazi) kutoka kwao. Kisha mimi hubadilisha 300 ya vizuizi hivi na vizuizi kutoka kwa seti nyingine (changanya kwa kubadilisha). Kisha mimi hupanga upya vizuizi hivi vyote (kutawanya kwa kusugua) na kuacha rundo hili. Ili uweze kurudisha sentensi yangu ya asili, unahitaji kubadilisha vizuizi na zile sahihi na uzipange. mlolongo sahihi. Bahati njema!

Kuchanganya hufanywa ili kuunda uhusiano kati ya ufunguo na maandishi yanayotokana. Uhusiano huu lazima uwe mgumu iwezekanavyo ili haiwezekani kufungua ufunguo kulingana na uchambuzi wa ciphertext. Kila thamani katika maandishi lazima itegemee sehemu kadhaa za ufunguo, lakini kwa mtazamaji uhusiano huu kati ya maadili muhimu na maadili ya ciphertext lazima uonekane bila mpangilio kabisa.

Kutawanya, kwa upande mwingine, kunamaanisha kuwa sehemu moja ya maandishi wazi huathiri sehemu nyingi za maandishi ya siri. Kubadilisha thamani katika maandishi kunapaswa kusababisha kubadilisha thamani nyingi katika maandishi ya siri, si moja tu. Kwa hakika, katika msimbo mkali wa kuzuia, wakati biti moja katika maandishi wazi inabadilishwa, takriban 50% ya biti katika maandishi ya siri inapaswa kubadilika. Wale. Ukibadilisha sehemu moja tu katika maandishi wazi, takriban nusu ya maandishi ya siri yatabadilika.

Block ciphers hutumia kuchanganya na kutawanya katika njia zao za uendeshaji. Mchoro wa 6-10 unaonyesha mfano wa dhana ya msimbo rahisi wa kuzuia. Imepewa vitalu vinne vya biti nne kila moja kwa usindikaji. Algorithm ya kuzuia inayozingatiwa ina viwango viwili vya masanduku ya uingizwaji ya biti nne, inayoitwa S-boxes. Kila kisanduku cha S kina majedwali ya uchunguzi yanayotumiwa na algoriti kama maagizo ya kusimba biti kwa njia fiche.

Kielelezo 6-10. Ujumbe umegawanywa katika vizuizi vya bits ambayo uingizwaji na kazi za kutawanya hufanywa


Ufunguo unabainisha (ona Mchoro 6-10) ni visanduku vipi vya S vinapaswa kutumika katika mchakato wa kuchanganya ujumbe asili kutoka maandishi wazi yanayosomeka hadi maandishi ya siri yasiyosomeka. Kila S-sanduku ina mbinu mbalimbali vibadala na vibali vinavyoweza kufanywa kwenye kila block. Huu ni mfano rahisi sana. Kwa kweli, herufi nyingi za block hufanya kazi na vizuizi vya biti 32, 64, au 128 na zinaweza kutumia visanduku vingi zaidi vya S.

Kama ilivyoelezwa hapo awali, block ciphers hufanya kazi za hisabati kwenye vitalu vya bits. Tofauti na wao, misimbo ya mkondo (stream cipher) usigawanye ujumbe katika vizuizi. Wanachakata ujumbe kama mtiririko wa biti na hufanya kazi za hisabati kwa kila biti tofauti.

Unapotumia msimbo wa mtiririko, mchakato wa usimbaji fiche hubadilisha kila sehemu ya maandishi wazi kuwa maandishi ya siri kidogo. Nakala za mtiririko hutumia jenereta ya mkondo muhimu ambayo hutoa mtiririko wa bits ambazo zimeunganishwa kwa kutumia Operesheni za XOR na maandishi wazi ili kupata maandishi ya siri. Hii imeonyeshwa kwenye Mchoro 6-11.

Kielelezo 6-11. Katika msimbo wa mtiririko, biti zinazozalishwa na jenereta ya mkondo wa ufunguo huwekwa XOR kwa maandishi wazi ya ujumbe.

KUMBUKA. Utaratibu huu ni sawa na utumiaji wa pedi za usimbaji mara moja zilizoelezewa hapo awali. Biti za kibinafsi kwenye pedi ya wakati mmoja hutumiwa kusimba biti za kibinafsi za ujumbe kwa kutumia operesheni ya XOR, na katika algoriti ya mkondo, biti za kibinafsi huundwa na jenereta muhimu ya mkondo pia inayotumiwa kusimba biti za ujumbe kwa kutumia Uendeshaji wa XOR.

Ikiwa mfumo wa siri unategemea tu algoriti ya mtiririko linganifu, mshambulizi anaweza kupata nakala ya maandishi wazi na maandishi yanayotokana, XOR pamoja, na kuishia na mtiririko wa ufunguo uliotumika ambao anaweza kutumia baadaye kusimbua ujumbe mwingine. Ndiyo maana watu wenye akili iliamua kuingiza ufunguo kwenye mkondo huu.

Katika block ciphers, ufunguo huamua ni kazi gani zinazotumiwa kwa maandishi wazi na kwa utaratibu gani. Ufunguo huhakikisha unasibu wa mchakato wa usimbaji fiche. Kama ilivyoelezwa hapo awali, algoriti nyingi za usimbaji fiche ni chanzo wazi, kwa hivyo watu wanajua jinsi zinavyofanya kazi. Siri pekee ni ufunguo. Katika misimbo ya mtiririko, unasibu pia hupatikana kupitia ufunguo, na kufanya mtiririko wa bits ambao maandishi wazi yanaunganishwa kuwa nasibu iwezekanavyo. Dhana hii imeonyeshwa kwenye Mchoro 6-12. Kama unavyoona katika takwimu hii, mtumaji na mpokeaji lazima wawe na ufunguo sawa ili kutoa mtiririko wa ufunguo sawa ili kuweza kusimba kwa njia fiche na kusimbua taarifa kwa njia sahihi.

Kielelezo 6-12. Mtumaji na mpokeaji lazima wawe na ufunguo sawa ili kutoa mtiririko wa ufunguo sawa



Vekta za uanzishaji (IV - vekta za uanzishaji) ni maadili ya nasibu, ambayo hutumiwa na algoriti ili kuhakikisha kuwa mchakato wa usimbaji fiche hauna muundo. Zinashirikiwa na funguo na hazihitaji kusimbwa kwa njia fiche zinapotumwa kwa mpokeaji. Ikiwa hakuna vekta ya uanzishaji itatumika, maandishi mawili yanayofanana yaliyosimbwa kwa ufunguo sawa yatasababisha maandishi ya siri sawa. Kiolezo kama hicho kitarahisisha kwa kiasi kikubwa kazi ya mshambuliaji ya kuvunja njia ya usimbaji fiche na kufichua ufunguo. Ikiwa ujumbe wako una sehemu inayorudiwa (maneno au neno), unahitaji kuhakikisha kwamba unaposimba kila sehemu inayorudiwa ya maandishi wazi ya ujumbe, maandishi tofauti yanaundwa, i.e. hakuna kiolezo kitakachoundwa. Ni kuhakikisha unasibu zaidi katika mchakato wa usimbaji fiche kwamba vekta ya uanzishaji inatumiwa pamoja na ufunguo.

Sifa zenye nguvu na bora za mtiririko zina sifa zifuatazo:

  • Vipindi virefu vya ruwaza zisizorudiwa katika thamani kuu za mtiririko. Biti zinazozalishwa na mtiririko muhimu lazima ziwe nasibu.
  • Mtiririko wa ufunguo usiotabirika kitakwimu. Biti zinazozalishwa kwenye pato la jenereta ya mkondo muhimu hazipaswi kutabirika.
  • Mtiririko muhimu hauna uhusiano wa mstari na ufunguo. Ikiwa mtu amepata thamani kuu za mtiririko, hii haipaswi kusababisha apate thamani kuu.
  • Mtiririko wa ufunguo unaofanana kitakwimu (takriban idadi sawa ya sufuri na zile). Mtiririko muhimu haufai kutawaliwa na sufuri au zile.
Nakala za mtiririko zinahitaji nasibu na usimbaji fiche moja baada ya nyingine. Hili linahitaji rasilimali zaidi za CPU kuliko kutumia block cipher, kwa hivyo sifa za mtiririko zinafaa zaidi kwa utekelezaji ngazi ya vifaa. Na kuzuia ciphers, kwa kuwa hazihitaji rasilimali nyingi za processor, ni rahisi kutekeleza kiwango cha programu.
KUMBUKA. Bila shaka, kuna ciphers zote mbili za kuzuia, zinazotekelezwa katika ngazi ya vifaa, na ciphers za mkondo, zinazofanya kazi katika kiwango cha programu. Taarifa iliyo hapo juu ni "mazoea bora" ya muundo na mwongozo wa utekelezaji.


Tiririsha misimbo na pedi za Wakati Mmoja. Nakala za mtiririko hutoa aina sawa ya usalama kama pedi za wakati mmoja, kwa hivyo zinafanya kazi kwa njia sawa. Sifa za mtiririko haziwezi kutoa kiwango sawa cha usalama kama pedi za wakati mmoja kwa sababu zinatekelezwa kwa namna ya programu na zana za otomatiki. Walakini, hii hufanya misimbo ya mkondo kuwa ya vitendo zaidi.


Hapo awali, tuliangalia algoriti za ulinganifu na ulinganifu na tukagundua kuwa algoriti za ulinganifu ni za haraka lakini zina hasara fulani (uwezo duni, usimamizi changamano wa funguo, kutoa usiri pekee), wakati algoriti zisizolinganishwa hazina hasara hizi, lakini ni za polepole sana. Sasa hebu tuangalie mifumo ya mseto inayotumia mbinu za usimbaji linganifu na zisizolingana.

Matumizi ya pamoja ya algoriti zisizolinganishwa na linganifu


Ufunguo wa ufunguo wa umma hutumia funguo mbili (za umma na za kibinafsi) zinazozalishwa na algorithm ya asymmetric, hutumiwa kulinda funguo za usimbaji fiche na kuzisambaza. Ufunguo wa siri huzalishwa na algorithm ya ulinganifu na hutumiwa kwa mchakato mkuu wa usimbuaji. Haya ni matumizi ya mseto wa hizo mbili algorithms mbalimbali: ulinganifu na asymmetrical. Kila algorithm ina faida na hasara zake, na zao kugawana hukuruhusu kuchukua bora kutoka kwa kila mmoja wao.

Katika mbinu ya mseto, teknolojia hizi mbili zinakamilishana, kila moja ikifanya kazi zake. Algoriti ya ulinganifu hutoa funguo zinazotumiwa kusimba wingi wa data kwa njia fiche, huku algoriti ya ulinganifu hutoa vitufe vinavyotumika kusambaza kiotomatiki vitufe vya ulinganifu.

Kitufe cha ulinganifu kinatumika kusimba ujumbe unaotuma. Rafiki yako anapopokea ujumbe uliosimbwa, anahitaji kuuondoa, ambao unahitaji ufunguo wa ulinganifu ambao ujumbe wako umesimbwa kwa njia fiche. Lakini hutaki kutuma ufunguo huu kwa njia isiyo salama kwa sababu... ujumbe unaweza kunaswa na ufunguo ambao haujalindwa unaweza kutolewa kutoka humo na mvamizi kwa matumizi ya baadaye kusimbua na kusoma ujumbe wako. Hupaswi kutumia ufunguo wa ulinganifu kusimba ujumbe kwa njia fiche isipokuwa kama umelindwa ipasavyo. Ili kupata ufunguo wa ulinganifu, algoriti ya ulinganifu inaweza kutumika kuusimba kwa njia fiche (ona Mchoro 6-13). Lakini kwa nini tutumie ufunguo wa ulinganifu kusimba ujumbe kwa njia fiche na ufunguo usiolinganishwa ili kusimba ufunguo wa ulinganifu? Kama ilivyoelezwa hapo awali, algorithm ya asymmetric ni polepole kwa sababu hutumia hisabati ngumu zaidi. Na kwa kuwa ujumbe wako utakuwa mrefu zaidi kuliko ufunguo, ni busara zaidi kutumia ufunguo mrefu kuusimba kwa njia fiche. algorithm ya haraka(ulinganifu), na kwa usimbuaji wa ufunguo polepole (asymmetric) inafaa, lakini inatoa huduma za ziada usalama.

Kielelezo 6-13. Katika mfumo wa mseto, ufunguo wa ulinganifu hutumika kusimba ufunguo wa ulinganifu na ufunguo wa ulinganifu hutumika kusimba ujumbe kwa njia fiche.


Je, hii inafanyaje kazi katika ukweli? Hebu tuseme Bill anamtumia Paul ujumbe na anataka Paul pekee aweze kuusoma. Bill husimba ujumbe kwa ufunguo wa siri, sasa una maandishi ya siri na ufunguo wa ulinganifu. Ufunguo lazima uwe salama, kwa hivyo Bill anasimba kwa njia fiche ufunguo wa ulinganifu kwa ufunguo usiolinganishwa. Kanuni za ulinganifu hutumia ufunguo wa faragha na wa umma, kwa hivyo Bill husimba ufunguo wa ulinganifu kwa ufunguo wa umma wa Paul. Bill sasa ana maandishi ya siri ya ujumbe na maandishi ya ufunguo linganifu. Kwa nini Bill alisimba ufunguo wa ulinganifu kwa ufunguo wa umma wa Paul na si kwa ufunguo wake wa faragha? Ikiwa Bill aliisimba kwa njia fiche kwa ufunguo wake binafsi, mtu yeyote angeweza kusimbua kwa ufunguo wa umma wa Bill na kupata ufunguo wa ulinganifu. Hata hivyo, Bill hataki mtu yeyote aliye na ufunguo wake wa umma aweze kusoma jumbe zake kwa Paul. Bill anataka Paul pekee kuwa na fursa hii. Kwa hivyo Bill alisimba ufunguo wa ulinganifu kwa ufunguo wa umma wa Paul. Ikiwa Paul angelinda ufunguo wake wa kibinafsi vizuri, ni yeye tu angeweza kusoma ujumbe wa Bill.

Paul anapokea ujumbe wa Bill na kutumia ufunguo wake wa faragha kusimbua ufunguo wa ulinganifu. Kisha Paul anatumia kitufe cha ulinganifu kusimbua ujumbe. Sasa Paul anaweza kusoma ujumbe muhimu na wa siri kutoka kwa Bill.

Tunaposema kwamba Bill anatumia ufunguo kusimba ujumbe kwa njia fiche na Paul anatumia ufunguo huo huo kusimbua, hii haimaanishi kwamba wanafanya shughuli hizi zote wenyewe. Kisasa programu anatufanyia haya yote bila kutuhitaji maarifa maalum kwa matumizi yake.

Kila kitu hapa ni rahisi sana, unahitaji kukumbuka mambo yafuatayo:

  • Kanuni ya ulinganifu hufanya usimbaji fiche na usimbuaji kwa kutumia funguo za faragha na za umma ambazo zinahusiana kihisabati.
  • Kanuni za ulinganifu hufanya usimbaji fiche na usimbuaji kwa kutumia ufunguo wa siri ulioshirikiwa.
  • Kitufe cha ulinganifu (siri) kinatumika kusimba ujumbe halisi.
  • Ufunguo wa umma hutumiwa kusimba ufunguo wa ulinganifu kwa usambazaji salama.
  • Ufunguo wa siri ni sawa na ufunguo wa ulinganifu.
  • Kitufe cha asymmetric kinaweza kuwa cha faragha au cha umma.
Kwa hivyo, wakati wa kutumia mfumo wa mseto, algoriti ya ulinganifu huunda ufunguo wa siri unaotumiwa kusimba data au ujumbe kwa njia fiche, na ufunguo wa ulinganifu husimba ufunguo wa siri.

Ufunguo wa kikao (ufunguo wa kipindi) ni ufunguo wa ulinganifu unaotumiwa kusimba ujumbe unaobadilishwa kati ya watumiaji wawili. Ufunguo wa kipindi sio tofauti na ufunguo wa ulinganifu ulioelezewa hapo awali, lakini ni halali kwa kipindi kimoja cha mawasiliano kati ya watumiaji.

Ikiwa Tanya ana ufunguo wa ulinganifu ambao yeye hutumia kila mara kusimba ujumbe kati yake na Lance, ufunguo huo wa ulinganifu hauhitaji kuzalishwa upya au kubadilishwa. Wanatumia tu ufunguo sawa kila wakati wanapoingiliana kwa kutumia usimbaji fiche. Hata hivyo, kwa muda mrefu tumia tena kutumia ufunguo sawa huongeza uwezekano wa kuingiliwa na kuathiri mawasiliano salama. Ili kuepuka hili, unapaswa kuzalisha ufunguo mpya wa ulinganifu kila wakati Tanya na Lance wanahitaji kuwasiliana, na uitumie tu kwa kipindi kimoja cha mawasiliano, na kisha uiharibu (ona Mchoro 6-14). Hata kama watahitaji kuingiliana tena baada ya saa moja tu, ufunguo mpya wa kipindi utatolewa.

Kielelezo 6-14. Ufunguo wa kipindi unatolewa kwa kila kipindi cha mwingiliano wa mtumiaji na ni halali ndani ya kipindi hicho pekee


Bahasha za kidijitali. Wakati watu kwanza wanafahamiana na cryptography, matumizi ya pamoja ya symmetric na algorithms asymmetrics inaweza kusababisha kutokuelewana. Walakini, dhana hizi ni muhimu sana kueleweka kwa sababu ndio msingi, dhana za kimsingi za kriptografia. Utaratibu huu hautumiwi tu katika mteja wa barua pepe au katika bidhaa kadhaa, huamua utaratibu ambao data na funguo za ulinganifu zinachakatwa wakati zinapopitishwa.
Kutumia teknolojia hizi mbili kwa pamoja inaitwa mbinu ya mseto, lakini ina zaidi jina la kawaidabahasha ya kidijitali (bahasha ya digital).




Ufunguo wa kikao hutoa zaidi ngazi ya juu ulinzi, ikilinganishwa na ufunguo tuli wa ulinganifu, kwa sababu ni halali kwa kikao kimoja tu cha mawasiliano kati ya kompyuta mbili. Ikiwa mshambulizi anaweza kukatiza ufunguo wa kipindi, ataweza kuutumia kupata ufikiaji usioidhinishwa wa habari iliyotumwa kwa muda fulani. muda mfupi wakati.

Ikiwa kompyuta mbili zinahitaji kuwasiliana kwa kutumia usimbaji fiche, lazima kwanza zipitie mchakato wa "kupeana mkono" ambapo zitakubali algoriti ya usimbaji ambayo itatumika kutuma ufunguo wa kipindi ili kusimba data zaidi kadri kompyuta zinavyowasiliana. Kimsingi, kompyuta mbili husakinisha muunganisho wa mtandaoni na kila mmoja, ambayo inaitwa kikao. Baada ya kipindi kuisha, kila kompyuta huharibu miundo yoyote ya data iliyoundwa kwa ajili ya kipindi hicho, huacha rasilimali, na, miongoni mwa mambo mengine, kuharibu ufunguo wa kipindi uliotumika. Mambo haya mfumo wa uendeshaji na programu zinaendeshwa chinichini na mtumiaji haitaji kuijali. Hata hivyo, mtaalamu wa usalama lazima aelewe tofauti kati ya aina kuu na masuala yanayohusiana nazo.


KUMBUKA. Vifunguo vya faragha na vya ulinganifu lazima vihifadhiwe na/au kutumwa kwa maandishi wazi. Ingawa hii inaonekana wazi, tayari kuna mengi bidhaa za programu iliathiriwa kwa sababu hii haswa.

Masuala ya usalama bila waya. Tuliangalia viwango mbalimbali vya 802.11 na itifaki ya WEP katika Kikoa cha 05. Miongoni mwa orodha kubwa ya matatizo na WEP, kuna tatizo linalohusiana na usimbaji fiche wa data. Iwapo WEP pekee inatumiwa kusimba trafiki isiyotumia waya, basi utekelezaji mwingi hutumia ufunguo mmoja tu wa ulinganifu wa takwimu ili kusimba pakiti kwa njia fiche. Mojawapo ya mabadiliko na manufaa ya kiwango cha 802.11i ni kwamba inahakikisha kwamba kila pakiti imesimbwa kwa njia fiche kwa ufunguo wa kipekee wa kipindi.

Ulinzi wa habari wa kriptografia

Alexandra Prokhorova

Sehemu kutoka kwa kitabu cha Alexander Prokhorov "Mtandao: Jinsi Inafanya Kazi", habari kuhusu kitabu hicho inaweza kupatikana katika anwani .

Hebu tuzingatie mfano maalum. Hebu mkurugenzi wa kampuni A atume hati muhimu kwa mkurugenzi wa kampuni B kwa barua pepe (Mchoro 1). Ni matatizo gani yanayotokea katika suala la usalama wa mawasiliano?

Baada ya kupokea barua hiyo, mkurugenzi wa kampuni B anauliza maswali yafuatayo. Je, sivyo hati hii ilitumwa na Mkurugenzi A (kitambulisho cha mtumaji). Baada ya yote, kuna uwezekano kwamba barua ilitoka kwa mtu mwingine ambaye anajifanya mkurugenzi wa kampuni A. Je, hati ilizuiwa na kubadilishwa kando ya njia ya uwasilishaji (uthibitishaji wa ujumbe). Ikiwa hati ilisomwa na mtu mwingine yeyote isipokuwa mpokeaji (usiri)

Barua pepe na faili zilizoambatishwa zinaweza kusomwa kwa urahisi pointi za kati safari zake kwenye mtandao, kwa mfano, kwenye seva ya mtoa huduma

Inajulikana kuwa kudumisha usiri (usiri wa ujumbe) kunaweza kupatikana kwa kusimba data. Inabadilika kuwa shida hizi zote tatu zinaweza kutatuliwa kwa kutumia usimbaji fiche, na cryptography inahusika na maswala haya.

Cryptography (kutoka kwa Kigiriki "cryptos" - siri) ni sayansi na teknolojia ya usimbuaji habari muhimu ili kuilinda kutokana na mabadiliko na ufikiaji usioidhinishwa. Cryptography haitumiki tu kubadilisha maandishi kuwa fomu isiyoweza kusomeka iliyosimbwa, lakini pia hukuruhusu kutatua shida za uthibitishaji na utambuzi wa watumiaji wakati wanafanya kazi kwenye mtandao.

Cryptography ndio msingi wa mawasiliano salama. Katika Mtini. 1 tulitoa mfano wa mawasiliano kati ya wanahabari wawili. Ikumbukwe kwamba kwenye mtandao tunawasiliana sio tu na watu, bali pia na huduma mbalimbali. Kwa mfano, tunapopakua programu kutoka kwa seva, ni muhimu pia kwetu kujua hilo seva hii ni mali ya kampuni ya wasanidi programu, na si ya kampuni ya maharamia ambayo inasambaza programu za uharamia kinyume cha sheria.

Usimbaji fiche kwa ufunguo

Mchakato wa usimbuaji na ufunguo unajumuisha maandishi wazi na safu ya nambari (ufunguo) kulingana na sheria za algorithm fulani (algorithm ya kriptografia) ili kupata ujumbe uliosimbwa.

Wacha tufikirie kuwa tunataka kusimba maandishi wazi "Hello Vasya" kwa kutumia algoriti rahisi - kubadilisha herufi na nambari zao kwenye alfabeti. Matokeo yake, tutapokea maandishi yaliyofichwa ya fomu: 17 18 10 3 6 20 3 1 19 33. Kwa wazi, ikiwa mtu wa nje anajifunza algorithm ya encryption, basi haiwezekani kuitumia katika siku zijazo.

Ili kuepuka upungufu huu labda kwa kutumia usimbaji fiche muhimu. Ili kuelezea kiini cha mchakato wa usimbuaji kwa ufunguo, tunatoa mfano rahisi (Mchoro 3).

Wacha tuandike herufi za maandishi na tuandike nambari zao katika alfabeti chini yao. Kwenye mstari wa tatu tunaandika barua za ufunguo, tukirudia neno hili katika mstari mzima. Chini ya barua za ufunguo tutaandika nambari zao kwa alfabeti, na katika mstari wa nne tutaandika kiasi, ambacho kitakuwa ujumbe uliosimbwa: 20 19 29 36, nk.

Kujua ufunguo na algorithm, ni rahisi kufafanua ujumbe: 20 - 3 = 17, na barua ya kumi na saba ya alfabeti ni "P", nk. Hata kama mshambuliaji anajua algorithm lakini hajui ufunguo, haiwezekani kusoma ujumbe bila utaratibu mrefu wa uteuzi wa ufunguo. Kwa hivyo, algorithm moja inaweza kutumika na funguo nyingi za njia tofauti mawasiliano, ikitoa ufunguo tofauti kwa kila mwandishi.

Ni wazi, kadiri ufunguo wa msimbo ulivyo mrefu, ndivyo utafutaji unavyohitajika zaidi michanganyiko mbalimbali wakati wa kusimbua, vile vile ni vigumu zaidi kusimbua ujumbe. Sifa zenye funguo ndefu zaidi ya biti 128 huitwa nguvu.

Kanuni ya usimbaji fiche kwa ufunguo wa siri

Usimbaji fiche wa ufunguo linganifu

Hebu fikiria mfano maalum: basi waandishi wa habari A na B waandike barua kwa kila mmoja (Mchoro 4). Kila moja ina ufunguo wake wa siri (msimbo maalum wa siri) ambao unaweza kutumika kusimba data kabla ya kuituma kwenye Mtandao. Ili kuonyesha kwa uwazi zaidi mpango wa usimbuaji, tutatumia pictograms (Mchoro 2), yaani, kuonyesha ufunguo kwa namna ya ufunguo wa kawaida, na ujumbe uliosimbwa kwa namna ya hati iliyofungwa kwenye bahasha. Kisha mchakato wa usimbuaji na usimbuaji unaweza kuwakilishwa kwa namna ya Mtini. 3.

Mpango wa usimbaji fiche wenye ufunguo wa siri (ulinganifu).

Mtumiaji A husimba ujumbe kwa njia fiche kwa ufunguo wake wa siri, hutuma ujumbe kupitia Mtandao, na mpokeaji B (kwa kutumia ufunguo uleule wa siri) anaondoa ujumbe huo kwa njia fiche. Ikiwa unatazama takwimu, ni rahisi kuona kwamba mzunguko ni ulinganifu. Watumiaji wa kushoto na kulia hutumia funguo sawa (symmetric), kwa hivyo aina hii ya usimbaji fiche inaitwa usimbaji wa ufunguo wa ulinganifu.

Tatizo la usimbaji wa ufunguo wa siri lina hasara fulani. Kwanza kabisa, usimbaji fiche wa ulinganifu hausuluhishi tatizo la uthibitishaji. Kwa mfano, A anaweza kumwandikia barua mtu mwingine C na kudai kuwa B ndiye aliyefanya hivyo.

Ufunguo wa ulinganifu lazima usakinishwe kwenye kompyuta ya mtumaji na mpokeaji kabla ya barua pepe za siri kubadilishana. Hiyo ni, unahitaji kujua mapema ambayo kompyuta mbili "zitazungumza" kwa kila mmoja. Ni wazi, usimbaji fiche kwa mawasiliano salama Mtandao unaeleweka wakati waandishi hawahitaji kukutana ana kwa ana. Tatizo hutokea wakati wa kusambaza ufunguo wa faragha. Kweli. Ikiwa A itampa B ufunguo wa siri katika fomu ambayo haijasimbwa, inaweza kuzuiwa. Ikiwa ufunguo umetumwa kwa fomu iliyosimbwa, basi B haitaweza kuupokea. Ili kuendana na waandishi kadhaa, unahitaji kuwa na ufunguo mmoja kwa kila mwandishi, ambayo ni ngumu. Ili kuamua juu ya matatizo, mpango wa usimbaji fiche usiolinganishwa (usimbaji fiche wa ufunguo wa umma) ulipendekezwa.

Usimbaji wa Ufunguo wa Umma

Usimbaji fiche wa ufunguo wa umma unategemea matumizi ya jozi muhimu: funguo za faragha (za faragha) na za umma (za umma).

Ujumbe unaweza kusimbwa kwa njia fiche kwa ufunguo wa faragha na wa umma, na kusimbwa kwa ufunguo wa pili wa jozi. Hiyo ni, ujumbe uliosimbwa kwa njia fiche kwa ufunguo wa faragha unaweza tu kusimbwa kwa ule wa umma na kinyume chake. Ufunguo wa faragha unajulikana tu na mmiliki na hauwezi kushirikiwa na mtu yeyote, wakati ufunguo wa umma kusambazwa kwa uwazi kwa waandishi wote.

Jozi ya funguo - za kibinafsi na za umma - zinaweza kutumika wote kutatua matatizo ya uthibitishaji (Mchoro 4) na usiri (usiri) (Mchoro 6).

Kulingana na mpango wa kwanza (Mchoro 4): mtumiaji A hutuma ufunguo wa umma mapema kwa waandishi wake B na C, na kisha huwatumia ujumbe uliosimbwa kwa ufunguo wake wa kibinafsi.

Ujumbe unaweza tu kutumwa na A (yeye tu ndiye aliye na ufunguo wa kibinafsi), yaani, tatizo la uthibitishaji limehakikishwa. Lakini, kwa mfano, B hana uhakika kwamba barua hiyo haikusomwa pia na C. Hivyo, tatizo la usiri halihakikishwi.

Mpango wa kuhakikisha usiri (usiri) umeonyeshwa kwenye Mtini. 6.

Ujumbe unaweza kusomwa tu na A, kwa kuwa yeye pekee ndiye ana ufunguo wa faragha unaofunua ujumbe, yaani, tatizo la usiri linatatuliwa. Lakini A hawezi kuwa na uhakika kwamba ujumbe haukutumwa na B akijifanya kuwa C. Hivyo, tatizo la uthibitishaji halijatatuliwa.

Ili kuhakikisha ubadilishanaji wa siri wa ujumbe katika mawasiliano kati ya watu wawili, ni muhimu kuwa na jozi mbili za funguo (Mchoro 5).

Ili kuhakikisha ubadilishanaji wa siri wa ujumbe katika mawasiliano kati ya watu wawili, ni muhimu kuwa na jozi mbili za funguo.

Unaposimba kwa kutumia jozi muhimu, huhitaji kutuma ufunguo wako wa umma kwa waandishi wote. Ni rahisi zaidi kutuma ufunguo huu kwenye Mtandao kwenye seva fulani na ufikiaji wazi. Kisha kila mtu anaweza kupakua ufunguo uliopewa na kukutumia ujumbe wa siri ambao hakuna mtu isipokuwa wewe utausoma.

Mifumo ya ulinganifu ya crypto

Mifumo ya ulinganifu ya crypto(Pia usimbaji fiche linganifu, sifa linganifu) - njia ya usimbuaji ambayo ufunguo sawa wa kriptografia hutumiwa kwa usimbaji fiche na usimbuaji. Kabla ya uvumbuzi wa mpango wa usimbaji fiche usiolinganishwa, njia pekee iliyokuwepo ilikuwa usimbaji fiche linganifu. Ufunguo wa algoriti lazima uwe siri na pande zote mbili. Algorithm ya usimbaji huchaguliwa na wahusika kabla ya ubadilishanaji wa ujumbe kuanza.

Taarifa za msingi

Usimbaji fiche wa data na usimbaji fiche hutumika sana katika teknolojia ya kompyuta katika mifumo ya kuficha taarifa za siri na za kibiashara dhidi ya matumizi mabaya ya wahusika wengine. Kanuni kuu ndani yao ni hali ambayo transmita na mpokeaji wanajua algoriti ya usimbaji fiche mapema, pamoja na ufunguo wa ujumbe, bila ambayo habari ni seti tu ya alama ambazo hazina maana.

Mfano wa classic wa algorithms vile ni algoriti za kriptografia linganifu iliyoorodheshwa hapa chini:

  • Rahisi kupanga upya
  • Ruhusa moja kwa ufunguo
  • Ruhusa mara mbili
  • Ruhusa "Mraba wa Uchawi"

Rahisi kupanga upya

Rahisi kupanga upya bila ufunguo ni mojawapo ya wengi mbinu rahisi usimbaji fiche. Ujumbe umeandikwa kwenye jedwali katika safu wima. Baada ya maandishi kuandikwa kwa safuwima, husomwa mstari kwa mstari ili kuunda usimbaji fiche. Ili kutumia misimbo hii, mtumaji na mpokeaji wanahitaji kukubaliana juu ya ufunguo ulioshirikiwa katika muundo wa saizi ya jedwali. Kuchanganya herufi katika vikundi haijajumuishwa kwenye ufunguo wa msimbo na hutumiwa tu kwa urahisi wa kuandika maandishi yasiyo na maana.

Ruhusa moja kwa ufunguo

Zaidi mbinu ya vitendo usimbaji fiche, unaoitwa permutation ya ufunguo mmoja, ni sawa na ule uliopita. Inatofautiana tu kwa kuwa nguzo za meza zimepangwa upya kulingana na neno kuu, kishazi au seti ya nambari zenye urefu wa mstari wa jedwali.

Ruhusa mara mbili

Kwa usalama zaidi, unaweza kusimba tena ujumbe ambao tayari umesimbwa kwa njia fiche. Njia hii inajulikana kama permutation mara mbili. Kwa kufanya hivyo, ukubwa wa meza ya pili huchaguliwa ili urefu wa safu na nguzo zake ni tofauti kuliko katika meza ya kwanza. Ni bora ikiwa wao ni wa hali ya juu. Kwa kuongeza, safu katika jedwali la kwanza zinaweza kupangwa upya, na safu katika jedwali la pili. Hatimaye, unaweza kujaza meza katika zigzag, nyoka, ond, au njia nyingine. Njia kama hizo za kujaza meza, ikiwa haziongeza nguvu ya cipher, basi fanya mchakato wa usimbuaji kuwa wa kufurahisha zaidi.

Ruhusa "Mraba wa Uchawi"

Miraba ya kichawi ni jedwali za mraba zenye nambari asilia zinazofuatana kutoka 1 iliyoandikwa kwenye seli zao, ambazo huongeza hadi nambari sawa kwa kila safu, kila safu na kila mlalo. Miraba kama hiyo ilitumiwa sana kuingiza maandishi yaliyosimbwa kulingana na nambari zilizotolewa ndani yake. Ikiwa utaandika yaliyomo kwenye jedwali kwa mstari, unapata usimbaji fiche kwa kupanga upya herufi. Kwa mtazamo wa kwanza, inaonekana kana kwamba kuna viwanja vichache sana vya uchawi. Walakini, idadi yao huongezeka haraka sana kadiri ukubwa wa mraba unavyoongezeka. Kwa hivyo, kuna mraba mmoja tu wa uchawi unaopima 3 x 3, ikiwa hutazingatia mizunguko yake. Tayari kuna mraba 880 wa uchawi wa 4 x 4, na idadi ya mraba ya uchawi ya ukubwa wa 5 x 5 ni kuhusu 250,000. Kwa hiyo, mraba wa uchawi saizi kubwa inaweza kuwa msingi mzuri wa mfumo wa usimbaji wa kuaminika wa wakati huo, kwa sababu kujaribu mwenyewe chaguzi zote muhimu za msimbo huu haukuweza kufikiria.

Nambari kutoka 1 hadi 16 zinafaa katika mraba kupima 4 kwa 4. Uchawi wake ulikuwa kwamba jumla ya nambari katika safu, safu na diagonals kamili ilikuwa sawa na idadi sawa - 34. Viwanja hivi vilionekana kwanza nchini China, ambako walipewa. baadhi ya "nguvu za uchawi".

Baada ya hayo, maandishi ya maandishi yameandikwa kwa kamba (kusoma hufanywa kutoka kushoto kwenda kulia, mstari kwa mstari):
.irdzegu SzhaoyanP

Wakati wa kusimbua, maandishi yanafaa katika mraba, na maandishi wazi yanasomwa katika mlolongo wa nambari za "mraba wa uchawi". Mpango lazima uzae "miraba ya uchawi" na uchague inayohitajika kulingana na ufunguo. Mraba ni kubwa kuliko 3x3.

Hadithi

Mahitaji

Upotevu kamili wa mifumo yote ya takwimu ya ujumbe asili ni hitaji muhimu kwa sifa linganifu. Ili kufanya hivyo, cipher lazima iwe na "athari ya maporomoko" - mabadiliko makubwa katika kizuizi cha usimbuaji yanapaswa kutokea na mabadiliko ya 1-bit katika data ya pembejeo (kwa kweli, maadili ya 1/2 bits ya kizuizi cha usimbuaji lazima mabadiliko).

Sharti lingine muhimu ni kutokuwepo kwa mstari (yaani, masharti f(a) xor f(b) == f(a xor b)), la sivyo utumiaji wa uchanganuzi tofauti wa cryptanalysis kwa cipher unawezeshwa.

Mpango wa jumla

Hivi sasa, misimbo linganifu ni:

  • block ciphers. Wanachakata habari katika vizuizi vya urefu fulani (kawaida 64, 128 bits), wakitumia ufunguo wa kizuizi kwa mpangilio uliowekwa, kwa kawaida kupitia mizunguko kadhaa ya kuchanganya na kubadilisha, inayoitwa mizunguko. Matokeo ya kurudia raundi ni athari ya anguko - upotezaji unaoongezeka wa mawasiliano kati ya vizuizi vya data wazi na iliyosimbwa.
  • mtiririko wa ciphers, ambapo usimbaji fiche unafanywa kwa kila biti au baiti ya maandishi asilia (wazi) kwa kutumia gamma. Cipher ya mkondo inaweza kuundwa kwa urahisi kulingana na block cipher (kwa mfano, GOST 28147-89 katika hali ya gamma), iliyozinduliwa kwa hali maalum.

Sifa nyingi za ulinganifu hutumia mchanganyiko changamano kiasi kikubwa mbadala na vibali. Sifa nyingi kama hizo zinatekelezwa kwa kupita kadhaa (wakati mwingine hadi 80), kwa kutumia "kifunguo cha kupitisha" kwenye kila kupita. Seti ya "funguo za kupitisha" kwa kupita zote inaitwa "ratiba muhimu". Kama sheria, imeundwa kutoka kwa ufunguo kwa kufanya shughuli fulani juu yake, ikiwa ni pamoja na vibali na uingizwaji.

Njia ya kawaida ya kuunda algoriti za usimbaji linganifu ni mtandao wa Feistel. Algorithm huunda mpango wa usimbuaji kulingana na kazi F(D, K), ambapo D ni kipande cha data mara mbili ya saizi. chini ya block usimbaji fiche, na K ni "kifunguo cha kupitisha" kwa pasi fulani. Chaguo la kukokotoa halihitajiki kugeuzwa - utendakazi wake kinyume unaweza kuwa haujulikani. Faida za mtandao wa Feistel ni bahati mbaya karibu kabisa ya usimbuaji na usimbuaji (tofauti pekee ni mpangilio wa nyuma wa "funguo za kupita" kwenye ratiba), ambayo inawezesha sana utekelezaji wa vifaa.

Uendeshaji wa vibali huchanganya biti za ujumbe kulingana na sheria fulani. Katika utekelezaji wa vifaa, inatekelezwa kidogo kama ubadilishaji wa waya. Ni shughuli za vibali zinazowezesha kufikia "athari ya maporomoko ya theluji." Operesheni ya vibali ni ya mstari - f(a) xor f(b) == f(a xor b)

Shughuli za ubadilishaji hufanywa kwa kubadilisha thamani ya baadhi ya sehemu ya ujumbe (mara nyingi biti 4, 6 au 8) na nambari ya kawaida, yenye waya ngumu katika algoriti kwa kufikia safu isiyobadilika. Operesheni ya kubadilisha inatanguliza kutokuwa na mstari katika algoriti.

Mara nyingi nguvu ya algorithm, haswa dhidi ya cryptanalysis tofauti, inategemea uchaguzi wa maadili kwenye jedwali la kuangalia (S-boxes). Kwa kiwango cha chini, inachukuliwa kuwa haifai kuwa na vitu vilivyowekwa S(x) = x, na pia kutokuwepo kwa ushawishi wa baiti fulani ya pembejeo kwenye matokeo - ambayo ni, kesi wakati matokeo kidogo ni sawa kwa jozi zote za maneno ya ingizo ambayo yanatofautiana katika sehemu hii tu ya .

Vigezo vya algorithm

Kuna algorithms nyingi (angalau dazeni mbili) za ulinganifu wa cipher, vigezo muhimu ambavyo ni:

  • urefu wa ufunguo
  • idadi ya raundi
  • urefu wa kizuizi kilichochakatwa
  • utata wa utekelezaji wa maunzi/programu
  • utata wa ubadilishaji

Algorithms ya kawaida

  • AES (Kiingereza) Kiwango cha Juu cha Usimbaji Fiche) - Kiwango cha usimbaji fiche cha Marekani
  • GOST 28147-89 - kiwango cha encryption data ya ndani
  • DES (Kiingereza) Kiwango cha Usimbaji Data) - kiwango cha usimbaji data nchini Marekani

Ikilinganisha na mifumo ya siri ya asymmetric

Faida

  • kasi (kulingana na Crystalgraphy Iliyotumika - maagizo 3 ya ukubwa wa juu)
  • urahisi wa utekelezaji (kwa sababu ya shughuli rahisi)
  • urefu mfupi unaohitajika wa ufunguo kwa uimara unaolinganishwa
  • maarifa (kutokana na umri mkubwa)

Mapungufu

  • utata wa usimamizi muhimu mtandao mkubwa. Inamaanisha ongezeko la quadratic katika idadi ya jozi muhimu ambazo zinapaswa kuzalishwa, kupitishwa, kuhifadhiwa na kuharibiwa katika mtandao. Kwa mtandao wa wanachama 10, funguo 45 zinahitajika, kwa 100 tayari 4950, kwa 1000 - 499500, nk.
  • utata wa kubadilishana muhimu. Ili kuitumia, ni muhimu kutatua tatizo la uhamisho wa kuaminika wa funguo kwa kila mteja, kwani ni muhimu chaneli ya siri kupitisha kila ufunguo kwa pande zote mbili.

Ili kufidia mapungufu ya usimbaji linganifu, mpango wa kriptografia wa pamoja (mseto) unatumiwa sana kwa sasa, ambapo ufunguo wa kikao unaotumiwa na wahusika kubadilishana data kwa kutumia usimbaji linganifu hupitishwa kwa kutumia usimbaji fiche usiolinganishwa.

Mali muhimu ya ciphers symmetric ni kutowezekana matumizi yao kuthibitisha uandishi, kwa kuwa ufunguo unajulikana kwa kila chama.

Fasihi

  • Gatchin Yu.A., Korobeinikov A.G. Misingi ya algorithms ya kriptografia. Mafunzo. - St. Petersburg: SPbGITMO (TU), 2002.
  • Kohn P. Universal algebra. - M.: Mir. - 1968.
  • Korobeinikov A. G. Misingi ya hisabati ya cryptography. Mafunzo. St. Petersburg: St. Petersburg GITMO (TU), 2002.

Viungo

  • kitabu cha marejeleo, ikijumuisha usimbaji fiche linganifu

Utangulizi

Tatizo la kulinda habari kwa kuibadilisha ili isisomeke na mtu wa nje, imesisimua akili ya mwanadamu tangu nyakati za kale. Historia ya kriptografia ni ya zamani kama historia lugha ya binadamu. Isitoshe, uandishi wenyewe hapo awali ulikuwa mfumo wa kriptografia, kwa kuwa katika jamii za zamani ni wachache waliochaguliwa walioujua vizuri.

Mifumo ya kriptografia ilikua haraka wakati wa miaka ya Vita vya Kwanza na vya Pili vya Dunia. Kuanzia kipindi cha baada ya vita hadi siku ya leo, ujio wa kompyuta umeharakisha maendeleo na uboreshaji wa mbinu za kriptografia.

Kwa nini ni shida kutumia njia za kriptografia ndani mifumo ya habari(IS) iliingia kwa sasa husika hasa?

Kwa upande mmoja, matumizi yameongezeka mitandao ya kompyuta, hasa mtandao wa kimataifa Mtandao, kwa njia ambayo idadi kubwa ya habari ya serikali, kijeshi, kibiashara na kibinafsi hupitishwa, kuzuia watu wasioidhinishwa kuipata.

Kwa upande mwingine, kuibuka kwa mpya kompyuta zenye nguvu, mtandao na teknolojia za kompyuta za neva zilifanya iwezekane kudharau mifumo ya kriptografia Hadi hivi majuzi, zilizingatiwa kuwa hazionekani.

Cryptology (kryptos - siri, nembo - sayansi) inahusika na shida ya kulinda habari kwa kuibadilisha. Cryptology imegawanywa katika maeneo mawili - kriptografia Na uchambuzi wa siri. Malengo ya mwelekeo huu ni kinyume moja kwa moja.

Crystalgraphy kushiriki katika utafutaji na utafiti mbinu za hisabati mabadiliko ya habari.

Uchambuzi wa siri- inachunguza uwezekano wa kusimbua habari bila kujua funguo.

Njia za Cryptographic za ulinzi wa habari- hizi ni njia maalum za usimbuaji, usimbuaji au ubadilishaji mwingine wa habari, kama matokeo ambayo yaliyomo ndani yake hayapatikani bila uwasilishaji wa ufunguo wa cryptogram na mabadiliko ya nyuma. Njia ya usalama ya kriptografia ndiyo iliyo bora zaidi njia ya kuaminika ulinzi, kwani habari yenyewe inalindwa, na sio kuipata. Njia hii ya ulinzi inatekelezwa kwa namna ya programu au vifurushi vya programu.


Crystalgraphy

cryptography ya kisasa inajumuisha sehemu kuu nne:

1. Mifumo ya ulinganifu ya crypto. Katika mifumo ya siri ya ulinganifu, ufunguo sawa hutumiwa kwa usimbaji fiche na usimbuaji;

2. Mifumo ya ufunguo wa umma. Mifumo ya vitufe vya umma hutumia funguo mbili, ufunguo wa umma na ufunguo wa kibinafsi, ambazo zinahusiana kihisabati. Taarifa imesimbwa kwa kutumia ufunguo wa umma, unaopatikana kwa kila mtu, na kufutwa kwa kutumia ufunguo wa faragha, unaojulikana tu kwa mpokeaji wa ujumbe;

3. Sahihi ya elektroniki . Mfumo wa saini ya kielektroniki ni mabadiliko ya kriptografia yaliyounganishwa na maandishi, ambayo inaruhusu, wakati mtumiaji mwingine anapokea maandishi, kuthibitisha uandishi na uhalisi wa ujumbe.

4. Usimamizi muhimu. Huu ni mchakato wa mifumo ya usindikaji wa habari, yaliyomo ambayo ni mkusanyiko na usambazaji wa funguo kati ya watumiaji.

Sehemu kuu za matumizi ya njia za kriptografia ni maambukizi habari za siri kupitia njia za mawasiliano, kuanzisha uhalisi wa ujumbe unaopitishwa, kuhifadhi habari kwenye vyombo vya habari katika fomu iliyosimbwa.

Kwa hivyo, cryptography inafanya uwezekano wa kubadilisha habari kwa njia ambayo usomaji wake (kurejesha) unawezekana tu ikiwa ufunguo unajulikana.

Maelezo yatakayosimbwa na kusimbwa yatakuwa maandishi yaliyojengwa juu ya baadhi alfabeti. Maneno haya yanamaanisha yafuatayo.

Alfabeti- seti fupi ya herufi zinazotumiwa kusimba habari.

Maandishi- seti iliyoagizwa ya vipengele vya alfabeti.

Usimbaji fiche- Mchakato wa mabadiliko: maandishi asilia, ambayo pia inaitwa maandishi wazi, inabadilishwa maandishi yaliyosimbwa.

Usimbuaji- mchakato wa nyuma wa usimbuaji. Kulingana na ufunguo, maandishi ya siri yanabadilishwa kuwa ya asili.

Ufunguo - habari muhimu kwa usimbuaji laini na usimbuaji wa maandishi.

Cryptosystems imegawanywa katika ulinganifu Na na ufunguo wa umma.

KATIKA mifumo ya kriptografia linganifu hutumika kwa usimbaji fiche na usimbuaji ufunguo sawa.

KATIKA mifumo muhimu ya umma funguo mbili zinatumika - wazi Na imefungwa, ambazo zinahusiana kihisabati. Taarifa husimbwa kwa njia fiche kwa kutumia ufunguo wa umma, unaopatikana kwa kila mtu, na kusimbwa kwa kutumia ufunguo wa faragha, unaojulikana tu na mpokeaji wa ujumbe.

Masharti usambazaji muhimu Na usimamizi muhimu rejea michakato ya mfumo wa usindikaji wa habari, maudhui ambayo ni mkusanyiko na usambazaji wa funguo kati ya watumiaji.

Saini ya kielektroniki (digital). inaitwa mabadiliko ya kriptografia iliyoambatanishwa na maandishi, ambayo inaruhusu, wakati maandishi yamepokelewa na mtumiaji mwingine, kuthibitisha uandishi na uhalisi wa ujumbe.

Nguvu ya kriptografia ni sifa ya msimbo unaoamua upinzani wake kwa usimbuaji bila kujua ufunguo. Kuna viashiria kadhaa vya nguvu ya kriptografia, pamoja na:

· idadi ya wote funguo zinazowezekana;

· muda wa wastani unaohitajika kwa uchanganuzi wa siri.

Mifumo ya ulinganifu ya crypto

Aina nzima ya njia zilizopo za kriptografia zinaweza kupunguzwa kwa madarasa yafuatayo ya mabadiliko:

Aina rahisi zaidi ya ubadilishaji, ambayo inajumuisha kubadilisha vibambo vya matini chanzi na vingine (za alfabeti sawa) zaidi au kidogo. kanuni tata. Ili kuhakikisha nguvu ya juu ya kriptografia, matumizi ya funguo kubwa inahitajika.

· Mipangilio upya.

Pia njia rahisi ya ubadilishaji wa kriptografia. Kawaida hutumiwa pamoja na njia zingine.

Kupanga upya - herufi za maandishi yaliyosimbwa hupangwa upya kulingana na sheria fulani ndani ya kizuizi fulani cha maandishi yaliyopitishwa.

· Gumming.

Mbinu hii inajumuisha kuweka juu juu ya maandishi chanzo baadhi ya mlolongo wa uwongo-nasibu uliotolewa kulingana na ufunguo.

Ubadilishaji wa uchanganuzi - maandishi yaliyosimbwa kwa njia fiche hubadilishwa kulingana na kanuni fulani za uchanganuzi, kwa mfano gamma - inajumuisha kuweka kwenye maandishi chanzo mlolongo fulani wa uwongo-nasibu unaozalishwa kulingana na ufunguo.

· Zuia misimbo.

Ugeuzaji uliochanganywa - unawakilisha mlolongo wa mbinu za kimsingi za ugeuzaji zinazotumika kwenye kizuizi cha maandishi ya siri. Kwa mazoezi, block ciphers ni ya kawaida zaidi kuliko mabadiliko "safi" ya darasa moja au nyingine kutokana na nguvu zao za juu za kriptografia. Kirusi na Viwango vya Marekani usimbaji fiche unatokana na darasa hili.

· Uingizwaji.

Uingizwaji - herufi katika maandishi ya siri hubadilishwa na herufi kutoka kwa alfabeti sawa au nyingine kulingana na sheria iliyoamuliwa mapema.


Taarifa zinazohusiana.