Questions tagged [ed25519]

Ed25519 is a public-key signature system.

Ed25519 is a public-key signature system with several attractive features:

  • Fast single-signature verification. The software takes only 273364 cycles to verify a signature on Intel's widely deployed Nehalem/Westmere lines of CPUs. (This performance measurement is for short messages; for very long messages, verification time is dominated by hashing time.) Nehalem and Westmere include all Core i7, i5, and i3 CPUs released between 2008 and 2010, and most Xeon CPUs released in the same period.
  • Even faster batch verification. The software performs a batch of 64 separate signature verifications (verifying 64 signatures of 64 messages under 64 public keys) in only 8.55 million cycles, i.e., under 134000 cycles per signature. The software fits easily into L1 cache, so contention between cores is negligible: a quad-core 2.4GHz Westmere verifies 71000 signatures per second, while keeping the maximum verification latency below 4 milliseconds.
  • Very fast signing. The software takes only 87548 cycles to sign a message. A quad-core 2.4GHz Westmere signs 109000 messages per second.
  • Fast key generation. Key generation is almost as fast as signing. There is a slight penalty for key generation to obtain a secure random number from the operating system; /dev/urandom under Linux costs about 6000 cycles.
  • High security level. This system has a 2^128 security target; breaking it has similar difficulty to breaking NIST P-256, RSA with ~3000-bit keys, strong 128-bit block ciphers, etc. The best attacks known actually cost more than 2^140 bit operations on average, and degrade quadratically in success probability as the number of bit operations drops.
  • Foolproof session keys. Signatures are generated deterministically; key generation consumes new randomness but new signatures do not. This is not only a speed feature but also a security feature, directly relevant to the recent collapse of the Sony PlayStation 3 security system.
  • Collision resilience. Hash-function collisions do not break this system. This adds a layer of defense against the possibility of weakness in the selected hash function.
  • No secret array indices. The software never reads or writes data from secret addresses in RAM; the pattern of addresses is completely predictable. The software is therefore immune to cache-timing attacks, hyperthreading attacks, and other side-channel attacks that rely on leakage of addresses through the CPU cache.
  • No secret branch conditions. The software never performs conditional branches based on secret data; the pattern of jumps is completely predictable. The software is therefore immune to side-channel attacks that rely on leakage of information through the branch-prediction unit.
  • Small signatures. Signatures fit into 64 bytes. These signatures are actually compressed versions of longer signatures; the times for compression and decompression are included in the cycle counts reported above.
  • Small keys. Public keys consume only 32 bytes. The times for compression and decompression are again included.
128 questions
0
votes
1 answer

Jelastic: any plan to support ed25519 ssh keys?

If I try to use a SSH key in the format of ed25519 it tells it's invalid: Jelastic version: 5.7 Does Jelastic team plan to support such ssh-key format in the future?
Slam
  • 389
  • 3
  • 6
0
votes
1 answer

Load openssl Ed25519 private key in PEM format into Python ed25519.SigningKey

I have some keys generated with openssl: openssl genpkey -algorithm Ed25519 -out private_key.pem and I would like to use them to generate ed25519 signatures in Python. I found the module ed25519 but I can't see a way to load the PEM file generated…
piokuc
  • 25,594
  • 11
  • 72
  • 102
0
votes
1 answer

Meteor MUP failed authentication using ssh ed25519

Problem I want to setup my config using mup setup. However it fails in all possible configs: { host: '1.2.3.4', username: 'root', pem: '/home/user/.ssh/id_ed25519', } Fails, where module ssh2 (which seems to be the part of MUP that handles…
Jankapunkt
  • 8,128
  • 4
  • 30
  • 59
0
votes
0 answers

Git push from Netbeans 8.2 on Windows 10 (ed25519)

I am not able to push changes into a remote repository from Netbeans (version 8.2) when a public/private key pair has the encryption ed25519 (and not RSA). Is there a solution to this problem?
-1
votes
1 answer

Sign data with Ed25519 algorithm

I want to sign some data with algorithm Ed25519. Example of private key: Y2E3YjYwYzRjMDRjMjk1ZDQ5ZTQzM2RlMTdjZjVkNGE0NGFjYzJmM2IzOWExNWZhMjViNGE4ZWJiZDBiMDVkYTIwNGU4MWE3ZWZmMTQ0NGE2ZmM2NjExNzRmNTY4M2I0YmYyMTk5YTkyY2UzOWRkZjdmMzhkNTFjYTNmM2Q3ZDU= But…
KunLun
  • 3,109
  • 3
  • 18
  • 65
-1
votes
1 answer

ED25519 for Putty 0.67 login failed

I'm not sure if Putty 0.67 supports ED25519, in my case, the key work successfully under command line mod (DOS or BASH), but it dosen't work for Putty. Disconnected: No supported authentication methods available (server sent: publickey)
Weijing Jay Lin
  • 2,991
  • 6
  • 33
  • 53
-2
votes
1 answer

Verify digital signature signed using ED25519

My task is to verify a digital signature signed using ED25519. The signature that was generated using typescript Crypto and I need to verify in Java. I am using BouncyCastle to verify and here is my code. byte[] decodedSign =…
ss_java
  • 1
  • 1
-2
votes
2 answers

Compressing signature

Suppose I have a 64 byte signature (from ed25519) that one party creates. This party must compress the signature further, so that it is 4-8 digits in base 2048. Then, the second party must be able to recreate the signature from the data. Here is an…
Jon
  • 2,932
  • 2
  • 23
  • 30
1 2 3
8
9