Questions tagged [curve-25519]

31 questions
25
votes
6 answers

What implementions of Ed25519 exist?

The new SQRL authentication scheme relies on Curve Ed25519 encryption developed by Daniel Bernstein. However, in order to start implementing this scheme there needs to be a mature implementation of Curve Ed25519 first. Does anyone know of any…
Chris Pietschmann
  • 29,502
  • 35
  • 121
  • 166
7
votes
2 answers

How to generate a Curve25519 key pair in Terminal?

How can we generate a Curve25519 key pair from the command line? We have a MacBook Air with Homebrew installed. Should we use OpenSSL or another command line tool? How do we use that tool to generate a Curve25519 key pair?
ma11hew28
  • 121,420
  • 116
  • 450
  • 651
6
votes
1 answer

Why does Curve25519 calculate key pair correctly even though its parameters are wrong?

It seems that .NET (Core 3.1) supports custom curves in ECC. So I've defined the Curve25519, and generated key pair by below code: using System; using System.Security.Cryptography; namespace Curve25519 { class Program { static void…
5
votes
2 answers

Using Curve25519 on javacard

I'm looking into using curve25519 on a javacard 3.0.4 but I got stuck and I have the following questions: Does javacard 3.0.4 support such a curve? What I've tried so far was to convert the Montgomery equation to a Weierstrass equation. Doing this…
mrklr
  • 81
  • 1
  • 6
4
votes
1 answer

Java 11 Curve25519 Implementation doesn't behave as Signal's libary

In Java 11 a curve25519 built-in implementation was introduced. As I had no idea of this, and only discovered it recently, I was using a library from Signal. This was my code before I switched to Java 11's implementation: private final Curve25519…
Auties01
  • 29
  • 1
  • 9
4
votes
1 answer

Generate shared secret key from Curve25519 (or X25519) asymmetric key pairs in node.js using crypto module

I am trying to create a shared secret key between Curve25519 (or X25519) asymmetric key pairs using key exchange algorithms just like Diffie Hellman key exchange. Diffie Hellman key exchange can be be done in node.js using crypto module in the…
3
votes
1 answer

ECC Curve25519 KeyChain

I'm trying to create Curve25519 keys using the KeyChain on iOS. I am aware of the existence of CryptoKit, unfortunately, that is not available for iOS 12. Is there a way to create a Curve25519 key pre CryptoKit, maybe a parameter I'm missing when…
Bram
  • 2,718
  • 1
  • 22
  • 43
2
votes
2 answers

Parse curve25519 keys generated using openssl in Go

Using OpenSSL version 1.1 and or later, I'm able to generate a curve25519 key: openssl genpkey -algorithm x25519 This produces a private key of the form: -----BEGIN PRIVATE…
bli00
  • 2,215
  • 2
  • 19
  • 46
1
vote
0 answers

Issue with implementing X25519 from RFC 7748

https://www.rfc-editor.org/rfc/rfc7748 gives a simple implementation of scalar multiplication on curve25519. They have some Python code and some pseudocode, and I tried my best to connect all of it into a single Python application. There is also a…
1
vote
2 answers

Bouncy Castle (Java): How to correctly generate a PGP keyring with EC keys?

As such, the following code seems to correctly generate a PGP keyring with EC keys (as in: it can be parsed with Bouncycastle). However, both Thunderbird and GnuPG do have issues with it. Here is the code, which is based on an already working…
Pawel Os.
  • 611
  • 8
  • 26
1
vote
0 answers

Encrypt [String:Any] with curve25519

i want to encrypt the Data I upload to Firebase with curve25519. Atm i convert my custom model to [String: Any] and upload this to firebase firestore. Now I want to encrypt the Data. I thought that I understand how the public/privat key stuff works,…
1
vote
1 answer

CryptoPP::ed25519::Verifier shows different result from libsignal

I'm trying to implement curve25519 verification with CryptoPP. I tried the libsignal library first, witch shows correct result. Then I tried the same data with CryptoPP, but shows wrong result. Here is the code using libsignal to verify a…
aj3423
  • 2,003
  • 3
  • 32
  • 70
1
vote
1 answer

curve25519 base point multiplication using Crypto++

When we multiply the basepoint of curve25519 with a scalar number, an exception is thrown. Integer gx(group.GetSubgroupGenerator().x); Integer gy(group.GetSubgroupGenerator().y); ECP::Point g(gx, gy); ECP::Point…
user11543755
1
vote
1 answer

how to openSSL 1.1.1 ECDH with 25519

i need to implement ecdh with 25519 using openssl. using: key = EC_KEY_new_by_curve_name(NID_X25519) fails. using this: EVP_PKEY *pkey = NULL; EVP_PKEY_CTX *pctx = EVP_PKEY_CTX_new_id(NID_X25519,…
Anton Vainer
  • 97
  • 1
  • 10
1
vote
1 answer

Is X25519 available as curve for KEX in Android?

I know from SSLHandshakeException: Handshake failed on Android N/7.0 and my own experience that this curve is not available in the system crypto lib for Android up to 7.1.2 (though it is available in Android web browsers such as Chrom{e,ium} or…
1
2 3