მარტივი შიფრები: პოპულარული კოდებისა და შიფრების აღწერა

Სარჩევი:

მარტივი შიფრები: პოპულარული კოდებისა და შიფრების აღწერა
მარტივი შიფრები: პოპულარული კოდებისა და შიფრების აღწერა
Anonim

კორესპონდენციის დაშიფვრის აუცილებლობა გაჩნდა ძველ სამყაროში და გამოჩნდა მარტივი შემცვლელი შიფრები. დაშიფრულმა შეტყობინებებმა განსაზღვრა მრავალი ბრძოლის ბედი და გავლენა მოახდინა ისტორიის მიმდინარეობაზე. დროთა განმავლობაში ხალხმა გამოიგონა უფრო და უფრო მოწინავე დაშიფვრის მეთოდები.

კოდი და შიფრი, სხვათა შორის, განსხვავებული ცნებებია. პირველი ნიშნავს შეტყობინებაში თითოეული სიტყვის ჩანაცვლებას კოდის სიტყვით. მეორე არის ინფორმაციის თითოეული სიმბოლოს დაშიფვრა კონკრეტული ალგორითმის გამოყენებით.

მას შემდეგ, რაც მათემატიკამ დაიწყო ინფორმაციის კოდირება და კრიპტოგრაფიის თეორია განვითარდა, მეცნიერებმა აღმოაჩინეს ამ გამოყენებითი მეცნიერების მრავალი სასარგებლო თვისება. მაგალითად, გაშიფვრის ალგორითმები დაეხმარა მკვდარი ენების ამოხსნას, როგორიცაა ძველი ეგვიპტური ან ლათინური.

სტეგანოგრაფია

სტეგანოგრაფია უფრო ძველია ვიდრე კოდირება და დაშიფვრა. ეს ხელოვნება დიდი ხანია არსებობს. ეს სიტყვასიტყვით ნიშნავს "ფარულ დამწერლობას" ან "შიფრულ წერას". მიუხედავად იმისა, რომ სტეგანოგრაფია არ აკმაყოფილებს კოდის ან შიფრის განმარტებებს, ის მიზნად ისახავს ინფორმაციის დამალვას უცხო ადამიანებისგან.თვალი.

სტეგანოგრაფია ან კრიპტოგრაფია
სტეგანოგრაფია ან კრიპტოგრაფია

სტეგანოგრაფია უმარტივესი შიფრია. ცვილით დაფარული გადაყლაპული ნოტები ტიპიური მაგალითია, ან შეტყობინება გაპარსული თავზე, რომელიც იმალება მოზრდილი თმის ქვეშ. სტეგანოგრაფიის ყველაზე ნათელი მაგალითია მრავალ ინგლისურ (და არა მხოლოდ) დეტექტიურ წიგნში აღწერილი მეთოდი, როდესაც შეტყობინებები გადაიცემა გაზეთის საშუალებით, სადაც ასოები შეუმჩნევლად არის მონიშნული.

სტეგანოგრაფიის მთავარი მინუსი არის ის, რომ ყურადღებიანი უცხო ადამიანი ამას შეამჩნევს. ამიტომ, საიდუმლო შეტყობინების ადვილად წაკითხვის თავიდან ასაცილებლად, დაშიფვრის და კოდირების მეთოდები გამოიყენება სტეგანოგრაფიასთან ერთად.

ROT1 და კეისრის შიფრი

ამ შიფრის სახელია ROTate 1 ასო წინ და ის ცნობილია ბევრი სკოლის მოსწავლისთვის. ეს არის მარტივი შემცვლელი შიფრი. მისი არსი მდგომარეობს იმაში, რომ თითოეული ასო დაშიფრულია ანბანურად გადაადგილებით 1 ასო წინ. A -> B, B -> C, …, Z -> A. მაგალითად, ჩვენ ვშიფრავთ ფრაზას "ჩვენი ნასტია ხმამაღლა ტირის" და ვიღებთ "ზოგადი Obtua dspnlp rmbsheu"..

