Suite Packages

Overview

MetaMUI Crypto suite packages provide curated collections of algorithms optimized for specific use cases. Each suite is carefully selected to provide comprehensive cryptographic capabilities while maintaining compatibility and performance.

Available Suites

Suite Algorithms Focus Best For
PQC Suite 10 algorithms NIST Post-Quantum Future-proof security
KPQC Suite 4 families Korean Standards Regional compliance
Recommended 8 algorithms Balanced selection General purpose

PQC Suite

NIST Standardized Post-Quantum Cryptography

The PQC Suite provides all NIST-standardized post-quantum algorithms, ensuring your applications are protected against both classical and quantum computer attacks.

Included Algorithms

Key Encapsulation Mechanisms (3)

Digital Signatures (7)

Use Cases

Implementation Example

from metamui_crypto.suites import PQCSuite

# Key Exchange
kem_public, kem_private = PQCSuite.ML_KEM_768.generate_keypair()
ciphertext, shared_secret = PQCSuite.ML_KEM_768.encapsulate(kem_public)

# Digital Signatures
sig_public, sig_private = PQCSuite.ML_DSA_65.generate_keypair()
signature = PQCSuite.ML_DSA_65.sign(message, sig_private)
valid = PQCSuite.ML_DSA_65.verify(message, signature, sig_public)

# Compact Signatures
falcon_pub, falcon_priv = PQCSuite.Falcon512.generate_keypair()
compact_sig = PQCSuite.Falcon512.sign(message, falcon_priv)

Performance Characteristics

Algorithm Operation Time Size
ML-KEM-768 Keygen 50 μs 2.4 KB keypair
ML-DSA-65 Sign 300 μs 3.3 KB signature
Falcon-512 Sign 200 μs 690 B signature
SLH-DSA Sign 5 ms 17 KB signature

KPQC Suite

Korean Post-Quantum Cryptography Standards

The KPQC Suite implements algorithms standardized by the Korean Information Security Agency (KISA) and National Security Research Institute (NSR), providing sovereign cryptographic capabilities.

Included Algorithm Families

SMAUG-T (Lattice KEM)

Haetae (Lattice Signatures)

AIMer (MPC Signatures)

NTRU+ (NTRU Variant)

Regional Compliance

Implementation Example

import id.metamui.crypto.suites.KPQCSuite;

// SMAUG-T Key Exchange
KeyPair smaugKeys = KPQCSuite.SmaugT3.generateKeypair();
EncapsulationResult result = KPQCSuite.SmaugT3.encapsulate(smaugKeys.getPublic());

// Haetae Signatures
KeyPair haetaeKeys = KPQCSuite.Haetae3.generateKeypair();
byte[] signature = KPQCSuite.Haetae3.sign(message, haetaeKeys.getPrivate());

// AIMer MPC Signatures
KeyPair aimerKeys = KPQCSuite.Aimer192f.generateKeypair();
byte[] mpcSignature = KPQCSuite.Aimer192f.sign(message, aimerKeys.getPrivate());

// NTRU+ Key Exchange
KeyPair ntruKeys = KPQCSuite.NtruPlus768.generateKeypair();
EncapsulationResult ntruResult = KPQCSuite.NtruPlus768.encapsulate(ntruKeys.getPublic());

Carefully Curated Algorithm Selection

The Recommended Suite provides a balanced selection of 8 algorithms covering all essential cryptographic operations with optimal performance and security trade-offs.

Included Algorithms

Category Algorithm Rationale
Hash BLAKE3 Fastest, parallelizable
Hash SHA-256 Industry standard
AEAD ChaCha20-Poly1305 Modern, fast
AEAD AES-256-GCM Hardware accelerated
Signature Ed25519 Compact, fast
PQ Signature Falcon-512 Quantum-resistant
PQ KEM ML-KEM-768 NIST standard
KDF Argon2id Password hashing

Why These Algorithms?

BLAKE3

ChaCha20-Poly1305

Ed25519

ML-KEM-768

Usage Patterns

using MetaMUI.Crypto.RecommendedSuite;

public class CryptoService
{
    // Fast hashing
    public byte[] HashData(byte[] data)
    {
        return Recommended.Blake3.ComputeHash(data);
    }
    
    // Secure encryption
    public (byte[] ciphertext, byte[] tag) EncryptData(byte[] data, byte[] key)
    {
        var nonce = Recommended.GenerateNonce();
        return Recommended.ChaCha20Poly1305.Encrypt(data, key, nonce);
    }
    
    // Digital signatures
    public byte[] SignDocument(byte[] document, byte[] privateKey)
    {
        return Recommended.Ed25519.Sign(document, privateKey);
    }
    
    // Post-quantum key exchange
    public byte[] QuantumSafeKeyExchange(byte[] peerPublicKey)
    {
        var (ciphertext, sharedSecret) = Recommended.MlKem768.Encapsulate(peerPublicKey);
        return sharedSecret;
    }
    
    // Password hashing
    public string HashPassword(string password)
    {
        return Recommended.Argon2id.Hash(password);
    }
}

Performance Comparison

Operation Algorithm Speed vs Alternative
Hash 1MB BLAKE3 0.8ms 3x faster than SHA-256
Encrypt 1MB ChaCha20 1.2ms 1.5x faster than AES (no HW)
Sign Ed25519 0.05ms 10x faster than RSA-2048
KEM ML-KEM-768 0.1ms 100x faster than RSA-3072

Choosing the Right Suite

Decision Matrix

Requirement PQC Suite KPQC Suite Recommended
Quantum resistance ✅✅✅ ✅✅✅ ✅✅
Performance ✅✅ ✅✅ ✅✅✅
Compliance (US) ✅✅✅ ✅✅
Compliance (Korea) ✅✅✅ ✅✅
Ease of use ✅✅ ✅✅ ✅✅✅
Algorithm variety ✅✅✅ ✅✅ ✅✅

Recommendations by Industry

Financial Services

Government/Defense

Technology Companies

Healthcare


Custom Suite Creation

For Enterprise+ customers, we offer custom suite creation:

# custom-suite.yaml
name: MyCompany Crypto Suite
version: 1.0.0
algorithms:
  hash:
    - BLAKE3
    - SHA3-256
  aead:
    - ChaCha20-Poly1305
    - AES-256-GCM
  signatures:
    - Ed25519
    - ML-DSA-65
  kem:
    - ML-KEM-768
    - SMAUG-T3
  kdf:
    - Argon2id
    - HKDF-SHA256

Contact enterprise@metamui.id for custom suite development.


Suite Migration Guide

From Classical to Post-Quantum

# Phase 1: Hybrid Mode
def hybrid_key_exchange():
    # Classical ECDH
    ecdh_shared = perform_ecdh()
    
    # Post-quantum KEM
    pq_shared = PQCSuite.ML_KEM_768.encapsulate(public_key)[1]
    
    # Combine both
    final_key = kdf(ecdh_shared + pq_shared)
    return final_key

# Phase 2: Full Migration
def quantum_safe_key_exchange():
    return PQCSuite.ML_KEM_768.encapsulate(public_key)[1]

Performance Testing

func BenchmarkSuites() {
    // Test each suite
    suites := []Suite{PQCSuite, KPQCSuite, RecommendedSuite}
    
    for _, suite := range suites {
        benchmark(suite)
        measureMemory(suite)
        testCompatibility(suite)
    }
}

Support & Resources