25-11-2 Quantum Threats and Preparations for Steem Blockchain

in AVLE 코리아2 months ago

Because there are growing concerns about the potential threats posed by quantum computers, I asked an AI about it and received the following answer.
Shouldn’t Steem also start preparing for this?

양자 컴퓨터의 위협에 대비하기 위해 스팀은 어떻게 해야하나를 AI에게 물었더니 다음과 같은 설명을 해왔습니다. 스팀도 지금부터라도 뭔가를 준비해야 하는 것이 아닌가요?
이번 자료는 영문으로 작성했고 한글은 뒤에 있습니다.


Upgrading the Steem Blockchain to Quantum-Resistant Standards (Like QRL, IOTA, QANplatform) Using Lattice-Based or Hash-Based PQC

The Steem blockchain, a Delegated Proof of Stake (DPoS) platform, currently relies on ECDSA (Elliptic Curve Digital Signature Algorithm) for transaction signing and SHA-256 for hashing — both vulnerable to quantum computing attacks via Shor's algorithm (breaks public-key cryptography) and Grover's algorithm (speeds up brute-force hashing). To achieve quantum resistance like QRL (lattice-based), IOTA (hash-based XMSS), or QANplatform (NIST-standard PQC), Steem must fully replace its cryptographic primitives with Post-Quantum Cryptography (PQC) — specifically lattice-based (e.g., CRYSTALS-Dilithium / ML-DSA) or hash-based (e.g., SPHINCS+ / SLH-DSA) algorithms.

This is not a minor patch — it requires protocol-level redesign, community consensus, and a hard fork. Below is a detailed, step-by-step roadmap based on NIST PQC standards (2024–2025 finalized) and real-world quantum-resistant blockchain implementations.


1. Preparation Phase: Audit & Planning

TaskDescription
Cryptographic InventoryMap all uses of ECDSA, SHA-256, and any key exchange (e.g., ECDH) in Steem core (Graphene-based).
Threat ModelingAssess risks:
• Shor: Private key derivation from public keys
• Grover: Faster nonce/brute-force attacks
• "Harvest now, decrypt later" on historical data
Hybrid Cryptography StrategyStart with hybrid signatures: ECDSA + Dilithium or ECDSA + SPHINCS+ to maintain backward compatibility during transition.
Resource & Performance EstimationPQC keys are larger:
• Dilithium: 2–4 KB signatures (vs 64 bytes ECDSA)
• SPHINCS+: 8–50 KB
Expect 2–10× increase in transaction size, 10–50% slower verification.

2. Technical Implementation: PQC Integration

ComponentCurrentQuantum-Resistant ReplacementImplementation Notes
Digital SignaturesECDSA (secp256k1)ML-DSA (Dilithium) or SLH-DSA (SPHINCS+)Use liboqs or OpenQuantumSafe (OQS) C++ library. Wrap in Graphene transaction logic.
Hash FunctionsSHA-256SHA-3, BLAKE3, or Extendable Output Functions (XOFs)Replace block hashing and Merkle trees.
Key Generation & Wallets256-bit elliptic curve keysLattice-based (ring/module-LWE) or hash-based stateful/stateless keysNew address format (e.g., QRL-style or IOTA Winternitz).
Consensus (DPoS)Witness signatures via ECDSAPQC-signed blocks and witness proposalsWitnesses sign with Dilithium; validators verify with PQC.
Smart Contracts / AppsAssume ECDSAUpdate SDKs (e.g., Steem-JS) to support PQC signingOff-chain storage (IPFS) for large signatures.

Code Example (Pseudocode):

// Before: ECDSA
Signature sign(Transaction tx, PrivateKey sk) { return ECDSA_sign(tx.hash, sk); }

// After: Hybrid (ECDSA + Dilithium)
HybridSignature sign(Transaction tx, PrivateKey sk) {
    return {
        ecdsa: ECDSA_sign(tx.hash, sk),
        dilithium: Dilithium_sign(tx.hash, sk_pqc)
    };
}

3. Testing & Deployment Phase

StepAction
Local & Testnet TestingRun full PQC node on Steem testnet. Measure TPS, block time (target: <3s), storage bloat.
Security AuditEngage firms like Trail of Bits, Quantstamp, or PQC experts for side-channel and implementation audits.
Community GovernanceSubmit SIP (Steem Improvement Proposal). Require >50% witness approval (21 active witnesses).
Hard Fork Execution
1. Soft Fork: Allow hybrid signatures (optional PQC)
2. Hard Fork: Mandate PQC-only after migration window (e.g., 12 months)
User Migration
• Auto-convert old wallets to PQC addresses
• "Quantum-safe vault" for unmoved funds
• Airdrop or bridge to new chain if needed

