vsn / ssf
PHP 5.6 的 VSN 安全签名格式
Requires
- php: >=5.6.0
This package is auto-updated.
Last update: 2024-09-29 05:50:11 UTC
README
版权所有 © Tyler R. Drury 28-04-2022,版权所有
自豪地 加拿大,在 安大略省 制作
vsn\ssf-cli.phar 是一个 PHP 5.6 归档,其中包含 PHP 资源类型和全局函数的面向对象 API,例如
- 编码 SSF 32 和 64 字节签名
- 解码 SSF 32 和 64 字节签名
- 验证 SSF 32 和 64 字节签名
许可证
ssf-cli.phar 以 Apache 2.0 许可证发布,这是所有 VSN 产品的典型许可证。
有关详细信息,请参阅 LICENSE 文件。
安装
使用 composer
官方 PHP CLI 软件包可通过 Composer 在此处获得 这里
或在控制台运行以下命令(假设本地已安装 PHP 和 Composer)
>composer require vsn/ssf
或在您的项目 composer.json require 部分添加 vsn/ssf
然后运行
>composer update
使用 github
在浏览器中访问此 URL 以直接克隆仓库
https://github.com/vigilance91/ssf-cli-php56.git
或使用 GithubCLI 安装
>gh repo clone vigilance91/ssf-cli-php56
或者简单下载
- 从官方网站下载 vsn\ssf-cli-php56™ PHAR
- 通过官方 FTPS 服务器下载最新稳定版本
- 从 IPFS 下载官方压缩包 (.gz)
使用方法
安装后,PHAR 可以在任何机器上的任何位置执行
>cd C:/some/directory
>%php5% C:/phars/ssf-cli/run.php --d=3 --v --A
或者,如果归档安装在主项目的子目录中
>cd C:/some/directory
>%php5% build/run.php --d=3 --v --A
或者,如果 PHP 解释器和包含所有下载的 PHAR 的本地目录已添加到默认系统 PATH 变量,则可以省略对 PHP 解释器的初始调用,如下所示
>php %PHAR_DIR%/ssf-cli/run.php --d=3 --v --A
- DEBUG 安装仅适用于最新开发构建(alpha),因此,所有可分发 PHAR 都不包含任何调试功能,启用静默模式会隐藏标题、页脚和菜单显示(如果提供了 --A)
- 所有 DEBUG 安装都依赖于 chrono 模块,以进行底层、高精度的代码执行分析
- 请注意,如果调试在服务器上执行的脚本,则使用 xdebug(用于实时服务器调试)需要 PHP 7.1+ 以及手动编译的 PHP 解释器,并安装了 xdebug Zend 扩展和兼容的 IDE(带有适当的扩展)
请确保已安装所有其他所需/所需的模块。
将未签名的打包 SSF32 输出到控制台,以十六进制形式输出
>php build/run.php --M=encode --F=str
--source="hello world"
--hex
将未签名的打包 SSF32 编码为 base64,输出到控制台
>php build/run.php --M=encode --F=str
--source="hello world"
--base64
将签名的打包 SSF32 编码为十六进制,输出到控制台
>php build/run.php --M=encode --F=str
--source="hello world"
--privateKey=pathToPrivateKey.key
--password=yourPasswordHere
--hex
将 SSF 编码字符串写入文件
>php build/run.php --M=encode --F=stf
--source="hello world"
--O="_output/tmpPackedUnsinged.ssf32"
--hex --v --d=3
可选地,除了使用 -F stf、--O、--v 和 --d 选项外,还可以省略这些选项,并使用 shell 的管道运算符将输出写入(假设除了执行结束时输出的内容外,没有其他输出、错误、异常等),可以使用类似以下方式使用 -F str 选项
>php build/run.php --M=encode --F=str
--source="hello world"
--hex > _output/tmpPackedUnsinged.hex.ssf32
验证 --source 作为基于64编码的无符号SSF。
>php build/run.php -M verify --F=f
--source="hello world"
--ssf="I1NTRg0KGgqcgTTO8t+o6YGHEdqa/hDg2kjcp1jKhm66jUffJYR89Ec9fYM0P7fgOPQvfccOAYxScHP08mG8NdfcXDfIlUDBAAABQLlNJ7mTTT4IpS5S19p9q/rEhO/jelOA7pCI96zi783pSzJ0jfVOQaCUZUsMyoj3dgqKzOKwWPUatmlWE/W4N2W3w6rTJQPQTISFOECbnzUuYaWZVeVOu3g6dEdksH5JL3eX97R/uaC3lW/FFykYHY01oxf6hB/qXE1F3c6irjOiaQITZ+D6S0v7qgyvAxFdtmgRCLSVAMgI74rXrpoWAT7QnM6MSk740c/fG23iDvXKK5I7aqfVl1iLUBo4Jd8B+rhTSeOiHYdZZNbiwfdQ22ZyHu+JbmNtpRMQ7TesjOZW+SPMI009rK1KPOFW3Uqp4KJMlszQjn3tkWRlZhjnIvhpmzGIP2/JMi8weaSEd5yTIkRAIVUTCnJp1yboZSUW85dlVmXIfhMYm4wJyF7rDSHSobaG5agPMFOQETf0UUt4"
--base64
注意:如果选项参数不包含空格,则可以省略引号。如果参数是文件路径或URL,建议如果值包含空格或其他需要转义的字符,则使用urlencode对值进行编码,同时省略引号。
>php build/run.php -M verify --F=f
--v --d=3 --base64
--privateKey="C:/path/to/rsaPrivateKey.key"
--password="replaceWithYourPrivteKeyPassword"
--source="_output/helloWorld.txt"
--ssf="I1NTRg0KGgqcgTTO8t+o6YGHEdqa/hDg2kjcp1jKhm66jUffJYR89Ec9fYM0P7fgOPQvfccOAYxScHP08mG8NdfcXDfIlUDBAAABQLlNJ7mTTT4IpS5S19p9q/rEhO/jelOA7pCI96zi783pSzJ0jfVOQaCUZUsMyoj3dgqKzOKwWPUatmlWE/W4N2W3w6rTJQPQTISFOECbnzUuYaWZVeVOu3g6dEdksH5JL3eX97R/uaC3lW/FFykYHY01oxf6hB/qXE1F3c6irjOiaQITZ+D6S0v7qgyvAxFdtmgRCLSVAMgI74rXrpoWAT7QnM6MSk740c/fG23iDvXKK5I7aqfVl1iLUBo4Jd8B+rhTSeOiHYdZZNbiwfdQ22ZyHu+JbmNtpRMQ7TesjOZW+SPMI009rK1KPOFW3Uqp4KJMlszQjn3tkWRlZhjnIvhpmzGIP2/JMi8weaSEd5yTIkRAIVUTCnJp1yboZSUW85dlVmXIfhMYm4wJyF7rDSHSobaG5agPMFOQETf0UUt4"
注意:字符串参数周围的引号是可选的,除非值包含空格或其他转义字符。
>php build/run.php -M verify --F=str
--v --d=3 --base64
--privateKey=C%3A%2Fpath%2Fto%2FrsaPrivateKey.key
--password=replaceWithYourPrivteKeyPassword
--source=.%2F_output%2FhelloWorld.txt
--ssf=I1NTRg0KGgpskEqXGkFC0z9JaYtHC8MEOzfdU7tJvJMCSbkRuprJ4Uc9fYM0P7fgOPQvfccOAYxScHP08mG8NdfcXDfIlUDBAAAAILlNJ7mTTT4IpS5S19p9q/rEhO/jelOA7pCI96zi783p
链接
为开发使用,官方、最新且稳定的VS CLI PHAR库版本托管在此
-
PHAR未压缩版本 0.1.1 (SSF32: )
-
PHAR压缩版本 0.1.1 (SSF32: )
-
GZ压缩版本 0.1.1 (SSF32: )
-
BZ压缩版本 0.1.1 (SSF32: )
-
ZIP压缩版本 0.1.1 (SSF32: )