Bài viết liên quan
Mã hóa AES-256
Advanced Encryption Standard (AES-256)
Mã hóa AES-256 là gì?
AES-256 (Advanced Encryption Standard với khóa 256-bit) là thuật toán mã hóa đối xứng hoạt động trên các khối dữ liệu 128 bit, thực hiện 14 vòng biến đổi thay thế (SubBytes), dịch hàng (ShiftRows), trộn cột (MixColumns) và cộng khóa (AddRoundKey). Với không gian khóa 2^256 ≈ 1,15 × 10^77 khả năng, AES-256 được đánh giá là an toàn trước cả máy tính lượng tử trong tương lai gần.
Đặc điểm kỹ thuật
- Độ dài khóa: 256 bit (so với AES-128 và AES-192); mức an toàn cao nhất trong họ AES.
- Tốc độ: hỗ trợ tăng tốc phần cứng bởi tập lệnh AES-NI của Intel/AMD, đạt thông lượng trên 10 Gbps.
- Chế độ hoạt động: CBC, GCM, CTR — trong đó GCM cung cấp đồng thời mã hóa và xác thực tính toàn vẹn (AEAD).
- Chuẩn quốc tế: NIST FIPS 197, ISO/IEC 18033-3.
Ứng dụng trong ngân hàng Việt Nam
Theo Thông tư 18/2018/TT-NHNN (Điều 12, Khoản 3) và Thông tư 17/2019/TT-NHNN, các tổ chức tín dụng phải sử dụng thuật toán mã hóa có độ dài khóa tối thiểu 128 bit cho dữ liệu không nhạy cảm và AES-256 đối xứng hoặc RSA-2048 bất đối xứng cho dữ liệu nhạy cảm (số PIN, số thẻ CVV, số dư tài khoản).
Ví dụ triển khai
Ngân hàng TMCP Ngoại thương (Vietcombank) mã hóa toàn bộ dữ liệu thẻ trong hệ thống Visa/Mastercard bằng AES-256 ở chế độ GCM trước khi lưu vào cơ sở dữ liệu. Khi khách hàng thanh toán qua POS, khóa AES-256 được trao đổi an toàn qua giao thức RSA-2048 handshake (TLS 1.3).