Skip to content

Latest commit

 

History

History
47 lines (31 loc) · 1018 Bytes

File metadata and controls

47 lines (31 loc) · 1018 Bytes

C# Wrapper Examples

This directory contains examples that demonstrate using the C# wrapper.

These assume the use of wolfssl\wrapper\CSharp\wolfSSL_CSharp.sln.

wolfSSL-TLS-pq

wolfSSL Server and Client using PQC algorithms (ML-KEM / ML-DSA).

Build Options

wrapper/CSharp/user_settings.h already enables these, so a wolfSSL built against it needs nothing added:

HAVE_MLKEM
WOLFSSL_HAVE_MLKEM
WOLFSSL_DTLS_CH_FRAG
WOLFSSL_HAVE_MLDSA
WOLFSSL_SHAKE128
WOLFSSL_SHAKE256

On Linux that is:

cd wolfssl
./configure --enable-usersettings CPPFLAGS=-I$PWD/wrapper/CSharp
make && sudo make install

The Visual Studio wolfssl project needs the same defines added to it. The wolfSSL_CSharp project needs none: the wrapper compiles the ML-KEM and ML-DSA bindings unconditionally.

wolfSSL-TLS-pq-Server

wolfSSL Server using ML-DSA-87.

wolfSSL-TLS-pq-ServerThreaded

Threaded version of wolfSSL-TLS-pq-Server.

wolfSSL-TLS-pq-Client

wolfSSL Client using ML-KEM-1024/ML-DSA-87.