How to generate address directly from curve point

Hello. According to my understanding cardano uses ed25519 for its asymmetric cryptography. I’m able to create a curve point via the elliptic npm package but I need to be able to convert it directly into a public address. If there are any (js) packages you could recommend to do so I’d be very grateful. I need to directly generate an address from a point as I need the public and private key to have specific properties.

I can’t seem to find the direct specification on how the different addresses are generated. Specifically the Daedalus-style address (DdzFF…) and Shelley era address (addr1…). I’m wondering if I should also support the older Icarus-style format (Ae2…). Another question I have is does ADA use shnorr or ecdsa for its signatures?

Any help would be much appreciated, thanks.

Hi!

Have you found this lib?

probably related topic:

Haven’t found it yet, but it doesn’t seem to provide what I’m looking for, it assumes that I already have the public key in some specific format.

https://docs.cardano.org/projects/cardano-serialization-lib/en/latest/getting-started/generating-keys.html
I think this can be used to generate private and public address from recovery phrase.

See CIP1852 and “About Address Derivation” in the docs. That might answer your question.

1 Like

Only seems to provide a spec for the old address format.

As I said I don’t want to generate an address from a mnemonic phrase but instead directly from a cryptographic point

The 1852 is what we’re currently using.