Re: Accessing Point representation of Ed448 for ECDH implementation

Danny van Heumen <danny-nd5lYkvrdhVTOXjenMiYjWZHpeb/A1Y/@public.gmane.org> Sat, 8 Jun 2019 17:21:41 +0200
Newsgroups gmane.comp.encryption.bouncy-castle.devel
Message-ID <20190608172141.488ca371@brilliance>
On Sat, 8 Jun 2019 17:12:32 +0200
Danny van Heumen <danny-nd5lYkvrdhVTOXjenMiYjWZHpeb/A1Y/@public.gmane.org> wrote:

> Hi all,
> 
> First of all, I'm new to the list, so any pointers are welcome.
> 
> I'm currently a happy user of Bouncy Castle for its Ed448
> (RFC8032) implementation. I use this for the otr4j implementation
> (https://github.com/otr4j/otr4j) of OTRv4.
> 
> OTRv4 also specifies an ECDH key type, based on Ed448 Point
> representation. (See
> https://github.com/otrv4/otrv4/blob/master/otrv4.md#generating-ecdh-and-dh-keys.)
> However, it requires a Point multiplication operation. AFAICT, Bouncy
> Castle does not expose its internally used Point type and no methods
> are exposed to perform scalar multiplication on a Point.
> 
> Am I missing something? If not, are there any plans/intentions to
> expose the point representation? If not, are there any recommendations
> you can give me on how I can best tackle this?
> 
> I currently use an amateurisch custom-made Ed448 Point implementation
> which serves to prove that the code functionally works, but I would
> like to get rid of it ASAP.
> 
> Let me know if you need any more information.
> 
> Kind regards,
> Danny
> 
> 

I'm currently looking at package org.bouncycastle.math.ec
(https://bouncycastle.org/docs/docs1.5on/org/bouncycastle/math/ec/package-frame.html).
I'm not sure how I could have missed this, but I'm guessing this
already provides everything I need.

Any pointers are welcome.

In case it turns out this package already has everything I need,
apologies for the spam ...

Danny