====== 4.1 Getting Started ======
Quick start guide for developers integrating WvdS.System.Security.Cryptography.
----
===== Installation =====
dotnet add package EMSR.Crypto
----
===== Configuration =====
Add the following at application startup (Program.cs):
using WvdS.System.Security.Cryptography;
// Optional: Set OpenSSL path (if not in system PATH)
CryptoConfig.OpenSslPath = @"C:\OpenSSL\bin";
// Activate crypto mode
CryptoConfig.DefaultMode = CryptoMode.Hybrid;
-> API: [[en:int:pqcrypt:api:cryptoconfig|CryptoConfig]]((Complete documentation of configuration options)), [[en:int:pqcrypt:api:cryptomode|CryptoMode]]((Enum with Classic, Hybrid, PostQuantum))
----
===== First Hybrid Certificate =====
using System.Security.Cryptography;
using System.Security.Cryptography.X509Certificates;
using WvdS.System.Security.Cryptography;
using WvdS.System.Security.Cryptography.X509Certificates;
// Create RSA key
using var rsa = RSA.Create(4096);
// Certificate request
var request = new CertificateRequest(
"CN=MyServer, O=MyCompany",
rsa,
HashAlgorithmName.SHA256,
RSASignaturePadding.Pkcs1);
// Create self-signed certificate
// -> Automatically hybrid (RSA + ML-DSA) when CryptoMode.Hybrid is active
var cert = request.CreateSelfSigned(
DateTimeOffset.Now,
DateTimeOffset.Now.AddYears(1));
// Check if PQ signature is present
Console.WriteLine($"PQ Signature: {cert.HasPqSignature()}");
-> API: [[en:int:pqcrypt:api:x509certificates:certificaterequestextensions|CreateSelfSigned]]((Extension for CertificateRequest)), [[en:int:pqcrypt:api:x509certificates:x509certificate2extensions|HasPqSignature]]((Checks if certificate contains PQ signature))
----
===== Crypto Modes =====
-> Details: [[en:int:pqcrypt:konzepte:start|Understanding Crypto Modes]]
^ Mode ^ Usage ^
| ''CryptoMode.Classic'' | RSA/ECDSA only, full backward compatibility |
| ''CryptoMode.Hybrid'' | RSA + ML-DSA, recommended for migration |
| ''CryptoMode.PostQuantum'' | ML-DSA/ML-KEM only, maximum security |
----
===== Next Steps =====
* [[.:integration|Integration]] - Platform-specific guides
* [[.:migration|Migration]] - From Classic to Hybrid
* [[.:beispiele:start|Examples]] - PKI setup, CSR scenarios
----
//Wolfgang van der Stille @ EMSR DATA d.o.o. - Post-Quantum Cryptography Professional//
{{tag>getting-started installation quickstart}}