3.2 Konfiguracija

Konfiguracijske možnosti za infrastrukturo PQ-kriptografije.


Okoljske spremenljivke

Spremenljivka Opis Primer Prioriteta
OPENSSL_PATH Pot do binarnih datotek OpenSSL C:\OpenSSL\bin Visoka
WVDS_CRYPTO_MODE Privzeti kriptografski način Hybrid Srednja
WVDS_PQ_KEYSTORE Pot do shrambe PQ-ključev %LOCALAPPDATA%\WvdS.Crypto\PqKeys Opcijsko

Windows (PowerShell kot administrator)

# Trajno za vse uporabnike (Machine-Scope)
[Environment]::SetEnvironmentVariable("OPENSSL_PATH", "C:\Program Files\OpenSSL\bin", "Machine")
[Environment]::SetEnvironmentVariable("WVDS_CRYPTO_MODE", "Hybrid", "Machine")
 
# Preverite (odprite novo PowerShell okno)
$env:OPENSSL_PATH
$env:WVDS_CRYPTO_MODE

Linux

# Sistemsko (/etc/profile.d/)
sudo tee /etc/profile.d/wvds-crypto.sh << 'EOF'
export OPENSSL_PATH=/usr/local/openssl/lib
export WVDS_CRYPTO_MODE=Hybrid
EOF
 
# Za trenutnega uporabnika (~/.bashrc ali ~/.profile)
echo 'export OPENSSL_PATH=/usr/local/openssl/lib' >> ~/.bashrc
echo 'export WVDS_CRYPTO_MODE=Hybrid' >> ~/.bashrc
 
# Aktivirajte
source ~/.bashrc
 
# Preverite
echo $OPENSSL_PATH
echo $WVDS_CRYPTO_MODE

macOS

# V ~/.zshrc (privzeta lupina na macOS)
echo 'export OPENSSL_PATH=$(brew --prefix openssl@3)/lib' >> ~/.zshrc
echo 'export WVDS_CRYPTO_MODE=Hybrid' >> ~/.zshrc
 
source ~/.zshrc

Kriptografski načini

Način Opis Uporaba
Classic Samo RSA/ECDSA Starejši sistemi, povratna združljivost
Hybrid RSA + ML-DSA vzporedno Priporočeno za migracijo
PostQuantum Samo ML-DSA/ML-KEM Novi sistemi samo s PQ

Priporočilo: Uporabite Hybrid med prehodnim obdobjem. To zagotavlja varnost tudi če je en algoritem ogrožen.


Shramba PQ-ključev

Windows Certificate Store ne podpira nativnih PQ-ključev. Knjižnica uporablja ločeno stransko shrambo:

Privzete poti:

OS Pot
Windows %LOCALAPPDATA%\WvdS.Crypto\PqKeys\
Linux ~/.local/share/wvds-crypto/pqkeys/
macOS ~/Library/Application Support/WvdS.Crypto/PqKeys/

Preverjanje dovoljenj

Windows (PowerShell):

# Določite pot
$pqKeyStore = "$env:LOCALAPPDATA\WvdS.Crypto\PqKeys"
 
# Preverite obstoj
Test-Path $pqKeyStore
 
# Prikažite dovoljenja
Get-Acl $pqKeyStore | Format-List
 
# Nastavite dovoljenja (samo trenutni uporabnik)
icacls $pqKeyStore /inheritance:r /grant:r "$env:USERNAME:(OI)(CI)F"

Linux:

# Pot
PQ_KEYSTORE=~/.local/share/wvds-crypto/pqkeys
 
# Preverite obstoj
ls -la $PQ_KEYSTORE
 
# Nastavite dovoljenja (samo lastnik bere/piše)
chmod 700 $PQ_KEYSTORE
chmod 600 $PQ_KEYSTORE/*
 
# Preverite
stat $PQ_KEYSTORE

Pomembno: Shramba PQ-ključev ni vključena v varnostno kopijo Windows Certificate Store! Ta mapo varnostno kopirajte ločeno.


FIPS-način (OpenSSL)

Za skladnost s FIPS 140-3 je treba aktivirati OpenSSL FIPS Provider.

Preverjanje stanja FIPS Provider

# Seznam ponudnikov
openssl list -providers
 
# Pričakovani izhod s FIPS:
# Providers:
#   default
#   fips

Aktivacija FIPS Provider

Konfiguracija openssl.cnf:

# Določite pot do konfiguracije OpenSSL
openssl version -d
# Izhod: OPENSSLDIR: "/usr/local/openssl"
 
# Uredite konfiguracijo
sudo nano /usr/local/openssl/openssl.cnf

Potrebni vnosi v openssl.cnf:

# Na začetku datoteke
openssl_conf = openssl_init
 
[openssl_init]
providers = provider_sect
 
[provider_sect]
fips = fips_sect
base = base_sect
default = default_sect
 
[fips_sect]
activate = 1
 
[base_sect]
activate = 1
 
[default_sect]
activate = 1

Preverjanje:

# Preverite stanje FIPS
openssl list -providers | grep -i fips
 
# Algoritmi, validirani za FIPS
openssl list -signature-algorithms -provider fips

Konfiguracija algoritmov

Razpoložljive variante ML-DSA (podpisi):

Algoritem NIST Level Javni ključ Podpis Priporočilo
ML-DSA-44 Level 2 1.312 B 2.420 B Sistemi z omejenimi viri
ML-DSA-65 Level 3 1.952 B 3.309 B Standard (priporočeno)
ML-DSA-87 Level 5 2.592 B 4.627 B Najvišja varnost

Razpoložljive variante ML-KEM (izmenjava ključev):

Algoritem NIST Level Javni ključ Šifrirno besedilo Skupna skrivnost
ML-KEM-512 Level 1 800 B 768 B 32 B
ML-KEM-768 Level 3 1.184 B 1.088 B 32 B
ML-KEM-1024 Level 5 1.568 B 1.568 B 32 B

Preverjanje podpore algoritmov:

# Vsi razpoložljivi algoritmi za podpise
openssl list -signature-algorithms
 
# Specifično ML-DSA
openssl list -signature-algorithms | grep -i "ml-dsa"
 
# Vsi KEM-algoritmi
openssl list -kem-algorithms
 
# Specifično ML-KEM
openssl list -kem-algorithms | grep -i "ml-kem"

Nadaljnje branje


Wolfgang van der Stille @ EMSR DATA d.o.o. - Post-Quantum Cryptography Professional

Zuletzt geändert: dne 30.01.2026 ob 08:23