3.1 Instalacija

Upute za instalaciju OpenSSL 3.6 i .NET Runtime 8.0.


Provjera preduvjeta

# Provjera verzije OpenSSL
openssl version
# Očekivano: OpenSSL 3.6.0 ili noviji
 
# Ako postoji, ali je prestara:
which openssl    # Linux/macOS
where openssl    # Windows

OpenSSL 3.6.0+

OpenSSL 3.6.0+ je potreban za ML-DSA1) i ML-KEM2).

Windows

Opcija 1: Predkompilirane binarne datoteke (preporučeno)

Preuzimanje s: Shining Light Productions

  • Odaberite: Win64 OpenSSL v3.6.x (Full, ne Light)
  • Instalacija: C:\Program Files\OpenSSL

Opcija 2: Konfiguracija PATH-a

# Pokrenite kao administrator
[Environment]::SetEnvironmentVariable(
    "Path",
    $env:Path + ";C:\Program Files\OpenSSL\bin",
    "Machine")
 
# Verifikacija (otvorite novi PowerShell)
openssl version

Opcija 3: Postavljanje varijable okruženja

# Trajno postavljanje
[Environment]::SetEnvironmentVariable("OPENSSL_PATH", "C:\Program Files\OpenSSL\bin", "Machine")
 
# Ili privremeno u trenutnoj sesiji
$env:OPENSSL_PATH = "C:\Program Files\OpenSSL\bin"

Linux

Ubuntu/Debian (ako je OpenSSL 3.6+ u repozitorijima):

sudo apt update
sudo apt install openssl libssl-dev
 
# Provjera verzije
openssl version

Kompilacija iz izvornog koda (ako su repozitoriji prestari):

# Ovisnosti
sudo apt install build-essential checkinstall zlib1g-dev
 
# Preuzimanje i kompilacija
cd /usr/local/src
sudo wget https://www.openssl.org/source/openssl-3.6.0.tar.gz
sudo tar -xzf openssl-3.6.0.tar.gz
cd openssl-3.6.0
 
sudo ./config --prefix=/usr/local/openssl --openssldir=/usr/local/openssl shared zlib
sudo make -j$(nproc)
sudo make install
 
# Kreiranje simboličkih poveznica
sudo ln -sf /usr/local/openssl/bin/openssl /usr/local/bin/openssl
sudo ln -sf /usr/local/openssl/lib64/libssl.so.3 /usr/lib/x86_64-linux-gnu/
sudo ln -sf /usr/local/openssl/lib64/libcrypto.so.3 /usr/lib/x86_64-linux-gnu/
 
# Ažuriranje ldconfig
echo "/usr/local/openssl/lib64" | sudo tee /etc/ld.so.conf.d/openssl.conf
sudo ldconfig
 
# Verifikacija
openssl version

macOS

# Homebrew
brew install openssl@3
 
# Eksportiranje putanje
export OPENSSL_PATH=$(brew --prefix openssl@3)/lib
export PATH="$(brew --prefix openssl@3)/bin:$PATH"
 
# Trajno postavljanje (u ~/.zshrc ili ~/.bash_profile)
echo 'export OPENSSL_PATH=$(brew --prefix openssl@3)/lib' >> ~/.zshrc
echo 'export PATH="$(brew --prefix openssl@3)/bin:$PATH"' >> ~/.zshrc
 
# Verifikacija
openssl version

.NET Runtime 8.0

Windows

# Provjera instaliranih runtime-ova
dotnet --list-runtimes
 
# Ako nije prisutan: Preuzimanje s
# https://dotnet.microsoft.com/download/dotnet/8.0
# Odaberite ".NET Runtime 8.0.x" (ne SDK, osim za razvoj)
 
# Verifikacija nakon instalacije
dotnet --list-runtimes | Select-String "Microsoft.NETCore.App 8"

Linux

# Ubuntu/Debian
wget https://packages.microsoft.com/config/ubuntu/22.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
rm packages-microsoft-prod.deb
 
sudo apt update
sudo apt install dotnet-runtime-8.0
 
# Verifikacija
dotnet --list-runtimes | grep "Microsoft.NETCore.App 8"

macOS

# Homebrew
brew install dotnet@8
 
# Ili preuzimanje s https://dotnet.microsoft.com/download/dotnet/8.0
 
# Verifikacija
dotnet --list-runtimes | grep "Microsoft.NETCore.App 8"

Post-instalacija: Verifikacija

Pokrenite ove naredbe za verifikaciju instalacije:

# 1. Verzija OpenSSL i informacije o kompilaciji
openssl version -a
 
# 2. Jesu li PQ-potpisi dostupni?
openssl list -signature-algorithms | grep -i "ml-dsa"
# Očekivani izlaz: ML-DSA-44, ML-DSA-65, ML-DSA-87
 
# 3. Je li PQ-KEM dostupan?
openssl list -kem-algorithms | grep -i "ml-kem"
# Očekivani izlaz: ML-KEM-512, ML-KEM-768, ML-KEM-1024
 
# 4. Popis providera
openssl list -providers
# Očekivano: default, base (i opcionalno: fips)
 
# 5. .NET Runtime
dotnet --list-runtimes
# Očekivano: Microsoft.NETCore.App 8.x.x

Očekivani izlaz za OpenSSL 3.6:

OpenSSL 3.6.0 7 Nov 2024
built on: ...
OPENSSLDIR: "/usr/local/openssl"

Poznati problemi

Problem Uzrok Rješenje
libcrypto-3-x64.dll nije pronađen OpenSSL nije u PATH-u Proširite PATH ili postavite OPENSSL_PATH
ML-DSA not found OpenSSL je prestar Instalirajte verziju 3.6.0+
permission denied Nedostaju prava Koristite sudo ili provjerite dozvole
Konflikti sa sistemskim OpenSSL Više verzija Postavite eksplicitnu putanju u OPENSSL_PATH

Daljnje informacije


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

Zuletzt geändert: 29.01.2026. u 23:11