Jas*_*son 5 php amazon-web-services aws-kms
我刚刚使用AWS Key Management Service进行设置并调用该方法generateDataKey.该方法正在工作并返回CiphertextBlob和Plaintext blob.
但是,blob的格式如下:
?g?'??w?i?<??a*\B4p 1IG
Run Code Online (Sandbox Code Playgroud)
我正在使用API,根据文档,它没有编码.我试图理解明文是否能以某种方式在PHP中"解码",这样我就可以存储它/使用它而不需要看起来奇怪的ASCII字符.我期待的是一长串字符而不是上面的特殊字符.我觉得我错过了一些简单的事情.
谢谢!
小智 2
答案是二进制 blob。这些需要进行 Base64 编码,以便您获得预期的结果。
示例代码如下:
use Aws\Kms\KmsClient;
$options = [
'region' => 'eu-west-1',
'version' => '2014-11-01',
'profile' => 'default',
'retries' => 0,
'scheme' => 'https',
'debug' => false
];
$kmsClient = new KmsClient($options);
$result = $kmsClient->generateDataKey([
'KeyId' => '12345678-1234-1233-1234-1234567890ab',
'KeySpec' => 'AES_256'
]);
echo base64_encode($result["CiphertextBlob"]);
echo "\r\n";
echo ($result["KeyId"]);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
734 次 |
| 最近记录: |