> 🚀 Update! Were exploring Post-Quantum signature integration into BlackSilk Blockchain.
Thanks to https://github.com/mraksoll4 for valuable technical insights.
Full integration proposal below 👇
## 📄 BlackSilk Blockchain Post-Quantum Signature Integration Proposal
### 🧠 Motivation
With the future threat of quantum computing, it's essential to prepare cryptographic infrastructure for post-quantum security. As BlackSilk Blockchain is built from scratch in Rust, with a modular architecture and custom VM, it offers the perfect opportunity to integrate and experiment with post-quantum cryptography from the ground up.
The following is a proposal based on expert discussion (special thanks to @mraksoll) outlining a realistic integration plan for PQ signature schemes especially for tokens, high-throughput use cases, and contract verification.
### 🔐 Proposal Overview
#### ✅ 1. Signature Scheme: ML-DSA (Dilithium)
-
Why Dilithium?
- Efficient signature generation and verification.
- Strong NIST Level 2+ security.
- Ideal for tokens with many transactions.
- Deterministic key generation from a seed is feasible.
-
Target use cases:
- High-frequency token transfers.
- Smart contracts that rely on signature verification.
- Cold wallet key generation from seed phrases.
#### ✅ 2. Deterministic Key Generation
-
Falcon and Dilithium both expect entropy of:
- Falcon512 → 48 bytes
- Dilithium2 → up to 32 bytes (configurable)
-
Seed generation proposal:
- Use
SHA384(passphrase)
or
SHA384(seed_phrase)
to generate fixed-length entropy.
- SHA384 outputs exactly 48 bytes ideal for Falcon512.
- Security tradeoff is negligible since seed is private.
*"hash function SHA384 simple to get correct format for feed it to keygen. since 48 bytes of entropy are expected by default." @mraksoll*
### 🔧 Technical Integration Plan
#### 🔸 Keypair Generation
- Implement wrapper function:
fn keypair_from_seed(seed: &[u8]) -> (PublicKey, SecretKey)
- Extend PQClean / cryptoquick / libpqcrypto wrappers to support deterministic keypair derivation.
- Accept seed from wallet logic or RPC (encrypted in production).
#### 🔸 Signature Verification in Runtime / Contracts
- Add Dilithium / Falcon signature verification in:
- Native runtime (WASM runtime or custom VM)
- Or expose via syscall / precompiled contract (like EVM secp256k1)
- Optimize verification cost to make on-chain usage viable.
#### 🔸 Wallet Compatibility
- For now, BIP39 is incompatible with PQ signatures, but a custom single-key format can be used.
- Use a simplified derivation path like:
PQ-Wallet: SHA384(seed phrase) → 48-byte → Falcon512 keypair
*"bip39 possible stop work, need change it for now for single key logic if use PQ... at pq no exist bip39
"* @mraksoll_
### 🚫 Known Limitations
-
Signature sizes:
- Falcon512: ~666 bytes
- Dilithium2: ~2.4 KB
- SLH-DSA: >7 KB (not recommended for blockchain usage)
-
May impact storage/bandwidth for high-volume transaction blocks.
-
Contracts may require gas adjustment for verifying large signatures.
### 🧩 Optional Enhancements
- Add support for multiple schemes: Falcon (for coins), Dilithium (for tokens).
- Allow contract to specify accepted scheme type.
- Add PQ address formats to explorer and wallet frontend.
### ✅ Final Notes
BlackSilk Blockchain is designed from scratch. This allows us to fully integrate post-quantum cryptography without legacy constraints. With your contributions (e.g., modifying the libs to accept seed-based keygen), we can create a truly future-proof blockchain one that leads in security, not follows.
Thanks to https://github.com/mraksoll4 for valuable technical insights.
Full integration proposal below 👇
## 📄 BlackSilk Blockchain Post-Quantum Signature Integration Proposal
### 🧠 Motivation
With the future threat of quantum computing, it's essential to prepare cryptographic infrastructure for post-quantum security. As BlackSilk Blockchain is built from scratch in Rust, with a modular architecture and custom VM, it offers the perfect opportunity to integrate and experiment with post-quantum cryptography from the ground up.
The following is a proposal based on expert discussion (special thanks to @mraksoll) outlining a realistic integration plan for PQ signature schemes especially for tokens, high-throughput use cases, and contract verification.
### 🔐 Proposal Overview
#### ✅ 1. Signature Scheme: ML-DSA (Dilithium)
-
Why Dilithium?
- Efficient signature generation and verification.
- Strong NIST Level 2+ security.
- Ideal for tokens with many transactions.
- Deterministic key generation from a seed is feasible.
-
Target use cases:
- High-frequency token transfers.
- Smart contracts that rely on signature verification.
- Cold wallet key generation from seed phrases.
#### ✅ 2. Deterministic Key Generation
-
Falcon and Dilithium both expect entropy of:
- Falcon512 → 48 bytes
- Dilithium2 → up to 32 bytes (configurable)
-
Seed generation proposal:
- Use
SHA384(passphrase)
or
SHA384(seed_phrase)
to generate fixed-length entropy.
- SHA384 outputs exactly 48 bytes ideal for Falcon512.
- Security tradeoff is negligible since seed is private.
*"hash function SHA384 simple to get correct format for feed it to keygen. since 48 bytes of entropy are expected by default." @mraksoll*
### 🔧 Technical Integration Plan
#### 🔸 Keypair Generation
- Implement wrapper function:
fn keypair_from_seed(seed: &[u8]) -> (PublicKey, SecretKey)
- Extend PQClean / cryptoquick / libpqcrypto wrappers to support deterministic keypair derivation.
- Accept seed from wallet logic or RPC (encrypted in production).
#### 🔸 Signature Verification in Runtime / Contracts
- Add Dilithium / Falcon signature verification in:
- Native runtime (WASM runtime or custom VM)
- Or expose via syscall / precompiled contract (like EVM secp256k1)
- Optimize verification cost to make on-chain usage viable.
#### 🔸 Wallet Compatibility
- For now, BIP39 is incompatible with PQ signatures, but a custom single-key format can be used.
- Use a simplified derivation path like:
PQ-Wallet: SHA384(seed phrase) → 48-byte → Falcon512 keypair
*"bip39 possible stop work, need change it for now for single key logic if use PQ... at pq no exist bip39

### 🚫 Known Limitations
-
Signature sizes:
- Falcon512: ~666 bytes
- Dilithium2: ~2.4 KB
- SLH-DSA: >7 KB (not recommended for blockchain usage)
-
May impact storage/bandwidth for high-volume transaction blocks.
-
Contracts may require gas adjustment for verifying large signatures.
### 🧩 Optional Enhancements
- Add support for multiple schemes: Falcon (for coins), Dilithium (for tokens).
- Allow contract to specify accepted scheme type.
- Add PQ address formats to explorer and wallet frontend.
### ✅ Final Notes
BlackSilk Blockchain is designed from scratch. This allows us to fully integrate post-quantum cryptography without legacy constraints. With your contributions (e.g., modifying the libs to accept seed-based keygen), we can create a truly future-proof blockchain one that leads in security, not follows.