mittinan / php-crc
计算输入数据的CRC校验和
1.0.0
2017-09-02 08:59 UTC
This package is auto-updated.
Last update: 2024-09-19 20:53:49 UTC
README
这是一个正在进行中的项目。我在这个领域并不是专家。因此,我在寻找和验证关于常见CRC算法的信息时遇到了困难。我特别寻找可靠的测试向量。
实现的算法
- CRC1
- CRC16, CRC16-CCITT, CRC16-DNP, CRC16-Modbus, CRC16-QT, CRC16-USB, CRC16-XModem, CRC16-ZModem
使用示例
<?php // Autoloading via Composer require __DIR__ . '/vendor/autoload.php'; $crc16ccitt = new mermshaus\CRC\CRC16CCITT(); $crc16ccitt->update('Hello'); $crc16ccitt->update(' World!'); $checksum = $crc16ccitt->finish(); var_dump(bin2hex($checksum)); // string(4) "882a"
测试
$ phpunit
致谢
- 这个库主要是基于Hal Brodigan为Ruby编写的Digest CRC的移植。
链接
- Digest CRC. 这个库是基于的Ruby库。
- pycrc. 一个用于生成C代码和对应查找表的工具,用于多种CRC算法。由Digest CRC使用。
- CRC计算. 一个在线计算器,用于生成任意多项式和输入的校验和。由pycrc推荐。
- 在线CRC计算和免费库. 一些CRC算法的另一个在线计算器。
- 参数化CRC算法目录. 关于许多不同CRC算法的信息。