一句話:SigV4a 是 SigV4 的擴充版,讓「同一個簽章能在多個 region 驗證」——為 S3 Multi-Region Access Points 這類跨區場景設計的,用非對稱 ECDSA 取代對稱 HMAC。
回想 Level 3:SigV4 的 Signing Key 是把 secret key 揉進「日期 / region / service」推出來的——所以簽章綁死單一 region,你簽的時候必須知道最終打哪個 region。碰到「一份簽章要同時能打好幾個 region」(多區存取、跨區故障轉移)就卡住了。
| SigV4(你學的) | SigV4a | |
|---|---|---|
| 演算法 | AWS4-HMAC-SHA256(對稱 HMAC) | AWS4-ECDSA-P256-SHA256(非對稱 ECDSA) |
| region | Signing Key 綁單一 region | 簽章可跨多 region 驗證;簽時不必知道最終落哪區 |
| 金鑰推導 | 每天/每 region/每 service 各推一把 | 用同一把(從 secret 衍生的 ECDSA keypair)簽所有請求 |
| server 存什麼 | 共享 secret(兩邊都有) | 只存公鑰(非對稱的安全好處) |
SigV4a=為「一份簽章要在多個 region 都認」而生的升級版,把對稱 HMAC 換成非對稱 ECDSA。日常單區用的 pre-signed URL 用 SigV4 就夠;碰到 Multi-Region Access Points 才需要它。
你不需要現在就會實作 SigV4a——知道它存在、知道它解決什麼問題、跟 SigV4 差在哪,就足以在討論跨區架構時接得上話。