CRC-32B ჰეშის კოდების კალკულატორი
გამოქვეყნებულია: 17 თებერვალი, 2025, 18:34:11 UTC
ბოლო განახლება: 12 იანვარი, 2026, 11:36:57 UTC
CRC-32B Hash Code Calculator
ციკლური ზედმეტობის შემოწმება (CRC) არის შეცდომების აღმომჩენი კოდი, რომელიც ხშირად გამოიყენება ნედლ მონაცემებში შემთხვევითი ცვლილებების აღმოსაჩენად. მიუხედავად იმისა, რომ ტექნიკურად არ წარმოადგენს კრიპტოგრაფიულ ჰეშ ფუნქციას, CRC-32 ხშირად მოიხსენიება, როგორც ჰეშ, ცვლადი სიგრძის შეყვანიდან ფიქსირებული ზომის გამომავალი (32 ბიტი) წარმოქმნის უნარის გამო. ამ გვერდზე წარმოდგენილი ვერსია არის CRC-32B ვარიანტი, რომელიც სინამდვილეში PHP ენის მხოლოდ თავისებურებაა, რომელიც ბიტებს აბრუნებს (ორიგინალ CRC-32-ში პატარა ენდიანი დიდი ენდიანის წინააღმდეგ).
სრული გამჟღავნება: მე არ დავწერე ამ გვერდზე გამოყენებული ჰეშის ფუნქციის კონკრეტული განხორციელება. ეს არის სტანდარტული ფუნქცია, რომელიც შედის PHP პროგრამირების ენაში. მე მხოლოდ ვებ ინტერფეისი გავაკეთე, რათა ის საჯაროდ ხელმისაწვდომი ყოფილიყო აქ მოხერხებულობისთვის.
CRC-32B ჰეშის ალგორითმის შესახებ
მე მათემატიკოსი არ ვარ, მაგრამ ვეცდები ამ ჰეშ ფუნქციის ახსნას მარტივი ანალოგიით. კრიპტოგრაფიული ჰეშ ფუნქციების უმეტესობისგან განსხვავებით, ეს არ არის განსაკუთრებით რთული ალგორითმი, ამიტომ ალბათ არაუშავს ;-)
წარმოიდგინეთ, რომ ფოსტით აგზავნით წერილს, მაგრამ ღელავთ, რომ შეიძლება დაზიანდეს მიმღებამდე მისვლამდე. წერილის შინაარსის მიხედვით, თქვენ გამოთვლით CRC-32 საკონტროლო ჯამს და წერთ მას კონვერტზე. როდესაც მიმღები მიიღებს წერილს, მას ასევე შეუძლია გამოთვალოს საკონტროლო ჯამი და ნახოს, ემთხვევა თუ არა ის თქვენს მიერ დაწერილს. თუ ასეა, ესე იგი წერილი არ დაზიანებულა ან შეცვლილი არ არის გზაში.
CRC-32 ამას ოთხსაფეხურიანი პროცესით აკეთებს:
ნაბიჯი 1: დაამატეთ დამატებითი სივრცე (შევსება)
- CRC შეტყობინების ბოლოს ცოტა მეტ ადგილს ტოვებს (როგორც ყუთში არაქისის შეფუთვა).
- ეს მას შეცდომების უფრო ადვილად აღმოჩენაში ეხმარება.
ნაბიჯი 2: მაგიური სახაზავი (პოლინომი)
- CRC-32 მონაცემების გასაზომად სპეციალურ „ჯადოსნურ სახაზავს“ იყენებს. წარმოიდგინეთ ეს სახაზავი, როგორც ამობურცულობებისა და ღარების ნიმუში (ეს არის პოლინომი, მაგრამ ამ სიტყვაზე არ ინერვიულოთ). CRC-32-ისთვის ყველაზე გავრცელებული „სახაზავი“ ფიქსირებული ნიმუშია.
ნაბიჯი 3: სახაზავის გასრიალება (გაყოფის პროცესი)
- ახლა CRC სახაზავს შეტყობინებაზე ასრიალებს. თითოეულ ადგილას ის ამოწმებს, ემთხვევა თუ არა ამობურცულობები და ღარები. თუ ისინი არ ემთხვევა, CRC აკეთებს ჩანაწერს (ეს კეთდება მარტივი XOR-ის გამოყენებით, მაგალითად, გადამრთველების ჩართვა-გამორთვის გზით). ის აგრძელებს გადამრთველების სრიალს და გადართვას მანამ, სანამ ბოლომდე არ მიაღწევს.
ნაბიჯი 4: საბოლოო შედეგი (შემოწმების ჯამი)
- სახაზავის მთელ შეტყობინებაზე გადასრიალების შემდეგ, თქვენ გრჩებათ პატარა რიცხვი (32 ბიტიანი), რომელიც წარმოადგენს საწყის მონაცემებს. ეს რიცხვი შეტყობინების უნიკალური თითის ანაბეჭდის მსგავსია. ეს არის CRC-32 ჩეკსუმი.
გვერდზე წარმოდგენილი ვერსია არის CRC-32B ვარიანტი, რომელიც ძირითადად PHP-ის თავისებურებაა, რომელიც ბიტების თანმიმდევრობას ცვლის (პატარა ენდიანი და დიდი ენდიანი). თქვენ ალბათ მხოლოდ იმ შემთხვევაში უნდა გამოიყენოთ ეს ვერსია, თუ კონკრეტულად გჭირდებათ თავსებადობა სხვა PHP აპლიკაციასთან, რომელიც მას იყენებს.
სხვა ვარიანტებისთვისაც მაქვს კალკულატორები:
- ბმული
- ბმული
დამატებითი საკითხავი
თუ ეს პოსტი მოგეწონათ, შეიძლება ეს რჩევებიც მოგეწონოთ:
