电子发烧友App

硬声App

0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示
电子发烧友网>电子资料下载>电子资料>SM3-PHP国密标准SM3的原生PHP实现

SM3-PHP国密标准SM3的原生PHP实现

2022-05-07 | zip | 0.04 MB | 次下载 | 免费

资料介绍

授权协议 MPL
开发语言 PHP
操作系统 跨平台
软件类型 开源软件

软件简介

SM3-PHP是国密标准SM3的原生PHP实现。

特点

  1. 纯原生 PHP 代码,不额外依赖扩展项;
  2. OOP + Composer ,更优雅,安装更简单;
  3. 使用命名空间,防止变量名、方法名污染;
  4. 引入了 Composer 的 PSR-4 规范,进行类的自动加载;
  5. 使用 PSR-12 代码规范
  6. 代码注释完整, 可配合《 SM3密码杂凑算法 》食用, 方便进一步学习和研究本算法。

要求

  • 5.3 <= php < 7.2

7.2 之后版本理论通过,但因为 phpunit 的版本兼容性问题,没有单元测试支撑

1.x 版本之后只会作为低版本兼容,2.x 及之后版本会对 PHP 更高版本做适配,使用更多新特性

安装

本库优先支持 Composer 安装,但为了尊重使用习惯,也提供了直接下载压缩包的方式。 但不得不说,Composer 式的以组件、包为单位的项目管理方式更加现代化、方便和优雅。

一、源码解压(不推荐

  1. 下载压缩包

    提供了 .zip 和 .tar.gz 两种格式的压缩包, 压缩包已经过 Composer 包的优化

    下载地址:https://github.com/DongyunLee/SM3-PHP/releases/latest

  2. 解压到项目中的任意位置

    • Windows:

      使用 winrar/7zip/Bandizip 等工具解压

    • 类Unix:

      tar zxvf SM3-PHP.tar.gz
      # 或者
      unzip SM3-PHP.zip
    # 打包命令
    composer arch
    
    # 或 composer run-script arch

二、composer 安装(强烈推荐)

  1. 安装 composer

    详见 《如何安装 Composer

  2. 安装慢可更换中文镜像

    由于大量先前的镜像失效,所以目前(2019-11-25)推荐使用阿里云镜像

    其实配置中已经把镜像配置成了阿里云的镜像。 但有效范围毕竟只有这一个包。

    开发环境中还是建议进行下全局的配置。

    更换阿里云镜像方式详见拙笔 《向先行者致敬,迎接 Composer 的未来!

  3. composer require ch4o5/sm3-php

  4. composer install

  5. composer update

    下述 composer update 参数作为生产环境的优化,分析、调试和阅读代码无须使用

    参数简单说明:

    1. --prefer-dist:优先构建好的包,而不是源码
    2. --no-dev:不安装require-dev中定义的包,减小包的大小
    3. --no-plugins:不安装插件
    4. --with-dependencies:递归更新依赖的包
    5. --optimize-autoloader / -o:转换 PSR-0/4 autoload 到 classmap 可以获得更快的加载支持
    6. --classmap-authoritative推荐 使用后默认开启 -o,并对所有类加速

快速开始

在根目录中的 demo.php 中,进行了简单地调用示范:


/**
 * demo @ sm3-php
 *
 * Code BY ch4o5
 * 10月. 12th 2019
 * Powered by PhpStorm
 */

// 1. 引入项目中 Composer 的 autoload.php
require 'vendor/autoload.php';
// 2. 如果使用源码压缩包方式安装,则引入下面这句
// require '解压后的SM3-PHP目录/vendor/autoload.php';

// 直接调用提供的 sm3() 函数
$sm3 = sm3('abc');

// 使用它
echo $sm3;

你也可以在 examples/ 目录下找到更多的使用示例。

目录结构

  • examples/ 示例项目

  • src/ 源码目录,命名空间为SM3

  • vendor/ Composer自动加载相关

  • CHANGELOG.md 版本变更日志

  • composer.json Composer 配置文件

  • composer.lock Composer 锁文件,用于保证版本

  • demo.php 演示代码

  • LICENSE 开源许可证文件

  • README.md 本文件,项目说明

 

下载该资料的人也在下载 下载该资料的人还在阅读
更多 >

评论

查看更多

下载排行

本周

  1. 1储能电源市场分析
  2. 7.99 MB  |  8次下载  |  免费
  3. 2储能电源市场分析报告
  4. 2.61 MB   |  6次下载  |  免费
  5. 3磁环电感定制时应该注意什么
  6. 0.32 MB   |  2次下载  |  免费
  7. 4labview文档教程资料(一)
  8. 24.29 MB   |  2次下载  |  免费
  9. 5轻触三功能+常按 SOS 功能手筒LED驱动ICSD3302数据手册
  10. 0.60 MB   |  1次下载  |  2 积分
  11. 6英集芯IP5353 QFN32 规格书pdf
  12. 2.70 MB  |  1次下载  |  免费
  13. 7NCV78763R1DAGEVB子板数据手册
  14. 533.41 KB   |  次下载  |  免费
  15. 8500mA,高效 MicroSiP™ 降压转换器TPS8269xSIP数据表
  16. 918.92KB   |  次下载  |  免费

本月

  1. 1ES9038PRO解码芯片的电路原理图介绍
  2. 0.25 MB   |  35次下载  |  5 积分
  3. 2STM32国内外发展现状
  4. 1.15 MB   |  13次下载  |  免费
  5. 3传感芯片选型指南
  6. 3.60 MB   |  11次下载  |  免费
  7. 4ATmega8芯片中文手册
  8. 2.45 MB   |  8次下载  |  1 积分
  9. 5储能电源市场分析
  10. 7.99 MB  |  8次下载  |  免费
  11. 6TDK电容器产品指南
  12. 11.88 MB   |  7次下载  |  1 积分
  13. 72A多电池高效开关充电器AN_SY6912A中文资料规格书
  14. 1.43 MB   |  7次下载  |  免费
  15. 8储能电源市场分析报告
  16. 2.61 MB   |  6次下载  |  免费

总榜

  1. 1matlab软件下载入口
  2. 未知  |  935086次下载  |  免费
  3. 2开源硬件-PMP21529.1-4 开关降压/升压双向直流/直流转换器 PCB layout 设计
  4. 1.48MB  |  420050次下载  |  免费
  5. 3Altium DXP2002下载入口
  6. 未知  |  233068次下载  |  免费
  7. 4电路仿真软件multisim 10.0免费下载
  8. 340992  |  191317次下载  |  免费
  9. 5十天学会AVR单片机与C语言视频教程 下载
  10. 158M  |  183316次下载  |  免费
  11. 6labview8.5下载
  12. 未知  |  81567次下载  |  免费
  13. 7Keil工具MDK-Arm免费下载
  14. 0.02 MB  |  73788次下载  |  免费
  15. 8NI LabVIEW中实现3D视觉的工具和技术
  16. 未知  |  70088次下载  |  免费