[PR #260] Add @voidly/agent-sdk — Double Ratchet + ML-KEM-768 hybrid #5386

Open
opened 2026-06-19 23:44:33 -05:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/sobolevn/awesome-cryptography/pull/260
Author: @EmperorMew
Created: 4/23/2026
Status: 🔄 Open

Base: masterHead: add-voidly-sdk


📝 Commits (1)

  • 346b725 Add @voidly/agent-sdk — X3DH + Double Ratchet with hybrid PQ key exchange

📊 Changes

1 file changed (+1 additions, -0 deletions)

View changed files

📝 README.md (+1 -0)

📄 Description

Adds @voidly/agent-sdk to the JavaScript section.

What it is

A TypeScript SDK that implements the Signal-family messaging primitives in the browser and Node:

  • X3DH asynchronous key agreement (signed prekeys + one-time prekeys).
  • Double Ratchet — DH ratchet for post-compromise recovery, symmetric hash ratchet for per-message forward secrecy.
  • Hybrid X25519 + ML-KEM-768 key exchange (NIST FIPS 203, harvest-now-decrypt-later resistant).
  • Deniable authentication via HMAC-SHA256 over a shared DH secret (either party can produce the MAC).
  • Sealed sender + constant-size message padding for metadata privacy.
  • Replay protection (sliding-window message ID dedup).

Implementation notes

  • X3DH, Double Ratchet, deniable auth, sealed sender, padding: implemented in this SDK on top of TweetNaCl primitives (X25519, XSalsa20-Poly1305, Ed25519, HMAC-SHA256).
  • ML-KEM-768 itself: delegated to the upstream mlkem npm package. The hybrid construction (X25519 ⊕ ML-KEM shared secrets fed into HKDF) is implemented here.

Checklist

  • Alphabetical placement (leading @ sorts before asmCrypto).
  • Description under 350 chars, ends with a period.
  • One link per commit, one commit per PR.
  • yarn test (remark-lint) passes locally.

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/sobolevn/awesome-cryptography/pull/260 **Author:** [@EmperorMew](https://github.com/EmperorMew) **Created:** 4/23/2026 **Status:** 🔄 Open **Base:** `master` ← **Head:** `add-voidly-sdk` --- ### 📝 Commits (1) - [`346b725`](https://github.com/sobolevn/awesome-cryptography/commit/346b72533a43a99085e461d318a85788975d2cbb) Add @voidly/agent-sdk — X3DH + Double Ratchet with hybrid PQ key exchange ### 📊 Changes **1 file changed** (+1 additions, -0 deletions) <details> <summary>View changed files</summary> 📝 `README.md` (+1 -0) </details> ### 📄 Description Adds `@voidly/agent-sdk` to the JavaScript section. ### What it is A TypeScript SDK that implements the Signal-family messaging primitives in the browser and Node: - **X3DH** asynchronous key agreement (signed prekeys + one-time prekeys). - **Double Ratchet** — DH ratchet for post-compromise recovery, symmetric hash ratchet for per-message forward secrecy. - **Hybrid X25519 + ML-KEM-768** key exchange (NIST FIPS 203, harvest-now-decrypt-later resistant). - **Deniable authentication** via HMAC-SHA256 over a shared DH secret (either party can produce the MAC). - **Sealed sender** + constant-size message padding for metadata privacy. - **Replay protection** (sliding-window message ID dedup). ### Implementation notes - X3DH, Double Ratchet, deniable auth, sealed sender, padding: implemented in this SDK on top of TweetNaCl primitives (X25519, XSalsa20-Poly1305, Ed25519, HMAC-SHA256). - ML-KEM-768 itself: delegated to the upstream `mlkem` npm package. The hybrid construction (X25519 ⊕ ML-KEM shared secrets fed into HKDF) is implemented here. ### Link - npm: https://www.npmjs.com/package/@voidly/agent-sdk - Source / protocol spec: https://github.com/voidly-ai ### Checklist - [x] Alphabetical placement (leading `@` sorts before `asmCrypto`). - [x] Description under 350 chars, ends with a period. - [x] One link per commit, one commit per PR. - [x] `yarn test` (remark-lint) passes locally. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
GiteaMirror added the pull-request label 2026-06-19 23:44:33 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/awesome-cryptography#5386