This folder contains source code that demonstrates the proper use of the OpenSSL
library API.
+Note: Makefiles are provided in the demo subfolders to demonstrate how to build
+them, but are not frequently used. Configure openssl with enable-demos to build
+them automatically through the perl based build system
+
bio: Demonstration of a simple TLS client and server
certs: Demonstration of creating certs, using OCSP
cipher:
aesgcm.c Demonstration of symmetric cipher GCM mode encrypt/decrypt
aesccm.c Demonstration of symmetric cipher CCM mode encrypt/decrypt
+ariacbc.c Demonstration of symmetric cipher CBC mode encrypt/decrypt
-cms:
+cms: Demonstrations related to the Cryptographic Message
+ Syntax (CMS) standard
digest:
EVP_MD_demo.c Compute a digest from multiple buffers
EVP_MD_stdin.c Compute a digest with data read from stdin
+EVP_MD_xof.c Compute a digest using the SHAKE256 XOF
EVP_f_md.c Compute a digest using BIO and EVP_f_md
-pkey:
-EVP_PKEY_EC_keygen.c Generate an EC key.
+encode:
+rsa_encode.c Encode and decode PEM-encoded RSA keys
+
+encrypt:
+rsa_encrypt.c Encrypt and decrypt data using an RSA keypair.
+
+guide: Sample code from the OpenSSL Guide tutorials. See
+ the oss-guide-quic-introduction(7) man page.
+quic-client-block.c: A simple blocking QUIC client
+quic-client-non-block.c: A simple non-blocking QUIC client
+quic-multi-stream.c: A simple QUIC client using multiple streams
+tls-client-block.c: A simple blocking SSL/TLS client
+tls-client-non-block.c: A simple non-blocking SSL/TLS client
+
+http3: Demonstration of how to use OpenSSL's QUIC capabilities
+ for HTTP/3.
+
+kdf:
+hkdf.c Demonstration of HMAC based key derivation
+pbkdf2.c Demonstration of PBKDF2 password based key derivation
+scrypt.c Demonstration of SCRYPT password based key derivation
-smime:
+keyexch:
+x25519.c Demonstration of X25519 based key exchange
+ecdh.c Demonstration of ECDH key exchange
+
+mac:
+gmac.c Demonstration of GMAC message authentication
+poly1305.c Demonstration of Poly1305-AES message authentication
+siphash.c Demonstration of SIPHASH message authentication
pkcs12:
pkread.c Print out a description of a PKCS12 file.
pkwrite.c Add a password to an existing PKCS12 file.
+pkey:
+EVP_PKEY_EC_keygen.c Generate an EC key.
+EVP_PKEY_RSA_keygen.c Generate an RSA key.
+EVP_PKEY_DSA_keygen.c Generate a DSA key.
+EVP_PKEY_DSA_paramgen.c Generate a DSA param key.
+EVP_PKEY_DSA_paramvalidate.c Validate a DSA param key.
+EVP_PKEY_DSA_paramfromdata.c Load a DSA param key using raw data.
+
signature:
-EVP_Signature_demo.c Compute and verify a signature from multiple buffers
+EVP_EC_Signature_demo.c Compute and verify an EC signature.
+EVP_DSA_Signature_demo.c Compute and verify a DSA signature.
+EVP_ED_Signature_demo.c Compute and verify an ED25519 signature.
+rsa_pss_direct.c Compute and verify an RSA-PSS signature from a hash
+rsa_pss_hash.c Compute and verify an RSA-PSS signature over a buffer
+
+smime: Demonstrations related to S/MIME
+
+sslecho:
+main.c Simple SSL/TLS echo client/server.