diff --git a/trunk/cr_device_cert.c b/trunk/cr_device_cert.c index de4c59f..3c1e4ba 100644 --- a/trunk/cr_device_cert.c +++ b/trunk/cr_device_cert.c @@ -389,26 +389,17 @@ int GenerateCTRDeviceCert( EC_KEY *pECkey, u32 device_id, u8 bonding_option, u8 memcpy( &signBuf[0x24], &deviceCert.eccSignature[30], 0x1E ); DEBUG_PRINT_ARRAY( (char*)"sign(HSM)", (const char *)signBuf, signLen ); -#ifdef ECDSA_SHA256 - // TODO : ECDSA-SHA256 での検証を通す -#if 0 // 署名ベリファイ - ret_code = ECDSA_verify( 0, verifyHash, 30, signBuf, signLen, NCT2 ); +#ifdef ECDSA_SHA256 + ret_code = ECDSA_verify( 0, sha256Buf, 32, signBuf, signLen, NCT2 ); +#else // !ECDSA_SHA256 + ret_code = ECDSA_verify( 0, sha1Buf, 20, signBuf, signLen, NCT2 ); +#endif // ECDSA_SHA256 if( ret_code != 1) { ret_code = CR_GENID_ERROR_ECDSA_VERIFY; SetErrorInfo( __FUNCTION__, __LINE__ ); goto end; } -#endif -#else // !ECDSA_SHA256 - // 署名ベリファイ - ret_code = ECDSA_verify( 0, sha1Buf, 20, signBuf, signLen, NCT2 ); - if( ret_code != 1) { - ret_code = CR_GENID_ERROR_ECDSA_VERIFY; - SetErrorInfo( __FUNCTION__, __LINE__ ); - goto end; - } -#endif // ECDSA_SHA256 } ret_code = CR_GENID_SUCCESS;