From 1ecaf19e8c4b82bfe9777b3a8f6194973aa619b8 Mon Sep 17 00:00:00 2001 From: "atul.jha" Date: Thu, 13 Aug 2020 15:58:23 +0200 Subject: [PATCH] sync. --- trial3/defines.h | 3 ++- trial3/layer1.c | 24 ++++++++---------------- trial3/layer2.h | 3 --- trial3/links.txt | 16 +++++++++++++++- trial3/out/main | Bin 19024 -> 19024 bytes 5 files changed, 25 insertions(+), 21 deletions(-) diff --git a/trial3/defines.h b/trial3/defines.h index 0a53aaa..cd5b61c 100644 --- a/trial3/defines.h +++ b/trial3/defines.h @@ -46,7 +46,8 @@ /* SPECIFIC AND SPECIAL VALUES */ /* DO NOT CHANGE THIS BLOCK */ - +#define IDENTITY "Identity" +#define ALIAS "Alias" #define ACCUM_BUFF_OFFSET 2 #define ENTROPY_LEN 32 diff --git a/trial3/layer1.c b/trial3/layer1.c index 16bc9be..5cf0fbf 100644 --- a/trial3/layer1.c +++ b/trial3/layer1.c @@ -1,8 +1,6 @@ #include "layer1.h" -#define IDENTITY "identity" - int readUDS(uint8_t* UDSdigest) { //Read 8 bytes from RANDFILE @@ -245,8 +243,7 @@ int seedRNGSource(void *data, unsigned char *output, size_t len) mbedtls_entropy_context * p_ent = data; printf("manual update entropy with CDI\n"); - printf("%d : len of buffer\n", (int)sizeof(p_ent -> accumulator.buffer) ); - + if(memcpy(output, p_ent -> accumulator.buffer + ACCUM_BUFF_OFFSET , ENTROPY_LEN) < 0) return( MBEDTLS_ERR_ENTROPY_SOURCE_FAILED ); @@ -308,11 +305,8 @@ int deriveECCKeyPair(KeyDrv_context * KD_ctx) mbedtls_entropy_add_source( &entropyCtx, use_dev_random, NULL, ENTROPY_LEN, MBEDTLS_ENTROPY_SOURCE_STRONG ); - mbedtls_ctr_drbg_seed(&drbgCtx, mbedtls_entropy_func, - &entropyCtx, - (const unsigned char *) KD_ctx->phrase , - strlen(KD_ctx->phrase) - ); + mbedtls_ctr_drbg_seed(&drbgCtx, mbedtls_entropy_func, &entropyCtx, + (const unsigned char *) KD_ctx->phrase, strlen(KD_ctx->phrase) ); } else if (KD_ctx->ENT_MODE == DETERM) // Deterministic derviation with seed @@ -337,9 +331,7 @@ int deriveECCKeyPair(KeyDrv_context * KD_ctx) printf("Accumulating entropy ...\n"); mbedtls_entropy_update_manual(&entropyCtx, KD_ctx->seed, ENTROPY_LEN); mbedtls_ctr_drbg_seed(&drbgCtx, mbedtls_entropy_func, &entropyCtx, - (const unsigned char *) KD_ctx->phrase , - strlen(KD_ctx->phrase) - ); + (const unsigned char *) KD_ctx->phrase, strlen(KD_ctx->phrase) ); } if(mbedtls_ecp_gen_keypair(&ecpGrp, &secret, &Public, @@ -436,14 +428,14 @@ int deriveRSAKeyPair(void) mbedtls_rsa_init(&rsaCtx,MBEDTLS_RSA_PKCS_V21, RSA_HASH_ID); mbedtls_entropy_context entropyCtx; - mbedtls_entropy_init(&entropyCtx); + mbedtls_entropy_init(&entropyCtx); - mbedtls_ctr_drbg_context drbgCtx; - mbedtls_ctr_drbg_init(&drbgCtx); + mbedtls_ctr_drbg_context drbgCtx; + mbedtls_ctr_drbg_init(&drbgCtx); //Seed drbg with secret data now? //move "private" string to n param - int ret = mbedtls_ctr_drbg_seed(&drbgCtx, mbedtls_entropy_func, &entropyCtx, + int ret = mbedtls_ctr_drbg_seed(&drbgCtx, mbedtls_entropy_func, &entropyCtx, (const unsigned char *) "Private", sizeof("Private")); mbedtls_rsa_gen_key(&rsaCtx,mbedtls_ctr_drbg_random, &drbgCtx, diff --git a/trial3/layer2.h b/trial3/layer2.h index 5f59e65..4b62d8b 100644 --- a/trial3/layer2.h +++ b/trial3/layer2.h @@ -19,9 +19,6 @@ //#include "defines.h" -#define IDENTITY "Identity" -#define ALIAS "ALIAS" - void ROMprotocol(void); diff --git a/trial3/links.txt b/trial3/links.txt index f4573f1..d5a7ffc 100644 --- a/trial3/links.txt +++ b/trial3/links.txt @@ -23,4 +23,18 @@ mbedtls_entropy_add_source( &entropy, dev_random_entropy_poll, https://forums.mbed.com/t/mbedtls-porting-into-new-environment-help-with-networking-and-entropy/4969 https://os.mbed.com/docs/mbed-os/v6.2/porting/entropy-sources.html -https://tls.mbed.org/discussions/crypto-and-ssl/deterministic-random-bit-generator-help \ No newline at end of file +https://tls.mbed.org/discussions/crypto-and-ssl/deterministic-random-bit-generator-help + + + + + + + + + +removing sensitive data rom RAM + +https://stackoverflow.com/questions/42771298/explicitly-removing-sensitive-data-from-memory + +compiler removes memset(,0,) https://gcc.gnu.org/bugzilla/show_bug.cgi?id=8537 \ No newline at end of file diff --git a/trial3/out/main b/trial3/out/main index 91719018c9e3dab1c588bef259e1fb61410381fb..0b0eb4235b01de42e707798558e18169055c0763 100755 GIT binary patch delta 1886 zcmZuy4@?th6u`(l&IG4<2!A$37;@_^$ zj&#vIwqdqqV`G^v3y?J$B#32fAsXkHG12L!)nU9j(aI{KgWcYD$FVKhCH;Q)-uK?` zz3;vEU58r8Pz%{Vqz&5{`3c((T;l#L8DGVb7l2(9W*8TJ=$qXZ|nvf)sBvEz6CCJV!;zFoKp_lIF z|0PL+-yIUX+e6HjOjLKkE18E$CYW>v!a%9cX8aMIyJkn;Jfsks-^m&`E>2WAv=1pqJ94xu93IHfw~-@oR9`__Ad2fM za2QI72{szaP0d=>@tJYzIE;?Niep#{-x_usN8(kBXDlGqu=?3>-=f;ZGC1Oyh}!#zA6UGSd~ z{DYzdQIk`{P}3E#U{2P~r|+Rdz}JPj^~K0`gW`LXB;cz=9rcM-Ox8|`-HMosrKGzj z|4;}XDB?D{+w99i-f^8>$SP1WNx-zms0X4V|XZWH7&kVKideE9J znqOz)RxLQpx#S@{Wj5*BQK8K3r^tne`+!>HLcpv`Xq(>K44q~pxdErmS&cg))NZgl2CtSEt$4`4*Iio8Z$Nc94=?qke|SAHKY~DCv@+^>y<@A zT!wmUUg=(>I608QRWhyy*D89{<>K8$Cgs&_5X? zHU#^uC4_ijEXNgmGWRaonQ>E+&S5IiTaq+^IAcVT+7Xj6KnCXMKrBY=!ZcPQ)?lS} zA>PJLeuCJGgBU{m2rpq6F^b60`NrDwh*oUWGQ_ip>k&8Ox9$zZVZ_rc11IL1Nh4gH zTZo^WG+UlN^1CF_j;W6kU!KL^DAd|GG6tJ)T?q$l^T+@k$M-7u1=lD{+BowOyhIJu z(UqLKmwh}*!`3CnA{pfnFt=M!Vdq$W99G*cXW-bPtr!*@&JCm?c+knQY{UvZrK?F(P+wL;*oX=07FQ7- z4lce!mIeKf<|VM#QsC>V06j2jBnz delta 2057 zcmZuyeN0nV6o2>eA)mG)@=+hWN1@ObgrQgg?WEJfBXgNk(D@Ogvk=kgoQQKvP_%YS zQ=2i5TX27{xwuT7$;`SqBv9*^A1q|+%qE*L8{04`#7$HX{Cqq2y|(JIm-L-?&i$Qp ze&?KfZ~X^}{~&4g$ED>n@{^YT-W6|BiC)njOE^xhBzOEVYTTbxzN_7@KU(tVgPmht zHJdzbY+Do?sq@T?8Aym3Rxym|PHY6twDBZqGQ$LxJ&>e8Y9ck8??ZMM#L`3gqy zy#r=yN{JaZY35~o9v5<4H9;K*(Q#05Wa8ml%^of>jOZSxhz>+_D2Pq4Zn{8ThP~5I zkRB-Fo+Z~{3#TF5z{%CcR>sJEP{+bJcQ#`+YJo3CCCS@@rDAOx(V&!FHU?)hGRYA9 zmSNhhr8qO9c-lNnypGy zhEoI=wYv4a35q6{>o#{HCQyssPf&Txqze~%dum1JHPL=ujU7Ef;kjt_3P|J(WfMrH zMLDe#q6>eRd=D(n&Z%h(PjM&0?bcB|&7;a`UPXg^^A84*t8trGgt3bdOXGy=#A}f5 z!UfdjUAUP2e8GJ@j+k!5WgRSYY?mad$tb$5Ei`i)^`_r;UmDdf!u*`P=eA;|-k$nG z6~7OIF^r0@U@Xfm%c`CImRd{ABDd~?Ndi+Vx@SgX{xWU+lJQ`eHykjHrVRm#XOCtG}ljdUmcR9pU~cQ zU6LN4>_d43<>kL6DH#jDhq44EZBGr#sW{OVl&5e9eT;G+o