Library for calculating CRC3/CRC4/CRC8/CRC16/CRC24/CRC32/CRC64/CRC82
Project description
libscrc is a library for calculating CRC3 CRC4 CRC5 CRC6 CRC7 CRC8 CRC16 CRC24 CRC32 CRC64 CRC82.
CRCx |
CRC8 |
CRC16 |
CRC24 |
CRC32 |
CRC64 |
---|---|---|---|---|---|
CRC3-GSM |
INTEL |
MODBUS |
BLE |
FSC |
GO-ISO |
CRC3-ROHC |
BCC |
IBM |
OPENPGP |
CRC32 |
ECMA182 |
CRC4-ITU |
LRC |
XMODEM |
LTE-A |
MPEG2 |
WE |
CRC5-ITU |
MAXIM8 |
CCITT |
LTE-B |
ADLER32 |
XZ64 |
CRC5-EPC |
ROHC |
KERMIT |
OS9 |
FLETCHER32 |
|
CRC5-USB |
ITU8 |
MCRF4XX |
FLEXRAY-A |
POSIX |
|
CRC6-ITU |
CRC8 |
SICK |
FLEXRAY-B |
BZIP2 |
|
CRC6-GSM |
SUM8 |
DNP |
INTERLAKEN |
JAMCRC |
|
CRC6-DARC |
FLETCHER8 |
X25 |
CRC24 |
AUTOSAR |
|
CRC7 |
SMBUS |
USB |
C / ISCSI |
||
CRC7-MMC |
AUTOSAR |
MAXIM16 |
D/BASE91-D |
||
CRC7-UMTS |
LTE |
DECT(R/X) |
Q / AIXM |
||
CRC7-ROHC |
SAE-J1850 |
TCP/UDP |
XFER |
||
I-CODE |
CDMA2000 |
CKSUM |
|||
CAN15 |
GSM-A |
FLETCHER16 |
XZ32 |
||
CAN17 |
NRSC-5 |
EPC16 |
AAL5 |
||
CAN21 |
WCDMA |
PROFIBUS |
ISO-HDLC |
||
BLUETOOTH |
BUYPASS |
PKZIP |
|||
CRC10-ATM |
DVB-S2 |
GENIBUS |
ADCCP |
||
CRC13-BBC |
EBU |
GSM16 |
V-42 |
||
MPT1327 |
DARC |
RIELLO |
STM32 |
||
CDMA2000 |
MIFARE |
OPENSAFETY |
|||
LIN1.3 |
EN13757 |
CRC30-CDMA |
|||
LIN2.x |
CMS |
PHILIPS |
DARC82 |
||
ID8 |
|||||
NMEA |
|||||
MODBUS-ASC |
Installation
Compile and install the library:
pip3 install libscrc
or:
python3 setup.py build python3 setup.py install
You will need the administrative privileges to execute the last command.
Cross compile and install the library:
# vim setup.cfg universal=1 plat-name=linux_armv7l export CROSS_COMPILE=arm-linux-gnueabihf- export CC='${CROSS_COMPILE}gcc -pthread' export LDSHARED='${CROSS_COMPILE}gcc -shared' export CFLAGS='-I/usr/include/python3.5m -I/usr/include/' python3 setup.py build # gcc version 6.2.1 20161016 (Linaro GCC 6.2-2016.11)
After installation you can run unit tests to make sure that the library works fine. Execute:
# python3 -m libscrc.test.modbus # python3 -m libscrc.test.crc8 # python3 -m libscrc.test.crcx # python3 -m libscrc.test.canx # python3 -m libscrc.test.crc16 # python3 -m libscrc.test.crc24 # python3 -m libscrc.test.crc32 # python3 -m libscrc.test.crc64
Usage
In Python 3:
import libscrc crc16 = libscrc.modbus(b'1234') # Calculate ASCII of modbus(rtu) crc16 = libscrc.modbus(b'\x01\x02') # Calculate HEX of modbus(rtu) crc16 = libscrc.modbus(bytearray( [ 0x01, 0x02 ] ))You can also calculate CRC gradually( v1.4+ ):
import libscrc crc16 = libscrc.xmodem(b'1234') crc16 = libscrc.xmodem(b'5678', crc16)
Example
CRCx:
crc3 = libscrc.gsm3(b'1234') crc3 = libscrc.rohc3(b'1234') crc4 = libscrc.itu4(b'1234') crc4 = libscrc.g_704(b'1234') crc4 = libscrc.interlaken4(b'1234') crc5 = libscrc.itu5(b'1234') crc5 = libscrc.epc(b'1234') crc5 = libscrc.usb5(b'1234') crc6 = libscrc.itu6(b'1234') crc6 = libscrc.darc6(b'1234') crc7 = libscrc.mmc(b'1234') crc7 = libscrc.crc7(b'1234') crc7 = libscrc.umts7(b'1234') crc7 = libscrc.rohc7(b'1234') crc10 = libscrc.atm10(b'1234') crc10 = libscrc.gsm10(b'1234') crc10 = libscrc.crc10_cdma2000(b'1234') crc11 = libscrc.umts11(b'1234') crc11 = libscrc.flexray11(b'1234') crc12 = libscrc.umts12(b'1234') crc12 = libscrc.crc12_3gpp(b'1234') crc12 = libscrc.dect12(b'1234') crc12 = libscrc.crc12(b'1234') crc12 = libscrc.gsm12(b'1234') crc12 = libscrc.crc12_cdma2000(b'1234') crc13 = libscrc.bbc13(b'1234') crc14 = libscrc.darc14(b'1234') crc15 = libscrc.mpt1327(b'1234') crc15 = libscrc.can15(b'1234') crc17 = libscrc.can17(b'1234') crc21 = libscrc.can21(b'1234') crc30 = libscrc.cdma(b'1234') crc31 = libscrc.philips(b'1234') crc40 = libscrc.gsm40(b'1234') crc82 = libscrc.darc82(b'1234')
CRC8:
crc8 = libscrc.intel(b'1234') crc8 = libscrc.bcc(b'1234') crc8 = libscrc.lrc(b'1234') crc8 = libscrc.maxim8(b'1234') crc8 = libscrc.rohc(b'1234') crc8 = libscrc.itu8(b'1234') crc8 = libscrc.crc8(b'1234') crc8 = libscrc.smbus(b'1234') crc8 = libscrc.autosar8(b'1234') crc8 = libscrc.lte8(b'1234') crc8 = libscrc.sae_j1850(b'1234') crc8 = libscrc.icode8(b'1234') crc8 = libscrc.gsm8_a(b'1234') crc8 = libscrc.nrsc_5(b'1234') crc8 = libscrc.wcdma8(b'1234') crc8 = libscrc.bluetooth(b'1234') crc8 = libscrc.dvb_s2(b'1234') crc8 = libscrc.ebu8(b'1234') crc8 = libscrc.darc8(b'1234') crc8 = libscrc.opensafety8(b'1234') crc8 = libscrc.i432_1(b'1234') crc8 = libscrc.mifare_mad(b'1234') crc8 = libscrc.tech_3250(b'1234') crc8 = libscrc.aes8(b'1234') # LIN Protocol 1.3 (CLASSIC) # Frame ID : 0x15 DATA : 0x5B, 0x67 crc8 = libscrc.lin(bytes([0x15, 0x5B, 0x67])) # LIN Protocol 2.x (ENHANCED) # Frame ID : 0x15 # DATA : 0x5B, 0x67, 0x72, 0xAF, 0x5B crc8 = libscrc.lin2x(bytes([0x15, 0x5B, 0x67, 0x72, 0xAF, 0x5B])) crc8 = libscrc.id8(b'21020020210229117') # ID check code of China crc8 = libscrc.nmea(b'$PFEC,GPint,RMC06*') # National Marine Electronics Association crc8 = libscrc.modbus_asc(b'010300010001') # Modbus(ASCII) checksum. return value is bytes (b'FA')
CRC16:
crc16 = libscrc.ibm(b'1234') # poly=0xA001 (default Reversed) crc16 = libscrc.ibm(b'1234', 0x8005) # poly=0x8005 (Normal) crc16 = libscrc.modbus(b'1234') # Modbus(RTU) checksum crc16 = libscrc.xmodem(b'1234') crc16 = libscrc.zmodem(b'1234') crc16 = libscrc.ccitt(b'1234') crc16 = libscrc.ccitt_aug(b'1234') crc16 = libscrc.ccitt_true(b'1234') crc16 = libscrc.ccitt_false(b'1234') crc16 = libscrc.kermit(b'1234') crc16 = libscrc.mcrf4xx(b'1234') crc16 = libscrc.sick(b'1234') crc16 = libscrc.dnp(b'1234') crc16 = libscrc.x25(b'1234') crc16 = libscrc.usb16(b'1234') crc16 = libscrc.maxim16(b'1234') crc16 = libscrc.dect_r(b'1234') crc16 = libscrc.dect_x(b'1234') data = b'\x45\x00\x00\x3c\x00\x00\x00\x00\x40\x11\x00\x00\xc0\xa8\x2b\xc3\x08\x08\x08\x08\x11' crc16 = libscrc.tcp( data ) # 13933 crc16 = libscrc.udp( data ) # 13933 crc16 = libscrc.epc16(b'1234') # RFID EPC(CRC16-PC-EPC) crc16 = libscrc.profibus(b'1234') crc16 = libscrc.buypass(b'1234') crc16 = libscrc.genibus(b'1234') crc16 = libscrc.gsm16(b'1234') crc16 = libscrc.riello(b'1234') crc16 = libscrc.crc16_a(b'1234') crc16 = libscrc.cdma2000(b'1234') crc16 = libscrc.teledisk(b'1234') crc16 = libscrc.tms37157(b'1234') crc16 = libscrc.en13757(b'1234') crc16 = libscrc.t10_dif(b'1234') crc16 = libscrc.dds_110(b'1234') crc16 = libscrc.lj1200(b'1234') crc16 = libscrc.opensafety_a(b'1234') crc16 = libscrc.opensafety_b(b'1234') crc16 = libscrc.arc(b'1234') crc16 = libscrc.lha(b'1234') crc16 = libscrc.cms(b'1234') crc16 = libscrc.darc(b'1234') crc16 = libscrc.epc_c1g2(b'1234') crc16 = libscrc.icode16(b'1234') crc16 = libscrc.ibm_3740(b'1234') crc16 = libscrc.autosar16(b'1234') crc16 = libscrc.ibm_sdlc(b'1234') crc16 = libscrc.iso_hdlc16(b'1234') crc16 = libscrc.iec14443_3_b(b'1234') crc16 = libscrc.iec14443_3_a(b'1234') crc16 = libscrc.v41_lsb(b'1234') crc16 = libscrc.v41_msb(b'1234') crc16 = libscrc.spi_fujitsu(b'1234') crc16 = libscrc.umts(b'1234') crc16 = libscrc.verifone(b'1234') crc16 = libscrc.acorn(b'1234') crc16 = libscrc.lte16(b'1234') crc16 = libscrc.nrsc5(b'1234')
CRC24:
crc24 = libscrc.ble(b'1234') crc24 = libscrc.flexraya(b'1234') crc24 = libscrc.flexrayb(b'1234') crc24 = libscrc.openpgp(b'1234') crc24 = libscrc.lte_a(b'1234') crc24 = libscrc.lte_b(b'1234') crc24 = libscrc.os9(b'1234') crc24 = libscrc.interlaken(b'1234') crc24 = libscrc.crc24(b'1234')
CRC32:
crc32 = libscrc.fsc(b'1234') # Ethernet frame sequence (FSC) crc32 = libscrc.mpeg2(b'1234') # MPEG2 crc32 = libscrc.crc32(b'1234') # WinRAR, File crc32 = libscrc.posix(b'1234') crc32 = libscrc.bzip2(b'1234') crc32 = libscrc.jamcrc(b'1234') crc32 = libscrc.autosar(b'1234') crc32 = libscrc.crc32_c(b'1234') crc32 = libscrc.crc32_d(b'1234') crc32 = libscrc.crc32_q(b'1234') crc32 = libscrc.xfer(b'1234') crc32 = libscrc.aixm(b'1234') crc32 = libscrc.base91_d(b'1234') crc32 = libscrc.cksum(b'1234') crc32 = libscrc.base91_c(b'1234') crc32 = libscrc.iscsi(b'1234') crc32 = libscrc.iso_hdlc(b'1234') crc32 = libscrc.xz32(b'1234') crc32 = libscrc.pkzip(b'1234') crc32 = libscrc.adccp(b'1234') crc32 = libscrc.v_42(b'1234') crc32 = libscrc.aal5(b'1234') crc32 = libscrc.stm32(b'1234') # STM32 hardware calculate CRC32
CRC64:
crc64 = libscrc.iso(b'1234') crc64 = libscrc.ecma182(b'1234') crc64 = libscrc.we(b'1234') crc64 = libscrc.xz64(b'1234')
CRC82:
crc82 = libscrc.darc82(b'123456789')
NOTICE
Revert gradually calculating function v1.4+ (2020-08-04)
V1.8(2022-03-04)
New add modbus (ASCII) LRC checksum.
CRC8 -> libscrc.modbus_asc()
V1.7(2021-06-07)
New add CRC8 -> libscrc.id8() and libscrc.nmea()
Update gradually calculate functions ( CRCx -> libscrc.umts12() libscrc.crc12_3gpp() )
Fixed issues #8
V1.6 (2021-03-16)
New add CRC32 -> libscrc.stm32()
New add CRC8 -> libscrc.lin() and libscrc.lin2x()
V1.4 (2020-08-04)
Revert gradually calculating function. ( Fixed Issues #4 )
Optimized code
Gradually calculate invalid functions( TODO )
CRCx -> libscrc.umts12() libscrc.crc12_3gpp()
CRC8 -> libscrc.intel() libscrc.lrc()
CRC16 -> libscrc.sick() libscrc.udp() libscrc.tcp() libscrc.fletcher16()
CRC32 -> libscrc.fletcher32()
V1.0 (2020-03-23)
New hacker8 hacker16 hacker32 hacker64
New FLETCHER8 FLETCHER16 FLETCHER32
V0.1.5 (2017-09-22)
New CRC4-ITU Poly = 0x03 Initial = 0x00 Xorout=0x00 Refin=True Refout=True
New CRC5-ITU Poly = 0x15 Initial = 0x00 Xorout=0x00 Refin=True Refout=True
New CRC5-EPC Poly = 0x09 Initial = 0x09 Xorout=0x00 Refin=False Refout=False
New CRC5-USB Poly = 0x05 Initial = 0x1F Xorout=0x1F Refin=True Refout=True
New CRC6-ITU Poly = 0x03 Initial = 0x00 Xorout=0x00 Refin=True Refout=True
New CRC7-MMC Poly = 0x09 Initial = 0x00 Xorout=0x00 Refin=False Refout=False
V0.1.4 (2017-09-21)
New CRC8-MAXIM8 Poly = 0x31 Initial = 0x00 Xorout=0x00 Refin=True Refout=True
New CRC8-ROHC Poly = 0x07 Initial = 0xFF Xorout=0x00 Refin=True Refout=True
New CRC8-ITU Poly = 0x07 Initial = 0x00 Xorout=0x55 Refin=False Refout=False
New CRC8-CRC8 Poly = 0x07 Initial = 0x00 Xorout=0x00 Refin=False Refout=False
V0.1.3 (2017-09-19)
New CRC16-X25
New CRC16-USB
New CRC16-MAXIM16
New CRC16-CCITT_FALSE
New CRC16-DECT
- Bugfixes
Calculate CRC16-IBM of poly = 0x8005 is ERROR.
V0.1.2 (2017-08-22)
- Platform Support
Win32
Linux_x86_64
MacOSX_10_6_intel
ARMv7 (Toradex Ixora iMX6 Linux-4.1.41)
- Bugfixes
Coding C99 standard.
Python/C API parsing arguments type error in linux.
V0.1.1 (2017-08-20)
New CRC16-DNP and CRC16-SICK
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
Hashes for libscrc-1.8-cp39-cp39-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d5521219b2419a960fe82fcd4694334202bbb85ca0b8bc9ae3518b7685177df7 |
|
MD5 | 2f5eafcdaf51f710a5ed5fd1272fd05a |
|
BLAKE2b-256 | dc3e6309712cdc6b65a491629637448b4d6e915dc959d37ca8da7059e144005b |
Hashes for libscrc-1.8-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bcee1001b05a1abce773cb88d25f5d0720f919de19ea2e8b125cf31aec9e67c4 |
|
MD5 | 5d0796aa4ba17c9ef2f7b9ea0af21c9f |
|
BLAKE2b-256 | cc6493598b0b61481b9fdb958ce6551f3a26858543a2ac205e80d2f549fb54bc |
Hashes for libscrc-1.8-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ed9d27c2f0922b254990290ea0bcb21bb006a0fd6c44b8a3a74ce6e028d22e25 |
|
MD5 | d175df8450c52dc8484d3f9de4fe4dd2 |
|
BLAKE2b-256 | 990f1ead2069308368ec35e7abe0257cce816a00d1ebaf243e9d57547fefc5a9 |
Hashes for libscrc-1.8-cp38-cp38-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 50da34efbc44d33f51b5d5397ab83a998288703d39d85c0e2e910da19a986a2e |
|
MD5 | a0080362a9e692c9bc65e5c1e87422c3 |
|
BLAKE2b-256 | be7f431a6b00178f0cc83f37e1be5e101f0417fd4bf1972d7e9442c8d2e74148 |
Hashes for libscrc-1.8-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 853eccdfd8ab330605b1c11e64a0099ede9dcd8317a2b16b88e85caab3bc4c8d |
|
MD5 | 8d6503ed2cbcb6a8fa3c0d210b8646c2 |
|
BLAKE2b-256 | b6f8046372d3345e876baf19ca7f1c87528e65303b8075fe2268c4c76aa964d0 |
Hashes for libscrc-1.8-cp37-cp37m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 04ed54f6d9f2ba87bca3ee8938a71d700ea551c1608b17f038dd57ae3fbd7abb |
|
MD5 | e3211e0b4efdbd2f780ed7f73de2f007 |
|
BLAKE2b-256 | c4e4c226a9b23c0b3d0e930312cd7a9b4678de5347805a3f6f5ec32bdb0458aa |
Hashes for libscrc-1.8-cp37-cp37m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fd5c49f04bae07370394a335c5a48762d80224b6b084b31917fa5e386ea8bb54 |
|
MD5 | 5054f081db3dce1768f43e01e2170802 |
|
BLAKE2b-256 | 3c412b74b0d423571ae320ef46192634b7976793537216816045a6ff9944fa78 |
Hashes for libscrc-1.8-cp36-cp36m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 834ab29419f66428ac214af50d1ca95e0f5679eac4d4ed768421a0091a23d241 |
|
MD5 | ee18047c9433768333d04c1014a67ead |
|
BLAKE2b-256 | 928bcd896dda1cca0cdca7b0c3b2126b6be365e995967e01218a85a9e3545604 |
Hashes for libscrc-1.8-cp36-cp36m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 64ac50ae548592cfdb99683e58b1ff70727db7538f6708fdd6f637f875fb948c |
|
MD5 | 8eb4c062828286cf6b4c918dc7eb090f |
|
BLAKE2b-256 | 5f93efd405092e5474c465f97451a9e5248d79d082eb105ed5f72559de70ac92 |
Hashes for libscrc-1.8-cp36-cp36m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a36348242337d8abbf1510fed3999acc3164d5952c0383fcfffb38577e793f1f |
|
MD5 | 3a6982636981b5407e665816539be54f |
|
BLAKE2b-256 | 1cc3923218a1dc337786023464799e96f7bb597c3162e5fe00d80e346ca2033f |
Hashes for libscrc-1.8-cp35-cp35m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b4f9a4740485a68fcc7c2fac44aadba7b222bfe93b1509f4ad2391eadedc4624 |
|
MD5 | 7e68adec0cd7bcc584983837a33c6777 |
|
BLAKE2b-256 | 8d274c9f9c52675aabc40bd2292f04f432f3e2fdfaff81cd4b4316c480ba4bb4 |
Hashes for libscrc-1.8-cp35-cp35m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 36e29ee2d04aa2b90cdc0077923003b813deb9547bf8d1953e48d40f1bc13e37 |
|
MD5 | 1f67bf6fafa80d85e76aeab7e30eb0cc |
|
BLAKE2b-256 | 3ff6bc3e72753a271dca61062f6e54d4d54d568879a8276a02bce44be422ab84 |
Hashes for libscrc-1.8-cp35-cp35m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3c09c62079ef91bafebbb24989bc8076d56fcd5625a294b7fe8e4552a5aa96a6 |
|
MD5 | 0b0206bcbf76c1f382f3dacb4bf94163 |
|
BLAKE2b-256 | de5fc59ca16c3f46910d7c033416fbb2476ae5ae6609ad96afc5537cb6f82cfe |
Hashes for libscrc-1.8-cp34-cp34m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 34b0cc20ea21b5879eac5739bd97892acaff1fc5271d7f842dcc55b1514b3a61 |
|
MD5 | 9e93d9f96d6c2b7e0824eec9fda4db20 |
|
BLAKE2b-256 | 9a9b30718bb4163cc4705d144ae539c8962f2d10d421afe8260a4e41f6c5ed32 |
Hashes for libscrc-1.8-cp34-cp34m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f4a621620ffc71a06b05e4fdba67dc48498afef1f2ce48ea14282de6a0a99720 |
|
MD5 | 18df7cb5b7b62def6d7d7340afb63cf4 |
|
BLAKE2b-256 | 0d64fd27033546ef916aa9905aff37b720a6655a224328aca83d53ee51452f8f |
Hashes for libscrc-1.8-cp34-cp34m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6299a885ab7a0215017efba0a4e3cc0c4a8e94499997d7da035358dc6d1dffa3 |
|
MD5 | 2cb23b853efc9e96f1480085881d08b4 |
|
BLAKE2b-256 | 367da5587a914deaee20256b553a93324c465c80fab37d6358b6b8d6ef10b7c9 |
Hashes for libscrc-1.8-cp27-cp27mu-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bfb17a5e6cba11596466ea8f50b4bb4f5b382d0b292e7bf80b548d498d96402d |
|
MD5 | 90b07c040dfc492d6c8d57935289cd1e |
|
BLAKE2b-256 | 314a932167fee66fe4bf2804c9a2ad7f850c84b80180e994188879fffc3a6d1d |
Hashes for libscrc-1.8-cp27-cp27m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 23e4881bb2c2fc7fdf913624933ad8a094024297ead187d12e95b271b8f26a79 |
|
MD5 | e166c1d084e469861782e3daea238cf6 |
|
BLAKE2b-256 | 0001d6fb7eabf6edb103239788485813045c9cb1f80bc50d562690d1ebda3767 |
Hashes for libscrc-1.8-cp27-cp27m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 072207e006db4ddad33838922af7eff7daaa93769a265cd0a64affd61a0d64f3 |
|
MD5 | 5a3ae8bff69c0b90a0519394a5139675 |
|
BLAKE2b-256 | bd0b0997c04093dd624ad1884d18b527085ea495cf8528dca82e6bf4df3284ca |
Hashes for libscrc-1.8-cp27-cp27m-macosx_12_0_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 740a320d6ac0866c02aff432416737f0fae0a7914e90d2906c56340c62a911d6 |
|
MD5 | 7dc425cbab551c1670607f6ca275b254 |
|
BLAKE2b-256 | 7ee103dd4262979652ccc6a956b03880a8034a9ed007efe2a121d01998945961 |