用途
- 怕被別人看見
- 想給特定人看
分類
類型 |
對稱加解密 |
非對稱加解密 |
實例 |
AES、3DES |
RSA、ECDSA |
… |
加解密方式寫在同一張紙上[加解密方式] public key |
加解密方式寫在不同紙上[加密方式] public key … client get by calling api[解密方式] private key … saved at Server side |
概論 |
簡單、速度快、安全性低 |
複雜速度慢、安全性較高 |
特色 |
1. Client 和 Server 用同一把密鑰加解密2. AES/ {ECB/CBC...}/PaddingPattern |
|
應用 |
1. 對大量明文的加密2. Https 的 SessionKey |
|
Appendix
AES 加密結構說明
- 金鑰長度(bit) :
- 區塊間加密方式 :
- ECB - 可以被密推
- CBC - 亂數 initial value 初始值
- CFB - 亂數 initial value 初始值
- OFB
- CTR
- 區塊填充方式:
- NoPadding - 不建議、會影響加密強度
- ZeroBytePadding - 缺兩個填入 0
- PKCS5Padding
- PKCS7Padding
Example: AES-256/CBC/PKCS7Padding
密鑰長度 (bit) |
分組長度 (bit) |
建議輪數 |
AES-128 |
128 |
10 |
AES-192 |
128 |
12 |
AES-256 |
128 |
14 |
其他
對 |
非對稱 |
混合 |
橢圓 |
雜湊算法 |
編碼 |
AES、3DES |
RSA、ECDSA |
RSA x AES |
|
SHA3-256 |
Base64、URLEncoder |
延伸閱讀 - 區塊間加密方式