ROT1 შიფრი შეიძლება განზოგადდეს ოფსეტების თვითნებურ რაოდენობაზე, შემდეგ მას უწოდებენ ROTN, სადაც N არის რიცხვი, რომლითაც უნდა გადაინაცვლოს ასოების დაშიფვრა. ამ ფორმით, შიფრი ცნობილია უძველესი დროიდან და მას უწოდებენ "კეისრის შიფრას"..

კირიული დისკი კეისრის შიფრისთვის
კირიული დისკი კეისრის შიფრისთვის

კეისრის შიფრი ძალიან მარტივი და სწრაფია, მაგრამ ეს არის მარტივი ერთი პერმუტაციის შიფრი და, შესაბამისად, ადვილად იშლება. ასეთი მინუსი რომ აქვს, მხოლოდ ბავშვური ხუმრობისთვისაა შესაფერისი.

ტრანსპოზიციური ან პერმუტაციის შიფრები

ამ ტიპის მარტივი პერმუტაციის შიფრები უფრო სერიოზულია და აქტიურად გამოიყენებოდა არც ისე დიდი ხნის წინ. ამერიკის სამოქალაქო ომისა და პირველი მსოფლიო ომის დროს მას იყენებდნენ შეტყობინებების გასაგზავნად. მისი ალგორითმი მდგომარეობს ასოების ადგილებზე გადაწყობაში - დაწერეთ შეტყობინება საპირისპირო თანმიმდევრობით ან გადააწყვეთ ასოები წყვილებში. მაგალითად, დავშიფროთ ფრაზა „მორზის კოდიც შიფრია“-> „akubza ezrom - ზღარბი rfish“.

კარგი ალგორითმით, რომელიც განსაზღვრავდა თვითნებურ პერმუტაციებს თითოეული სიმბოლოსთვის ან მათი ჯგუფისთვის, შიფრი გახდა მდგრადი მარტივი გატეხვის მიმართ. მაგრამ! მხოლოდ თავის დროზე. ვინაიდან შიფრი ადვილად იშლება უბრალო უხეში ძალის ან ლექსიკონის შესატყვისით, დღეს ნებისმიერ სმარტფონს შეუძლია გაუმკლავდეს მის გაშიფვრას. ამიტომ, კომპიუტერების მოსვლასთან ერთად, ეს შიფრაც გადავიდა ბავშვთა კატეგორიაში.

მორის კოდი

ABC არის ინფორმაციის გაცვლის საშუალება და მისი მთავარი ამოცანაა შეტყობინებების გადაცემა უფრო ადვილი და გასაგები გახადოს. თუმცა ეს ეწინააღმდეგება იმას, რისთვისაც განკუთვნილია დაშიფვრა. მიუხედავად ამისა, ის მუშაობს როგორც უმარტივესი შიფრები. მორზეს სისტემაში თითოეულ ასოს, რიცხვს და სასვენ ნიშანს აქვს თავისი კოდი, რომელიც შედგება ტირეებისა და წერტილების ჯგუფისგან. ტელეგრაფის გამოყენებით შეტყობინების გაგზავნისას, ტირეები და წერტილები წარმოადგენს გრძელ და მოკლე სიგნალებს.

კირილიცა და ლათინური მორზეს კოდით
კირილიცა და ლათინური მორზეს კოდით

ტელეგრაფი და მორზის კოდი… მორზემ პირველად დააპატენტა "თავისი" გამოგონება 1840 წელს, თუმცა მსგავსი მოწყობილობები მასზე ადრე რუსეთსა და ინგლისშიც გამოიგონეს. მაგრამ ვის აინტერესებს ახლა… ტელეგრაფი და ანბანიმორზეს კოდმა ძალიან დიდი გავლენა მოახდინა სამყაროზე, რაც საშუალებას აძლევდა შეტყობინებების თითქმის მყისიერ გადაცემას კონტინენტურ დისტანციებზე.

მონოანბანური ჩანაცვლება

