Tento priecinok obsahuje subor oqsprovider.dll, ktory umoznuje vyuzivat PQ 
algoritmy v TLS komunikacii. Tento .dll subor bol vytvoreny specialne
pre obraz Win 7 x86 za ucelom demonstracie post-kvantovych algoritmov
v ramci predmetu BPS a BIKS. V pripade pouzitia zdrojovych kodov
klient/server na inom zariadeni je nutne vytvorit novy .dll subor. 

Vytvorene a testovane na:
OpenSSL 3.3.0, liboqs 0.10.0, oqs-provider 0.6.0

Cely postup je dostupny online: 
https://git.kemt.fei.tuke.sk/js331zc/MastersThesis/src/branch/master/OpenSSL_liboqs_oqsprovider

NAVOD NA POUZITIE
- predpokladame ze system obsahuje kniznice libcrypto a libssl
- na generovanie PQ certifikatov je potrebne mat OpenSSL.exe

Subor oqsprovider.dll presunieme na nas virtualny pocitac na lubovolne miesto.
Napr. ho skopirujeme priamo na plochu, teda do C:\Users\Administrator\Desktop

Cestu k suboru potom definujeme ako systemovu premennu OPENSSL_MODULES.

Systemovu premennu mozeme definovat:
a) PowerShell prikaz
[Environment]::SetEnvironmentVariable("OPENSSL_MODULES", "C:\Users\Administrator\Desktop\", "Machine")

b) cmd prikaz
setx OPENSSL_MODULES "C:\Users\Administrator\Desktop\"

c) manualne cez nastavenia
Settings-System-Advanced system settings-Environment Variables-System variables-New
Name: OPENSSL_MODULES
Value: C:\Users\Administrator\Desktop\

Po nastaveni premennej restartujeme cmd/PowerShell.

GENEROVANIE PQ CERTIFIKATOV
Generovanie PQ certifikatov prostrednictvom OpenSSL je mozne po aktivacii
oqsprovidera priamo cez konfiguracny subor. V tomto subore je potrebne
aktivovat default providera a doplnit aktivaciu modulu oqsprovider.

[provider_sect]
default = default_sect
oqsprovider = oqsprovider_sect
[oqsprovider_sect]
activate = 1 

Subor openssl.cnf v tomto priecinku je prikladom konfiguracneho suboru
s uz aktivovanym oqsproviderom.

Aby OpenSSL pouzivalo nas konfiguracny subor, je nutne nastavit systemovu
premennu OPENSSL_CONF na priecinok, kde sa tento subor nachadza. V BPS obraze
je tato premenna nastavena na C:\OPENSSL\BIN\
Systemovu premennu mozeme zmenit alebo skopirovat nas konfiguracny subor
na dane miesto.
