synor/apps/web
Gulshan Yadav 3041c6d654 feat(crypto-wasm): add deterministic Dilithium3 key derivation and hybrid signatures
This commit enables full wallet recovery from BIP-39 mnemonics by implementing
deterministic Dilithium3 key derivation using HKDF-SHA3-256 with domain separation.

Changes:
- crates/synor-crypto-wasm: Implement deterministic Dilithium keygen
  - Use HKDF with info="synor:dilithium:v1" for key derivation
  - Enable pqc_dilithium's crypto_sign_keypair via dilithium_kat cfg flag
  - Add proper memory zeroization on drop
  - Add tests for deterministic key generation

- apps/web: Update transaction signing for hybrid signatures
  - Add signTransactionHybrid() for Ed25519 + Dilithium3 signatures
  - Add createSendTransactionHybrid() for quantum-resistant transactions
  - Update fee estimation for larger hybrid signature size (~5.5KB/input)
  - Maintain legacy Ed25519-only functions for backwards compatibility

- WASM module: Rebuild with deterministic keygen
  - Update synor_crypto_bg.wasm with new implementation
  - Module size reduced to ~470KB (optimized)

- Documentation updates:
  - Update mobile wallet plan: React Native -> Flutter
  - Add testnet-first approach note
  - Update explorer frontend progress to 90%
2026-01-10 05:34:26 +05:30
..
public Initial commit: Synor blockchain monorepo 2026-01-08 05:22:17 +05:30
src feat(crypto-wasm): add deterministic Dilithium3 key derivation and hybrid signatures 2026-01-10 05:34:26 +05:30
.gitignore Initial commit: Synor blockchain monorepo 2026-01-08 05:22:17 +05:30
index.html Initial commit: Synor blockchain monorepo 2026-01-08 05:22:17 +05:30
package.json Initial commit: Synor blockchain monorepo 2026-01-08 05:22:17 +05:30
postcss.config.js Initial commit: Synor blockchain monorepo 2026-01-08 05:22:17 +05:30
README.md Initial commit: Synor blockchain monorepo 2026-01-08 05:22:17 +05:30
tailwind.config.js Initial commit: Synor blockchain monorepo 2026-01-08 05:22:17 +05:30
tsconfig.json Initial commit: Synor blockchain monorepo 2026-01-08 05:22:17 +05:30
tsconfig.node.json Initial commit: Synor blockchain monorepo 2026-01-08 05:22:17 +05:30
vite.config.ts feat: Phase 7 critical tasks - security, formal verification, WASM crypto 2026-01-10 01:40:03 +05:30

Synor Web Wallet

A quantum-secure web wallet for the Synor blockchain.

Features

  • Create and recover wallets using BIP39 mnemonic phrases
  • Send and receive SYNOR tokens
  • View transaction history
  • Connect to any Synor RPC node
  • Support for mainnet, testnet, and devnet

Development

# Install dependencies
npm install

# Start development server
npm run dev

# Build for production
npm run build

# Preview production build
npm run preview

Configuration

Create a .env.local file:

VITE_RPC_ENDPOINT=http://localhost:16110

Security

  • Private keys are encrypted with AES-256-GCM using PBKDF2-derived keys
  • Seeds never leave the browser
  • No backend required - connects directly to Synor nodes

Architecture

src/
├── components/     # Reusable UI components
├── lib/            # Core libraries
│   ├── crypto.ts   # Cryptographic functions
│   ├── rpc.ts      # JSON-RPC client
│   └── transaction.ts # Transaction building
├── pages/          # Route pages
├── store/          # Zustand state management
└── App.tsx         # Main application