Commit message (Collapse) | Author | Age | |
---|---|---|---|
* | elligator: API changes for encoding + function documentations | Pedram Fardzadeh | 2024-03-11 |
| | |||
* | elligator: code cleanup | Pedram Fardzadeh | 2024-03-11 |
| | |||
* | - uncrustify code | Martin Schanzenbach | 2024-03-06 |
| | |||
* | udp communicator: ECDH with elligator | Pedram Fardzadeh | 2024-03-06 |
| | |||
* | elligator: kem encaps and decaps | Pedram Fardzadeh | 2024-03-06 |
| | |||
* | elligator: code cleanup | Pedram Fardzadeh | 2024-03-06 |
| | |||
* | crypto: fix elligator warnings | Martin Schanzenbach | 2024-03-01 |
| | |||
* | util: initial elligator implementation | Pedram Fardzadeh | 2024-02-28 |
| | |||
* | CRYPTO: Improve comments for ECC DHv0.21.0-talerdev.6 | Martin Schanzenbach | 2024-02-27 |
| | | | | NEWS:- | ||
* | Merge branch 'master' of ssh://git.gnunet.org/gnunet | TheJackiMonster | 2023-11-14 |
|\ | |||
| * | -add more functions for new blinding API | Christian Grothoff | 2023-10-27 |
| | | |||
| * | more work on new blind signing API | Christian Grothoff | 2023-10-27 |
| | | |||
| * | more work on new blind signature API and implementation | Christian Grothoff | 2023-10-27 |
| | | |||
| * | distinguish blinding and session nonces | Christian Grothoff | 2023-10-27 |
| | | |||
| * | new blind signing logic | Christian Grothoff | 2023-10-27 |
| | | |||
| * | NEWS: major revision of blind signature API | Christian Grothoff | 2023-10-27 |
| | | |||
| * | BUILD: Allow plugins to build before higher-level components | Martin Schanzenbach | 2023-10-19 |
| | | |||
| * | NEWS: Refactoring components under src/ into lib/, plugin/, cli/ and service/ | Martin Schanzenbach | 2023-10-18 |
| | | | | | | | | | | This also includes a necessary API refactoring of crypto from IDENTITY to UTIL. | ||
| * | BUILD: Silence int/enum mismatch compiler warnings and curl deprecated defines | Martin Schanzenbach | 2023-09-23 |
| | | |||
* | | -minor additional cleanup | TheJackiMonster | 2023-11-10 |
| | | | | | | | | Signed-off-by: TheJackiMonster <thejackimonster@gmail.com> | ||
* | | MESSENGER: Separate peer and member signed messages | TheJackiMonster | 2023-11-10 |
|/ | | | | Signed-off-by: TheJackiMonster <thejackimonster@gmail.com> | ||
* | NEWS: Added new CCA-secure KEM and use in IDENTITY encryption | Martin Schanzenbach | 2023-07-16 |
| | |||
* | NEWS: Add KEM API to avoid ephemeral private key management | Martin Schanzenbach | 2023-07-15 |
| | |||
* | -dox | Christian Grothoff | 2023-05-04 |
| | |||
* | -more util include cleanups | Martin Schanzenbach | 2022-12-05 |
| | |||
* | UTIL: Allow only inlcusion of util glib-style. | Martin Schanzenbach | 2022-12-04 |
| | |||
* | BUILD: Attempt to disentable platform.h, gnunet_common.h and ↵ | Martin Schanzenbach | 2022-12-04 |
| | | | | gnunet_private_config.h insanity | ||
* | BUILD: Improve platform-specific includes | Martin Schanzenbach | 2022-12-01 |
| | | | | | | | | | | | This change allows third party programs to use gnunet either with the platform header from the sources used to build to gnunet, or use their own platform header by defining GNUNET_CUSTOM_PLATFORM_H which will be included in its stead. This also means that programs no longer must include "platform.h" (or similar) manually. The change (should be) backwards compatible to some degree. Fixes #4615 | ||
* | -DOC: Documentation cleanup pass through rest of UTIL libraries | Willow Liquorice | 2022-10-03 |
| | |||
* | -DOC: Minor fixes to doc comments (mostly correcting typos) to resolve ↵ | Willow Liquorice | 2022-10-03 |
| | | | | 'unknown command' warnings | ||
* | -fix coverity; remove unnecessary API | Martin Schanzenbach | 2022-09-01 |
| | |||
* | Merge branch 'dev/trizuz/siop' | Martin Schanzenbach | 2022-08-31 |
|\ | |||
| * | -switch to EdDSA egos only for signature rest endpoint | Tristan Schwieren | 2022-08-26 |
| | | |||
| * | -sign rest api + unfinished test | Tristan Schwieren | 2022-08-26 |
| | | |||
| * | - siop for reclaim; A rest endpoint that signs stuff | Tristan Schwieren | 2022-08-26 |
| | | |||
* | | -DOC: First pass through GNUnet crypto | Willow Liquorice | 2022-08-30 |
| | | |||
* | | double-check GP/PP are finenlnet-r5n-audit | Christian Grothoff | 2022-08-25 |
| | | |||
* | | DOC: Major doxygen organisation work, upgraded config, updated logo | Willow Liquorice | 2022-08-21 |
|/ | |||
* | -fix typos | Christian Grothoff | 2022-06-26 |
| | |||
* | -typo | Christian Grothoff | 2022-04-04 |
| | |||
* | Edx25519 implemented | Özgür Kesim | 2022-03-27 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Edx25519 is a variant of EdDSA on curve25519 which allows for repeated derivation of private and public keys, independently. The private keys in Edx25519 initially correspond to the data after expansion and clamping in EdDSA. However, this correspondence is lost after deriving further keys from existing ones. The public keys and signature verification are compatible with EdDSA. The ability to repeatedly derive key material is used for example in the context of age restriction in GNU Taler. The scheme that has been implemented is as follows: /* Private keys in Edx25519 are pairs (a, b) of 32 byte each. * Initially they correspond to the result of the expansion * and clamping in EdDSA. */ Edx25519_generate_private(seed) { /* EdDSA expand and clamp */ dh := SHA-512(seed) a := dh[0..31] b := dh[32..64] a[0] &= 0b11111000 a[31] &= 0b01111111 a[31] |= 0b01000000 return (a, b) } Edx25519_public_from_private(private) { /* Public keys are the same as in EdDSA */ (a, _) := private return [a] * G } Edx25519_blinding_factor(P, seed) { /* This is a helper function used in the derivation of * private/public keys from existing ones. */ h1 := HKDF_32(P, seed) /* Ensure that h == h % L */ h := h1 % L /* Optionally: Make sure that we don't create weak keys. */ P' := [h] * P if !( (h!=1) && (h!=0) && (P'!=E) ) { return Edx25519_blinding_factor(P, seed+1) } return h } Edx25519_derive_private(private, seed) { /* This is based on the definition in * GNUNET_CRYPTO_eddsa_private_key_derive. But it accepts * and returns a private pair (a, b) and allows for iteration. */ (a, b) := private P := Edx25519_public_key_from_private(private) h := Edx25519_blinding_factor(P, seed) /* Carefully calculate the new value for a */ a1 := a / 8; a2 := (h * a1) % L a' := (a2 * 8) % L /* Update b as well, binding it to h. This is an additional step compared to GNS. */ b' := SHA256(b ∥ h) return (a', b') } Edx25519_derive_public(P, seed) { h := Edx25519_blinding_factor(P, seed) return [h]*P } Edx25519_sign(private, message) { /* As in Ed25519, except for the origin of b */ (d, b) := private P := Edx25519_public_from_private(private) r := SHA-512(b ∥ message) R := [r] * G s := r + SHA-512(R ∥ P ∥ message) * d % L return (R,s) } Edx25519_verify(P, message, signature) { /* Identical to Ed25519 */ (R, s) := signature return [s] * G == R + [SHA-512(R ∥ P ∥ message)] * P } | ||
* | GNS: Sanitize APIs and align with LSD0001 | Martin Schanzenbach | 2022-03-27 |
| | |||
* | fix #7173 | Christian Grothoff | 2022-02-21 |
| | |||
* | add salt argument to GNUNET_CRYPTO_CS_r_derive() | Christian Grothoff | 2022-02-20 |
| | |||
* | -DHT: clean up peer selection logic | Christian Grothoff | 2022-01-02 |
| | |||
* | revise DHT hashing functions, add test logic | Christian Grothoff | 2022-01-02 |
| | |||
* | changed derive_secrets API | Gian Demarmels | 2021-12-21 |
| | | | | | | | | changed derive_secrets API repaired performance test uncrustify | ||
* | -fix ftbfs | Martin Schanzenbach | 2021-12-13 |
| | |||
* | add crypto_cs implementation | Lucien Heuzeveldt | 2021-12-07 |
| | |||
* | add pk invariant check | Christian Grothoff | 2021-11-25 |
| |