Open quinnwencn opened 1 month ago
High Level可以參考High Level Design of KMS,這裏負責將KMS的Low Level設計。
KMS需要提供密鑰生成、密鑰查詢、密鑰更新、密鑰刪除、數據加密和數據揭秘功能,每個功能應單獨設立一個API
{ "keyType": "AES/RSA/ECC", "keySize": "128/1026/prime256v1", }
{ "keyId": "cb7a45c7-147d-4f9a-a283-2c40dd0d0837", "publicKey": "(optional)", }
{ "keyId": "cb7a45c7-147d-4f9a-a283-2c40dd0d0837" }
{ "exist": true }
{ "status": 1 (success), 0(failed) }
{ "keyId": "cb7a45c7-147d-4f9a-a283-2c40dd0d0837", "plainText": "fsagdsagdgdgggd", }
{ "status": 1 (success), 0(failed), "cipherText": "gfsagdgsd" }
{ "keyId": "cb7a45c7-147d-4f9a-a283-2c40dd0d0837", "cipherText": "fsagdsagdgdgggd", }
{ "status": 1 (success), 0(failed), "plainText": "gfsagdgsd" }
High Level可以參考High Level Design of KMS,這裏負責將KMS的Low Level設計。
1.組建設計細化
1.1 API
KMS需要提供密鑰生成、密鑰查詢、密鑰更新、密鑰刪除、數據加密和數據揭秘功能,每個功能應單獨設立一個API
1.2 API請求與響應
1.1 密鑰生成
1.2 密鑰查詢
1.3 密鑰更新 POST /keys/update
1.4 密鑰刪除 DELETE /keys/delete
1.5 數據加密 POST /encrypt
1.6 數據解密 POST /decrypt
1.2 身份驗證和授權