🍋
Menu
Security

AES

AES (Advanced Encryption Standard)

อัลกอริทึมการเข้ารหัสแบบสมมาตรที่ใช้กันแพร่หลายมากที่สุด ถูกนำมาใช้เป็นมาตรฐานโดยรัฐบาลสหรัฐอเมริกา (NIST) ในปี 2001 AES เข้ารหัสข้อมูลเป็นบล็อกขนาด 128 บิตคงที่โดยใช้คีย์ขนาด 128, 192 หรือ 256 บิต

รายละเอียดทางเทคนิค

AES ทำงานผ่านหลายรอบของการแทนที่ (S-box) การเลื่อนแถว การผสมคอลัมน์ และการเพิ่มคีย์ (10/12/14 รอบสำหรับคีย์ 128/192/256 บิต) โหมด block cipher กำหนดวิธีประมวลผลหลายบล็อก: ECB (ไม่ปลอดภัย เปิดเผยรูปแบบ), CBC (เชื่อมโยงบล็อก ต้องใช้ IV), CTR (โหมดตัวนับ ทำงานแบบขนานได้) และ GCM (Galois/Counter Mode ให้ทั้งการเข้ารหัสและการยืนยันตัวตน) Web Crypto API รองรับ AES-GCM, AES-CBC, AES-CTR และ AES-KW AES-256-GCM เป็นมาตรฐานสำหรับ TLS 1.3 การเข้ารหัสไฟล์ และการเข้ารหัสดิสก์ (BitLocker, FileVault)

ตัวอย่าง

```javascript
// AES-256-GCM encryption (Web Crypto API)
const key = await crypto.subtle.generateKey(
  { name: 'AES-GCM', length: 256 }, true, ['encrypt', 'decrypt']
);
const iv = crypto.getRandomValues(new Uint8Array(12));
const ciphertext = await crypto.subtle.encrypt(
  { name: 'AES-GCM', iv },
  key,
  new TextEncoder().encode('secret message')
);
```

เครื่องมือที่เกี่ยวข้อง

คำศัพท์ที่เกี่ยวข้อง