Tất cả bài viết

AES: mã hóa đối xứng hoạt động như thế nào

Ở Việt Nam, Ngân hàng Nhà nước quy định các tổ chức cung cấp dịch vụ ngân hàng điện tử phải mã hóa dữ liệu nhạy cảm của khách hàng (số tài khoản, mã OTP, thông tin giao dịch) cả khi lưu trữ lẫn khi truyền qua mạng. Các thông tư liên quan không chỉ định thuật toán cụ thể, nhưng AES-256 gần như là lựa chọn mặc định trong toàn ngành ngân hàng và ví điện tử.

Vì sao ví điện tử Việt Nam cần mã hóa đối xứng tốc độ cao

Với hàng chục triệu người dùng các ví điện tử như MoMo, ZaloPay hay VNPay xử lý hàng triệu giao dịch mỗi ngày, chi phí tính toán là yếu tố sống còn. Mã hóa đối xứng như AES rẻ hơn nhiều lần so với mã hóa bất đối xứng, nên được dùng để mã hóa chính dữ liệu giao dịch, còn mã hóa bất đối xứng chỉ đóng vai trò trao đổi khóa an toàn lúc thiết lập kết nối — nếu dùng bất đối xứng cho toàn bộ luồng dữ liệu, hạ tầng sẽ không chịu nổi tải.

Các chế độ hoạt động: CBC đối lại GCM

AES mã hóa dữ liệu theo các khối kích thước cố định, vì vậy chế độ hoạt động xác định các khối này liên hệ với nhau như thế nào. CBC (Cipher Block Chaining) nối mỗi khối với khối trước đó, đảm bảo tính bảo mật nhưng không kiểm tra tính toàn vẹn dữ liệu. GCM (Galois/Counter Mode) thêm xác thực, tức là vừa mã hóa dữ liệu vừa đảm bảo dữ liệu không bị giả mạo — vì vậy được coi là lựa chọn hiện đại và an toàn hơn, và được khuyến nghị mặc định cho hệ thống mới.

Vì sao cần vector khởi tạo (IV)

Nếu mã hóa cùng một dữ liệu với cùng một khóa mà không có biến đổi thêm, kết quả sẽ luôn giống hệt nhau — điều này làm lộ thông tin về các khối lặp lại. Vector khởi tạo là một giá trị ngẫu nhiên duy nhất được thêm vào mỗi lần mã hóa, đảm bảo kết quả khác nhau ngay cả khi dữ liệu đầu vào và khóa giống hệt nhau.

Vì sao cần điều này

  • Mã hóa dữ liệu nhạy cảm của khách hàng trước khi lưu trữ hoặc truyền qua mạng.
  • Đáp ứng yêu cầu của Ngân hàng Nhà nước về bảo mật dữ liệu trong dịch vụ ngân hàng điện tử.
  • Chẩn đoán các vấn đề tương thích khi giải mã dữ liệu đã được mã hóa bởi một hệ thống khác.

AES-128 so với AES-256: có cần khóa dài hơn không

Trực giác cho rằng khóa dài gấp đôi nghĩa là bảo mật tốt gấp đôi, nhưng trong thực tế AES-128 hiện vẫn được coi là an toàn về mặt mật mã học. AES-256 mang lại biên độ an toàn lớn hơn phòng khi có đột phá lý thuyết trong tương lai (đặc biệt là điện toán lượng tử), nhưng phải trả giá bằng chi phí tính toán cao hơn một chút, nên việc lựa chọn giữa hai loại là sự đánh đổi giữa hiệu năng và biên độ an toàn.

Dùng thử công cụ