Mã hóa dữ liệu trong S3

0 phút đọc

S3 Encryption trong aws

Để tránh việc lưu trữ dữ liệu dưới dạng thô, Amazon S3 cung cấp phương thức mã hóa dữ liệu. Cách thức hoạt động của mã hóa là dùng keythuật toán (algorithm) để biến dữ liệu ban đầu thành dữ liệu được mã hóa. Vậy nên, vấn đề cần quan tâm là lưu trữ key ở đâu. Trong S3 có 2 cách chính để mã hóa

  • Server-side encryption: Mã hóa phía server (S3)
  • Client-side encryption: Mã hóa phía client (dùng các libs để mã hóa) rồi upload dữ liệu được mã hóa lên S3 Amazon S3 cung cấp 4 phương thức mã hóa object:
  • SSE-S3: Mã hóa S3 objects sử dụng key quản lý bởi AWS
  • SSE-KMS: Sử dụng AWS Key Management Service (KMS) để quản lý encryption keys
  • SSE-C: Sử dụng khi bạn muốn quản lý encryption keys riêng của mình
  • Client Side Encryption

SSE-S3 trong AWS

  • Mã hóa sử dụng key quản lý bởi Amazon S3
  • Object được mã hóa phía server side
  • Phương thức mã hóa: AES-256
  • Phải set header: "x-amz-server-side-encryption":"AES256"
SSE-S3 mã hóa

SSE-KMS trong AWS

  • Mã hóa sử dụng key quản lý bởi AWS Key Management Service (KMS)
  • Object được mã hóa phía server side
  • Phải set header: "x-amz-server-side-encryption":"aws:kms"
SSE-KMS mã hóa

SSE-C trong AWS

  • Là server-side encryption sử dụng key cung cấp bởi khách hàng (AWS không quản lý key này)
  • Phải dùng HTTPS
  • Encyption key phải được cung cấp trong HTTPs headers trong mỗi request
SSE-C mã hóa

Client Side Encryption trong AWS

  • Mã hóa phía client trước khi upload lên S3
  • Sử dụng client libs chẳng hạn như: Amazon S3 Encryption Client
  • Khi đọc dữ liệu trả về cần decrypt chúng
Client Side Encryption

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào

Avatar TechMely Team
Được viết bởi

TechMely Team

Lòng tin cũng giống như một tờ giấy, khi đã nhàu nát sẽ không bao giờ phẳng phiu được.