mirror of
https://github.com/rvtr/ctr_eFuse.git
synced 2025-11-02 00:11:04 -04:00
not really known
git-svn-id: file:///Volumes/Transfer/gigaleak_20231201/2020-09-30%20-%20paladin.7z/paladin/ctr_eFuse@21 ff987cc8-cf2f-4642-8568-d52cce064691 |
||
|---|---|---|
| dummyCA | ||
| package | ||
| rsakey_dummy | ||
| tools | ||
| cr_alloc.c | ||
| cr_alloc.h | ||
| cr_deviceCert.c | ||
| cr_enc_id.c | ||
| cr_generate_id_private.h | ||
| cr_generate_id.c | ||
| cr_generate_id.h | ||
| cr_hsm_code.c | ||
| cr_hsm_code.h | ||
| cr_hsm_util.c | ||
| cr_keyPair.c | ||
| LICENSE_en.txt | ||
| LICENSE_jp.txt | ||
| main.c | ||
| Makefile | ||
| Makefile.sharp | ||
| package.csh | ||
| package.sh | ||
| readme_openssl.txt | ||
| readme.txt | ||
CTR - ID生成関数について 2009/09/30 ---------------------------- 要、opensslライブラリ(バージョン0.9.8以上) 現在、openssl-1.0.0-beta2とopenssl-0.9.8kでテスト中。 ----------------------------- ファイル構成: readme.txt readme_openssl.txt LICENSE_en.txt LICENSE_jp.txt cr_generate_id.h cr_generate_id.c cr_alloc.h cr_alloc.c cr_gen_id_rsa_key_priv.c cr_gen_id_rsa_key_priv.h cr_gen_id_rsa_key_pub.c cr_gen_id_rsa_key_pub.h maim.c(使用サンプル) Makefile(Windows cygwin環境用) ---------------------------- 関数仕様: #define CR_ID_BUF_SIZE (2048/8) #define CR_NUM_OF_SERIAL 5 typedef signed char s8; typedef unsigned char u8; typedef unsigned short u16; typedef unsigned long u32; typedef unsigned long long u64; int cr_generate_id(u32 counter[CR_NUM_OF_SERIAL], u8 id[ID_BUF_SIZE]); /* Core2 Duo 2.66GHz 2GB で約0.016sec */ ---------------------------- 使用サンプル: main() { u8 id_buf[CR_ID_BUF_SIZE]; /* 256byte(2048bit) */ u32 counter_array[CR_NUM_OF_SERIAL]; u32 counter0 = 1; u64 counter1 = 2; u64 counter2 = 3; while( 1 ) { counter_array[0] = counter0; counter_array[1] = (u32)(counter1 & 0xffffffff ); counter_array[2] = (u32)( (counter1 >> 32) & 0xffffffff ); counter_array[3] = (u32)(counter2 & 0xffffffff ); counter_array[4] = (u32)( (counter2 >> 32) & 0xffffffff ); if( 0 != cr_generate_id(counter_array, id_buf) ) { fprintf(stderr,"cr_generate_id failed c=0x%08x\n",counter0); } else { fwrite(id, CR_ID_BUF_SIZE, 1, fp); } counter0++; counter1 += (u64)rand(); counter2 += (u64)rand(); } }