Routokeni tehnoloogia rakendamine kasutajate registreerimiseks ja autentimiseks süsteemis (3. osa)

Tere päevast!

Eelmisest osast me oleme edukalt loonud oma sertifitseerimiskeskuse. Kuidas see meie eesmärke silmas pidades kasulik olla võib?

Kohaliku sertifitseerimiskeskuse abil saame välja anda sertifikaate ja kontrollida allkirju nende sertifikaatide abil.

Sertifikaadi kasutajale väljastamisel kasutab sertifitseerimiskeskus sertifikaadi väljastamiseks spetsiaalset Pkcs#10 taotlust, mille failiformaat on '.csr'. See taotlus sisaldab kodeeritud järjestust, mille sertifitseerimiskeskus teab, kuidas õigesti tõlgendada. Taotlus sisaldab nii kasutaja avalikku võtme kui ka andmeid sertifikaadi loomiseks (assotsiatiivne massiiv, mis sisaldab kasutaja andmeid).

Kuidas saada sertifikaadi väljastamise taotlust, käsitleme järgmises artiklis, aga selles soovin tuua välja sertifitseerimiskeskuse põhikäsud, mis aitavad meil meie ülesannet serveripoolsel küljel täita.

Seega peame kõigepealt looma sertifikaadi. Selleks kasutame käsku:

openssl ca -batch -in user.csr -out user.crt

ca - openSSL käsk, mis kuulub sertifitseerimiskeskusele,
-batch - tühistab sertifikaadi loomisel kinnitusteateid.
user.csr - sertifikaadi loomise taotlus (failformaat .csr).
user.crt - sertifikaat (käskluse saadud tulemus).

Selle käsu täitmiseks peab sertifitseerimiskeskus olema seadistatud täpselt nii, nagu on kirjeldatud eelnevas artikli osas. Vastasel juhul tuleb täiendavalt märkida sertifitseerimiskeskuse juursertifikaadi asukoht.

Sertifikaadi kontrollimise käsk:

openssl cms -verify -in authenticate.cms -inform PEM -CAfile /Users/……/demoCA/ca.crt -out data.file

cms - openSSL käsk, mida kasutatakse andmete allkirjastamiseks, kontrollimiseks, krüpteerimiseks ja muude krüptograafiliste toimingute tegemiseks openSSL-i abil.

-verify - sel juhul teeme sertifikaadi kontrollimise.

authenticate.cms - fail, mis sisaldab allkirjastatud andmeid sertifikaadist, mille eelmine käsk anti.

-inform PEM - kasutatakse PEM formaati.

-CAfile /Users/……/demoCA/ca.crt - tee juursertifikaadile. (ilma selleta ei toiminud minu käsk, kuigi teed ca.crt faili openssl.cfg-s on ära märgitud)

-out data.file - dekrüpteeritud andmed saadetakse faili data.file.

Veebikinnitamisteenuse rakendamise algoritm tagaplaanil on järgmine:

  • Kasutaja registreerimine:
    1. Saame sertifikaadi loomise päringu ja salvestame selle faili user.csr.
    2. Salvestame selle artikli esimese käsu .bat või .cmd laiendiga faili. Käivitame selle faili koodist, eelnevalt salvestades sertifikaadi loomise päringu faili user.csr. Saame sertifikaadi faili user.crt.
    3. Lugesime faili user.crt ja saadame selle kliendile.

  • Kasutaja autentimine:
    1. Saame kliendilt allkirjastatud andmed ja salvestame need faili authenticate.cms.
    2. Salvestame selle artikli teise käsu .bat või .cmd laiendiga faili. Käivitame selle faili koodist, eelnevalt salvestades serverilt allkirjastatud andmed faili authenticate.cms. Saame dekrüpteeritud andmed faili data.file.
    3. Lugesime data.file'i ja kontrollime nende andmete kehtivust. Mida täpselt kontrollida, on kirjeldatud esimeses artiklis. Kui andmed on kehtivad, loetakse kasutaja autentimine edukaiks.

Nende algoritmide rakendamiseks võib kasutada mis tahes programmeerimiskeelt, mida kasutatakse tagaplaani kirjutamiseks.

Järgmises artiklis uurime, kuidas töötada Rütokeni pluginaga.

Aitäh tähelepanu eest!

Allikas: habr.com

Osta usaldusväärne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid | ProHoster