Contents¶
- Getting Started
- Project Goals
- Support Information
- Building The Library
- Configuring the Build
- Cross Compiling
- On Unix
- On macOS
- On Windows
- For iOS using XCode
- For Android
- Emscripten (WebAssembly)
- Supporting Older Distros
- Other Build-Related Tasks
- Building Applications
- Language Wrappers
- Minimized Builds
- Configure Script Options
--cpu=CPU--os=OS--cc=COMPILER--cc-min-version=MAJOR.MINOR--cc-bin=BINARY--cc-abi-flags=FLAGS--cxxflags=FLAGS--extra-cxxflags=FLAGS--ldflags=FLAGS--ar-command=AR--ar-options=AR_OPTIONS--msvc-runtime=RT--with-endian=ORDER--with-os-features=FEAT--without-os-features=FEAT--disable-sse2--disable-ssse3--disable-sse4.1--disable-sse4.2--disable-avx2--disable-bmi2--disable-rdrand--disable-rdseed--disable-aes-ni--disable-sha-ni--disable-altivec--disable-neon--disable-armv8crypto--disable-powercrypto--with-debug-info--with-sanitizers--enable-sanitizers=SAN--without-stack-protector--with-coverage--with-coverage-info--disable-shared-library--disable-static-library--optimize-for-size--no-optimizations--debug-mode--amalgamation--system-cert-bundle=PATH--with-build-dir=DIR--with-external-includedir=DIR--with-external-libdir=DIR--define-build-macro--with-sysroot-dir=DIR--with-openmp--link-method=METHOD--with-local-config=FILE--distribution-info=STRING--maintainer-mode--werror-mode--no-install-python-module--with-python-versions=N.M--with-valgrind--unsafe-fuzzer-mode--build-fuzzers=TYPE--with-fuzzer-lib=LIB--build-targets=BUILD_TARGETS--boost-library-name--without-documentation--with-sphinx--with-pdf--with-rst2man--with-doxygen--module-policy=POL--enable-modules=MODS--disable-modules=MODS--minimized-build--with-boost--with-bzip2--with-lzma--with-zlib--with-openssl--with-commoncrypto--with-sqlite3--with-tpm--program-suffix=SUFFIX--library-suffix=SUFFIX--prefix=DIR--docdir=DIR--bindir=DIR--libdir=DIR--mandir=DIR--includedir=DIR
- API Reference
- Versioning
- Memory container
- Random Number Generators
- Hash Functions and Checksums
- Block Ciphers
- Stream Ciphers
- Message Authentication Codes (MAC)
- Cipher Modes
- Public Key Cryptography
- X.509 Certificates and CRLs
- Transport Layer Security (TLS)
- Credentials Manager
- BigInt
- Key Derivation Functions
- Password Based Key Derivation
- AES Key Wrapping
- Password Hashing
- Cryptobox
- Secure Remote Password
- PSK Database
- Pipe/Filter Message Processing
- Format Preserving Encryption
- Threshold Secret Sharing
- Elliptic Curve Operations
- Lossless Data Compression
- PKCS#11
- Trusted Platform Module (TPM)
- One Time Passwords
- Roughtime
- ZFEC Forward Error Correction
- FFI (C Binding)
- Return Codes
- Versioning
- Utility Functions
- Random Number Generators
- Block Ciphers
- Hash Functions
- Message Authentication Codes
- Symmetric Ciphers
- PBKDF
- KDF
- Multiple Precision Integers
- Password Hashing
- Public Key Creation, Import and Export
- RSA specific functions
- DSA specific functions
- ElGamal specific functions
- Diffie-Hellman specific functions
- Public Key Encryption/Decryption
- Signature Generation
- Signature Verification
- Key Agreement
- X.509 Certificates
- X.509 Certificate Revocation Lists
- Environment Variables
- Python Binding
- Versioning
- Random Number Generators
- Hash Functions
- Message Authentication Codes
- Ciphers
SymmetricCipherSymmetricCipher.algo_nameSymmetricCipher.tag_lengthSymmetricCipher.default_nonce_lengthSymmetricCipher.update_granularitySymmetricCipher.is_authenticatedSymmetricCipher.valid_nonce_lengthSymmetricCipher.clearSymmetricCipher.set_keySymmetricCipher.set_assoc_dataSymmetricCipher.startSymmetricCipher.updateSymmetricCipher.finish
- Bcrypt
- PBKDF
- Scrypt
- KDF
- Public Key
- Private Key
PrivateKeyPrivateKey.createPrivateKey.loadPrivateKey.load_rsaPrivateKey.load_dsaPrivateKey.load_dhPrivateKey.load_elgamalPrivateKey.load_ecdsaPrivateKey.load_ecdhPrivateKey.load_sm2PrivateKey.get_public_keyPrivateKey.to_pemPrivateKey.to_derPrivateKey.algo_namePrivateKey.exportPrivateKey.export_encryptedPrivateKey.get_field
- Public Key Operations
- Multiple Precision Integers (MPI)
- Format Preserving Encryption (FE1 scheme)
- HOTP
- X509Cert
X509CertX509Cert.time_startsX509Cert.time_expiresX509Cert.to_stringX509Cert.fingerprintX509Cert.serial_numberX509Cert.authority_key_idX509Cert.subject_key_idX509Cert.subject_public_key_bitsX509Cert.subject_public_keyX509Cert.subject_dnX509Cert.issuer_dnX509Cert.hostname_matchX509Cert.not_beforeX509Cert.not_afterX509Cert.allowed_usageX509Cert.verifyX509Cert.validation_statusX509Cert.is_revoked
- X509CRL
- Command Line Interface
- Deprecated Features
- Development Roadmap
- Credits
- ABI Stability
- Notes for Distributors
- Security Advisories
- Side Channels
- Modular Exponentiation
- Barrett Reduction
- RSA
- Decryption of PKCS #1 v1.5 Ciphertexts
- Verification of PKCS #1 v1.5 Signatures
- OAEP
- ECC point decoding
- ECC scalar multiply
- ECDH
- ECDSA
- x25519
- TLS CBC ciphersuites
- CBC mode padding
- AES
- GCM
- OCB
- Poly1305
- DES/3DES
- Twofish
- ChaCha20, Serpent, Threefish, …
- IDEA
- Hash Functions
- Memory comparisons
- Memory zeroizing
- Memory allocation
- Automated Analysis
- References
- Developer Reference