ზემო აღწერილი ROTN და მორზეს კოდი არის მონოანბანური ჩანაცვლების შრიფტების მაგალითები. პრეფიქსი „მონო“ნიშნავს, რომ დაშიფვრისას ორიგინალური შეტყობინების თითოეული ასო იცვლება სხვა ასოთი ან კოდით ერთადერთი დაშიფვრის ანბანიდან.

მარტივი შემცვლელი შიფრების გაშიფვრა არ არის რთული და ეს მათი მთავარი ნაკლია. ისინი წყდება მარტივი ჩამოთვლით ან სიხშირის ანალიზით. მაგალითად, ცნობილია, რომ რუსული ენის ყველაზე ხშირად გამოყენებული ასოებია "o", "a", "i". ამრიგად, შეიძლება ვივარაუდოთ, რომ შიფრულ ტექსტში ასოები, რომლებიც გვხვდება ყველაზე ხშირად ნიშნავს "ო", ან "ა", ან "და". ამ მოსაზრებებიდან გამომდინარე, შეტყობინების გაშიფვრა შესაძლებელია კომპიუტერის ძიების გარეშეც.

ცნობილია, რომ მერი I, შოტლანდიის დედოფალი 1561-1567 წლებში, იყენებდა ძალიან რთულ მონოანბანურ ჩანაცვლების შიფრს რამდენიმე კომბინაციით. მიუხედავად ამისა, მისმა მტრებმა შეძლეს შეტყობინებების გაშიფვრა და ინფორმაცია საკმარისი იყო დედოფლისთვის სიკვდილით დასჯა.

გრონსფელდის შიფრი, ან მრავალანბანური ჩანაცვლება

მარტივი შიფრები გამოცხადებულია უსარგებლოდ კრიპტოგრაფიით. აქედან გამომდინარე, ბევრი მათგანი გაუმჯობესდა. გრონსფელდის შიფრი არის კეისრის შიფრის მოდიფიკაცია. ეს მეთოდი გაცილებით მდგრადია ჰაკერების მიმართ და მდგომარეობს იმაში, რომ დაშიფრული ინფორმაციის თითოეული სიმბოლო დაშიფრულია ერთი სხვადასხვა ანბანის გამოყენებით, რომლებიც მეორდება ციკლურად. შეიძლება ითქვას, რომ ეს არის მრავალგანზომილებიანი აპლიკაციაუმარტივესი შემცვლელი შიფრი. სინამდვილეში, გრონსფელდის შიფრი ძალიან ჰგავს ქვემოთ განხილულ ვიგენერის შიფრს.

ADFGX დაშიფვრის ალგორითმი

ეს არის პირველი მსოფლიო ომის ყველაზე ცნობილი შიფრი, რომელსაც გერმანელები იყენებდნენ. შიფრმა მიიღო სახელი იმის გამო, რომ დაშიფვრის ალგორითმი ყველა შიფრგრამას ამ ასოების მონაცვლეობამდე მიჰყავდა. თავად ასოების არჩევანი განპირობებული იყო მათი მოხერხებულობით ტელეგრაფის ხაზებით გადაცემისას. შიფრაში თითოეული ასო წარმოდგენილია ორით. მოდით შევხედოთ ADFGX კვადრატის უფრო საინტერესო ვერსიას, რომელიც მოიცავს რიცხვებს და ჰქვია ADFGVX.

A D F G V X
A J Q A 5 H D
D 2 E R V 9 Z
F 8 Y მე N K V
G U P B F 6 O
V 4 G X S 3 T
X W L Q 7 C 0

ADFGX კვადრატის ალგორითმი შემდეგია:

  1. აირჩიეთ შემთხვევითი n ასო სვეტებისა და მწკრივებისთვის.
  2. N x N მატრიცის აგება.
  3. შეიყვანეთ მატრიცაში უჯრედებზე შემთხვევით მიმოფანტული ანბანი, რიცხვები, სიმბოლოები.

მოდით გავუკეთოთ მსგავსი კვადრატი რუსული ენისთვის. მაგალითად, შევქმნათ კვადრატი ABCD:

