我拥有并需要使用保管库解密的加密数据。我已经尝试过使用保管库写晶体管,但是我们需要对文本进行加密,然后将其解密。它不是解密的,而是加密的但是,我还没有找到从Vault解密的信息。
在下面,晶体管正在做。
vault write transit/encrypt/orders plaintext=$(base64 <<< "4111 1111 1111 1111")
Key Value
--- -----
ciphertext vault:v1:cZNHVx+sxdMErXRSuDa1q/pz49fXTn1PScKfhf+PIZPvy8xKfkytpwKcbC0fF2U=
vault write transit/decrypt/orders \
ciphertext="vault:v1:cZNHVx+sxdMErXRSuDa1q/pz49fXTn1PScKfhf+PIZPvy8xKfkytpwKcbC0fF2U=" \
Key Value
--- -----
plaintext Y3JlZGl0LWNhcmQtbnVtYmVyCg==
但是我需要的是,当我给加密的一个保险库文件时,必须给解密的一个文件库
在我看来,您还没有将实际输入复制到第一个命令。看起来好像您实际上在跑
vault write transit/encrypt/orders plaintext=$(base64 <<< "credit-card-number")
因为保险柜已退还给您(Y3JlZGl0LWNhcmQtbnVtYmVyCg==
)的结果是字符串credit-card-number
的base64编码形式。
因此,您问题的简单答案是,您需要解码base64的响应,就像the documentation说的那样:
vault write -field=plaintext transit/decrypt/orders ciphertext="vault:v1:cZNHV...." | base64 --decode
[如果您查看第一个Vault命令,您会发现在将纯文本传递给Vault之前,对它进行了base64编码。因此,保险柜已将其以base64编码的形式退还给您。