pgp - PGP 操作
概述
pgp 模組提供 PGP(Pretty Good Privacy)操作,包括密鑰生成、加密、解密和簽名。
類型
KeyPair
包含公鑰和私鑰的 PGP 密鑰對。
GenerateOptions
生成 PGP 密鑰的選項。
密鑰生成
GenerateKeyPair()
生成新的 PGP 密鑰對。
參數:
opts- 生成選項(nil 表示默認值)
返回值:
- 生成的密鑰對
- 如果生成失敗,返回錯誤
示例:
密鑰讀取
ReadPublicKey()
從 PEM 格式讀取公鑰。
參數:
publicKeyPEM- PEM 格式公鑰字符串
返回值:
- 解析的實體列表
- 如果解析失敗,返回錯誤
示例:
ReadPrivateKey()
從 PEM 格式讀取私鑰。
參數:
privateKeyPEM- PEM 格式私鑰字符串passphrase- 私鑰密碼(如果未加密則為空)
返回值:
- 解析的實體列表
- 如果解析失敗,返回錯誤
示例:
ReadKeyPair()
從 PEM 格式讀取密鑰對。
參數:
publicKeyPEM- PEM 格式公鑰字符串privateKeyPEM- PEM 格式私鑰字符串passphrase- 私鑰密碼
返回值:
- 讀取的密鑰對
- 如果讀取失敗,返回錯誤
示例:
加密
Encrypt()
使用公鑰加密數據。
參數:
data- 要加密的數據publicKeyPEM- PEM 格式公鑰字符串
返回值:
- 加密的數據
- 如果加密失敗,返回錯誤
示例:
EncryptText()
加密數據並返回 ASCII 裝甲格式。
參數:
data- 要加密的數據publicKeyPEM- PEM 格式公鑰字符串
返回值:
- ASCII 裝甲格式加密文本
- 如果加密失敗,返回錯誤
示例:
解密
Decrypt()
使用私鑰解密數據。
參數:
encryptedData- 加密的數據privateKeyPEM- PEM 格式私鑰字符串passphrase- 私鑰密碼
返回值:
- 解密的數據
- 如果解密失敗,返回錯誤
示例:
DecryptText()
解密 ASCII 裝甲格式數據。
參數:
encryptedText- ASCII 裝甲格式加密文本privateKeyPEM- PEM 格式私鑰字符串passphrase- 私鑰密碼
返回值:
- 解密的數據
- 如果解密失敗,返回錯誤
示例:
密鑰信息
GetFingerprint()
獲取密鑰指紋。
參數:
keyPEM- PEM 格式密鑰字符串(公鑰或私鑰)
返回值:
- 密鑰指紋(十六進制字符串)
- 如果讀取失敗,返回錯誤
示例: