KMS通過使用硬件安全模塊(Hardware Security Module,HSM)保護密鑰安全,幫助用戶輕松創(chuàng)建和管理密鑰,所有的用戶密鑰都由HSM中的根密鑰保護,避免密鑰泄露。
使用場景:
小數據加解密
當有少量數據(例如:口令、證書、電話號碼等)需要加解密時,用戶可以通過KMS界面使用在線工具加解密數據,或者調用KMS的API接口使用指定的用戶主密鑰直接加密、解密數據。當前支持不大于4KB的小數據加解密。
以保護服務器HTTPS證書為例,采用調用KMS的API接口方式進行說明,如圖1所示。
圖1保護服務器HTTPS證書

流程說明如下:
1.用戶需要在KMS中創(chuàng)建一個用戶主密鑰。
2.用戶調用KMS的“encrypt-data”接口,使用指定的用戶主密鑰將明文證書加密為密文證書。
3.用戶在服務器上部署密文證書。
4.當服務器需要使用證書時,調用KMS的“decrypt-data”接口,將密文證書解密為明文證書。
大量數據加解密
當有大量數據(例如:照片、視頻或者 數據庫 文件等)需要加解密時,用戶可采用信封加密方式加解密數據,無需通過網絡傳輸大量數據即可完成數據加解密。
加密本地文件流程,如圖2所示。
圖2加密本地文件

流程說明如下:
1.用戶需要在KMS中創(chuàng)建一個用戶主密鑰。
2.用戶調用KMS的“create-datakey”接口創(chuàng)建 數據加密 密鑰。用戶得到一個明文的數據加密密鑰和一個密文的數據加密密鑰。其中密文的數據加密密鑰是由指定的用戶主密鑰加密明文的數據加密密鑰生成的。
3.用戶使用明文的數據加密密鑰來加密明文文件,生成密文文件。
4.用戶將密文的數據加密密鑰和密文文件一同存儲到持久化存儲設備或服務中。
解密本地文件流程,如圖3所示。
圖3解密本地文件

流程說明如下:
1.用戶從持久化存儲設備或服務中讀取密文的數據加密密鑰和密文文件。
2.用戶調用KMS的“decrypt-datakey”接口,使用對應的用戶主密鑰(即生成密文的數據加密密鑰時所使用的用戶主密鑰)來解密密文的數據加密密鑰,取得明文的數據加密密鑰。
若對應的用戶主密鑰被誤刪除,會導致解密失敗。因此,需要妥善管理好用戶主密鑰。
3.用戶使用明文的數據加密密鑰來解密密文文件。