2014-08-27 6 views
4

keccak 스폰지 함수를 개발 중이며 해시 결과에 대해 이상한 동작이 있습니다.몇 가지 프로그램이있는 Keccak/SHA-3에 다른 해시가 있습니까?

24 비트 (3 바이트)의 문자열 "abc"를 사용합니다. http://www.di-mgt.com.au/sha_testvectors.html에 SHA-3 테스트 벡터는 SHA3-512의 결과가 다음과 같은 것을 말한다 : 테스트 벡터 b751850b1a57168a에서

SHA3-512 또한 5693cd924b6b096e 08f621827444f70d 884f5d0240d2712e 10e116e9192af3c9 1a7ec57647e39340 57340b4cf408d5a5 6592f8274eec53f0

내가 사용 cryptopp 버전 5.62 그것은 나에게이 출력 제공 :

CryptoPP 18587dc2ea106b9a1563e32b331242을 1ca164c7f1f07bc922a9c83d77cea3a1e5d0c69910739025372dc14ac9642629379540c17e2a65b19d77aa511a9d00bb96

내가 Windows에서 HashTab 5.2.0.14를 사용하고 "ABC"같은 출력 파일에 대해 저를 제공합니다 거기에, 5.2.0.14 18587dc2ea106b9a1563e32b3312421ca164c7f1f07bc922a9c83d77cea3a1e5d0c69910739025372dc14ac9642629379540c17e2a65b19d77aa511a9d00bb96

그래서

HashTab 참조가 있지만 그 중 하나는 다른 것입니다. 웹 사이트에서는 입력 메시지가 FIPS-202 초안에 정의 된 2 비트 "10"으로 첨부되어 있다고 설명합니다. 그래서, CryptoPP와 HashTab은 아마도 또 다른 구현을 사용하지만, 어느 것을 사용할 수 있습니까 ??

내 프로그램 :

내 프로그램이 "ABC"를이 해시 값을 반환

지금 나는 내 프로그램과 파이썬의 keccak 사이트에서 "참조 코드"와 또 다른 구현이 20FF13D217D5789FA7FC9E0E9A2EE627363EC28171D0B6C52BBD2F240554DBC94289F4D61CB57DF72DF08AAC4366022D5DF23E703B8FDFF6306021DB4D5E6760

이것은 keccak 기준 코드 (http://keccak.noekeon.org/KeccakReferenceAndOptimized-3.2.zip)는 http://keccak.noekeon.org/files.html에서 같은 값을 계산합니다.

Keccak- 참조 3.Keccak 규모 2,040 비트의 2 메시지 [R = 1024, C = 576] 20FF13D217D5789FA7FC9E0E9A2EE627363EC28171D0B6C52BBD2F240554DBC94289F4D61CB57DF72DF08AAC4366022D5DF23E703B8FDFF6306021DB4D5E6760 (동일한 길이로 절단)

이 동일한 값 결과 https://github.com/mgoffin/keccak-python/blob/master/Keccak.py에서 파이썬 구현 :

압박 후

keccak - 파이썬 값 : 20FF13D217D5789FA7FC9E0E9A2EE627363EC28171D0B6C52BBD2F240554DBC94289F4D61CB57DF72DF08AAC4366022D5DF23E703B8FDFF6306021DB4D5E67601173D04BF5AEC3EBBCA87696355C5FB4D72D00D2CC4F843A0A3A0ED8924A16FC377 69A3DB7C3A84F31E92375A7D74A0136D80A647FBC5AF8D733B43873A3709F

그래서 내 질문 :

1)이 Keccak 및 SHA-3는 서로 다른 출력 FIPS 202로 만든 사양 NIST를 기반으로 한 것이 사실인가?

2) 왜 고유하지 않은 세 개의 다른 해시 값이 있습니까?

3) SHA3-512의 용량이 512 비트 용량과 1600-512 비트 레이트가되도록 용량이 변경 되었습니까? 이것은 SHA-3에 대한 프레젠테이션에서 읽은 또 다른 차이점이지만 FIPS-202 문서에서 찾지 못했습니다.

대단히 감사합니다!

감사

부락

답변

4

2) (CryptoPP에서 마지막 릴리스 2013년 2월 20일 내지 2014

, https://crypto.stackexchange.com/questions/15727/what-are-the-key-differences-between-the-draft-sha-3-standard-and-the-keccak-sub 언급은 202 년 4 월 7 일에 변경된 FIPS 추천 SHA3을 포함한 첫 번째 릴리스입니다. http://www.cryptopp.com/

이 때문에 CryptoPP가 액츄에이터와 다른 해시를 생성하는 이유가 설명됩니다 알 테스트 벡터. 나는 HashTab에도 똑같이 적용 할 것이라고 생각한다.