All Projects → jedisct1 → zig-eddsa-key-blinding

jedisct1 / zig-eddsa-key-blinding

Licence: MIT license
A Zig implementation of EdDSA signatures with blind keys.

Programming Languages

Zig
133 projects

Projects that are alternatives of or similar to zig-eddsa-key-blinding

ed25519
Dart port of ed25519 from Go Cryptography ed25519
Stars: ✭ 18 (+20%)
Mutual labels:  ed25519, eddsa
noble-ed25519
Fastest JS implementation of ed25519, x25519 & ristretto255. Independently audited, high-security, 0-dependency EDDSA signatures and ECDH key agreement
Stars: ✭ 220 (+1366.67%)
Mutual labels:  ed25519, eddsa
zlm
Zig linear mathemathics
Stars: ✭ 67 (+346.67%)
Mutual labels:  zig-package
wasm
fast wasm modules
Stars: ✭ 37 (+146.67%)
Mutual labels:  ed25519
libeddsa
cryptographic library for ed25519 and curve25519
Stars: ✭ 20 (+33.33%)
Mutual labels:  ed25519
wascap
Embed, extract, and validate capability claims in JWTs for WebAssembly modules
Stars: ✭ 59 (+293.33%)
Mutual labels:  ed25519
mach-glfw
Ziggified GLFW bindings with 100% API coverage, zero-fuss installation, cross compilation, and more.
Stars: ✭ 186 (+1140%)
Mutual labels:  zig-package
rust-minisign
A pure Rust implementation of the Minisign signature tool.
Stars: ✭ 76 (+406.67%)
Mutual labels:  ed25519
zgt
Zig GUI Toolkit: Portable library for making native GUIs in Zig
Stars: ✭ 218 (+1353.33%)
Mutual labels:  zig-package
ed25519-hd-key
🔐 Key Derivation for ed25519
Stars: ✭ 54 (+260%)
Mutual labels:  ed25519
Kryptor
A simple, modern, and secure encryption and signing tool that aims to be a better version of age and Minisign.
Stars: ✭ 267 (+1680%)
Mutual labels:  ed25519
iroha-ed25519
RFC8032 compatible Ed25519 implementation with pluggable hash (sha2-512, sha3-512)
Stars: ✭ 28 (+86.67%)
Mutual labels:  ed25519
zigdig
naive dns client library in zig
Stars: ✭ 26 (+73.33%)
Mutual labels:  zig-package
rhonabwy
Javascript Object Signing and Encryption (JOSE) library - JWK, JWKS, JWS, JWE and JWT
Stars: ✭ 33 (+120%)
Mutual labels:  eddsa
sdk
TinyVG software development kit
Stars: ✭ 135 (+800%)
Mutual labels:  zig-package
zig-args
Simple-to-use argument parser with struct-based config
Stars: ✭ 106 (+606.67%)
Mutual labels:  zig-package
rawr-x3dh
TypeScript Implementation of X3DH
Stars: ✭ 51 (+240%)
Mutual labels:  ed25519
zacho
Zig's Mach-O parser
Stars: ✭ 27 (+80%)
Mutual labels:  zig-package
zbox
termbox like terminal UI library for zig
Stars: ✭ 30 (+100%)
Mutual labels:  zig-package
vegawallet
Command-line tool to manage your Vega Protocol wallet, a protocol for creating and trading derivatives on a fully decentralised network.
Stars: ✭ 64 (+326.67%)
Mutual labels:  ed25519

EdDSA signatures with blind keys

A Zig implementation of the EdDSA key blinding proposal.

    // Create a standard Ed25519 key pair
    const kp = try Ed25519.KeyPair.create(null);

    // Create a random blinding seed
    var blind: [32]u8 = undefined;
    crypto.random.bytes(&blind);

    // Blind the key pair
    const blind_kp = try BlindEd25519.blind(kp, blind);

    // Sign a message and check that it can be verified with the blind public key
    const msg = "test";
    const sig = try BlindEd25519.sign(msg, blind_kp, null);
    try Ed25519.verify(sig, msg, blind_kp.blind_public_key);

    // Unblind the public key
    const pk = try BlindEd25519.unblind_public_key(blind_kp.blind_public_key, blind);
    try std.testing.expectEqualSlices(u8, &pk, &kp.public_key);
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].