Aatbash, Scytal šifrs, Cardano režģis - labi zināmi veidi, kā paslēpt informāciju no ziņkārīgo acīm. Klasiskā izpratnē permutācijas šifrs ir anagramma. Tās būtība ir tāda, ka vienkāršā teksta burti maina pozīcijas saskaņā ar noteiktu noteikumu. Citiem vārdiem sakot, šifra atslēga ir atvērtā ziņojuma rakstzīmju pārkārtošana. Tomēr atslēgas atkarība no šifrētā teksta garuma radīja daudzas neērtības, izmantojot šāda veida šifru. Taču gudras galvas ir atradušas interesantus viltīgus risinājumus, kas aprakstīti rakstā.
Apgrieztās grupas
Lai iepazītos ar šifrēšanu ar permutācijas metodi, minēsim vienu no vienkāršākajiem piemēriem. Tās algoritms sastāv no ziņojuma sadalīšanas n blokos, kuri pēc tam tiek pagriezti atpakaļ uz priekšu un apmainīti. Apsveriet piemēru.
"Diena bija pagājusi, un debesis ir tumšs gaiss"
Sadalīsim šo ziņojumu grupās. Šajā gadījumā n=6.
"Denuh odily nebav cool cool"
Tagad paplašiniet grupas, rakstot katru no beigām.
"hunned waben dzo methu yin"
Samainīsim vietām noteiktā veidā.
"ilido methu yin hunned waben dzo"
Nezinošam cilvēkam šajā formā ziņa nav nekas vairāk kā atkritumi. Bet, protams, par atšifrēšanas algoritmu atbild persona, kurai ziņojums ir adresēts.
Vidējais ieliktnis
Šīs šifrēšanas algoritms ir nedaudz sarežģītāks nekā permutācijas šifrēšanas metode:
- Sadaliet ziņojumu grupās ar pāra rakstzīmju skaitu.
- Katras grupas vidū ievietojiet papildu burtus.
Apskatīsim piemēru.
- "Viņš aizveda radības gulēt".
- "Earth yetv ariu drive lkosnu".
- "Zeamn yabtv arayu voabdi lkoasnu".
Šajā gadījumā pārmaiņus burti "a" un "ab" tika ievietoti grupu vidū. Ieliktņi var būt dažādi, ar dažādu skaitu un neatkārtoties. Turklāt jūs varat paplašināt katru grupu, sajaukt tos utt.
Šifrēta "Sviestmaize"
Vēl viens interesants un vienkāršs permutācijas šifrēšanas piemērs. Lai to izmantotu, vienkāršais teksts ir jāsadala 2 daļās un viens no tiem jāievada pa rakstzīmi starp otra burtiem. Izmantosim piemēru.
No viņiemdarbi; Es esmu vienīgais, bezpajumtnieks
Sadalīts uz pusēm ar vienādu burtu skaitu.
Viņu darba dēļ tikai es esmu bezpajumtnieks
Tagad rakstiet ziņojuma pirmo pusi ar lielāku burtu atstarpi.
"O T un X T R U D DOL un Sh"
Un šajās spraugās ievietosim otrās puses burtus.
"Oyatoidhitnrbuedzodvolminshiy"
Beidzot grupējiet burtus vārdos (pēc izvēles).
"Oyatoi dhi tnrbue dzodvol minshhy"
Tekstu ir ļoti viegli šifrēt ar šo metodi. Nezinātājam kādu laiku būs jāizdomā radušās stīgas-gruži.
Permutācijas pa "maršrutu"
Šis nosaukums ir dots senatnē plaši izmantotajiem šifriem. Maršruts to konstrukcijā bija jebkura ģeometriska figūra. Vienkāršais teksts tika ierakstīts šādā figūrā pēc noteiktas shēmas un izvilkts saskaņā ar tās reversu. Piemēram, viena no iespējām var būt rakstīt vienkārša teksta tabulā saskaņā ar shēmu: čūska rāpo šūnās pulksteņrādītāja virzienā, un šifrētais ziņojums tiek sastādīts, norakstot kolonnas vienā rindā, no pirmās līdz pēdējai. Šī ir arī permutācijas šifrēšana.
Piemērā parādīsim, kā šifrēt tekstu. Mēģiniet pats noteikt ierakstīšanas maršrutu un šifru apkopošanas maršrutu.
"Sagatavojieties izturēt karu".
Ziņojumu ierakstīsim 3x9 šūnu tabulā. Tabulas izmērsvar noteikt, pamatojoties uz ziņojuma garumu, vai kādu fiksētu tabulu var izmantot vairākas reizes.
p | r | un | r | o | t | o | uz | l |
r | e | d | s | uz | es | c | l | es |
f | a | t | b | uz | o | th | n | y |
Šifru veidosim, sākot no tabulas augšējā labā stūra.
"Launlvosoyatovvygidtaerprj"
Aprakstīto darbību maiņa nav grūta. Tas ir pietiekami vienkārši, lai izdarītu pretējo. Šī metode ir ļoti ērta, jo ļauj viegli atcerēties šifrēšanas un atšifrēšanas procedūru. Un tas ir arī interesanti, jo šifram var izmantot jebkuru figūru. Piemēram, spirāle.
Vertikālās permutācijas
Šis šifra veids ir arī maršruta permutācijas variants. Tas ir interesanti, pirmkārt, ar atslēgas klātbūtni. Šo metodi plaši izmantoja agrāk, un šifrēšanai izmantoja arī tabulas. Ziņojums tiek ierakstīts tabulā parastajā veidā - no augšas uz leju, un šifrēšana tiek izrakstīta vertikāli, vienlaikus ievērojot atslēgas vai paroles norādīto secību. Apskatīsim šādas šifrēšanas paraugu.
"Gan ar sāpīgu ceļu, gan ar līdzjūtību"
Izmantosim 4x8 šūnu tabulu un ierakstīsim tajā savu vēstījumu parastajā veidā. Un šifrēšanaiizmantojiet taustiņu 85241673.
un | c | t | es | r | o | c | t |
n | s | m | p | y | t | e | m |
un | c | c | o | c | t | r | a |
d | a | n | b | e | m |
Atslēga ir parādīta zemāk.
8 | 5 | 2 | 4 | 1 | 6 | 7 | 3 |
Tagad, izmantojot taustiņu kā secības norādi, ierakstiet kolonnas rindā.
"Gusetmsntmayposysaottmserinid"
Ir svarīgi atzīmēt, ka, izmantojot šo šifrēšanas metodi, tukšās tabulas šūnas nedrīkst aizpildīt ar nejaušiem burtiem vai simboliem, cerot, ka tas sarežģīs šifrēto tekstu. Patiesībā, gluži pretēji, šāda rīcība ienaidniekiem dos mājienu. Tā kā atslēgas garums būs vienāds ar vienu no ziņojuma garuma dalītājiem.
Vertikālā permutācija ir apgriezta
Vertikālā permutācija ir interesanta, jo ziņojuma atšifrēšana nav vienkārša algoritma apvēršana. Tas, kurš zina atslēgu, zina, cik kolonnu ir tabulā. Lai atšifrētu ziņojumu, tabulā ir jānosaka garo un īso rindu skaits. Tas noteiks sākumu, no kurienes sākt rakstīt šifrētu tekstu uz tabulu, lai lasītu vienkāršu tekstu. Lai to izdarītu, mēs sadalām garumuziņojumus pēc atslēgas garuma, un mēs iegūstam 30/8=3 un 6 atlikušajā daļā.
Tādējādi mēs uzzinājām, ka tabulā ir 6 garas kolonnas un 2 īsas kolonnas, kas nav pilnībā aizpildītas ar burtiem. Aplūkojot atslēgu, mēs redzam, ka šifrēšana sākās no 5. kolonnas un tai vajadzētu būt garai. Tātad mēs atklājam, ka pirmie 4 šifrētā teksta burti atbilst tabulas piektajai kolonnai. Tagad jūs varat pierakstīt visus burtus vietās un izlasīt slepeno ziņojumu.
Kardano režģis
Šis veids attiecas uz tā sauktajiem trafaretu šifriem, bet būtībā tā ir šifrēšana ar rakstzīmju permutācijas metodi. Atslēga ir trafarets galda formā ar izgrieztiem caurumiem. Faktiski jebkura forma var būt trafarets, taču visbiežāk tiek izmantots kvadrāts vai tabula.
Cardano trafarets ir izgatavots pēc šāda principa: izgrieztās šūnas nedrīkst pārklāties viena ar otru, pagriežot par 90°. Tas nozīmē, ka pēc 4 trafareta apgriezieniem ap savu asi slotiem tajā nekad nevajadzētu sakrist.
Izmantojot vienkāršu Cardano režģi kā piemēru (parādīts tālāk).
Izmantojot šo trafaretu, šifrējiet frāzi "Ak, mūzas, es jūs uzrunāšu."
- | O | - | M | - | - |
U | |||||
З | S | ||||
K | |||||
B | A | ||||
M |
Aizpildiet trafareta šūnas ar burtiem saskaņā ar noteikumu: vispirms no labās puses uz kreiso un pēc tam no augšas uz leju. Kad šūnas beigušās, pagrieziet trafaretu par 90 ° pulksteņrādītāja virzienā. Tādā veidā mēs iegūstam šādu tabulu.
I | - | - | - | - | - |
O | B | R | |||
A | Sch | ||||
y | |||||
С | b |
Un vēlreiz pagrieziet to par 90°.
- | - | - | - | - | С |
B | O | ||||
З | |||||
B | A | ||||
N | |||||
b | E |
Un pēdējais pagrieziens.
- | - | M | - | - | - |
Pēc 4 tabulu apvienošanas vienā, mēs saņemam pēdējo šifrēto ziņojumu.
I | O | M | M | G | С |
B | O | U | B | O | R |
G | З | A | З | Sch | S |
B | G | K | G | A | U |
G | B | G | N | G | A |
M | С | b | b | E | G |
Lai gan ziņojums var palikt nemainīgs, bet pārraidei ērtāk būs saņemt pazīstama izskata šifrētu tekstu. Lai to izdarītu, tukšās šūnas var aizpildīt ar nejaušiem burtiem, un kolonnas var ierakstīt vienā rindā:
YAVGVGM OOZGVS MUAKGY MBZGN GOSCHAGE SRYUAG
Lai atšifrētu šo ziņojumu, adresātam ir jābūt precīzai trafareta kopijai, kas tika izmantota tā šifrēšanai. Šis šifrs jau sen tiek uzskatīts par diezgan stabilu. Tam ir arī daudz variāciju. Piemēram, 4 Cardano režģu izmantošana vienlaikus, no kuriem katrs griežasmanā veidā.
Permutācijas šifru analīze
Visi permutācijas šifri ir neaizsargāti pret frekvenču analīzi. Īpaši gadījumos, kad ziņojuma garums ir salīdzināms ar atslēgas garumu. Un šo faktu nevar mainīt, atkārtoti piemērojot permutācijas, lai cik sarežģītas tās būtu. Tāpēc kriptogrāfijā stabili var būt tikai tie šifri, kas papildus permutācijai izmanto vairākus mehānismus vienlaikus.