본문 바로가기

파이썬 담아두기

파이썬 Crc32 계산

반응형

[ 파이썬 Crc32 계산하기 (ZIP Archive) ] 


파이썬 전 플랫폼 가능.


binascii 모듈crc32() 함수를 이용하므로, import binascii 해주자.


"ZIP 포맷의 Crc-32 계산을 위한 함수"로, 다른 경우에는 적합하지 않다.

( Crc-32 with magic number 'debb20e3'(little endian) ) 


1. 일반적 사용법

import binascii


crc =binascii.crc32(b"nightohl")

print('crc32 = {:#010x}'.format(crc))

==> crc32 = 0x4c2810b2


2. 2개 이상의 조각의 Crc-32 구하기

import binascii

crc = binascii.crc32(b"night")


crc = binascii.crc32(b"ohl", crc) & 0xffffffff

print('crc32 = {:#010x}'.format(crc))

==> crc32 = 0x4c2810b2


3. 변수에 넣어도 됨.

import binascii


what = b"nightohl"

crc = binascii.crc32(what)

print('crc32 = {:#010x}'.format(crc))

==> crc32 = 0x4c2810b2


4. 파일 값으로 Crc-32 계산

import binascii


with open("59_data_forCrc","rb+") as f:


b_data = f.read()

crc = binascii.crc32(b_data)


print('crc32 = {:#010x}'.format(crc))

==> crc32 = 0x4c2810b2







반응형