diff --git a/Makefile b/Makefile index de8b99a..97df75e 100644 --- a/Makefile +++ b/Makefile @@ -4,14 +4,13 @@ # nm generate_id.o | grep " [T|B|D] " # nm ../rsa_keysrcgen/rsa1_key.o | grep " [T|B|D] " + #@ÅI“I‚ȃrƒ‹ƒhƒXƒCƒbƒ`‚ÌÝ’è‚ÍAˆÈ‰º‚Ì’Ê‚èB # DEV_CYGWIN = FALSE # USE_HSM = TRUE -# USE_SFMT = XX DEV_CYGWIN = TRUE #USE_HSM = TRUE -USE_SFMT = TRUE ifeq ($(USE_HSM),TRUE) @@ -76,8 +75,6 @@ PACKAGE_DIR = ./package # OPENSSL_DIR = ./openssl-1.0.0-beta2 OPENSSL_DIR = ./openssl-0.9.8k -SFMT_DIR = ./SFMT-src-1.3.3 - TARGET = gen_id KEYS_C = cr_eFuse_privKey_prod.c cr_eFuse_pubKey_prod.c \ @@ -87,10 +84,6 @@ KEYS_C = cr_eFuse_privKey_prod.c cr_eFuse_pubKey_prod.c \ SRCS = main.c cr_generate_id.c cr_hsm_util.c cr_keyPair.c \ cr_deviceCert.c cr_enc_id.c cr_alloc.c cr_hsm_code.c -ifeq ($(USE_SFMT),TRUE) -SRCS += $(SFMT_DIR)/SFMT.c -endif - OBJS = $(notdir $(SRCS:.c=.o)) CFLAGS = -Wall -DMEXP=216091 -msse2 -DHAVE_SSE2 @@ -114,11 +107,6 @@ ifeq ($(USE_DUMMY_KEY),TRUE) CFLAGS += -DUSE_DUMMY_KEY endif -ifeq ($(USE_SFMT),TRUE) -CFLAGS += -DUSE_SFMT -CPPFLAGS+= -I$(SFMT_DIR) -endif - ifeq ($(USE_HSM),TRUE) CFLAGS += -DUSE_HSM CPPFLAGS+= $(NFAST_CPPFLAGS) @@ -146,9 +134,6 @@ $(TARGET): $(OBJS) $(OBJS): $(HEADS) Makefile -%.o:$(SFMT_DIR)/%.c - $(CC) $(CFLAGS) $(CPPFLAGS) -c $< -o $@ - %.o:%.c $(CC) $(CFLAGS) $(CPPFLAGS) -c $< -o $@ diff --git a/cr_generate_id.c b/cr_generate_id.c index 7e59d9f..fef533a 100644 --- a/cr_generate_id.c +++ b/cr_generate_id.c @@ -274,7 +274,6 @@ int cr_generate_id( u32 serial[CR_NUM_OF_SERIAL], u8 id_buf[CR_ID_BUF_SIZE], u8 printf("\n"); } #endif /* DEBUG_PRINT */ - //-------------------------------------------------------------- // タイムスタンプセット //-------------------------------------------------------------- @@ -301,7 +300,7 @@ int cr_generate_id( u32 serial[CR_NUM_OF_SERIAL], u8 id_buf[CR_ID_BUF_SIZE], u8 //-------------------------------------------------------------- // 楕円曲線éµãƒšã‚¢ã‚’ç”Ÿæˆ //-------------------------------------------------------------- - ret_code = GenarateECCKeyPair( my_eckey, cr_id_buf->devicePrivKey ); + ret_code = GenarateECCKeyPair( &my_eckey, cr_id_buf->devicePrivKey ); if ( ret_code != CR_GENID_SUCCESS ) { goto end; } diff --git a/cr_generate_id_private.h b/cr_generate_id_private.h index d6c95ff..df70e30 100644 --- a/cr_generate_id_private.h +++ b/cr_generate_id_private.h @@ -183,7 +183,7 @@ typedef struct { extern int GetTimestamp( u8 *pYear, u8 *pMonth, u8 *pMday, u8 *pHour, u8 *pMin, u8 *pSec, time_t *pTime); extern int GenerateRandom( u8 *pDst, int length ); -extern int GenarateECCKeyPair( EC_KEY *pECkey, u8 *pECPrivkey ); +extern int GenarateECCKeyPair( EC_KEY **ppECkey, u8 *pECPrivkey ); extern int GenerateCTRDeviceCert( EC_POINT *pubKey, u32 deviceId, u8 bondingOption ); extern int EncryptID( unsigned char *dst_buf, unsigned char *org_buf, u8 bondingOption ); extern void DebugPrintArray( char *pStr, const u8 *pData, int length ); diff --git a/cr_keyPair.c b/cr_keyPair.c index 281154a..cdf4314 100644 --- a/cr_keyPair.c +++ b/cr_keyPair.c @@ -126,26 +126,26 @@ static int generate_EC_public_key( EC_KEY *eckey ); // ECCキーペアã®ç”Ÿæˆ -int GenarateECCKeyPair( EC_KEY *pECkey, u8 *pECPrivkey ) +int GenarateECCKeyPair( EC_KEY **ppECkey, u8 *pECPrivkey ) { int ret_code = 0; // æ¥•å††ã‚’é¸æŠž ( NID_X9_62_prime256v1 -> 32bytesã¾ã§ã€ NID_sect571r1 -> 71bytesã¾ã§ ç½²åã«ãƒ‡ãƒ¼ã‚¿ã‚’å«ã‚られる ) - pECkey = EC_KEY_new_by_curve_name( NID_sect233r1 ); - if( pECkey == NULL ) + *ppECkey = EC_KEY_new_by_curve_name( NID_sect233r1 ); + if( *ppECkey == NULL ) { return CR_GENID_ERROR_EC_KEY_NEW_1; } // 秘密éµç”Ÿæˆ - ret_code = generate_EC_private_key( pECkey, pECPrivkey ); + ret_code = generate_EC_private_key( *ppECkey, pECPrivkey ); if( ret_code != 0 ) { return CR_GENID_ERROR_EC_GENERATE_PRIVATE_KEY; } // 公開éµç”Ÿæˆ - ret_code = generate_EC_public_key( pECkey ); + ret_code = generate_EC_public_key( *ppECkey ); if ( ret_code == 0 ) { return CR_GENID_ERROR_EC_GENERATE_PUBLIC_KEY; @@ -153,7 +153,7 @@ int GenarateECCKeyPair( EC_KEY *pECkey, u8 *pECPrivkey ) // ASN.1 形弿Œ‡å®šãƒ•ラグをセットã™ã‚‹ // (ã“れをセットã—ãªã„ã¨è‰²ã€…変ãªãƒ•ィールドãŒå…¥ã£ã¦ã—ã¾ã†ãŸã‚) - EC_KEY_set_asn1_flag( pECkey, 1 ); + EC_KEY_set_asn1_flag( *ppECkey, 1 ); return 0; } diff --git a/main.c b/main.c index 467a035..a49dd14 100644 --- a/main.c +++ b/main.c @@ -14,10 +14,6 @@ #include #endif // Linux -#ifdef USE_SFMT -#include "SFMT.h" -#endif /* USE_SFMT */ - #include "cr_generate_id.h" #define T_BONDING_OPTION 0 // TORIAEZU bondingOption = 0 @@ -199,11 +195,6 @@ int main(int ac, char *argv[]) myseed = tloc; srand(myseed); -#ifdef USE_SFMT - init_gen_rand((u32)myseed); - /* ã„ãらã‹ä¹±æ•°ã‚’èª­ã¿æ¨ã¦ã—ãŸæ–¹ãŒè‰¯ã„? */ -#endif - // ID生æˆå‰ã«ã‚«ã‚¦ãƒ³ã‚¿åŠ ç®—ã‚’ã™ã‚‹ãªã‚‰ã€åˆæœŸå€¤ã¯ 0 ã§ OK counter0 = 0x00000000; counter1 = 0x0000000000000000ll; @@ -237,11 +228,7 @@ int main(int ac, char *argv[]) // counter2 ã¯ã€"0 以外㮠32bit 乱数値" を加算 do { -#ifdef USE_SFMT - unit = (u64)gen_rand32(); -#else unit = (u64)rand() | ( (u64)rand() << 16 ); -#endif }while( unit == 0 ); counter2 += unit; diff --git a/package/Makefile b/package/Makefile index ee0afe9..10e45e4 100644 --- a/package/Makefile +++ b/package/Makefile @@ -2,8 +2,6 @@ # OPENSSL = openssl-1.0.0-beta2 OPENSSL = openssl-0.9.8k -SFMT = SFMT-src-1.3.3 - ifeq ($(DEV_CYGWIN),TRUE) OPENSSL_CONFIG_TARGET = mingw else @@ -16,17 +14,12 @@ OUT_DIR = ../ .PHONY: all clobber -all: $(OUT_DIR)/$(SFMT) \ - $(OUT_DIR)/$(OPENSSL)/libssl.a +all: $(OUT_DIR)/$(OPENSSL)/libssl.a $(OUT_DIR)/$(OPENSSL)/libssl.a : $(OPENSSL).tar.gz tar xzvf $< -C $(OUT_DIR) cd $(OUT_DIR)/$(OPENSSL);./Configure $(OPENSSL_CONFIG_TARGET);make build_libs; -$(OUT_DIR)/$(SFMT) : $(SFMT).zip - unzip -o $< -d $(OUT_DIR) - clobber: - $(RM) -r $(OUT_DIR)/$(SFMT) $(RM) -r $(OUT_DIR)/$(OPENSSL) diff --git a/package/SFMT-src-1.3.3.zip b/package/SFMT-src-1.3.3.zip deleted file mode 100644 index 9a5b724..0000000 Binary files a/package/SFMT-src-1.3.3.zip and /dev/null differ