Golang工具链集成Boringcrypto方案(20240407)

Golang工具链集成Boringcrypto方案(20240407) 团队,您好,

BoringCrypto 版本 20240407 已获得 RSA 和 ECDSA 186-5 认证。 (密码算法验证计划 | CSRC) 请问计划何时将其集成到 Go 工具链的哪个版本中?

谢谢, Nagarjun

1 回复

更多关于Golang工具链集成Boringcrypto方案(20240407)的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html


根据NIST的认证记录,BoringCrypto 20240407确实已获得FIPS 140-3认证(验证号37980)。目前Go官方工具链尚未集成该版本。

Go团队通常会在后续的稳定版本中更新BoringCrypto模块。你可以通过以下方式验证当前使用的BoringCrypto版本:

package main

import (
    "crypto/tls"
    "fmt"
    "runtime"
)

func main() {
    // 检查是否使用BoringCrypto
    fmt.Printf("Go version: %s\n", runtime.Version())
    
    // 创建TLS配置时会自动使用BoringCrypto(如果已编译启用)
    cfg := &tls.Config{
        MinVersion: tls.VersionTLS12,
    }
    _ = cfg
    
    // 实际版本信息需要通过编译时标签确认
    fmt.Println("BoringCrypto版本需查看go.env或编译配置")
}

要启用BoringCrypto,需要在编译时使用标签:

CGO_ENABLED=1 go build -tags=boringcrypto ./main.go

建议关注Go官方发布说明和安全公告,BoringCrypto更新通常会在Go 1.XX.X这样的补丁版本中集成。当前最新稳定版Go 1.22.2仍使用较早的BoringCrypto版本,预计2024年第二季度的Go 1.22.3或Go 1.23可能会包含此更新。

你可以通过以下命令检查现有工具链的加密模块信息:

go version -m $(which go) | grep -i crypto
回到顶部