tuupola / trytes
任意数据的Trytes编码和解码器
0.1.0
2017-12-10 16:29 UTC
Requires
- php: ^5.6 || ^7.0
Requires (Dev)
- overtrue/phplint: ^0.2.4
- paragonie/random_compat: ^2.0
- phpunit/phpunit: ^5.7
- squizlabs/php_codesniffer: ^3.0
This package is auto-updated.
Last update: 2024-09-10 04:46:49 UTC
README
此库实现了IOTA项目描述的Trytes编码。Trytes相当于字节,但是在三进制数制中。
安装
使用 composer 安装。
$ composer require tuupola/trytes
用法
$trytes = new Tuupola\Trytes; $encoded = $trytes->encode(random_bytes(128)); $decoded = $trytes->decode($encoded);
字符集
默认情况下,此库使用IOTA风格的字符集。还提供了七进位字符的快捷方式。如果需要,您可以使用27个唯一字符的任何自定义字符集。
use Tuupola\Trytes; print Trytes::IOTA; /* 9ABCDEFGHIJKLMNOPQRSTUVWXYZ */ print Trytes::HEPTAVINTIMAL; /* 0123456789ABCDEFGHKMNPRTVXZ */ $default = new Trytes(["characters" => Trytes::IOTA]); $heptavintimal = new Trytes(["characters" => Trytes::HEPTAVINTIMAL]); print $default->encode("Hello world!"); /* RBTC9D9DCDEAKDCDFD9DSCFA */ print $heptavintimal->encode("Hello world!"); /* K2N304043451B4346404M361 */
静态代理
如果您更喜欢使用静态语法,请使用提供的静态代理。
use Tuupola\TrytesProxy as Trytes; $encoded = Trytes::encode(random_bytes(128)); $decoded = Trytes::decode($encoded);
测试
您可以选择手动运行测试或在每个代码更改时自动运行测试。自动测试需要entr工作。
$ make test
$ brew install entr $ make watch
贡献
请参阅CONTRIBUTING以获取详细信息。
安全
如果您发现任何安全相关的问题,请通过电子邮件tuupola@appelsiini.net联系,而不是使用问题跟踪器。
许可证
MIT许可证(MIT)。有关更多信息,请参阅许可证文件。