GmSSL-Go 是GmSSL密码库 https://github.com/guanzhi/GmSSL 的Go语言封装,以cgo方式实现,通过Go类和函数提供了如下密码接口:
目前GmSSL-Go功能可以覆盖除SSL/TLS/TLCP之外的国密算法主要应用开发场景。
首先创建一个新项目,并初始化模块
$ mkdir hello
$ cd hello
创建源文件hello.go
package main
import (
"fmt"
"gmssl"
)
func main() {
fmt.Println(gmssl.GetGmSSLLibraryVersion())
}
$ go mod init example.com/hello
go: creating new go.mod: module example.com/hello
在项目模块中安装GmSSL-Go
$ go get github.com/GmSSL/GmSSL-Go@latest
go: added github.com/GmSSL/GmSSL-Go v1.3.1
打开文件go.mod,内容如下
module example.com/hello
go 1.21.1
require github.com/GmSSL/GmSSL-Go v1.3.1 // indirect
在文件go.mod最后面添加一行
replace gmssl => github.com/GmSSL/GmSSL-Go v1.3.1
更新模块信息
$ go mod tidy
go: found gmssl in gmssl v0.0.0-00010101000000-000000000000
编译执行
$ go build
$ go run .
GmSSL 3.1.1 Dev
$ claude mcp add GmSSL-Go \
-- python -m otcore.mcp_server <graph>