You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Azure Key Vault中的RSA密钥创建并解密JWE?

Azure Key Vault RSA密钥实现JWE解密方案

核心结论

直接用Azure Key Vault的Key类型RSA密钥做本地JWE解密不可行——因为Key类型的RSA私钥无法下载到本地,无法满足本地JWE库对私钥的直接依赖需求。

可行解决方案

方案1:改用Azure Key Vault证书类型存储RSA密钥对

  • 将RSA密钥对以证书形式存入Azure Key Vault,证书类型支持下载包含私钥的证书文件(需在访问策略中配置GetCertificateWithPrivateKey权限)
  • 下载证书后,可将其导入为X509Certificate2对象,直接使用你参考的JWE本地库流程完成解密

方案2:基于Azure Key Vault CryptographyClient拆分JWE流程

JWE的核心逻辑是「用RSA公钥加密对称密钥(CEK),再用CEK加密明文」,可以拆分步骤借助Azure Key Vault完成:

  • 生成随机对称密钥(CEK,如AES-256-GCM)
  • 调用CryptographyClient.Encrypt方法(使用RSA-OAEP算法)加密CEK
  • 用CEK加密明文得到密文,生成JWE所需的认证标签
  • 按照JWE标准格式拼接保护头、加密后的CEK、密文、认证标签等部分,生成完整JWE串
  • 解密时反向操作:解析JWE得到加密后的CEK和密文,调用CryptographyClient.Decrypt还原CEK,再用CEK解密密文

补充说明

Azure Key Vault的Key类型资源仅允许通过服务端API使用密钥(如加解密、签名验签),不支持下载私钥;只有证书类型资源允许下载包含公私钥的完整证书文件。

内容的提问来源于stack exchange,提问作者Abe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 01:47:13