Máy tính mã băm GOST
Đã xuất bản: lúc 08:26:44 UTC 17 tháng 2, 2025
Máy tính mã băm sử dụng hàm băm GOST để tính toán mã băm dựa trên văn bản nhập vào hoặc tệp tải lên.GOST Hash Code Calculator
Hàm băm GOST là một họ các hàm băm mật mã do chính phủ Nga định nghĩa. Phiên bản nổi tiếng nhất là GOST R 34.11-94, được sử dụng rộng rãi ở Nga và các quốc gia khác áp dụng tiêu chuẩn GOST. Sau đó, GOST R 34.11-2012, còn được gọi là Streebog, được kế thừa. Đây là phiên bản gốc.
Tiết lộ đầy đủ: Tôi không viết phần triển khai cụ thể của hàm băm được sử dụng trên trang này. Đây là một hàm chuẩn đi kèm với ngôn ngữ lập trình PHP. Tôi chỉ tạo giao diện web để công khai ở đây cho thuận tiện.
Về thuật toán băm GOST
Tôi không phải là nhà toán học hay nhà mật mã học, nhưng tôi sẽ cố gắng giải thích hàm băm này bằng một phép so sánh thông thường mà hy vọng những người không phải nhà toán học khác có thể hiểu được. Nếu bạn thích phiên bản khoa học chính xác, thiên về toán học, tôi chắc rằng bạn có thể tìm thấy ở nơi khác ;-)
Hãy nghĩ về GOST như một "máy xay dữ liệu" tiên tiến biến bất cứ thứ gì bạn cho vào thành một loại sinh tố độc đáo. Với cùng một thành phần, nó sẽ luôn tạo ra cùng một loại sinh tố, nhưng chỉ cần thay đổi một chút thành phần, bạn sẽ có được một loại sinh tố hoàn toàn khác.
Đây là một quá trình gồm ba bước:
Bước 1: Chuẩn bị nguyên liệu (Đệm)
- Bạn bắt đầu với "thành phần" của mình (thông điệp).
- Nếu tin nhắn của bạn không có kích thước phù hợp với máy xay, GOST sẽ thêm một số "phần bổ sung" (dữ liệu bổ sung) để làm cho nó vừa vặn hoàn hảo. Điều này giống như thêm nước để làm đầy máy xay.
Bước 2: Trộn với công thức bí mật (Mixing)
- GOST không chỉ trộn một lần mà còn trộn dữ liệu nhiều lần theo một công thức bí mật.
- Công thức này bao gồm:
- Cắt nhỏ (chia dữ liệu thành nhiều phần nhỏ).
- Hoán đổi (trộn các bộ phận lại với nhau).
- Khuấy (trộn chúng lại với nhau theo cách mới).
Hãy tưởng tượng một đầu bếp có cách pha trộn nguyên liệu phức tạp để đảm bảo không ai có thể đoán được cách thực hiện. Đó chính là những gì GOST thực hiện với dữ liệu của bạn.
Bước 3: Phục vụ sinh tố (Final Hash)
- Sau khi trộn xong, bạn sẽ có được hỗn hợp sinh tố - phiên bản dữ liệu được trộn theo kích thước cố định.
- Sinh tố này độc đáo với các thành phần ban đầu của bạn. Thay đổi bất cứ thứ gì, ngay cả một mẩu vụn nhỏ, và bạn sẽ có một sinh tố hoàn toàn khác.
Phiên bản này của hàm GOST sử dụng các hộp S "tham số thử nghiệm" ban đầu, không được khuyến nghị sử dụng trong sản xuất. Nếu bạn định sử dụng GOST, có lẽ bạn nên sử dụng triển khai sử dụng hộp S CryptoPro thay thế: Máy tính mã băm GOST CryptoPro