cuifox/gm-ssl-helper 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

cuifox/gm-ssl-helper

最新稳定版本:1.0

Composer 安装命令:

composer require cuifox/gm-ssl-helper

包简介

README 文档

README

GM-SSL 是一个 PHP 扩展,实现了中华人民共和国国家密码管理局规定的国产密码算法,包括 SM2、SM3、SM4、SM9、ZUC 等标准算法。为 PHP 应用提供安全、高效的国产密码学支持。

https://github.com/GmSSL/GmSSL-PHP

功能特性

哈希算法

  • SM3:国产密码哈希算法,用于数据完整性校验和数字签名

对称加密算法

  • SM4 分组密码:支持多种工作模式
    • ECB 模式加密/解密
    • CBC 模式加密/解密
    • CTR 模式加密/解密
    • GCM 模式认证加密/解密
  • ZUC 流密码:用于移动通信的祖冲之流密码算法

数字签名

  • SM2:基于椭圆曲线公钥密码算法的数字签名
    • 密钥生成
    • 签名与验签
    • 公钥加密与私钥解密
    • Z值计算
  • SM9:基于标识的密码算法
    • 签名系统(主密钥生成、密钥提取、签名验签)
    • 加密系统(主密钥生成、密钥提取、加密解密)

证书处理

  • PEM 格式证书解析
  • 证书信息提取(序列号、颁发者、有效期、主体等)
  • 基于 CA 证书的签名验证

安装

需要先安装 GM-SSL 底层库,然后安装 PHP 扩展:

https://github.com/GmSSL/GmSSL-PHP

或在 PHP 项目中使用 Composer:

{
    "require": {
        "cuifox/gm-ssl-helper": "^1.0"
    }
}

使用示例

SM3 哈希

$msg = "Hello World";
$hash = gmssl_sm3($msg);

SM4 加解密

$key = gmssl_rand_bytes(16);
$iv = gmssl_rand_bytes(16);
$data = "需要加密的数据";

// CBC 模式加密
$encrypted = gmssl_sm4_cbc_encrypt($key, $iv, $data);

// CBC 模式解密
$decrypted = gmssl_sm4_cbc_decrypt($key, $iv, $encrypted);

SM2 签名验签

// 生成密钥对
$keypair = gmssl_sm2_key_generate();

// 签名
$id = "user@example.com";
$msg = "待签名消息";
$signature = gmssl_sm2_sign($keypair, $id, $msg);

// 验签
$valid = gmssl_sm2_verify($pubkey, $id, $msg, $signature);

SM9 签名

// 生成主密钥
$master_key = gmssl_sm9_sign_master_key_generate();

// 提取用户签名密钥
$user_id = "user@example.com";
$sign_key = gmssl_sm9_sign_master_key_extract_key($master_key, $user_id);

// 签名和验签
$sig = gmssl_sm9_sign($sign_key, "消息内容");
$valid = gmssl_sm9_verify($master_key, $user_id, "消息内容", $sig);

证书操作

$cert = gmssl_cert_from_pem("/path/to/cert.pem");

// 获取证书信息
$serial = gmssl_cert_get_serial_number($cert);
$issuer = gmssl_cert_get_issuer($cert);
$subject = gmssl_cert_get_subject($cert);
$validity = gmssl_cert_get_validity($cert);

// 打印证书信息
gmssl_cert_print($cert, "证书详情");

系统要求

  • PHP >= 7.0
  • GM-SSL C 库

许可证

本项目遵循相关开源许可证协议。

相关资源

统计信息

  • 总下载量: 3
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 8
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2026-04-27

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固