【问题标题】:Invalid verify algorithm sha256 error无效验证算法 sha256 错误
【发布时间】:2015-08-04 05:16:07
【问题描述】:

您好,我已经配置了 node.js 应用程序,大部分情况下它工作正常。 但在登录后的最后一步,我收到此错误:无效令牌:无法验证 ID 令牌:无效验证算法 sha256 我可以看到 gtoken 正在设置。 但是我已经没有关于从哪里设置算法的想法了。我没有在任何地方配置它,那么我如何传递一个无效的算法?

有什么建议吗?

【问题讨论】:

    标签: google-identity-toolkit


    【解决方案1】:

    您是否将下载的.p12密钥转换为.pem文件,并在构建GitkitClient时传递.pem文件?

    【讨论】:

    • 是的,我已经按照谷歌建议的developers.google.com/identity/toolkit/web/quickstart/nodejs 使用 openssl 完成了转换。我使用 node.js 构建了它。
    • gtoken采用RSA-SHA256算法签名,nodejs应用依赖openssl验证签名。你的机器上安装了 openssl 吗?
    • 嗯,这很有趣。我实际上是使用github.com/apigee/trireme 来运行节点代码。它不使用 openSSL。您认为这可能是个问题吗?
    • 可能是的。我不熟悉 trireme,但根据 github README 文件中的 Crypto 部分,似乎需要“trireme-crypto”模块:“像 TLS 一样,某些功能(特别是签名/验证)仅在“trireme -crypto" 模块及其依赖在类路径中。如果它们不存在,那么这些方法将抛出异常。这主要是因为 trireme-crypto 模块使用 Bouncy Castle 来实现 PEM 文件读取和解密。可以如果不需要这些功能,请在没有 Bouncy Castle 的情况下运行 Trireme。”
    猜你喜欢
    • 2015-11-03
    相关资源
    最近更新 更多