Thuật toán SHA-256 là gì?

SHA-256 là một trong những hàm băm mạnh nhất hiện nay và được áp dụng vào hệ thống tiền ảo Bitcoin. Trong bài viết này hãy cùng chúng tôi tìm hiểu những điều thú vị về giải thuật này nhé.

Nội dung bài viết
ẩn

Mã hoá SHA là gì?

SHA (Secure Hash Algorithm) bao gồm 5 thuật toán được chấp nhận bởi FIPS – Tiêu chuẩn Xử lý Thông tin Liên bang, dùng để chuyển một đoạn dữ liệu nhất định thành một đoạn dữ liệu có chiều dài không đổi với xác suất khác biệt cao. 5 thuật toán đó bao gồm:

  • SHA-1 (trả lại kết quả dài 160 bit)
  • SHA-224 (trả lại kết quả dài 224 bit)
  • SHA-256 (trả lại kết quả dài 256 bit)
  • SHA-384 (trả lại kết quả dài 384 bit)
  • SHA-512 (trả lại kết quả dài 512 bit)

Những thuật giải này được gọi là “an toàn” bởi vì, theo nguyên văn của chuẩn mực FIPS 180-2 phát hành ngày 1/8/2002:

Đối với một giá trị nhất định được tạo nên bởi một trong những thuật toán SHA, việc tính toán là không khả thi để:

  1. Tìm một thông điệp tương ứng với thông điệp đã được mã hóa
  2. Tìm được hai đoạn dữ liệu khác nhau có cùng kết quả băm.

Bất cứ thay đổi nào trên đoạn dữ liệu gốc, dù nhỏ, cũng sẽ tạo nên một giá trị băm hoàn toàn khác với xác suất rất cao.

SHA-256 là gì?

SHA-256 là Thuật toán băm bảo mật 256 bit và dùng để tạo ra các hàm băm không thể đảo ngược và duy nhất. Số lượng hàm băm có thể có càng lớn, thì xác suất để hai giá trị sẽ tạo ra cùng một giá trị băm càng nhỏ.

Xem thêm  COSMOS là coin gì ? Thông tin đồng ATOM Coin lừa đảo có thật không

Ví dụ:

DỮ LIỆU CHUỖI MÃ HÓA
Bitcoin Vietnam News f3ad777234a24bfacbd8123d6ea0a1961e8539b74b5fa8f2f371ea2cf7b21215
cryptoviet.com cbab80bf094869581bb45557b64a8db0b8bab8c8817b5facd0c975d9a5a47805

SHA-256 là một nhánh của hàm băm mật mã SHA-2 được sử dụng trong nhiều phần khác nhau của mạng Bitcoin:

  • Khai thác sử dụng SHA-256 là thuật toán Proof of Work.
  • SHA-256 được sử dụng trong việc tạo ra các địa chỉ bitcoin để cải thiện an ninh và bảo mật.

Thuật toán SHA-256 tạo ra một mã băm có cố định 256-bit (32-byte) gần như duy nhất. Một chuỗi băm được tạo ra không thể được tính toán trở lại. Điều này làm cho nó phù hợp để xác nhận mật khẩu, thách thức xác thực hàm băm, chống giả mạo, chữ ký số.

SHA-256 là một trong những hàm băm kế tiếp đối sau SHA-1 và là một trong những hàm băm mạnh nhất hiện tại.

Ứng dụng của SHA-256

Ứng dụng nổi tiếng nhất của SHA phải kể đến là hệ thống Tiền tệ Bitcoin, một hệ thống giao dịch tiền tệ phân tán trên mạng internet sử dụng mã SHA-256 để xác thực các giao dịch và lưu trữ dạng chuỗi các sự kiện lịch sử theo thời gian được liên kết với nhau bởi các mã xác thực BlockChain.

Liệu có thể tấn công Brute Force vào SHA-256 không?

Cách dùng phổ biến của mã một chiều SHA là tạo ra chữ ký của thông điệp bằng cách tính hàm băm của chuỗi ghép từ thông điệp cần xác thực với một khóa bí mật, khóa bí mật nói chung là rất dài:

Chữ ký = SHA256(“thông điệp cần xác thực”, “khóa bí mật”) = hash

Với tính chất của mã một chiều, chữ ký có thể được công khai, thông điệp có thể công khai, nhưng thành phần khóa bí mật không thể truy ngược lại được vì suy ngược lại toàn văn dữ liệu gốc từ chữ ký là không thể.

Xem thêm  Chỉ báo Relative Strength Index (RSI) là gì?

Cách duy nhất để truy ngược lại toàn văn dữ liệu gốc là thử mọi khả năng có thể của khóa bí mật và cách khóa được ghép với thông điệp cần xác thực, điều này cũng đồng nghĩa với với việc kiểm tra mọi khả năng của đầu vào để tìm ra chữ ký giống với chữ ký đã biết, phương pháp này gọi là Brute Force.

Vì mỗi thay đổi rất nhỏ ở dữ liệu gốc, dù nhỏ, cũng sẽ tạo nên một giá trị băm hoàn toàn khác với xác suất rất cao không thể dự báo trước, nên việc kiểm tra này chính là kiểm tra trên toàn bộ không gian của giá trị băm, tức là BruteForce với 2256 khả năng, tương ứng với:

2256 = 115792089237316195423570985008687907853269984665640564039457584007913129639936 > 1078

Giả định mỗi máy tính cá nhân có tốc độ 4Ghz có thể xử lý 1.4G phép tính băm mỗi giây, 1.4x109hash/s, Trái Đất có 7 tỷ người mỗi người có một máy tính như vậy, sức mạnh tính toán của toàn thể Trái Đất là: 1019hash/s

Liệu có thể tấn công BruteForce vào SHA-256 không?

Trong dải Ngân Hà (Milkyway) có khoảng 100 tỷ ngôi sao, giả định rằng 1% trong số đó có nền văn minh như Trái Đất thì sức mạnh tính hash của Ngân Hà là: 1019hash/s x 1% x 100×109 = 1028hash/s

Liệu có thể tấn công BruteForce vào SHA-256 không?

Vũ trụ khả kiến được cho là có 100 tỷ thiên hà, và vũ trụ toàn thể được cho là lớn gấp 10 lần như vậy, thì sức mạnh tính hash của vũ trụ toàn thể là: 1028hash/s x 100×109 x 10 = 1042hash/s

Xem thêm  Cho thuê tài chính là gì? Đặc điểm của cho thuê tài chính

Với tốc độ tính toán này, để kiểm tra toàn bộ 1078 trường hợp, vũ trụ toàn thể cần đến 1036 giây ≈ 3.17×1028 năm, hay ≈ 2.4×1018 lần tuổi của chính vũ trụ, tức là việc này không khả thi.

Chính vì vậy SHA-256 được cho là rất an toàn.

FTX

CẢNH BÁO: Đầu tư vào các sản phẩm tài chính tiềm ẩn rất nhiều rủi ro mà có thể không phù hợp với một số nhà đầu tư. Do đó hãy cân nhắc kỹ lưỡng và làm chủ bản thân trước khi đưa ra bất kỳ quyết định nào cấu thành từ những nội dung tham khảo tại GiaiMaCoin.Com.

Rate this post
Back to top button

You cannot copy content of this page