我正在使用PHP中的Google云存储服务,我有一个JSON格式的APPLICATION_GOOGLE_CLIENT_KEY_FILE
。是否可以将JSON私钥转换为PKCS12格式?
我的问题是我们可以将JSON私钥转换为PKCS12格式吗?如果是,那么请给我一些方法,因为我无法这样做。
我正在使用PHP中的Google云存储服务,我有一个JSON格式的APPLICATION_GOOGLE_CLIENT_KEY_FILE
。是否可以将JSON私钥转换为PKCS12格式?
我的问题是我们可以将JSON私钥转换为PKCS12格式吗?如果是,那么请给我一些方法,因为我无法这样做。
下面是我为openssl文档中的类似情况拼凑的内容。它不是基于对密钥的深入理解,但它对我用于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文件被调用。
这建立在圣乔的答案上,使用快速而脏的shell脚本。您需要安装节点。
#!/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