# guanzhi/GmSSL

支持国密SM2/SM3/SM4/SM9/SSL的密码工具箱

Repository: https://github.com/guanzhi/GmSSL
Canonical: https://ross.abutalabs.com/products/gmssl
Homepage: http://gmssl.org
Language: C
License: Apache-2.0
License Family: permissive
Topics: encryption, sm2, sm3, sm4, sm9, ssl, zuc, tls, crypto, pairing, post-quantum, tlcp
Last push: 2026-06-30T05:50:24+00:00

## Health v2 (maintenance only)
Score: 80/100 (v2, computed 2026-09-03T02:39:23.370411+00:00)
- activity 90, release rhythm 57, longevity 100
- inputs: {"age_days": 4294, "days_push": 64, "days_rel": 73, "gap_med": null, "n_releases_24m": 1}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 6147, forks 1824 (observed 2026-08-28T04:09:36.555826+00:00)

## What it is
GmSSL is an open-source cryptographic toolkit developed at Peking University implementing Chinese national commercial cryptography standards (SM2/SM3/SM4/SM9/ZUC), X.509 certificates, and SSL/TLS protocols including TLCP and TLS 1.3 with SM cipher suites. It is an OpenSSL-compatible C library with a command-line tool, multi-language bindings (Java, Go, PHP, Python, Rust), and support for Chinese cryptographic hardware via SKF/SDF interfaces.

## Use cases
- implement SM2/SM3/SM4/SM9 national cryptography algorithms in C applications
- build TLS/TLCP servers with Chinese SM cipher suites
- generate and sign SM2 X.509 certificates for a PKI/CA
- encrypt and decrypt files with SM4 from the command line
- integrate Chinese crypto hardware keys and PCIe cipher cards via SKF/SDF engines
- add SM cryptography to Java, Go, PHP, Python, or Rust applications
- embed lightweight national crypto algorithms in embedded MCU firmware
- comply with Chinese commercial cryptography compliance requirements

## When to choose
- you need Chinese national cryptography (SM) algorithm support with regulatory compliance
- you want an OpenSSL-compatible library that supports TLCP and TLS 1.3 SM cipher suites
- you need to integrate Chinese cryptographic hardware (USB keys, PCIe cipher cards)
- you need a lightweight crypto library for embedded or resource-constrained environments
- you need multi-language bindings for SM algorithms

## When to avoid
- you only need standard international algorithms like AES/RSA with no SM requirements
- you need a pure high-level language implementation without C dependencies
- your project requires FIPS-validated or internationally certified crypto modules
- you need broad algorithm coverage beyond SM and mainstream international ciphers

## Facets
- artifact type: library
- maturity: stable
- function: cryptography, security, cli, sdk
- domain: security, developer-tools, cross-platform, embedded-systems
- platform: windows, cross-platform, cli, embedded
- tags: chinese-national-cryptography, sm2, sm3, sm4, sm9, zuc, tlcp, gmssl, openssl-compatible, post-quantum, x509, pki, hardware-security-module, language-bindings, tls, linux, macos, android, ios

## Member repositories
- guanzhi/GmSSL (main) score 80

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:09:36.555826+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T17:47:32.517187+00:00, confidence not recorded.
  - readme: https://github.com/guanzhi/GmSSL (fetched 2026-08-28T04:09:36.555826+00:00, sha 2fcdbfacaab4)
  - homepage: http://gmssl.org (fetched 2026-08-29T08:44:29.681271+00:00, sha 62ba99ec5e22)
  - site_page: http://gmssl.org/docs/quickstart.html (fetched 2026-08-29T08:44:29.690830+00:00, sha e9df0c639982)
  - site_page: http://gmssl.org/docs/docindex.html (fetched 2026-08-29T08:44:29.692942+00:00, sha c688a78b58d7)
  - site_page: http://gmssl.org/docs/java-api.html (fetched 2026-08-29T08:44:29.696474+00:00, sha 3c1675bc5b20)
  - site_page: http://gmssl.org/docs/go-api.html (fetched 2026-08-29T08:44:29.698069+00:00, sha 14b57f2528e6)
  - site_page: http://gmssl.org/docs/php-api.html (fetched 2026-08-29T08:44:29.699701+00:00, sha 2c11813bc277)
  - site_page: http://gmssl.org/docs/browser.html (fetched 2026-08-29T08:44:29.701246+00:00, sha 09a09c74a137)
  - site_page: http://gmssl.org/docs/sdf-engine.html (fetched 2026-08-29T08:44:29.702727+00:00, sha 59787b2470d8)
  - site_page: http://gmssl.org/members.html (fetched 2026-08-29T08:44:29.694850+00:00, sha 3461a1055ad8)
- Data as of 2026-08-30T08:39:29.467469+00:00.
