什么是 pfxblob

What is a pfxblob

前几天我问了 个问题。

部分解决方案需要 base64binary of the pfxblob 放入 Azure 模板,通过 Powershell 传递到 Azure。

我最终发现我可以通过 运行 一个不同的 Azure 命令获得一个 pfxblob,其中的 source 包含一大块 c# 来完成我需要它做的事情。

即 -

Convert.ToBase64String(cert.Export(X509ContentType.Pfx, Password));) 

我基本上能够把它分开并模糊地了解它在做什么,至少足以解决我当时的紧迫问题。但我从来没有弄清楚 pfxblob 到底是什么。在 运行 上找到那个解决方案,我找不到任何描述它是什么的东西。

所以我认为你们中的一个必须...

PFX files 包含加密的私钥、证书和其他潜在的秘密信息。

通常,PFX BLOB 是 PFX 存储的二进制表示。更多 precisely, a PFX BLOB is a CRYPT_DATA_BLOB structure. The CRYPT_DATA_BLOB is specified in the typedef_CRYPTOAPI_BLOB

_CRYPTOAPI_BLOB 包含任意字节数组。它的结构由 DWORD cbData 组成,这是一个包含数据计数(以字节为单位)的 DWORD 变量;和“BYTE *pbData”,其中包含指向数据缓冲区的指针。

因此,PFX BLOB 包含 PFX 存储的二进制内容,加上存储的长度。

值得阅读此页面以获取更多信息:PKCS #12 File Types: Portable Protected Keys in .NET

使用 PFX BLOB 的主要 API 如下: