我正在使用PHP中的Google云端存储服务,我有一个JSON格式的APPLICATION_GOOGLE_CLIENT_KEY_FILE
。
我的问题是我们可以将JSON私钥转换为PKCS12格式吗?如果是,那么请提供一些方法,因为我无法这样做。
答案 0 :(得分:3)
这是我为openssl docs中的类似情况拼凑而成的内容。它不是基于对密钥的任何深入理解,但它对我使用Node的库起了作用。在JSON文件的对象中,有一个名为' private_key'的成员。将其值复制到一个新文件中,例如' jsonkey.key',并替换所有出现的' \ n'与实际换行。然后运行命令:
openssl rsa -in jsonkey.key | openssl pkcs12 -password pass:notasecret -export -nocerts -out p12key.p12
当然,将p12key.p12更改为您希望调用pkcs12文件的任何内容。
答案 1 :(得分:0)
这是基于使用快速而肮脏的shell脚本的Holy Joe的答案。您需要安装节点。
#!/bin/sh
value=`cat ./json.json`
var=`node -p -e 'JSON.parse(process.argv[1]).private_key' "$value"`
dest=jsonkey.key
echo "$var" > "$dest"
openssl rsa -in jsonkey.key | openssl pkcs12 -password pass:notasecret -export -nocerts -out key.p12