4. Post-Launch: Maintenance & Crypto-Agility

TaskPurpose
Crypto-Agility FrameworkDesign pluggable crypto modules (e.g., CryptoPlugin::sign()). Switch from Dilithium to future PQC if broken.
MonitoringTrack quantum computing progress (IBM, Google, NIST). Trigger upgrade if >4,000 qubit fault-tolerant systems emerge.
EducationGuide users via Steemit, wallet apps to generate PQC keys.

Lattice vs. Hash-Based: Trade-offs

FeatureLattice-Based (Dilithium)Hash-Based (SPHINCS+)
SpeedFast signing/verificationSlower, especially signing
Signature Size2–4 KB8–50 KB
StatefulnessStatelessStateless (SPHINCS+), Stateful (XMSS)
MaturityNIST-standardized (ML-DSA)NIST-standardized (SLH-DSA)
Best ForHigh-throughput DPoS (Steem)Ultra-security, low trust

Recommendation for Steem: Start with Dilithium (ML-DSA) + hybrid mode, then phase out ECDSA.


Challenges & Risks

  • Performance hit: Larger blocks → higher bandwidth for witnesses.
  • User confusion: New address formats, wallet updates.
  • Coordination: DPoS makes upgrades easier than Bitcoin, but still needs strong witness leadership.
  • Timeline pressure: If no action by 2026, Steem risks losing trust vs. QRL, IOTA, or new quantum-safe chains.

Comparison Table

BlockchainConsensusPQC UsedStatus
SteemDPoSNone (ECDSA)Vulnerable
QRLPoSLattice (Kyber + Dilithium)Quantum-resistant
IOTATangleHash-based (XMSS/WOTS)Quantum-resistant
QANplatformPoSNIST PQC (hybrid)Quantum-resistant
Steem (Upgraded)DPoSML-DSA + SHA-3Achievable via hard fork

Final Recommendation:
Steem’s DPoS governance gives it an advantage over Bitcoin in upgrading speed. A witness-led PQC task force should begin NOW (2025) with:

  1. SIP for hybrid PQC support
  2. Testnet in Q1 2026
  3. Hard fork by end of 2027

Token holders: Vote for witnesses who support quantum readiness.
Developers: Join Steem GitHub and propose PQC integration.

Warning: Without action, Steem risks becoming obsolete in the quantum era — just like the news warned about Bitcoin.


한글

Steem 블록체인을 양자 내성 블록체인(QRL, IOTA, QANplatform)처럼 Lattice-based 또는 Hash-based PQC로 업그레이드하기 위한 작업

Steem 블록체인은 DPoS(Delegated Proof of Stake) 기반으로 ECDSA(타원 곡선 디지털 서명)와 SHA-256 해싱을 사용해 현재 양자 컴퓨팅(Shor's 및 Grover's 알고리즘)에 취약합니다. QRL(Quantum Resistant Ledger), IOTA(해시 기반 XMSS 서명), QANplatform(lattice-based PQC 기본 채택)처럼 양자 내성(post-quantum cryptography, PQC)을 구현하려면, 기존 암호화 원시를 lattice-based(격자 기반, e.g., CRYSTALS-Dilithium/ML-DSA) 또는 hash-based(해시 기반, e.g., SPHINCS+/SLH-DSA) 알고리즘으로 대체해야 합니다. 이는 단순한 패치가 아닌, 전체 프로토콜 재설계와 네트워크 전환을 요구합니다.

NIST(미국 표준기술연구소)의 PQC 표준화(2024~2025년 완료, ML-KEM/ML-DSA/SLH-DSA 채택)를 기반으로 한 업그레이드는 가능하지만, Steem의 분산 구조상 커뮤니티 합의와 하드포크가 핵심입니다. 아래에서 단계별 작업을 설명하겠습니다. (참고: Steem/Hive 커뮤니티에서 아직 공식 PQC 업그레이드 계획 없음; X 검색 결과도 논의 초기 단계.)

1. 준비 단계: 취약점 평가 및 계획 수립

  • 암호화 인벤토리 생성: Steem의 모든 암호화 요소(서명: ECDSA, 해싱: SHA-256, 키 교환: 필요 시 ECDH)를 나열. 양자 위협 모델(Shor's: 비대칭 키 깨기, Grover's: 해싱 속도 제곱근 향상) 분석.
  • 위험 평가: "Harvest now, decrypt later" 공격 대비. 과거 거래 데이터(공개키 노출된 지갑) 재암호화 필요성 검토.
  • 하이브리드 전략 채택: 즉시 전환 대신, 기존(ECDSA) + PQC(lattice/hash)를 병행(하이브리드 서명)으로 시작. 이는 백워드 호환성을 유지하며, 전환 기간(2~5년) 동안 사용.
  • 비용/자원 추정: PQC 키 크기 증가(ECDSA 256비트 → Dilithium 2~4KB)로 스토리지/트랜잭션 크기 2~10배 ↑, 처리 속도 10~50% ↓ 예상. DPoS의 증인 노드(21개)에서 테스트.