A B B G D
A E/E N b/b A I/Y
B W V/F G/R З D
B შ/შ B L X მე
G R M O Yu P
D F T T S U

ეს მატრიცა გამოიყურება უცნაურად, რადგან უჯრედების მწკრივი შეიცავს ორ ასოს. ეს მისაღებია, მესიჯის აზრი არ იკარგება. მისი ადვილად აღდგენა შესაძლებელია. დაშიფრეთ ფრაზა "კომპაქტური შიფრი" ამ ცხრილის გამოყენებით:

1 2 3 4 5 6 7 8 9 10 11 12 13 14
ფრაზა K O M P A K T N S Y Ш & F R
შიფრა bw გვ გბ სად აგ bw db აბ dg ჯოჯოხეთი ვა ჯოჯოხეთი bb ჰა

ამგვარად, საბოლოო დაშიფრული შეტყობინება ასე გამოიყურება: "bvgvgbgdagbvdbabdgvdvaadbbga". რა თქმა უნდა, გერმანელებმა მსგავსი ხაზი კიდევ რამდენიმე შიფრის მეშვეობით განახორციელეს. და ბოლოს ძალიან სტაბილური აღმოჩნდადაშიფრული შეტყობინების გასატეხად.

ვიგენერის შიფრი

ეს შიფრი სიდიდის რიგითობით უფრო მდგრადია გატეხვის მიმართ, ვიდრე მონოანბანური, თუმცა ეს არის მარტივი ტექსტის შემცვლელი შიფრი. თუმცა, ძლიერი ალგორითმის გამო, დიდი ხნის განმავლობაში შეუძლებლად ითვლებოდა გატეხვა. მისი პირველი ნახსენები მე-16 საუკუნით თარიღდება. ვიჟენერი (ფრანგი დიპლომატი) შეცდომით არის მიჩნეული მის გამომგონებლად. უკეთ რომ გაიგოთ, რა არის საქმე, განიხილეთ Vigenère-ის ცხრილი (Vigenère Square, Tabula recta) რუსული ენისთვის.

ვიგენერის მაგიდა რუსული ანბანით
ვიგენერის მაგიდა რუსული ანბანით

დავიწყოთ ფრაზის კოდირება "კასპეროვიჩი იცინის". მაგრამ იმისათვის, რომ დაშიფვრა წარმატებული იყოს, საჭიროა საკვანძო სიტყვა - დაე იყოს "პაროლი". ახლა დავიწყოთ დაშიფვრა. ამისათვის ჩვენ ვწერთ გასაღებს იმდენჯერ, რომ მისგან ასოების რაოდენობა შეესაბამებოდეს დაშიფრული ფრაზის ასოების რაოდენობას, გასაღების გამეორებით ან ჭრით:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
ფრაზა: K A С P E R O B & W С M E E T С მე
გასაღები P A R O L b P A R O L b P A R O L

ახლა ვიგენერის ცხრილის გამოყენებით, როგორც კოორდინატულ სიბრტყეში, ჩვენ ვეძებთ უჯრედს, რომელიც არის ასოების წყვილის კვეთა და მივიღებთ: K + P=b, A + A=B, C. + P=C და ა.შ.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
შიფი: b B B Yu С N Yu G Sch F E Y X F G A L

მივიღებთ, რომ "კასპეროვიჩი იცინის"="bvusnyugschzh eykhzhgal".

Vigenère შიფრის გატეხვა ძალიან რთულია, რადგან სიხშირის ანალიზმა უნდა იცოდეს საკვანძო სიტყვის სიგრძე იმისთვის, რომ იმუშაოს. ასე რომ, ჰაკი არის საკვანძო სიტყვის სიგრძის შემთხვევით გადაგდება და საიდუმლო შეტყობინების გატეხვა.

