ასიმეტრიული კრიპტოსისტემა

ასიმეტრიული კრიპტოსისტემა (კრიპტოსისტემა ღია გასაღებით) — კრიპტოსისტემა, რომელიც იყენებს გასაღებების წყვილს — ღია და პირად გასაღებებს. პირადი გასაღები რჩება გასაღების მფლობელთან და ინახება საიდუმლოდ, ხოლო ღია გასაღები შეიძლება გავრცელდეს და ყველასთვის ხელმისაწვდომი იყოს. ეს ორი გასაღები ერთმანეთთან დაკავშირებულია მათემატიკურად, მაგრამ ამავე დროს პირადი გასაღების მიღება ღია გასაღებიდან პრაქტიკულად შეუძლებელია. პირადი გასაღებით დაშიფრული ინფორმაციის დეშიფრაცია მხოლოდ შესაბამისი ღია გასაღებით შეიძლება და პირიქით.
ასიმეტრიული კრიპტოგრაფიის გამოყენების ორი ძირითადი სფეროა:
1. ღია გასაღებით შიფრაცია — ღია გასაღებით დაშიფრული ტექსტის დეშიფრაცია შეუძლია მხოლოდ მას, ვისაც აქვს პირადი გასაღები. ანუ ნებისმიერს შეუძლია გაუგზავნოს გასაღების მფლობელს საიდუმლო ინფორმაცია. თუ ქსელში არსებობს N პირი, მათ შორის ინფრომაციის გასაცვლელად საჭირო ხდება მხოლოდ N-1 გასაღებების წყვილი. ღია გასაღებები თავისუფლად იცვლება ერთმანეთში ან მოთავსდება საერთო ბაზაში.
2. ციფრული ხელმოწერა — ფარული გასაღებით დაშიფრული ტექსტის დეშიფრაცია შეუძლია ნებისმიერს, ანუ ყველას შეუძლია მიმართოს საერთო ბაზას და დარწმუნდეს იმაში, რომ ეს ინფორმაცია ნამდვილად გამგზავნის მიერ იქნა დაშიფრული (ხელმოწერილი).
ღია გასაღების არსებობა წარმოშობს დამატებით პრობლემას, სისტემის მონაწილეები დარწმუნებულნი უნდა იყოს, რომ ღია გასაღები ნამდვილად მფლობელს ეკუთვნის და შეცვლილი არ არის. ეს მიიღწევა ღია გასაღებების ინფრასტრუქტურის შექმნით, სადაც ერთი გასაღების მფლობელი (სერტიფიკატის გამცემი) სხვებს უდასტურებს (ციფრული ხელმოწერით) თავიანთი გასაღებების მფლობელობას. სხვა ხერხი, რომელსაც PGP იყენებს, მდგომარეობს ე.წ. „ნდობის ქსელის“ გამოყენებაში.
ასიმეტრიული ალგორითმები გაცილებით მეტ გამოთვლით რესურსებს მოითხოვენ და უფრო ნელა მუშაობენ, ვიდრე სიმეტრიულნი. ამიტომ ხშირად გამოიყენება მათი ჰიბრიდი, როდესაც გასაღების გადაცემისათვის გამოიყენება ასიმეტრიული, ხოლო ძირითადი ინფორმაციის გადაცემისათვის—სიმეტრიული ალგორითმები (სიმეტრიული კრიპტოსისტემა). ეს ერთდროულად რამდენიმე პრობლემას ჭრის: აღარ არის გასაღების გაცვლის პრობლემა, აღარ არის საჭირო ყველა წყვილისათვის ცალ-ცალკე გასაღები, ასევე მონაცემების გაცვლა ხდება უფრო სწრაფი სიმეტრიული ალგორითმებით. მონაცემთა გადაცემისათვის გამგზავნი შეტყობინებას შიფრავს შემთხვევითი გასაღებით სიმეტრიული ალგორითმის გამოყენებით, შემდგომ თვითონ გასაღებს შიფრავს მიმღების ღია გასაღებით ასიმეტრიული შიფრაციით და ორივე ნაწილს უგზავნის მიმღებს. მიმღები თავის მხრივ ხსნის დაშიფრულ გასაღებს პირადი გასაღების გამოყენებით და მიღებული გასაღებით შეტყობინებას უკეთებს დეშიფრაციას. ციფრული ხელმოწერების დროს გამგზავნს გამოჰყავს შეტყობინების ჰეში და მიღებულ მნიშვნელობას შიფრავს პირადი გასაღებით, შემდგომ შეტყობინებას და ხელმოწერას უგზავნის მიმღებს. მიმღები დეშიფრაციას უკეთებს ხელმოწერას გამგზავნის ღია გასაღებით, თვითონვე გამოჰყავს შეტყობინების ჰეში და შემდგომ ორ მნიშვნელობას ერთმანეთს უდარებს. ჰეშის ერთნაირი მნიშვნელობები ადასტურებს რომ შეტყობინება ნამდვილად გამგზავნის მიერ იქნა ხელმოწერი და რომ ხელმოწერის შემდგომ შეტყობინებაში ცვლილება არ შესულა.
ისტორია
კრიპტოგრაფიის ისტორიის მანძილზე, ინფორმაციის გაცვლის დროს შიფრაციის გასაღები მუდამ საიდუმლოდ უნდა დარჩენილიყო, და გაცვლის წინ უნდა შეთანხმებულიყო მოკავშირეთა შორის (პირადი შეხვედრის დროს, კურიერით ან სხვა საიდუმლო ხერხებით). ეს ყოველთვის დიდ პრობლემებს ქმნიდა კომუნიკაციის დროს. ასიმეტრიული კრიპტოგრაფიის გამოგონებით ეს პრობლემები გადაიჭრა, მოკავშირე მხარეებმა შეძლეს დაცულად ინფორმაციის გაცვლა დაუცველი არხებით, გასაღების წინასწარი შეთანხმების გარეშე.
1874 წელს უილიამ სტენლი ჯევონსის წიგნში აღწერილია ცალმხრივი ფუნქციების კავშირი კრიპტოგრაფიასთან, კერძოდ განხილულია რიცხვთა ფაქტორიზაციის პრობლემა. რიცხვთა ფაქტორიზაცია წარმოადგენს მთელი რიცხვის მარტივ მამრავლებად დაშლის პროცესს. თავისთავად იოლი პროცესია 2 ან რამდენიმე მარტივი რიცხვის გამრავლება შედგენილი რიცხვის მისაღებად, მაგრამ გაცილებით რთული პროცესია შედგენილი რიცხვიდან მისი შემადგენელი მარტივი მამრავლების მიღება. სწორედ ეს ფაქტი გამოიყენება ფართოდ გავრცელებულ RSA კრიპტოსისტემაში. ჯევონსმა გამოავლინა ასიმეტრიული კრიპტოგრაფიის მთავარი პრინციპი, თუმცა თავად სისტემა არ გამოუგონებია.
ასიმეტრიული კრიპტოგრაფიის გამოგონება მოხდა 70-იანი წლების დასაწყისში წელს ჯეიმზ ელისის, კლიფორდ კოკის და მალკოლმ უილიამსონის მიერ ინგლისში, GCHQ-ში. 1997 წლამდე გამოგონების ფაქტი საიდუმლოდ ინახებოდა. 1976 წელს უიტფილდ დიფიმ და მარტინ ჰელმანმა, რალფ მერკლის შრომებზე დაყრდნობით, დამოუკიდებლად გამოიგონეს და გამოაქვეყნეს ასიმეტრიული კრიპტოგრაფიის კონცეფცია. ამ კონცეფციაზე დამყარებულ გასაღების გაცვლის ალგორითმს დიფი-ჰელმანის ალგორითმი ეწოდა, რომელიც 1978 წელს „მერკლის თავსატეხების“ სახელით გამოქვეყნდა.
კოკის მეთოდის განზოგადება 1977 წლს დამოუკიდებლად აღმოაჩინეს რივესტმა, შამირმა და ედლმანმა, მასაჩუსეტსის ტექნოლოგიურ ინსტიტუტში. იგი გამოქვეყნდა 1978 წელს და RSA ალგორითმი ეწოდა. RSA შიფრაცია/დეშიფრაციისათვის იყენებს რიცხვის ახარისხებას მოდულით ორი დიდი მარტივი რიცხვის ნამრავლზე. მისი დაცულობა პირდაპირპროპორციულია დიდი რიცხვის მარტივ მამრავლებად დაშლის სირთულისა. (ეს არის პრობლემა, რომლის ეფექტურად გადაჭრის გზებიც დღემდე ნაპოვნი არ არის, დღესდღეობით შეძლეს მხოლოდ 640 ბიტიანი რიცხვის დაშლა მარტივ მამრავლებად).
1970 წლიდან დღემდე გამოგონებულია და კრიპტოგრაფიულ პროტოკოლებში (კრიპტოგრაფიული პროტოკოლები) გამოიყენება ასიმეტრიული კრიპტოსისტემის მრავალი მაგალითი. ელგამალის კრიპტოსისტემა (ElGamal cryptosystem) ემყარება დისკრეტული ლოგარითმების პრობლემას. 80-იანი წლების შუა პერიოდში გამოგონებულ იქნა ასიმეტრიული კრიპტოსისტემა, რომელიც ემყარება ელიპსური მრუდეების პრობლემის გამოყენებას. ეს ალგორითმი სხვებთან შედარებით რთულია მეტ გამოთვლებს მოითხოვს, თუმცა ეს კომპენსირდება მისი გაზრდილი მედეგობით კრიპტოანალიზისადმი.
რესურსები ინტერნეტში
IEEE 1363: Standard Specifications for Public-Key Cryptography
Christof Paar, Jan Pelzl, "Introduction to Public-Key Cryptography"
სქოლიო
კრიპტოგრაფია