====== 1.1 Windows orodja ======
Ta stran podrobno razloži vsak korak - idealno za začetnike.
----
===== 1. Visual Studio 2022 =====
==== Kaj je Visual Studio? ====
Visual Studio je Microsoftovo razvojno okolje. Vsebuje:
* **C/C++ prevajalnik** (cl.exe) - prevaja izvorno kodo OpenSSL
* **Povezovalnik** (link.exe) - ustvari končne DLL knjižnice
* **nmake** - izvaja ukaze za gradnjo
==== Namestitev ====
**Možnost A: Preko winget (priporočeno)**
winget install Microsoft.VisualStudio.2022.Community
**Možnost B: Ročni prenos**
- Pojdite na [[https://visualstudio.microsoft.com/downloads/|Visual Studio Downloads]]
- Izberite "Community" (brezplačno)
- Zaženite namestitveni program
==== Izbira delovne obremenitve ====
Po prenosu se odpre Visual Studio Installer:
- Kliknite "Spremeni" (če je že nameščeno) ali "Namesti"
- Izberite: **"Namizni razvoj s C++"**
- V desnem panelu preverite:
* ☑ MSVC v143 - VS 2022 C++ x64/x86 Build-Tools
* ☑ Windows 10/11 SDK (najnovejša različica)
- Kliknite "Namesti"
**Pomembno:** Namestitev traja približno 10-20 GB in 30-60 minut!
==== Preverjanje ====
Po namestitvi:
# 1. Odprite Developer PowerShell (poiščite v meniju Start)
# ali ročno naložite VS okolje:
& "C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvars64.bat"
# 2. Preverite prevajalnik
cl
Pričakovani izpis:
Microsoft (R) C/C++ Optimizing Compiler Version 19.xx.xxxxx for x64
----
===== 2. Windows SDK =====
==== Kaj je Windows SDK? ====
Windows SDK vsebuje datoteke glave kot ''stdlib.h'', ''windows.h'' itd. Brez teh prevajalnik ne more najti osnovnih funkcij.
==== Namestitev ====
Običajno se SDK namesti skupaj z Visual Studio. Če ne:
winget install Microsoft.WindowsSDK.10.0.22621
Ali preko Visual Studio Installer:
- Zavihek "Posamezne komponente"
- Iskanje: "Windows SDK"
- Izberite različico 10.0.22621 ali novejšo
==== Preverjanje ====
# Preverite, ali mapa SDK obstaja
Test-Path "C:\Program Files (x86)\Windows Kits\10\Include"
Izpisati bi moralo ''True''.
----
===== 3. Strawberry Perl =====
==== Kaj je Perl? ====
Perl je skriptni jezik. OpenSSL uporablja Perl skripte za:
* ''Configure'' - zaznava sistem in ustvari datoteke za gradnjo
* Generiranje kode za različne platforme
==== Zakaj Strawberry Perl? ====
Za Windows obstaja več Perl distribucij:
* **Strawberry Perl** - Priporočeno, vsebuje vse potrebno, enostavna namestitev
* ActivePerl - Komercialno, ni priporočeno
* Cygwin Perl - Lahko deluje, a je bolj zapleteno
==== Namestitev ====
winget install StrawberryPerl.StrawberryPerl
Privzeta pot namestitve: ''C:\Strawberry\perl\bin''
==== Preverjanje ====
Odprite nov terminal, nato:
perl -v
Pričakovani izpis:
This is perl 5, version 38, subversion 2 (v5.38.2)
Če se prikaže "perl ni prepoznan": Znova zaženite računalnik ali ročno nastavite PATH.
----
===== 4. NASM (Netwide Assembler) =====
==== Kaj je NASM? ====
NASM je assembler - prevaja assembly kodo v strojno kodo.
OpenSSL vsebuje ročno optimizirane assembly rutine za:
* AES šifriranje (do 10x hitreje!)
* SHA zgoščevalne funkcije
* Druge kriptografske operacije
==== Ali potrebujem NASM? ====
| Situacija | NASM potreben? |
|-----------|----------------|
| Produkcijska gradnja | **Da, zelo priporočeno** |
| Razvoj/testiranje | Neobvezno |
| FIPS gradnja | **Da, obvezno** |
Brez NASM: OpenSSL se prevede, vendar uporabi počasnejše C implementacije.
==== Namestitev ====
winget install NASM.NASM
**Pomembno:** NASM se pogosto ne doda samodejno v PATH!
==== Ročna nastavitev PATH ====
# Tipična pot NASM (se lahko razlikuje!)
$nasmPath = "$env:LOCALAPPDATA\bin\NASM"
# Preverite, ali mapa obstaja
if (Test-Path $nasmPath) {
Write-Host "NASM najden v: $nasmPath"
} else {
# Preverite alternativne poti
Get-ChildItem -Path "C:\" -Filter "nasm.exe" -Recurse -ErrorAction SilentlyContinue |
Select-Object -First 1 -ExpandProperty DirectoryName
}
Nato nastavite PATH (začasno za to sejo):
$env:PATH = "$nasmPath;$env:PATH"
==== Preverjanje ====
nasm -v
Pričakovani izpis:
NASM version 2.16.01 compiled on Dec 21 2023
----
===== 5. Git =====
==== Kaj je Git? ====
Git je sistem za nadzor različic. Potrebujete ga za:
* Prenos izvorne kode OpenSSL iz GitHub
* Izbiro prave različice (oznake)
==== Namestitev ====
winget install Git.Git
==== Preverjanje ====
git --version
Pričakovani izpis:
git version 2.43.0.windows.1
----
===== Povzetek =====
Po namestitvi vseh orodij bi moralo delovati naslednje:
# Nalaganje Visual Studio okolja
& "C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvars64.bat"
# Preverjanje vseh orodij
cl # → Microsoft (R) C/C++ Optimizing Compiler...
perl -v # → This is perl 5...
nasm -v # → NASM version 2.xx...
git --version # → git version 2.xx...
**Namig:** Shranite te ukaze v datoteko ''check-tools.ps1'' za kasnejšo uporabo.
----
===== Naprej na =====
* [[wvds:sl:openssl:quellen:start|2. Prenos virov]]
* [[wvds:sl:openssl:start|Nazaj na pregled]]
----
//Wolfgang van der Stille @ EMSR DATA d.o.o. - Post-Quantum Cryptography Professional//