Golang中如何查找dev.boringcrypto二进制文件使用的boringssl的CMVP证书

Golang中如何查找dev.boringcrypto二进制文件使用的boringssl的CMVP证书 我决定使用 https://go-boringcrypto.storage.googleapis.com/go1.14.15b4.linux-amd64.tar.gz

我想知道这个版本所包含的 BoringCrypto 模块具体适用哪个 NIST CMVP 证书编号?

通过在 NIST 上的快速搜索,我找到了这些证书:

a) 3753 - https://csrc.nist.gov/projects/cryptographic-module-validation-program/certificate/3753
b) 3678 - https://csrc.nist.gov/projects/cryptographic-module-validation-program/certificate/3678
c) 3318 - https://csrc.nist.gov/projects/cryptographic-module-validation-program/certificate/3318
d) 2964 - https://csrc.nist.gov/projects/cryptographic-module-validation-program/certificate/2964

有办法找到这个信息吗?如果我们以后决定升级并使用其他版本,这将很有帮助。


更多关于Golang中如何查找dev.boringcrypto二进制文件使用的boringssl的CMVP证书的实战教程也可以访问 https://www.itying.com/category-94-b0.html

1 回复

更多关于Golang中如何查找dev.boringcrypto二进制文件使用的boringssl的CMVP证书的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html


要确定特定Go版本使用的BoringCrypto模块对应的CMVP证书,可以通过检查Go源码中的相关文件来查找。在Go的dev.boringcrypto分支中,通常会在src/crypto/internal/boring/boring.go或相关文件中包含证书信息。

对于go1.14.15b4版本,你可以通过以下步骤查找:

  1. 下载并解压源码

    wget https://go-boringcrypto.storage.googleapis.com/go1.14.15b4.linux-amd64.tar.gz
    tar -xzf go1.14.15b4.linux-amd64.tar.gz
    
  2. 检查boring.go文件

    grep -r "CMVP\|certificate" go/go1.14.15b4/src/crypto/internal/boring/
    

    或者直接查看文件内容:

    cat go/go1.14.15b4/src/crypto/internal/boring/boring.go
    
  3. 查找证书编号: 通常在源码中会有类似这样的注释或常量定义:

    // #define GO_BORINGSSL_CMVP_CERTIFICATE 3753
    

    或者:

    const cmvpCertificate = 3753
    

对于其他版本,同样的方法适用。例如,在较新版本中,信息可能位于src/crypto/internal/boring/boringssl.gosrc/crypto/internal/boring/build.go中。

如果源码中没有明确信息,可以检查构建时生成的版本信息:

go version -m $(which go)

或者查看运行时信息:

package main

import (
    "crypto/internal/boring"
    "fmt"
)

func main() {
    fmt.Printf("BoringCrypto enabled: %v\n", boring.Enabled())
}

注意:实际证书编号可能因版本而异。对于go1.14.15b4,根据历史记录,很可能对应证书3753,但务必通过上述方法验证。

回到顶部