D'Erfahrung am Gebrauch vun Rutoken Technologie fir d'Aschreiwung an d'Autorisatioun vun de Benotzer am System (Deel 1)

Gudde Mëtteg Ech wëll meng Erfahrung iwwer dëst Thema deelen.

Rutoken ass Hardware a Software Léisungen am Beräich vun der Authentifikatioun, Informatiounssécherheet an elektronescher Ënnerschrëft. Wesentlech ass dëst e Flash Drive deen Authentifikatiounsdaten späichere kann, déi de Benotzer benotzt fir an de System ze loggen.

An dësem Beispill gëtt Rutoken EDS 2.0 benotzt.

Fir mat dësem Rutoken ze schaffen, braucht Dir installéieren de Chauffer op Windows.

Fir Windows, installéiert nëmmen ee Chauffer garantéiert datt alles wat néideg ass installéiert ass sou datt d'OS Äre Rutoken gesäit a ka mat him schaffen.

Dir kënnt mat Rutoken op verschidde Weeër interagéieren. Dir kënnt et vun der Server Säit vun der Applikatioun Zougang, oder direkt vun der Client Säit. Dëst Beispill wäert Interaktioun mat Rutoken vun der Client Säit vun der Applikatioun kucken.

De Client Deel vun der Applikatioun interagéiert mam Rutoken duerch de Rutoken Plugin. Dëst ass e Programm deen separat op all Browser installéiert ass. Fir Windows musst Dir just de Plugin eroflueden an installéieren, op dësem Link läit.

Dat ass et, elo kënne mir mat Rutoken vun der Client Säit vun der Applikatioun interagéieren.

Dëst Beispill diskutéiert d'Iddi fir e Benotzer Autorisatioun Algorithmus am System ëmzesetzen mam Challenge-Äntwert Schema.

D'Essenz vun der Iddi ass wéi follegt:

  1. De Client schéckt eng Autorisatiounsufro un de Server.
  2. De Server reagéiert op eng Ufro vum Client andeems en eng zoufälleg String schéckt.
  3. De Client pads dës String mat zoufälleg 32 Bits.
  4. De Client ënnerschreift de kritt String mat sengem Certificat.
  5. De Client schéckt de kritt verschlësselte Message un de Server.
  6. De Server verifizéiert d'Ënnerschrëft andeems hien den ursprénglechen onverschlësselte Message kritt.
  7. De Server streift déi lescht 32 Bits vun der kritt onverschlësselte Message.
  8. De Server vergläicht dat kritt Resultat mat der Noriicht, déi geschéckt gouf beim Ufro vun der Autorisatioun.
  9. Wann d'Messagen d'selwecht sinn, gëtt d'Autorisatioun als erfollegräich ugesinn.

Am uewe genannte Algorithmus gëtt et sou eppes wéi e Certificat. Fir dëst Beispill musst Dir eng kryptographesch Theorie verstoen. Op Habré gëtt et super Artikel zu dësem Thema.

An dësem Beispill wäerte mir asymmetresch Verschlësselungsalgorithmen benotzen. Fir asymmetresch Algorithmen ëmzesetzen, musst Dir e Schlësselpaar an e Certificat hunn.

E Schlësselpaar besteet aus zwee Deeler: e private Schlëssel an en ëffentleche Schlëssel. De private Schlëssel, wéi säin Numm et scho seet, muss geheim sinn. Mir benotzen et fir Informatioun ze entschlësselen. Den ëffentleche Schlëssel kann un jiddereen verdeelt ginn. Dëse Schlëssel gëtt benotzt fir Daten ze verschlësselen. Also kann all Benotzer Daten verschlëssele mat dem ëffentleche Schlëssel, awer nëmmen de Besëtzer vum private Schlëssel kann dës Informatioun entschlësselen.

En Zertifika ass en elektronescht Dokument dat Informatioun iwwer de Benotzer enthält deen den Zertifika besëtzt, souwéi en ëffentleche Schlëssel. Mat engem Zertifika kann de Benotzer all Donnéeën ënnerschreiwen an op de Server schécken, deen d'Ënnerschrëft verifizéiere kann an d'Donnéeën entschlësselen.

Fir e Message mat engem Certificat richteg z'ënnerschreiwen, musst Dir et richteg erstellen. Fir dëst ze maachen, gëtt e Schlësselpaar als éischt op Rutoken erstallt, an dann muss e Certificat mam ëffentleche Schlëssel vun dësem Schlësselpaar verbonne sinn. De Certificat muss genau den ëffentleche Schlëssel hunn deen op Rutoken läit, dëst ass wichteg. Wa mir einfach e Schlësselpaar an e Certificat direkt op der Client Säit vun der Applikatioun erstellen, wéi kann de Server dann dës verschlësselte Message entschlësselen? Hie weess schliisslech guer näischt iwwer d'Schlësselpaar oder d'Zertifikat.

Wann Dir méi déif an dëst Thema daucht, kënnt Dir interessant Informatioun um Internet fannen. Et gi gewësse Zertifizéierungsautoritéiten déi mir selbstverständlech vertrauen. Dës Zertifizéierungsautoritéiten kënnen d'Benotzer Certificaten ausginn, déi se op hirem Server installéieren. Duerno, wann de Client Zougang zu dësem Server, gesäit hien dëst Zertifikat, a gesäit datt et vun enger Zertifizéierungsautoritéit ausgestallt gouf, dat heescht datt dëse Server vertraut ka ginn. Et gëtt och vill Informatioun um Internet iwwer wéi een alles richteg opstellt. Zum Beispill kënnt Dir mat dësem ufänken.

Wa mir op eise Problem zréckkommen, schéngt d'Léisung offensichtlech. Dir musst iergendwéi Ären eegene Zertifizéierungszentrum erstellen. Awer ier dat, musst Dir erausfannen op wéi enger Basis den Zertifizéierungszentrum e Certificat un de Benotzer erausginn soll, well hien näischt doriwwer weess. (Zum Beispill, säin Virnumm, Familljennumm, asw.) Et gëtt esou eng Saach déi eng Zertifika Ufro genannt gëtt. Méi Informatioun iwwer dëse Standard kann zum Beispill op Wikipedia fonnt ginn ru.wikipedia.org/wiki/PKCS
Mir wäerten Versioun benotzen 1.7 - PKCS # 10.

Loosst eis den Algorithmus beschreiwen fir e Certificat op Rutoken ze generéieren (Original Quell: Dokumentatioun):

  1. Mir erstellen e Schlësselpaar um Client a späicheren et op Rutoken. (Späicheren geschitt automatesch)
  2. Mir schafen eng Zertifika Ufro op de Client.
  3. Vum Client schécken mir dës Ufro un de Server.
  4. Wa mir eng Demande fir en Zertifikat um Server kréien, gi mir en Zertifika vun eiser Zertifizéierungsautoritéit eraus.
  5. Mir schécken dësen Zertifika un de Client.
  6. Mir späicheren de Rutoken Zertifikat um Client.
  7. De Certificat muss un d'Schlësselpaar gebonnen sinn, déi am éischte Schrëtt erstallt gouf.

Elo gëtt et kloer wéi de Server fäeg ass d'Ënnerschrëft vum Client ze entschlësselen, well et selwer de Certificat him erausginn huet.

Am nächsten Deel kucke mir méi no wéi Dir Är Zertifika Autoritéit opbaut baséiert op der vollwäerteger Open-Source Kryptografiebibliothéik openSSL.

Source: will.com

Setzt e Commentaire