2. 기술 구현 단계: PQC 알고리즘 통합

  • 알고리즘 선택:
    • Lattice-based: ML-DSA(Dilithium)로 서명 대체. 격자 문제(LWE: Learning With Errors) 기반으로 양자 저항성 강함. 키 캡슐화(ML-KEM/Kyber)로 증인 간 키 교환.
    • Hash-based: SLH-DSA(SPHINCS+)로 서명. 해시 함수(SHA-3 등) 기반으로 상태 비저장(stateless), Grover 공격에 강함. IOTA처럼 XMSS(상태 기반 해시 서명) 변형 가능.
    • NIST FIPS 203/204/205 표준 준수. 라이브러리: OpenQuantumSafe(OQS) 또는 liboqs로 C++/Rust 구현(Steem은 Graphene 툴킷 기반).
  • 코드 수정:
    • 서명/검증 모듈 교체: Steem 노드 소스(steemd)에서 ECDSA 호출 부분을 PQC로 래핑. 예: 거래 서명 시 sign(message, private_key)dilithium_sign(message, private_key).
    • 해싱 강화: SHA-256 → SHA-3 또는 BLAKE3(양자 저항성 해시). 블록 해시 체인 재계산.
    • 스마트 컨트랙트/지갑 적응: PQC 키 형식 지원. 키 크기 증가로 IPFS(InterPlanetary File System)처럼 오프체인 저장(해시만 온체인) 도입.
    • 합의 메커니즘 적응: DPoS 증인 투표/블록 생성에 PQC 서명 적용. 하이브리드 합의(Quantum-Resilient DPoS)로 증인 키 탈취 방지.
  • 성능 최적화: Lattice는 계산 복잡도 ↑(폴리노미얼 연산), hash-based는 서명 크기 ↑. 병렬 처리나 모듈-lattice(MLWE)로 완화.

3. 테스트 및 배포 단계

  • 로컬/테스트넷 테스트: Steem 테스트넷에서 하드포크 시뮬레이션. PQC 라이브러리 통합 후, 트랜잭션 처리 속도/보안 감사(예: 사이드채널 공격 테스트).
  • 커뮤니티 합의: DPoS 증인(21명) 투표로 제안(Hive처럼). BIP(Bitcoin Improvement Proposal) 스타일의 SIP(Steem Improvement Proposal) 작성.
  • 하드포크 실행: 소프트포크(백워드 호환) → 하드포크(전체 전환). 포크 체인 생성 후 사용자 자산 마이그레이션(새 PQC 주소로 이전).
  • 마이그레이션: 기존 지갑 → PQC 지갑 전환. "Store now, migrate later" 전략으로 과거 데이터 보호.

4. 후속 관리: 모니터링 및 업그레이드

  • Crypto-Agility 구현: API 설계로 알고리즘 교체 용이(플러그인식). lattice 취약 시 hash로 스위치.
  • 감사 및 표준 준수: 외부 감사(예: Trail of Bits). NIST/CNSA 2.0 가이드라인 따름.
  • 도전 과제: 비용(수억 달러), 성능 저하, 사용자 채택 저조. QRL/IOTA처럼 신규 체인 생성이 더 쉽지만, Steem은 기존 사용자 기반 유지 필요.
단계주요 작업예상 도전예시 (Lattice vs. Hash-based)
준비인벤토리/위험 평가데이터 재암호화Lattice: LWE 문제 분석
Hash: 해시 충돌 테스트
구현알고리즘 통합/코드 수정키 크기 ↑ (2~10KB)Lattice: Dilithium 서명 (빠름)
Hash: SPHINCS+ (크기 큼)
테스트/배포테스트넷/하드포크합의 지연Lattice: 효율 ↑ (모듈 기반)
Hash: 상태 관리 복잡
관리감사/최적화Grover 공격Lattice: FHE 지원 가능
Hash: 무상태로 간단

Steem의 DPoS는 PoW(Ethereum)보다 업그레이드 용이하지만, 중앙화 논란 피하기 위해 투명한 투표 필수. 2026년까지(이전 보도처럼) 시작하지 않으면 경쟁 양자 내성 체인(QRL 등)에 밀릴 수 있습니다. 커뮤니티(steemit.com)에서 제안 참여 추천.