აღსანიშნავია ისიც, რომ სრულიად შემთხვევითი გასაღების გარდა შესაძლებელია სრულიად განსხვავებული Vigenère ცხრილის გამოყენება. ამ შემთხვევაში, ვიჟენერის მოედანი შედგება სტრიქონი-სტრიქონი დაწერილი რუსული ანბანისგან ერთის ცვლაზე. რაც მოგვმართავს ROT1 შიფრაზე. და ისევე, როგორც კეისრის შიფრში, ოფსეტური შეიძლება იყოს ნებისმიერი. უფრო მეტიც, ასოების თანმიმდევრობა არ უნდა იყოს ანბანური. ამ შემთხვევაში, თავად ცხრილი შეიძლება იყოს გასაღები, რომლის ცოდნის გარეშე შეუძლებელი იქნება შეტყობინების წაკითხვა, თუნდაც გასაღების ცოდნა.

კოდები

რეალური კოდები შედგება მატჩებისგან თითოეულისთვისცალკე კოდის სიტყვები. მათთან მუშაობისთვის საჭიროა ე.წ კოდების წიგნები. სინამდვილეში, ეს არის იგივე ლექსიკონი, რომელიც შეიცავს მხოლოდ სიტყვების თარგმანებს კოდებად. კოდების ტიპიური და გამარტივებული მაგალითია ASCII ცხრილი - მარტივი სიმბოლოების საერთაშორისო შიფრი.

ASCII კოდის ცხრილი
ASCII კოდის ცხრილი

კოდების მთავარი უპირატესობა ის არის, რომ მათი გაშიფვრა ძალიან რთულია. სიხშირის ანალიზი თითქმის არ მუშაობს, როდესაც ისინი გატეხილია. კოდების სისუსტე, ფაქტობრივად, თავად წიგნებია. ჯერ ერთი, მათი მომზადება რთული და ძვირი პროცესია. მეორეც, მტრებისთვის ისინი გადაიქცევიან სასურველ ობიექტად და წიგნის თუნდაც ნაწილის ჩაჭრა გაიძულებს მთლიანად შეცვალო ყველა კოდი.

მე-20 საუკუნეში ბევრი სახელმწიფო იყენებდა კოდებს საიდუმლო მონაცემების გადასაცემად, ცვლიდნენ კოდების წიგნს გარკვეული პერიოდის შემდეგ. ასევე აქტიურად ნადირობდნენ მეზობლებისა და მოწინააღმდეგეების წიგნებზე.

ენიგმა

ყველამ იცის, რომ Enigma იყო ნაცისტების მთავარი შიფრული მანქანა მეორე მსოფლიო ომის დროს. Enigma-ს სტრუქტურა მოიცავს ელექტრული და მექანიკური სქემების ერთობლიობას. როგორ გამოვა შიფრი, ეს დამოკიდებულია Enigma-ს საწყის კონფიგურაციაზე. ამავდროულად, Enigma ავტომატურად ცვლის თავის კონფიგურაციას ოპერაციის დროს, შიფრავს ერთ შეტყობინებას რამდენიმე გზით მთელ სიგრძეზე.

უმარტივესი შიფრებისგან განსხვავებით, "ენიგმა" მისცა ტრილიონობით შესაძლო კომბინაცია, რამაც დაშიფრული ინფორმაციის გატეხვა თითქმის შეუძლებელი გახადა. თავის მხრივ, ნაცისტებს ჰქონდათ გარკვეული კომბინაცია მომზადებული ყოველი დღისთვის, რაც მათგამოიყენება კონკრეტულ დღეს შეტყობინებების გასაგზავნად. ამიტომ, მაშინაც კი, თუ Enigma მტრის ხელში ჩავარდნილიყო, მას არაფერი გაუკეთებია შეტყობინებების გაშიფვრას ყოველ დღე სწორი კონფიგურაციის გარეშე.

ნაცისტური Enigma შიფრის მანქანა
ნაცისტური Enigma შიფრის მანქანა

