Keccak

Keccak (წარმოითქმის როგორც „კეტჩაკ“) არის მრავალმხრივი კრიპტოგრაფიული ფუნქცია, რომელიც შექმნილია გვიდო ბერტონის, ჯოან დემენის, მიქაელ პიტერსის და ჟილ ვან ასშეს მიერ. მიუხედავად იმისა, შესაძლებელია Keccak-ის სხვა მიზნებისთვის გამოყენება, ის უფრო ცნობილია როგორც ჰეშის ფუნქცია, რომლითაც ხდება უსაფრთხოების ძველი ჰეშის ისეთ ალგორითმებთან შედარებით მაღალი დონის უზრუნველყოფა, როგორიცაა SHA-1 და SHA-2.

SHA აღნიშნავს ჰეშირების უსაფრთხო ალგორითმს (Secure Hash Algorithm) და ეხება აშშ-ს სტანდარტებისა და ტექნოლოგიების ეროვნული ინსტიტუტის (NIST) მიერ გამოქვეყნებულ კრიპტოგრაფიული ჰეშის ფუნქციების ერთობლიობას. როგორც, SHA-1 ისე SHA-2 შექმნილია აშშ-ს ეროვნული უსაფრთხოების სააგენტოს (NSA) მიერ და, მათ გააჩნიათ მსგავსი სტრუქტურა. მიუხედავად იმისა, რომ Keccak მხარს უჭერს გამომავალი მონაცემების იმავე ზომას (ჰეშის სიგრძე), როგორც SHA-2, მას გააჩნია საკმაოდ განსხვავებული მუშაობის მექანიზმი. თუმცა, Keccak არის SHA ოჯახის ნაწილი და ხშირად მოიხსენიება როგორც SHA-3.

2004 წელს, SHA-1-ზე განხორციელდა თეორიული შეტევები და ის საჯაროდ ხელმისაწვდომი გახდა 2005 წელს. 2011 წელს, NIST-მა გამოაცხადა რომ SHA-2 იქნებოდა ახალი სტანდარტული ჰეშის ფუნქცია. თუმცა, SHA-1-დან SHA-2-ზე გადასვლის პროცესი იყო საკმაოდ ნელი და დეველოპერებისა და კომპიუტერული მეცნიერების სპეციალისტების დიდი ნაწილი SHA-2-ზე საბოლოოდ მხოლოდ 2017 წლის დასაწყისში გადავიდა. 2017 წლის თებერვალში, Google-მა გამოაცხადა რომ SHA-1-ზე განხორციელდა წარმატებული კოლიზიური შეტევა და ამის შემდეგ, SHA-1 აღარ ითვლება უსაფრთხოდ და მისი გამოყენება არ არის რეკომენდირებული.
Keccak-ის ფუნქციის (SHA-3) შემუშავება დაიწყო დაახლოებით 2007 წელს, მას შემდეგ, რაც NIST-მა გამოაცხადა საჯარო კონკურსი და შემოწმების პროცესი, რომლის ფარგლებშიც უნდა მომხდარიყო ახალი კრიპტოგრაფიული ჰეშის ფუნქციის შემუშავება, რომელსაც უნდა აღმოეფხვრა SHA-1-ის და SHA-2-ის პოტენციური ხარვეზები.

მიუხედავად იმისა, რომ SHA-2-ზე ჯერ არ დაფიქსირებულა რაიმე მნიშვნელოვანი შეტევა, მოსალოდნელია, რომ დროთა მანძილზე შეიძლება მოხდეს ჰეშის ფუნქციების „გატეხვა“ და ახალი სტანდარტული ფუნქციის შემუშავებას კი წლები დასჭირდება. ზემოთაღნიშნულისა და ასევე 2004-2005 წლებში SHA-1-ის წინააღმდეგ განხორციელებულ წარმატებული შეტევების გათვალისწინებით, NIST-მა გააცნობიერა ახალი კრიპტოგრაფიული ჰეშის ალგორითმის შექმნის აუცილებლობა. 2012 წელს NIST-მა გამოაცხადა, რომ კონკურსის გამარჯვებული ალგორითმი იყო Keccak და შემდეგ მოხდა მისი, როგორც SHA-ს ოჯახის უახლესი წევრის სტანდარტიზაცია (აქედან გამომდინარე, SHA-3). 

NIST-ის მიერ Keccak-ის არჩევის ერთ-ერთი მიზეზია მისი ინოვაციური სტრუქტურა, რომელიც სხვა ალგორითმებთან შედარებით აღმოჩნდა უფრო უსაფრთხო და ეფექტური. ტექნიკური თვალსაზრისით, SHA-3 ალგორითმი ეყრდნობა ეგრეთ წოდებულ „ღრუბელის“ ფუნქციებს (ან „ღრუბელის“ სტრუქტურას) - განსხვავებით SHA-1-ში და SHA-2-ში გამოყენებული Merkle Damgård-ის სტრუქტურისგან.

ამჟამად SHA-2 კვლავ ითვლება უსაფრთხოდ და ის ფართოდ გამოიყენება. მაგალითად, Bitcoin და სხვა კრიპტოვალუტები იყენებენ SHA-256-ს და მას აკისრია გადამწყვეტი როლი მაინინგის პროცესში. სამომავლოდ მოსალოდნელია SHA-3-ის გამოყენების მასშტაბების ზრდა, ვინაიდან ჯერ არ დაფიქსირებულა მასზე წარმატებული თავდასხმა. კრიპტოგრაფიული სფეროს განვითარებისა და ახალი ხარვეზების აღმოჩენის ფონზე, მომდევნო წლებში მოსალოდნელია უფრო მეტი კრიპტოგრაფიული ჰეშის ალგორითმების შემუშავება.