From: Ian R. <iro...@us...> - 2006-04-12 06:05:13
|
Update of /cvsroot/perl-openssl/Crypt/OpenSSL/RSA In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv2576 Modified Files: RSA.xs RSA.pm Log Message: Apply patch from Jim Radford <ra...@bl...> for SHA{224,256,384,512} support Index: RSA.xs =================================================================== RCS file: /cvsroot/perl-openssl/Crypt/OpenSSL/RSA/RSA.xs,v retrieving revision 1.58 retrieving revision 1.59 diff -C2 -d -r1.58 -r1.59 *** RSA.xs 9 Apr 2006 22:46:39 -0000 1.58 --- RSA.xs 12 Apr 2006 06:05:06 -0000 1.59 *************** *** 76,79 **** --- 76,93 ---- return SHA_DIGEST_LENGTH; break; + #ifdef SHA512_DIGEST_LENGTH + case NID_sha224: + return SHA224_DIGEST_LENGTH; + break; + case NID_sha256: + return SHA256_DIGEST_LENGTH; + break; + case NID_sha384: + return SHA384_DIGEST_LENGTH; + break; + case NID_sha512: + return SHA512_DIGEST_LENGTH; + break; + #endif case NID_ripemd160: return RIPEMD160_DIGEST_LENGTH; *************** *** 100,103 **** --- 114,131 ---- return SHA1(text, text_length, NULL); break; + #ifdef SHA512_DIGEST_LENGTH + case NID_sha224: + return SHA224(text, text_length, NULL); + break; + case NID_sha256: + return SHA256(text, text_length, NULL); + break; + case NID_sha384: + return SHA384(text, text_length, NULL); + break; + case NID_sha512: + return SHA512(text, text_length, NULL); + break; + #endif case NID_ripemd160: return RIPEMD160(text, text_length, NULL); *************** *** 460,463 **** --- 488,519 ---- p_rsa->hashMode = NID_sha1; + #ifdef SHA512_DIGEST_LENGTH + + void + use_sha224_hash(p_rsa) + rsaData* p_rsa; + CODE: + p_rsa->hashMode = NID_sha224; + + void + use_sha256_hash(p_rsa) + rsaData* p_rsa; + CODE: + p_rsa->hashMode = NID_sha256; + + void + use_sha384_hash(p_rsa) + rsaData* p_rsa; + CODE: + p_rsa->hashMode = NID_sha384; + + void + use_sha512_hash(p_rsa) + rsaData* p_rsa; + CODE: + p_rsa->hashMode = NID_sha512; + + #endif + void use_ripemd160_hash(p_rsa) Index: RSA.pm =================================================================== RCS file: /cvsroot/perl-openssl/Crypt/OpenSSL/RSA/RSA.pm,v retrieving revision 1.39 retrieving revision 1.40 diff -C2 -d -r1.39 -r1.40 *** RSA.pm 15 Nov 2005 04:26:02 -0000 1.39 --- RSA.pm 12 Apr 2006 06:05:06 -0000 1.40 *************** *** 241,244 **** --- 241,249 ---- and verifying messages. This is the default. + =item use_sha224_hash, use_sha256_hash, use_sha384_hash, use_sha512_hash + + These FIPS 180-2 hash algorithms, for use when signing and verifying + messages, are only available with newer openssl versions (>= 0.9.8). + =item use_ripemd160_hash |