ჰაკი "ენიგმა" აქტიურად სცადეს ჰიტლერის მთელი სამხედრო კამპანიის განმავლობაში. ინგლისში 1936 წელს ამისთვის აშენდა ერთ-ერთი პირველი გამოთვლითი მოწყობილობა (Turing machine), რომელიც მომავალში კომპიუტერების პროტოტიპად იქცა. მისი ამოცანა იყო ერთდროულად რამდენიმე ათეული ენიგმის მოქმედების სიმულაცია და მათში ჩასმული ნაცისტური მესიჯების გაშვება. მაგრამ ტურინგის მანქანაც კი მხოლოდ ხანდახან ახერხებდა შეტყობინების გატეხვას.

საჯარო გასაღების დაშიფვრა

დაშიფვრის ალგორითმებიდან ყველაზე პოპულარული, რომელიც ყველგან გამოიყენება ტექნოლოგიასა და კომპიუტერულ სისტემებში. მისი არსი მდგომარეობს, როგორც წესი, ორი გასაღების თანდასწრებით, რომელთაგან ერთი საჯაროდ არის გადაცემული, ხოლო მეორე საიდუმლო (პირადი). საჯარო გასაღები გამოიყენება შეტყობინების დაშიფვრისთვის, ხოლო პირადი გასაღები გამოიყენება მისი გაშიფვრისთვის.

საჯარო გასაღების დაშიფვრის ალგორითმი
საჯარო გასაღების დაშიფვრის ალგორითმი

საჯარო გასაღები ყველაზე ხშირად არის ძალიან დიდი რიცხვი, რომელსაც აქვს მხოლოდ ორი გამყოფი, არ ითვლიან ერთს და თავად რიცხვს. ეს ორი გამყოფი ერთად ქმნის საიდუმლო გასაღებს.

მოდით განვიხილოთ მარტივი მაგალითი. საჯარო გასაღები იყოს 905. მისი გამყოფებია რიცხვები 1, 5, 181 და 905. მაშინ საიდუმლო გასაღები იქნება, მაგალითად, რიცხვი 5181. ძალიან მარტივად ამბობ? თუ როლშისაჯარო ნომერი იქნება 60 ციფრიანი რიცხვი? მათემატიკურად რთულია დიდი რიცხვის გამყოფების გამოთვლა.

უფრო ნათელი მაგალითისთვის წარმოიდგინეთ, რომ იღებთ ფულს ბანკომატიდან. ბარათის წაკითხვისას პერსონალური მონაცემები იშიფრება გარკვეული საჯარო გასაღებით, ხოლო ბანკის მხრიდან ინფორმაციის გაშიფვრა ხდება საიდუმლო გასაღებით. და ეს საჯარო გასაღები შეიძლება შეიცვალოს თითოეული ოპერაციისთვის. და არ არსებობს გზები, რომ სწრაფად იპოვოთ გასაღები გამყოფები მისი ჩაჭრისას.

შრიფტის გამძლეობა

დაშიფვრის ალგორითმის კრიპტოგრაფიული სიძლიერე არის ჰაკერებისთვის წინააღმდეგობის გაწევის უნარი. ეს პარამეტრი ყველაზე მნიშვნელოვანია ნებისმიერი დაშიფვრისთვის. ცხადია, მარტივი შემცვლელი შიფრი, რომლის გაშიფვრა შესაძლებელია ნებისმიერი ელექტრონული მოწყობილობით, ერთ-ერთი ყველაზე არასტაბილურია.

დღეს არ არსებობს ერთიანი სტანდარტები, რომლითაც შესაძლებელი იქნებოდა შიფრის სიძლიერის შეფასება. ეს შრომატევადი და ხანგრძლივი პროცესია. თუმცა, არსებობს მთელი რიგი კომისიები, რომლებმაც შექმნეს სტანდარტები ამ სფეროში. მაგალითად, NIST USA-ს მიერ შემუშავებული Advanced Encryption Standard ან AES დაშიფვრის ალგორითმის მინიმალური მოთხოვნები.

ცნობისთვის: ვერნამის შიფრი აღიარებულია, როგორც ყველაზე მდგრადი შიფრი გატეხვის მიმართ. ამავდროულად, მისი უპირატესობა ის არის, რომ მისი ალგორითმის მიხედვით არის უმარტივესი შიფრი.

გირჩევთ: