Signal Protocol implementation with full X3DH + Double Ratchet: - M1: Core types, CryptoProvider interface, KDF chain functions, SubtleCrypto+noble/curves provider, MemoryStorage - M2: X3DH key agreement (identity keys, signed prekeys, one-time prekeys, bundle processing for both initiator and responder) - M3: Double Ratchet (symmetric-key ratchet, DH ratchet, skipped message key cache, out-of-order delivery, AAD-bound headers) 68 tests, 0 failures — including full integration test of X3DH handshake → Double Ratchet conversation. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
21 lines
568 B
JSON
21 lines
568 B
JSON
{
|
|
"name": "shade",
|
|
"private": true,
|
|
"workspaces": ["packages/*"],
|
|
"scripts": {
|
|
"test": "bun test --recursive",
|
|
"test:core": "cd packages/shade-core && bun test",
|
|
"test:crypto": "cd packages/shade-crypto-web && bun test",
|
|
"test:proto": "cd packages/shade-proto && bun test",
|
|
"test:server": "cd packages/shade-server && bun test",
|
|
"test:transport": "cd packages/shade-transport && bun test"
|
|
},
|
|
"devDependencies": {
|
|
"bun-types": "^1.3.11"
|
|
},
|
|
"dependencies": {
|
|
"@noble/curves": "^2.0.1",
|
|
"@noble/hashes": "^2.0.1"
|
|
}
|
|
}
|