Keccak

განახლებული Oct 10, 2026

რა არის Keccak?

Keccak არის კრიპტოგრაფიული ჰეშის ფუნქცია, რომელიც საფუძვლად უდევს SHA-3-ს - ჰეშირების უსაფრთხო ალგორითმების (SHA) ჯგუფის უახლეს წევრს.

რა არის SHA?

SHA არის Secure Hash Algorithm-ის („ჰეშირების უსაფრთხო ალგორითმი“) აბრევიატურა და აღნიშნავს აშშ-ის სტანდარტებისა და ტექნოლოგიების ეროვნული ინსტიტუტის (NIST) მიერ გამოქვეყნებული კრიპტოგრაფიული ჰეშ-ფუნქციების სტანდარტების ერთობლიობას.

Keccak შექმნა ევროპელი კრიპტოგრაფების გუნდმა, რომლის შემადგენლობაშიც შედიოდნენ გვიდო ბერტონი, ჯოან დემენი, მიქაელ პიტერსი და ჟილ ვან ასშე (დემენი ასევე მონაწილეობდა AES შიფრის შემუშავებაში).

მიუხედავად იმისა, რომ Keccak შეიძლება სხვა დანიშნულებითაც, მაგალითად, მონაცემთა დაშიფვრის მიზნით იქნას გამოყენებული, ის ყველაზე ხშირად ჰეშის ფუნქციის სახით გამოიყენება. Keccak-ს გააჩნია გამომავალი მონაცემების იმავე ზომების, ანუ ჰეშის იმავე სიგრძეების მხარდაჭერა, რაც SHA-2-ს (224, 256, 384 და 512 ბიტი), თუმცა მისი მუშაობის შიდა მექანიზმი არსებითად განსხვავებულია. სწორედ ამიტომ, Keccak ხშირად განიხილება არა უბრალოდ უფრო უსაფრთხო, არამედ უფრო თანამედროვე ალტერნატივად.

SHA-1-დან SHA-2-მდე

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

2017 წლის დასაწყისისთვის წამყვან ბრაუზერებსა და სერტიფიცირების ორგანოებში გადასვლის პროცესი ძირითადად დასრულებული იყო. 2017 წლის თებერვალში Google-ისა და CWI Amsterdam-ის მკვლევრებმა გააკეთეს განაცხადი SHAttered-ის - SHA-1-ზე განხორციელებული პირველი პრაქტიკული კოლიზიური შეტევის შესახებ (ასეთი შეტევის დროს თავდამსხმელი პოულობს ორ განსხვავებულ მონაცემთა ნაკრებს, რომელთათვისაც უსაფრთხოების სისტემა ერთსა და იმავე ჰეშს ქმნის). მას შემდეგ SHA-1 აღარ მიიჩნევა უსაფრთხოდ აღნიშნული ტიპის შეტევებისადმი მდგრადობის თვალსაზრისით, ხოლო NIST-მა განაცხადა, რომ 2030 წლისთვის SHA-1-ის გამოყენება ყველა სფეროში აიკრძალება.

SHA-3-თან დაკავშირებული კონკურსი

2007 წელს NIST-მა ახალი ჰეშ-ალგორითმის შესაქმნელად საჯარო კონკურსი გამოაცხადა. იმ დროისთვის SHA-2-ის წინააღმდეგ არცერთი მნიშვნელოვანი შეტევა არ იყო განხორციელებული, თუმცა NIST-ს სურდა, რომ შესაძლო შეტევის გამოვლენამდე მისი შემცვლელი ალგორითმი უკვე მზად ყოფილიყო, რადგან ახალი ფუნქციის შემუშავებასა და სტანდარტიზაციას წლები სჭირდება. 2008 წელს ოთხი წევრისგან შემდგარმა გუნდმა Keccak კონკურსზე წარადგინა, ხოლო 2012 წლის ოქტომბერში NIST-მა ის გამარჯვებულ ალგორითმად შეარჩია. 2015 წელს Keccak სტანდარტიზებული იქნა როგორც FIPS 202 (Federal Information Processing Standards - ინფორმაციის დამუშავების ფედერალური სტანდარტები) და SHA-3-ის სახელით ოფიციალურად შეუერთდა SHA-ს ჯგუფს.

როგორ მუშაობს Keccak: „ღრუბლისებრი“ სტრუქტურა

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

Keccak კრიპტოვალუტების სივრცეში

SHA-2 დღემდე ინარჩუნებს პოპულარობას და კვლავ უსაფრთხო ალგორითმად მიიჩნევა. მაგალითად, SHA-256 მნიშვნელოვან როლს ასრულებს Bitcoin-ის proof of work სისტემის ფარგლებში, სადაც მაინინგის მიმდინარეობისას ბლოკის მონაცემების ჰეშირება უწყვეტად ხორციელდება, ვალიდური ბლოკის მოძიებამდე.
Ethereum იყენებს Keccak-256-ს, როგორც ჰეშის ძირითად ფუნქციას ანგარიშების მისამართების, ტრანზაქციების ჰეშებისა და პროტოკოლის სხვა ოპერაციებისთვის. აქ გასათვალისწინებელია ერთი ტექნიკური ნიუანსი: Ethereum-ზე Keccak-256-ის ინტეგრირება ჯერ კიდევ SHA-3-ის საბოლოო სტანდარტის გამოქვეყნებამდე განხორციელდა, სწორედ ამიტომ გამოიყენება Keccak-ის თავდაპირველი შევსების სქემა და არა FIPS 202-ით განსაზღვრული ვარიანტი. შესაბამისად, keccak256 ფუნქცია, რომელიც Ethereum-ის სმარტ კონტრაქტებში გვხვდება, არ უზრუნველყოფს სტანდარტიზებული SHA3-256-ის მსგავს შედეგებს, რაც ხშირად დეველოპერებს შორის დაბნეულობის მიზეზი ხდება.

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

გაიგეთ მეტი: რა არის ჰეშირება?
პოსტების გაზიარება

Binance Academy-ს სარედაქციო განყოფილება

დაარეგისტრირეთ ანგარიში
თქვენი ცოდნის პრაქტიკაში გამოსაყენებლად გახსენით Binance-ის ანგარიში დღესვე.