Tcl pki::pkcs::使用Google Auth服务帐户密钥解析密钥错误

Tcl pki::pkcs::使用Google Auth服务帐户密钥解析密钥错误,tcl,rsa,x509,private-key,pki,Tcl,Rsa,X509,Private Key,Pki,我正在尝试创建一个小脚本,在这个脚本中,我可以将google的“OAuth2.0用于服务器到服务器应用程序”与Tcl结合使用。在设置我的服务帐户并以JSON格式创建私钥之后,我复制并粘贴了JSON文件中的私钥。(即 然后我将私钥放在我的Tcl脚本中,如下所示: set keydata "PRIVATEKEY" set key [::pki::pkcs::parse_key $keydata] 执行此操作后,我得到以下错误: Expected Integer (0x02), but go

我正在尝试创建一个小脚本,在这个脚本中,我可以将google的“OAuth2.0用于服务器到服务器应用程序”与Tcl结合使用。在设置我的服务帐户并以JSON格式创建私钥之后,我复制并粘贴了JSON文件中的私钥。(即

然后我将私钥放在我的Tcl脚本中,如下所示:

set keydata "PRIVATEKEY"
set key [::pki::pkcs::parse_key $keydata]
执行此操作后,我得到以下错误:

    Expected Integer (0x02), but got 30
    while executing
"::asn::asnGetBigInteger key ret(n)"
    (procedure "::pki::pkcs::parse_key" line 8)
    invoked from within
"::pki::pkcs::parse_key $keydata"
    ("uplevel" body line 45)
    invoked from within

我相信我做的每件事都是正确的。我不知道我做错了什么。

我发现问题在于谷歌给我的密钥是PEM格式的,而不是RSA格式的:“pki::pkcs::parse_key”需要。因此,我只是运行以下命令将我的PEM密钥转换为RSA格式,然后运行上面显示的代码,一切正常

openssl rsa -in domain.key -out domain-rsa.key