Miklix

Máy tính mã băm SHA-1

Đã xuất bản: lúc 23:25:17 UTC 16 tháng 2, 2025
Cập nhật lần cuối: lúc 09:10:30 UTC 12 tháng 1, 2026

Công cụ tính toán mã băm sử dụng thuật toán băm Secure Hash Algorithm 1 (SHA-1) để tính toán mã băm dựa trên dữ liệu văn bản nhập vào hoặc tệp tin tải lên.

Trang này được dịch máy từ tiếng Anh để có thể tiếp cận được với nhiều người nhất có thể. Thật không may, dịch máy vẫn chưa phải là công nghệ hoàn thiện, do đó có thể xảy ra lỗi. Nếu bạn thích, bạn có thể xem phiên bản tiếng Anh gốc tại đây:

SHA-1 Hash Code Calculator

SHA-1 (Secure Hash Algorithm 1) là một hàm băm mật mã được thiết kế bởi NSA và được NIST công bố vào năm 1995. Nó tạo ra một giá trị băm 160 bit (20 byte), thường được biểu diễn dưới dạng chuỗi thập lục phân 40 ký tự. SHA-1 được sử dụng rộng rãi để bảo mật tính toàn vẹn dữ liệu, chữ ký số và chứng chỉ, nhưng hiện nay nó được coi là không an toàn do các lỗ hổng dễ bị tấn công va chạm. Nó được đưa vào đây trong trường hợp cần tính toán mã băm phải tương thích với hệ thống cũ, nhưng không nên sử dụng nó khi thiết kế hệ thống mới.

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.


Bereken Nuwe Hash-kode

Dữ liệu được gửi hoặc tệp được tải lên thông qua biểu mẫu này sẽ chỉ được lưu trên máy chủ trong thời gian cần thiết để tạo mã băm theo yêu cầu. Mã băm sẽ bị xóa ngay trước khi kết quả được trả về trình duyệt của bạn.

Dữ liệu đầu vào:



Văn bản đã gửi được mã hóa UTF-8. Vì hàm băm hoạt động trên dữ liệu nhị phân, kết quả sẽ khác so với khi văn bản được mã hóa khác. Nếu bạn cần tính toán băm của văn bản trong một mã hóa cụ thể, bạn nên tải tệp lên thay thế.



Giới thiệu về thuật toán băm SHA-1

Tôi không phải là nhà toán học, vì vậy tôi sẽ cố gắng giải thích hàm băm này theo cách mà những người không chuyên về toán học cũng có thể hiểu được - nếu bạn muốn phiên bản toán học khoa học chính xác, bạn có thể tìm thấy nó trên nhiều trang web khác ;-)

Hãy tưởng tượng SHA-1 giống như một máy hủy giấy đặc biệt, có thể xử lý bất kỳ thông điệp nào - dù chỉ là một từ, một câu hay cả một cuốn sách - và hủy chúng theo một cách rất cụ thể. Nhưng thay vì chỉ hủy giấy, nó sẽ tự động tạo ra một "mã hủy" duy nhất, luôn có độ dài chính xác là 40 ký tự thập lục phân.

  • Ví dụ, bạn nhập "Xin chào
  • Bạn sẽ nhận được 40 chữ số thập lục phân như f7ff9e8b7bb2e09b70935a5d785e0cc5d9d0abf0

Dù bạn cho vào chuỗi ngắn hay dài, đầu ra luôn có cùng độ dài.

Máy hủy tài liệu thần kỳ" hoạt động theo bốn bước:

Bước 1: Chuẩn bị giấy (lớp đệm)

  • Trước khi hủy tài liệu, bạn cần chuẩn bị giấy. Hãy tưởng tượng bạn thêm khoảng trắng vào cuối tin nhắn để nó vừa khít với khay của máy hủy giấy.
  • Nó giống như khi bạn nướng bánh quy, và bạn phải đảm bảo bột lấp đầy khuôn một cách đều đặn.

Bước 2: Cắt thành các phần bằng nhau (tách đôi)

  • Máy hủy giấy không thích những mẩu giấy lớn. Vì vậy, nó sẽ cắt nhỏ tin nhắn bạn đã chuẩn bị thành những mảnh nhỏ có kích thước bằng nhau - giống như cắt một chiếc bánh lớn thành những lát hoàn hảo.

Bước 3: Công thức bí mật (Trộn và nghiền)

  • Giờ đến phần thú vị nhất! Bên trong máy hủy tài liệu, mỗi phần trong thông điệp của bạn sẽ trải qua một loạt các bộ phận trộn và lăn: Trộn: Máy trộn thông điệp của bạn với một số thành phần bí mật (các quy tắc và con số được tích hợp sẵn). Nghiền: Máy ép, lật và xoay các phần theo một cách đặc biệt. Xoắn: Một số phần được xoắn hoặc đảo ngược, giống như gấp giấy thành hình origami.

Mỗi bước đều khiến thông điệp trở nên rối rắm hơn, nhưng theo một cách rất cụ thể mà máy luôn tuân theo.

Bước 4: Mã cuối cùng (Mã băm)

  • Sau tất cả các bước trộn và kết hợp, kết quả là một đoạn mã được xáo trộn gọn gàng - giống như dấu vân tay độc nhất vô nhị cho thông điệp của bạn.
  • Ngay cả khi bạn chỉ thay đổi một chữ cái trong tin nhắn gốc, kết quả đầu ra sẽ hoàn toàn khác. Đó là điều làm nên sự đặc biệt của nó.

Lý do SHA-1 không nên được sử dụng nữa là vì một số người rất thông minh đã tìm ra cách đánh lừa bộ lọc để tạo ra cùng một mã cho hai thông điệp khác nhau (điều này được gọi là xung đột).

Thay vì SHA-1, giờ đây chúng ta có những "công cụ cắt xén" mạnh mẽ và thông minh hơn. Tại thời điểm viết bài này, thuật toán băm mặc định mà tôi thường dùng cho hầu hết các mục đích là SHA-256 - và vâng, tôi cũng có một công cụ tính toán cho việc đó: [Liên kết]

Đọc thêm

Nếu bạn thích bài viết này, bạn cũng có thể thích những gợi ý sau:


Chia sẻ trên BlueskyChia sẻ trên FacebookChia sẻ trên LinkedInChia sẻ trên TumblrChia sẻ trên XChia sẻ trên LinkedInGhim trên Pinterest

Mikkel Christensen

Về tác giả

Mikkel Christensen
Mikkel là người sáng lập và chủ sở hữu của miklix.com. Ông có hơn 20 năm kinh nghiệm làm lập trình viên máy tính/nhà phát triển phần mềm chuyên nghiệp và hiện đang làm việc toàn thời gian cho một tập đoàn CNTT lớn của Châu Âu. Khi không viết blog, ông dành thời gian rảnh rỗi cho nhiều sở thích, thú vui và hoạt động, có thể được phản ánh ở một mức độ nào đó trong nhiều chủ đề được đề cập trên trang web này.