2014-01-07 6 views
0

스크 립트 알고리즘 출력 주위에 머리를 쓰려고합니다.스크 립트 알고리즘 출력이 예상대로 일치하지 않습니다.

작성자가 headerString 대한 scrypt 암호화 결과를 얻을 https://litecoin.info/Block_hashing_algorithm에서

:

01000000ae178934851bfa0e83ccb6a3fc4bfddff3641e104b6c4680c31509074e699be2bd672d8 d2199ef37a59678f92443083e3b85edef8b45c71759371f823bab59a97126614f44d5001d45920180 리틀 엔디안]

000000003b4ba52ab765631e20a04b88cd27f0b66d3509fb2da7781fae6d7901

한다. [빅 엔디안]

저는 이것을 복제하려하지만 그 결과를 재현 할 수 없습니다. 이 글의 끝에있는 테스트 벡터에 대한 올바른 출력을 제공하는 구현을 사용하고 있습니다 : http://www.tarsnap.com/scrypt/scrypt.pdf하지만 headerString을 N, r, p (1024,1,1)의 올바른 설정으로 실행하면 결과

c17fcd0c6d698828112ade740d4e8ad76705764da3abfc49ff3bb1863cd16472 [빅 엔디안]

I 모두에서 동일한 결과와 동일한 결과와 그 구현을 시도

:

필요하다면 단지 16 진수 문자열 바이트 배열 파싱 scrypt 호 IM 후

data = "01000000ae178934851bfa0e83ccb6a3fc4bfddff3641e104b6c4680c31509074e699be2bd672d8 d2199ef37a59678f92443083e3b85edef8b45c71759371f823bab59a97126614f44d5001d45920180"; 

    https://github.com/cheongwy/node-scrypt-js 
var result = scrypt(data,data, 1024,1,1,32); 

    https://github.com/tonyg/js-scrypt 
var result = scrypt.crypto_scrypt(scrypt.encode_utf8(data), scrypt.encode_utf8(data), 1024, 1, 1, 32); 

여기에 뭔가가 있습니까? 나는 왜 그것에 대해 종이에 대해 내 scrypt 구현을 검증했을 때 동일한 결과를 얻지 못하고 있는지 이해할 수 없다.

정말이 문제를 해결하는 데 도움이 필요합니다. 내가 충분한 정보를 제공하지 않았다면, 물어 보아 주시기 바랍니다.

+1

당신이 우리에게주는 정보에서 무엇을 잘못하고 있는지 알 길이 없습니다. 어떤 구현의 scrypt를 사용합니까? 4 개의 테스트 벡터를 사용하는 것은 가능한 모든 구현 오류를 찾기에 충분하지 않습니다. 또한, scrypt 함수에 대한 호출을 보여줄 수 있습니까? – example

+0

답장을 보내 주셔서 감사합니다! 필자는 테스트를 수행하고 호출을 scrypt 함수에 추가 한 구현을 추가했습니다. 이게 도움이 되길 바란다. – Sultanen

+1

데이터를 문자 배열로 입력하는 동안 숫자로 해석해야합니다 (16 진수 표현) – example

답변

1

데이터를 문자 배열로 입력해야하지만 숫자로 해석해야합니다 (16 진수 표현).