MastersThesis/CertifikacnaAutorita/gen_client_certificate.bat

35 lines
2.5 KiB
Batchfile
Raw Permalink Normal View History

2024-04-14 08:43:58 +00:00
:: CLIENT CERTIFICATE
:: Vygenerovanie sukromneho kluca a certifikatu pre klienta
:: Overenie podpisu vysledneho certifikatu
:: Nasledujuce prikazy su nazorovnou ukazkou toho ako je mozne vygenerovat
:: sukromny kluc a certifikat urceny koncovemu pouzivatelovi - klientovi
:: Tento prikaz je zlozeny z viacerych vstupov a generuje sukromny kluc a certifikat sucasne
:: @-newkey : nazov algoritmu pouziteho pre generovanie sukromneho kluca, napr. falcon512 alebo dilithium3
:: @-keyout : cesta k priecinku do ktoreho bude vygenerovany kluc ulozeny
:: @-out : cesta k priecinku do ktoreho bude vygenerovany certifikat pre klienta
:: @-subj : doplnujuce informacie, ktore musia byt urcene v zavislosti od poziadavok certifikacnej autority
:: priklad: -subj "/C=US/ST=California/L=San Francisco/O=Example Corp/OU=IT Department/CN=Root CA"
:: doplnujuce informacie su: C (country), ST (state), L (location), O (organization), OU (organization unit), CN (common name)
openssl req -new -newkey falcon512 -keyout ./myCA/intermediateCA/private/falcon512_client.key -out ./myCA/intermediateCA/csr/falcon512_client.csr -nodes -subj "/CN=www.master-thesis-client.com"
:: Tento prikaz sluzi na podpis certifikatu
:: Podpis certifikatu je realizovany sukromnym klucom CA ktory je definovany priamo v konfiguracnom subore
:: @-batch : automaticke potvrdenie realizacie podpisu, bez tohto prepinacu musi pouzivatel rucne potvrdit operaciu podpisu
:: @-config : konfiguracny subor pouzity na podpis, okrem sukromneho kluca CA obsahuje aj podmienky pre realizaciu podpisu, napr. pritomnost doplnujucich informacii v certifikate
:: @-extensions : rozsirenie 'client_cert' je modul, ktory je sucastou konfiguracneho suboru a je rovnaky iba pre certifikaty koncovych pouzivatelov, napr. certifikat bude oznaceny ako client/email certificate
:: @-days : oznacuje dlzku platnosti podpisu v dnoch
:: @-md : pouzity hash
:: @-in : cesta k vstupnemu certifikatu ako .csr alebo .crt
:: @-out : cesta k priecinku do ktoreho bude zapisany podpisany certifikat
openssl ca -batch -config ./myCA/intermediateCA/intermediate.cnf -extensions client_cert -days 375 -notext -md sha256 -in ./myCA/intermediateCA/csr/falcon512_client.csr -out ./myCA/intermediateCA/csr/falcon512_client.crt
:: Posledny prikaz sluzi na overenie podpisu
:: @-CAfile : zretazeny certifikat intCA
openssl verify -CAfile .\myCA\intermediateCA\certs\falcon512_certchain.pem ./myCA/intermediateCA/csr/falcon512_client.crt