On Monday, August 26, 2019 at 4:45:46 PM UTC-4, Jeffrey Walton wrote:
>
>
>
> On Monday, August 26, 2019 at 4:09:47 PM UTC-4, Jeffrey Walton wrote:
>>
>> On Mon, Aug 26, 2019 at 2:30 PM Philippe Antoine 
>> <p.anto...@catenacyber.fr> wrote: 
>> > 
>> > My same is Philippe Antoine. 
>> > I have been doing differential fuzzing about elliptic curve 
>> cryptography with different libraries including cryptopp. 
>> > 
>> > On August the 6th, oss-fuzz found the first regression after about one 
>> year. 
>> > I think this is dut to commit 
>> https://github.com/weidai11/cryptopp/commit/c9ef9420e762b91cc06463d349cf06e04c749b9d
>>  
>> > 
>> > My output is the following 
>> > 
>> point=04202020202020ffffff2020202020200020ffffffff20202020ff20ff20ff200104c8423eb699c3ace2e623855cb9238cb43971464f4b6686765c46ed4ce035dc
>>  
>>
>> > 
>> bignum=000000000000000000000000000000000000000000000000000000000000000a 
>> > 
>> mbedlts:045de6bae41907dbe3f0aa32b272add6b92fb2b79fdc49af35fb844be1c4c629e899295109c41cfe76a9c06c23d95b2d4be3b6f61a476acf1a67a0d848abba89e1
>>  
>>
>> > 
>> libecc:045de6bae41907dbe3f0aa32b272add6b92fb2b79fdc49af35fb844be1c4c629e899295109c41cfe76a9c06c23d95b2d4be3b6f61a476acf1a67a0d848abba89e1
>>  
>>
>> > 
>> libecc:045de6bae41907dbe3f0aa32b272add6b92fb2b79fdc49af35fb844be1c4c629e899295109c41cfe76a9c06c23d95b2d4be3b6f61a476acf1a67a0d848abba89e1
>>  
>>
>> > 
>> openssl:045de6bae41907dbe3f0aa32b272add6b92fb2b79fdc49af35fb844be1c4c629e899295109c41cfe76a9c06c23d95b2d4be3b6f61a476acf1a67a0d848abba89e1
>>  
>>
>> > 
>> gcrypt:045de6bae41907dbe3f0aa32b272add6b92fb2b79fdc49af35fb844be1c4c629e899295109c41cfe76a9c06c23d95b2d4be3b6f61a476acf1a67a0d848abba89e1
>>  
>>
>> > 
>> cryptopp:0407f16bad8b16f5441f1a15f8e7eca364d97bb3a3c09b320bb9807ee26857b66f882ba526e55ebbf22342ae5a0186ed0ca1db8870fd001c63ae36dc72ee15f6e7
>>  
>>
>> > 
>> > That means when I multiply by 10 the point on the curve brainpoolP256r1 
>> > 
>> > x = 202020202020ffffff2020202020200020ffffffff20202020ff20ff20ff2001 
>> > 
>> > y = 04c8423eb699c3ace2e623855cb9238cb43971464f4b6686765c46ed4ce035dc 
>> > 
>> > I get a different result than all the other libraries 
>> > 
>> > I will look into it a bit more, but I already wanted to let you know 
>> this... 
>>
>> Thanks Philippe. 
>>
>> Yeah, that's not good. Does your test include a fresh check-out and 
>> build of the Crypto++ library? 
>>
>
> Ugh, I can duplicate it with:
>
> Integer 
> x("0x202020202020ffffff2020202020200020ffffffff20202020ff20ff20ff2001");
> Integer 
> y("0x04c8423eb699c3ace2e623855cb9238cb43971464f4b6686765c46ed4ce035dc");
> Integer 
> s("0x000000000000000000000000000000000000000000000000000000000000000a");
>
> GroupParameters params(ASN1::brainpoolP256r1());
> ECP::Element p(x, y);
>
> ECP::Element t = params.GetCurve().ScalarMultiply(p, s);
> std::cout << std::hex << t.x << std::endl;
> std::cout << std::hex << t.y << std::endl;
>

I've got it isolated to Double(P). Restoring the previous Double() fixes 
the issue.

I hope to have a fix tonight or tomorrow.

Jeff

-- 
You received this message because you are subscribed to "Crypto++ Users". More 
information about Crypto++ and this group is available at 
http://www.cryptopp.com and 
http://groups.google.com/forum/#!forum/cryptopp-users.
--- 
You received this message because you are subscribed to the Google Groups 
"Crypto++ Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to cryptopp-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/cryptopp-users/04b1c3c5-ab86-4e6c-8fb2-9c1572c0ad24%40googlegroups.com.

Reply via email to