Overview of react-native-quick-crypto (RNQC) modules
mainRNQC provides a high-performance cryptographic suite for React Native that mirrors the Node.js crypto API. It is organized into several functional categories:
Core Modules
- Install Polyfills: Global polyfill injection for drop-in compatibility with Node.js-style code.
- Cipher: Symmetric encryption including AES, ChaCha20, and XChaCha20.
- Hash: Message digests such as SHA-2, SHA-3, and MD5.
- HMAC: Keyed-hash message authentication.
- Random: CSPRNG, UUIDs, and random integers.
- Keys: Key generation (RSA, EC) and
KeyObjectmanagement. - Signing: Digital signatures (RSA, ECDSA, Ed25519).
- Public Cipher: RSA asymmetric encryption/decryption.
- Utilities: One-shot hashing, timing-safe comparison, primes, and introspection.
Key Exchange
- DiffieHellman: Classic DH key exchange with standard groups.
- ECDH: Elliptic Curve Diffie-Hellman (P-256, secp256k1).
- Edwards & Montgomery: Ed25519, Ed448, X25519, and X448 signatures and key exchange.
Key Derivation
- PBKDF2: Password-based key derivation (RFC 2898).
- Scrypt: Memory-hard key derivation.
- HKDF: Extract-and-Expand KDF (RFC 5869).
- Argon2: Memory-hard password hashing (PHC winner).
- BLAKE3: Next-gen high-performance hashing and KDF.
Advanced
- Post-Quantum (PQC): ML-DSA / SLH-DSA signatures and ML-KEM key encapsulation.
- KMAC: Keccak Message Authentication Code (KMAC128/KMAC256).
- Certificate: SPKAC certificate request processing.
- X.509: X.509 certificate parsing and validation.
- Subtle (WebCrypto): W3C Web Cryptography API implementation.