Ricky Hao

利用Python的crcmod模块快速计算各种crc

0x00

前几天打CTF的时候,发现需要计算CRC(当时还不知道哪种CRC),于是在网上搜了一圈发现Python的crcmod,内置了大多数常用的CRC算法,以及你可以利用这个模块自己编写自己的CRC。

0x01

  • 首先就是安装了,没什么好说的pip install crcmod
  • 这里先给出官方文档.

0x02

最简单的利用,产生一个CRC-8的生成器,并计算CRC-8.

import crcmod
c8=crcmod.predefined.mkCrcFun('CRC-8')
hex(c8("Test".encode()))
  • 我们使用crcmod内置的预定义设置创建一个CRC-8的生成器。(更多内置定义看官方文档)
  • 直接将需要计算CRC的数据传入该函数即可(需要encode),返回值是一个整数(利用hex可以将其转为16进制。

0x03

最后,还有自定义CRC算法的功能crcmod.mkCrcFun(...)具体实现看文档,这里就不多说了。

点赞

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据