From 3feb6da058644f7a67502ec056198e2de3c2b104 Mon Sep 17 00:00:00 2001 From: DamonHD Date: Sun, 7 Feb 2016 18:10:18 +0000 Subject: [PATCH] TODO-721: fixing bug Allowing NULL (zero-length) plaintext in fixed32BTextSize12BNonce16BTagSimpleEnc_DEFAULT_STATELESS(). --- OTAESGCM.zip | Bin 20539 -> 20616 bytes content/OTAESGCM/RELEASES_OTAESGCM.txt | 2 +- .../OTAESGCM/utility/OTAESGCM_OTAESGCM.cpp | 3 +-- 3 files changed, 2 insertions(+), 3 deletions(-) diff --git a/OTAESGCM.zip b/OTAESGCM.zip index 2d47ed633f7946e2e2fd9fe628364cb37aadb583..943d254538cd5acb5fc053ef7b7bcd682e1cd50f 100644 GIT binary patch delta 1013 zcmdnJfU#pCMTf(QxBa8F%H4V8s=SVSluF#P-g8*J3gDh~PHDmU zPkEN!%fnxq>^*lcFk9QT`@)x5)tOtEqolSl29}=aFlzA%X$Hu`s@$C zn>lq^xyhQj@=K&IWhbhe9yI&ZTGIPxqwzcL1VBR0nA5U;K@%S^d&U$I#sjLnzlb^F$=U#sJQsnK=Z|hD> zSHE>bvv^6D%!z=ihKrVEj&>!-A6&Wi`&_E$rAhzx^_`q|B!G3#UG@E|_he|~i|;=) zZGZZ0@#tmITt_^E7`p8Nb8ftR4HiPQ}u~{(S9wzy2gnxwPqq!Mk4GMpmhiB=5AX4{g3o);m(j@m~4b zWF%Y2&)f40q775Y)*jq}EZk^dJj;CQmGMQPKcdSkiNY0=+KRd9MN zefZZFz3SD-ee%mu{W^#JL&5M%r zCV%&hWsc)yn7lwmd2*GX4)c6I5L6y=ijMj0(8AI@w<+Ti9C4I^fr9Yd**BGRst(!{29}+#YR_Gp~I1^0P|! zWgn()jeXjFmGRSEp}IX!b|0P9-D$wJXRfAo@1hqG+3crI?Q?zHxWBr6A#cm2NlX__ z>K~M(maJU*fb$Srt1~;}Qia5nUcF0fHN6UJoj$ZkxL=%{D^<-FSh#Y5vUcFtBlS8P zwj9~qawt3a;1MAWH{PRPcqhfXuUnGRQO_~=>M`rKJ}Z;1<(oNvY>&~Gzx4BZ$vnHX z{1vR3p^8)XPK=9w+~C=4p0JWnRl9MLi*=UX$!+xk2I3~WI_wY4W68X2EoXL)|C;V^ z)r_r)H-i4B#tYZKT=Sdd#nUfxkGy|bq;ouH$l#4J zcg^R8rM(q3vGwaeJq^_<>)rcd)w!G=X#>f};cJ%fW;wd```pu$mL$p63T{4gmns@Om|04H#b1Y|*3h$!bS{|*}c^Fkh7#Jo_exqy1InfJ}NK`hf>BS1yAHF}U zw#stu&1Kuvw&t&_T)k@3<<+aZwP!7xvC_8wB+J};RagK2eEU-I$VG{50hQ(w&F%Wj z63fe&{Pqc>FnU|vh>`>mkBZZ?3Zap+GzX^c#?7Lzs3Tl zo!X6EYku7C37h$J+TMUTro>E(e|!y7ed8LIK5DHO_ju{&!WFdal-Kl6y#}s#Expf5 zx?FUx`>(#)-{}Q6S{8Bfi)G^HoV?IqW%6-99i{+2Ftfm)WwNZlE>p7#l&jBJGkJl( og#t>D0Ru}75?)|(Nn@KXP`Tn{$pAwpCMPg6H$ar_t`A5W00oDh8~^|S diff --git a/content/OTAESGCM/RELEASES_OTAESGCM.txt b/content/OTAESGCM/RELEASES_OTAESGCM.txt index 6a64834..6bda0f7 100644 --- a/content/OTAESGCM/RELEASES_OTAESGCM.txt +++ b/content/OTAESGCM/RELEASES_OTAESGCM.txt @@ -12,7 +12,7 @@ pending: DHD20160109: creating bridge functions for use in secure frame code from base lib. DHD20160109: various const and other minor fixes (typos, etc). DHD20150919: starting work on V0.2... Pending spec/API comment updates, safety with non-block-size data. - + DHD20160207: allowing NULL plaintext for zero-length in fixed32BTextSize12BNonce16BTagSimpleEnc_DEFAULT_STATELESS(). diff --git a/content/OTAESGCM/utility/OTAESGCM_OTAESGCM.cpp b/content/OTAESGCM/utility/OTAESGCM_OTAESGCM.cpp index 12148fb..0d59ded 100644 --- a/content/OTAESGCM/utility/OTAESGCM_OTAESGCM.cpp +++ b/content/OTAESGCM/utility/OTAESGCM_OTAESGCM.cpp @@ -479,8 +479,7 @@ bool fixed32BTextSize12BNonce16BTagSimpleEnc_DEFAULT_STATELESS(void *, const uint8_t *plaintext, uint8_t *ciphertextOut, uint8_t *tagOut) { - if((NULL == key) || (NULL == iv) || - (NULL == plaintext) || (NULL == ciphertextOut) || (NULL == tagOut)) { return(false); } // ERROR + if((NULL == key) || (NULL == iv) || (NULL == ciphertextOut) || (NULL == tagOut)) { return(false); } // ERROR OTAES128GCMGeneric<> i; // FIXME: ensure state is cleared afterwards. return(i.gcmEncrypt(key, iv, plaintext, (NULL == plaintext) ? 0 : 32, (0 == authtextSize) ? NULL : authtext, authtextSize, ciphertextOut, tagOut)); }