글수 39
첨으로 소스 자료 올려봅니다.
CRC32 입니다.
문자열을 32비트 Long 으로 변환해줍니다.
제가 자료를 찾아보니... 파일을 읽어서 crc32값으로 만드는 것이 가장 많이 이용되고 있었습니다.
1.A라는 파일이 있습니다. 안에 있는 내용을 읽어서 crc32값을 만듭니다.
2.crc32값을 저장해놓습니다.
3.A라는 파일에 대해서 주기적으로 crc32값을 알아내어서 기존에 저장된 crc32값과 비교를 합니다.
4.crc32값이 틀리면 파일이 수정된것으로 판단합니다.
ㅎㅎ 사용되는 용도가 재미있습니다.. tar나 zip 파일 압축프로그램의 경우
압축후에 crc32값을 압축파일의 헤더에 저장해놓는다고 하네요...
압축파일이 깨졌는지 검증하기 위해서 이라나 뭐라나...
2007.11.19 22:18:27 (*.1.1.1)
[싸이오블레이드] 가끔씩 다운로드 받은 ZIP파일을 열 때에 CRC 오류가 나는 이유가 그것 때문이라죠... Cyclic Redundancy Check의 약자로군요 ^^ http://en.wikipedia.org/wiki/Cyclic_redundancy_check <-- 참고 임의의 비트들을 (중요한) 추출해서 해쉬펑션을 이용해서 체크섬을 만들어 나중에 확인하는 방식이라네요
2007.11.19 22:18:27 (*.1.1.1)
[늘 처음처럼] MD5도 많이 사용되지 않나요? 영화 자막, mp3의 싱크가사(곰오디오, 알송 등) 들도 MD5값을 이용해서 동일한 파일인지 검색하는 것으로 알고 있습니다.
2007.11.19 22:18:27 (*.1.1.1)
[유흥부장] 보편화된 해쉬함수가 많이 있죠 대표적으로 md5. 주로 데이터 첵섬이나 암호화 알고리즘에 이용되고 있는 듯. 다만 md5의 경우 결과값이 16바이트, crc32의 경우 4바이트. 장단점이 있으니 알아서 사용하면 좋겠죠
2007.11.19 22:18:27 (*.1.1.1)
[형석] 키워드 해슁 알고리즘 구현하고 있는데... C가 속도 하나는 정말 빠르네요... 6천만건의 키워드에 대해서 crc32 값 구하고... 분산정도를 계산하는데 15초정도 걸리네요...



