2009-12-26 13 views

답변

2

또는에는 OpenSSL libcrypto 사용 https://wiki.openssl.org/index.php/EVP_Message_Digests

+1

(+1)하지만 libssl은 익숙해 져 있습니다. 설명서는 쉽게 들릴 수 없습니다. –

+0

+1 OpenSSL은 FIPS 인증입니다. 올바른 SHA-256 구현을 코딩하는 것보다는 멀리 사용하는 것이 효과적이지만 사용법을 익히려면 약간의 노력이 필요할 수 있습니다. –

+0

libcrypto를 사용하여 코드 샘플을 표시 할 수 있습니까? – randombits

3

내가 크리스토프 이군요하여 간단한 독립형 구현을 사용 - 그리고 자신의 사이트가 인터넷 떨어져 것으로 보인다 반면, 구글 코드 검색이 그것을 발견을 in this place . 이 sha256.csha256.h를 사용

, 그의 main() 기능의 핵심은 단순히 당신이 따뜻하고 퍼지 느낌도 얻을 수 있도록

if(! (f = fopen(argv[1], "rb"))) 
     { 
      perror("fopen"); 
      return(1); 
     } 

     sha256_starts(&ctx); 

     while((i = fread(buf, 1, sizeof(buf), f)) > 0) 
     { 
      sha256_update(&ctx, buf, i); 
     } 

     sha256_finish(&ctx, sha256sum); 

     for(j = 0; j < 32; j++) 
     { 
      printf("%02x", sha256sum[j]); 
     } 

     printf(" %s\n", argv[1]); 
} 

main() 함수의 나머지는 FIPS-180-2 테스트 벡터의 유효성을 검사합니다/;-)

관련 문제