Nội dung
Danh sách bài học
- 01~8 phút
Module 7 — Cryptographic & integrity: tổng quan
Hash mật mã và toàn vẹn dữ liệu: SHA-256, HMAC, Merkle proof, hash chain. Nền của Git, Bitcoin, Certificate Transparency.
- 02~18 phút
Cryptographic hash — preimage & collision
Khác hash thường: kháng preimage, second-preimage, collision. Vì sao MD5/SHA-1 đã chết và SHA-256 còn an toàn.
- 03~22 phút
SHA-256 internals — Merkle-Damgård
Cấu trúc Merkle-Damgård: padding, chia block, compression function, message schedule. Vì sao đầu ra trông ngẫu nhiên.
- 04~18 phút
HMAC — xác thực message bằng hash
Kết hợp secret key với hash để xác thực tính toàn vẹn + nguồn gốc message. Vì sao không dùng hash(key‖msg) trực tiếp (length-extension).
- 05~20 phút
Merkle proof — chứng minh thành viên O(log n)
Chứng minh một phần tử thuộc tập đã cam kết (root hash) chỉ với log n hash, không cần lộ toàn bộ tập. Nền Bitcoin SPV, CT.
- 06~18 phút
Hash chain — log append-only chống sửa
Mỗi bản ghi chứa hash của bản ghi trước; sửa một bản ghi phá vỡ toàn chuỗi sau. Nền blockchain, audit log, Git history.
- 07~32 phút
Mini-challenge — Merkle tree + proof
Lab: dựng Merkle tree từ danh sách, sinh và verify audit proof cho một phần tử; phát hiện dữ liệu bị sửa.
- 08~26 phút
Case study — Git objects & Bitcoin header
Git dùng SHA để định danh blob/tree/commit (DAG bất biến); Bitcoin block header ghép Merkle root + hash chain ra sao.
- 09~12 phút
Module 7 — Tổng kết & cheat sheet
Recap crypto/integrity: bảng hash/HMAC/Merkle/chain theo mục đích, glossary, self-assessment. Khép lại khoá Ứng dụng.