SHA-256 Là Gì? Thuật Toán Vận Hành Bitcoin
SHA-256 là hàm băm mật mã Bitcoin dùng cho mọi giao dịch, block header và câu đố khai thác. Cách nó hoạt động và lý do vẫn an toàn năm 2026.
SHA-256 là một hàm băm mật mã thuộc họ SHA-2, được Bitcoin sử dụng để biến bất kỳ dữ liệu đầu vào nào thành một chuỗi đầu ra có độ dài cố định 256-bit (64 ký tự hex). Đây là động cơ toán học đứng sau mọi mã giao dịch Bitcoin, mọi block header và mọi câu đố khai thác. Được thiết kế bởi NSA năm 2001 và công bố như một chuẩn của NIST, SHA-256 đã chống lại mọi cuộc tấn công thực tế trong hơn hai thập kỷ.
SHA-256 giải thích đơn giản
Một hàm băm mật mã giống như một cối xay thịt toán học: bạn đẩy dữ liệu vào — bất cứ thứ gì từ một chữ cái đơn lẻ đến một file phim 4 GB — và nó nhả ra một dấu vân tay có độ dài cố định. Dấu vân tay của SHA-256 luôn dài chính xác 256 bit, được viết thành 64 ký tự hexadecimal để con người đọc.
Số "256" là kích thước đầu ra tính bằng bit. "SHA" là viết tắt của Secure Hash Algorithm (Thuật toán Băm An toàn). Nó thuộc họ SHA-2 được NIST quy định trong Tiêu chuẩn Xử lý Thông tin Liên bang 180-4, một chuẩn công khai cho phép hai lập trình viên bất kỳ trên Trái Đất tính ra cùng một đầu ra từ cùng một đầu vào.
Đây là cách nó hoạt động trong thực tế. Đưa chuỗi hello vào SHA-256 sẽ cho ra digest này, mỗi lần, trong mọi ngôn ngữ, trên mọi thiết bị:
Đầu vào
hello
SHA-256 digest
2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824
Thay đổi một ký tự duy nhất — đưa vào Hello với chữ H viết hoa — và digest sẽ biến đổi thành thứ trông hoàn toàn không liên quan. Tính nhất quán đó là điều khiến SHA-256 hữu ích như một con dấu chống giả mạo: thay đổi dù chỉ một bit của đầu vào, và đầu ra bạn nhận được sẽ không còn khớp với đầu ra mà mọi người khác mong đợi.
Bốn đặc tính khiến SHA-256 trở nên hữu dụng
Không phải hàm băm nào cũng là hàm mật mã. SHA-256 xứng đáng với danh hiệu này vì đáp ứng đồng thời bốn đặc tính — mỗi đặc tính chặn một loại tấn công cụ thể. Mất đi bất kỳ đặc tính nào, hàm này sẽ trở nên không an toàn cho Bitcoin.
1. Tất định
Cùng một đầu vào luôn cho ra cùng một đầu ra. Băm hello trên điện thoại ở Tokyo hay laptop ở Toronto — digest 64 ký tự đều giống hệt nhau. Không có đặc tính này, sự đồng thuận mạng lưới sẽ không thể tồn tại.
2. Một chiều (chống tấn công pre-image)
Cho trước một digest, bạn không thể đảo ngược để tìm ra đầu vào. Cách duy nhất được biết để tìm một thông điệp băm ra một digest cho trước là brute force — và không gian tìm kiếm là 2^256, một con số lớn hơn cả số nguyên tử trong vũ trụ quan sát được.
3. Hiệu ứng tuyết lở
Đảo một bit đầu vào và khoảng một nửa số bit đầu ra sẽ thay đổi — một cách ngẫu nhiên. Không có gradient, không có pattern, không có cách nào đẩy đầu vào "gần hơn" tới một digest mục tiêu. Đây chính là điều buộc các thợ đào phải đoán từng nonce một.
4. Chống va chạm
Việc tìm ra hai đầu vào khác nhau cùng băm ra một digest là không khả thi về mặt tính toán. SHA-256 cung cấp khoảng 128 bit chống va chạm theo NIST — không có cuộc tấn công nào được biết đến đã thu hẹp con số đó trong hơn 20 năm rà soát công khai.
Bitcoin sử dụng SHA-256 ở đâu — Ba vị trí
SHA-256 không phải là một thành phần phụ trợ nhỏ trong Bitcoin — nó là nền tảng nguyên thủy mà toàn bộ chuỗi được xây dựng trên đó. Có ba vị trí cụ thể quan trọng, và mỗi vị trí dựa trên một tổ hợp khác nhau của bốn đặc tính bên trên.
Mã giao dịch (Transaction ID)
Mỗi giao dịch Bitcoin được nhận diện bằng double-SHA-256 của dữ liệu đã serialize. Digest đó (gọi là "txid") chính là dấu vân tay duy nhất mà bạn dán vào block explorer để theo dõi một thanh toán.
Block header & Merkle root
Mỗi block tham chiếu tới block trước đó qua digest SHA-256 của nó, tạo nên "chuỗi" trong blockchain. Các giao dịch trong một block cũng được băm theo cặp lên cây Merkle — hash đỉnh được nhúng vào header.
Câu đố khai thác
Khai thác là quá trình chạy SHA-256 trên block header, hai lần, lặp đi lặp lại, cho đến khi kết quả rơi xuống dưới một số mục tiêu. Thợ đào chiến thắng sẽ nhận được phần thưởng block — hiện tại là 3.125 BTC.
Một chi tiết đáng lưu ý: Bitcoin gần như không bao giờ dùng SHA-256 chỉ một lần. Satoshi đã chọn double-SHA-256 — SHA-256(SHA-256(x)) — cho mã giao dịch và khai thác. Việc băm hai lần thêm một biên độ an toàn vừa phải chống lại một loại tấn công mở rộng và gần như không tốn thêm tính toán. Theo góc nhìn của người dùng, "hàm băm của Bitcoin" có nghĩa là "SHA-256 chạy hai lần".
Xem SHA-256 chạy hàng tỷ lần mỗi giây
Bạn đã thấy thuật toán trên lý thuyết. Cách nhanh nhất để xem nó trong thực tế là gói dùng thử Basic Miner 2 ngày miễn phí của NoxHash — không cần đặt cọc, không cần thẻ. Mở terminal CGMiner và bạn sẽ thấy hashrate SHA-256 thực tế nhảy lên theo TH/s, từng double-hash một.
Câu đố khai thác trong một câu
Lột bỏ lớp marketing, khai thác Bitcoin rút gọn thành một cuộc đua số học duy nhất: tìm ra một con số (gọi là nonce) sao cho SHA-256(SHA-256(block header)) tạo ra một digest nhỏ hơn target hiện tại. Vậy thôi. Không có thủ thuật nào — chỉ là đoán, băm, kiểm tra, lặp lại, nhanh hơn bất kỳ ai khác trên hành tinh.
Vì hiệu ứng tuyết lở, không có đường tắt nào. Đảo một bit của nonce sẽ cho bạn một digest mới hoàn toàn xáo trộn, không liên quan đến lần thử trước. Chiến lược duy nhất là thử càng nhiều nonce mỗi giây càng tốt, tùy vào phần cứng của bạn. Tốc độ đó được gọi là hashrate, đo bằng TH/s (nghìn tỷ hash mỗi giây) — và một con Antminer S21 hiện đại đạt khoảng 200 TH/s khi tiêu thụ 3,500 W.
Target là một số 256-bit mà mạng lưới điều chỉnh sau mỗi 2,016 block (khoảng hai tuần một lần) sao cho, trên tất cả các thợ đào cộng lại, một block hợp lệ được tìm thấy trung bình mỗi 10 phút. Hashrate toàn cầu tăng lên? Target co lại, câu đố khó hơn. Thợ đào rời đi? Target nới ra, câu đố dễ hơn. Đó là một bộ điều nhiệt tự điều chỉnh.
Hash ứng viên (thất bại — quá lớn)
8a7b3e19ff4c2a5b9e1d0c8f2a6b4e7d3f1c5a8b9e2d4f7c1a3b5e8d9f2c4a6b
Hash chiến thắng (đạt — bắt đầu bằng đủ số 0)
00000000000000000002a1b8c9d3e4f5a6b7c8d9e0f1a2b3c4d5e6f7a8b9c0d1
Một hash block Bitcoin "chiến thắng" thường bắt đầu bằng khoảng 19 số 0 đứng đầu ở dạng hex — ngưỡng chính xác do target của mạng lưới quyết định.
Một bậc độ lớn để minh họa: với hashrate toàn cầu khoảng 800-900 EH/s vào năm 2026 và difficulty quanh mức 110-120 T (theo dữ liệu công khai từ tài liệu tham khảo block-hashing trên Bitcoin Wiki), toàn bộ mạng lưới thực hiện cỡ 10^21 phép tính SHA-256 mỗi giây chỉ để duy trì việc tạo ra một block sau mỗi 10 phút. Đó là ý nghĩa thực tế của "proof of work": bằng chứng rằng một lượng SHA-256 khổng lồ đã thực sự được tính toán.
SHA-256 vẫn an toàn vào năm 2026 chứ?
Câu trả lời ngắn: có — không có cuộc tấn công khả thi nào trong hơn 20 năm phân tích mật mã công khai. Câu trả lời dài hơn đáng để hiểu, vì an ninh của Bitcoin phụ thuộc vào nó.
SHA-256 được Cơ quan An ninh Quốc gia Hoa Kỳ thiết kế và NIST công bố vào năm 2001. Nó đã được hàng chục nghìn nhà mật mã học, cơ quan chính phủ và nhà nghiên cứu đối nghịch xem xét kỹ lưỡng. Các cuộc tấn công được biết đến tốt nhất hiện nay chỉ chạm được vào các biến thể số vòng giảm bớt (SHA-256 chạy 64 vòng nội tại; có tấn công nhắm vào ~31 vòng). Đối với toàn bộ thuật toán như Bitcoin sử dụng, brute force vẫn là cách duy nhất.
Còn về máy tính lượng tử? Thuật toán Grover về mặt lý thuyết giảm một nửa số mũ của tấn công brute-force trên hàm băm — kéo độ kháng pre-image hiệu dụng của SHA-256 từ 2^256 xuống 2^128 phép toán. Đó vẫn là con số lớn đến mức thiên văn, và phần cứng lượng tử hiện tại còn rất xa mới chạy được Grover ở quy mô đó. Chữ ký của Bitcoin (ECDSA) có nguy cơ trước lượng tử cao hơn so với việc băm.
Bài học thực tế cho thợ đào và nhà đầu tư: Bitcoin kế thừa độ an toàn của SHA-256. Nếu một cuộc tấn công thực tế lên SHA-256 từng xuất hiện — chẳng hạn một va chạm thực sự trong thời gian đa thức — nó sẽ không chỉ phá vỡ Bitcoin. Nó sẽ phá vỡ TLS, ký mã, và phần lớn mật mã hiện đại. Ngành khai thác sẽ là vấn đề ít nhất mà mọi người phải lo. Không có cuộc tấn công như vậy tồn tại hôm nay, và không có gì sắp xảy ra.
Đưa hashrate SHA-256 vào hoạt động mà không cần mua phần cứng
Phép toán vẫn vậy dù bạn sở hữu ASIC hay đi thuê. NoxHash vận hành dòng Antminer S21 ở mức 12-17.5 J/TH trong một trung tâm dữ liệu Kazakhstan dùng điện công nghiệp — bạn thuê hashrate từ $20/tháng và BTC khai thác được sẽ chuyển vào ví của bạn.
Câu hỏi thường gặp
SHA-256 viết tắt của từ gì?
SHA-256 viết tắt của Secure Hash Algorithm, 256-bit (Thuật toán Băm An toàn 256-bit). Nó thuộc họ SHA-2 do Cơ quan An ninh Quốc gia Hoa Kỳ thiết kế và NIST công bố năm 2001 dưới chuẩn FIPS PUB 180-4. Số 256 là kích thước đầu ra cố định tính bằng bit, hoặc 64 ký tự hexadecimal.
Tại sao Bitcoin băm SHA-256 hai lần thay vì một?
Băm hai lần — SHA-256(SHA-256(x)) — phòng thủ trước các tấn công mở rộng độ dài (length-extension) đe dọa các cấu trúc băm một lượt. Satoshi đã áp dụng một cách thận trọng vào năm 2008. Lượt băm thêm tăng gấp đôi chi phí tính toán nhưng cho biên độ an toàn vững chắc, nên cả mã giao dịch và khai thác đều dùng double-SHA-256.
SHA-256 có thể bị đảo ngược không?
Không thực tế. SHA-256 là một hàm một chiều — cho trước digest 256-bit, việc tìm một đầu vào tạo ra digest đó cần duyệt khoảng 2^256 khả năng, vượt xa số nguyên tử trong vũ trụ quan sát được. Không có bất kỳ đường tắt toán học công khai nào để đảo ngược nó sau hai thập kỷ phân tích.
Máy tính lượng tử có phá được SHA-256 và Bitcoin không?
Không phá được SHA-256 trực tiếp. Thuật toán Grover sẽ giảm một nửa số mũ an toàn hiệu dụng, từ 2^256 xuống 2^128 — vẫn nằm ngoài tầm với. Chữ ký của Bitcoin (ECDSA) đối mặt với rủi ro lượng tử nghiêm trọng hơn, nhưng phần cứng hiện tại còn xa mới đạt ngưỡng đó, và nâng cấp hậu lượng tử là một lĩnh vực nghiên cứu đang diễn ra.
SHA-256 có phải là hàm băm duy nhất Bitcoin sử dụng không?
Không. SHA-256 phụ trách băm block, mã giao dịch và câu đố khai thác. Địa chỉ Bitcoin còn dùng RIPEMD-160 áp lên một digest SHA-256, tạo ra một dấu vân tay 160-bit ngắn hơn. Chữ ký dùng ECDSA trên đường cong secp256k1 — một nguyên thủy mật mã hoàn toàn tách biệt khỏi việc băm.
SHA-256 chạy nhanh đến đâu trên phần cứng khai thác hiện đại?
Cực kỳ nhanh. Một con ASIC Antminer S21 tính được khoảng 200 nghìn tỷ hash double-SHA-256 mỗi giây ở hiệu suất 17.5 J/TH. Toàn mạng Bitcoin cộng lại sản sinh khoảng 800-900 EH/s tính đến 2026 — bậc độ lớn 10^21 hash mỗi giây, là silicon chuyên dụng chạy đúng một thuật toán.
Nội dung giáo dục — không phải lời khuyên tài chính
Bài viết này giải thích SHA-256 như một khái niệm mật mã và vai trò của nó trong Bitcoin. Đây không phải là lời khuyên tài chính, pháp lý hay an ninh. Các số liệu mạng (hashrate, difficulty, block reward) phản ánh điều kiện vào khoảng tháng 4/2026 và sẽ thay đổi. Lợi nhuận khai thác Bitcoin phụ thuộc vào giá BTC, độ khó mạng và hiệu suất phần cứng — tất cả đều nằm ngoài tầm kiểm soát của cá nhân. Chỉ đầu tư khoản tiền mà bạn có thể chấp nhận mất, và tham vấn chuyên gia có chuyên môn trước khi đưa ra quyết định đầu tư hoặc thuế.