Brug af klasser til russiske kryptoalgoritmer. Beskyttelse mod uautoriseret adgang ved hjælp af CryptoPro CSP

udviklet i overensstemmelse med Microsofts krav til kryptografiske udbydere og giver dig mulighed for at skabe nye, pålideligt beskyttede applikationer ved hjælp af de rigeste og tidstestede værktøjer. Derudover giver CryptoPro Sharpei dig mulighed for at bruge standardsoftware såsom XPSViewer og Microsoft Office Forms Server 2007 til at signere og verificere digitale signaturer ved hjælp af russiske kryptografiske algoritmer.

Konfiguration af Microsoft Office Forms Server 2007 til at bruge digitale signaturer i webformularer.

Instruktionerne nedenfor beskriver, hvordan du konfigurerer Microsoft Office Forms Server 2007 til at kunne signere formularer ved hjælp af CryptoPro CSP.

Opmærksomhed! Efter at have udført denne instruktion, vil signering ved hjælp af andre kryptoudbydere (for eksempel dem, der implementerer RSA-algoritmen) ikke være mulig.

På serveren:

  1. Installer CryptoPro CSP version 3.6. Hvis Registry-læseren ikke blev tilføjet under installationsprocessen, skal du installere den.
  2. Installer CryptoPro Sharpei version 1.0.3497.2 eller nyere.
  3. Opret en privat digital signaturnøgle i registreringsdatabasen med navnet FormsServerKey for den lokale maskine, for eksempel ved at bruge følgende kommandolinje:
    csptest -nøglesæt -nyt nøglesæt -maskine
    -container "\\.\Registry\FormsServerKey"
  4. Opret en registreringsnøgle HKEY_LOCAL_MACHINE\SOFTWARE\Crypto Pro\Sharpei\1.0\InfoPath.Server
  5. Tilføj en parameter DWORD AlgType 1 , tilføj en strengparameter Beholder ind i ovenstående nøgle med værdien \\.\Registry\FormsServerKey.
  6. Installer klient ActiveX fra DSIGCTRL.cab (flere detaljer i instruktionerne).
  7. Tjek for adgangsrettigheder (fuld kontrol) til registreringsdatabasenøglen HKEY_LOCAL_MACHINE\SOFTWARE\Crypto Pro\Settings\Keys\FormsServerKey for den bruger, under hvilken SharePoint-applikationsgruppen startes (normalt netværkstjeneste, lokalt system...)
  8. Tjek for tilstedeværelsen af ​​rodcertifikater, som klientcertifikater blev udstedt på, i Trusted Root Certification Authorities-lageret på den lokale computer (LocalMachine).
  9. Kontroller tilstedeværelsen af ​​aktuelle CRL'er for rodcertifikaterne fra punkt 6 i Intermidiate Certification Authorities-lageret på den lokale computer (LocalMachine) eller muligheden for at få adgang til dem via CDP.
  10. Genstart serveren

På klienten:

  1. Installer CryptoPro CSP version 3.6.
  2. Hvis formularer ikke er blevet underskrevet på klienten før, kræves ingen yderligere handlinger.

Dette kan bestemmes af tilstedeværelsen af ​​filen DSigCtrl.dll i mappen \WINDOWS\Downloaded Program Files. Hvis denne fil mangler, er formularer ikke blevet underskrevet tidligere. Hvis klienten tidligere har underskrevet, skal du gå til mappen \WINDOWS\Downloaded Program Files og køre regsvr32 /u DSigCtrl.dll. Derudover skal du fjerne DSigCtrl.*-filerne fra mappen \WINDOWS\Downloaded Program Files.

Mulige ændringer under installationsprocessen.

Når Forms Server kører, bruges en midlertidig nøgle til signering. Denne nøgle bruges på serveren hver gang en signeringsoperation udføres på klienten, så det anbefales at gemme den på et umisterligt medie - i registreringsdatabasen. Hvis nøglen er navngivet FormsServerKey allerede er blevet brugt før installationen, kan du bruge et hvilket som helst andet navn. Når du geninstallerer produktet, kan du bruge den gamle nøgle.

Under installationen kan du begrænse dig til kun en sidste genstart.

Hvis CryptoPro CSP og CryptoPro Sharpei er forudinstalleret, kan du ikke genstarte, men blot bruge kommandoen iisreset.

Feedback:

Spørgsmål vedrørende brugen af ​​digitale signaturer i Microsoft Office Forms Server 2007 diskuteres i forumsektionen.

Implementeringer af de kryptografiske algoritmer GOST 28147-89, GOST R 34.10-2001 og GOST R 34.11-94 er indeholdt i CryptoPro.NET SDK-biblioteket udviklet af CryptoPro-virksomheden og distribueret under licens, hvilket kræver installation af CryptoPro CSP-kryptoudbyderen til dets brug. For at bruge CryptoPro.NET SDK i C#-applikationer skal du forbinde CryptoPro.Sharpei.Base.dll-biblioteket til projektet (ved hjælp af menukommandoen MicrosoftVisualStudioProject|AddReference|Browse-fanen) og tilføje det til CryptoPro.Sharpei-navneområderne, der bruges i ansøgningen:

ved hjælp af CryptoPro.Sharpei;

Dokumentation om brug af klasserne i CryptoPro.NET SDK-biblioteket findes i den frit distribuerede hjælpefil Sharpei.chm.

Implementeringen af ​​den symmetriske blokkrypteringsalgoritme GOST 28147-89 er indeholdt i Gost28147CryptoServiceProvider-klassen, som er en arvtager af den abstrakte klasse Gost28147, som igen er en arvtager af den abstrakte standardklasse i FCLSymmetricAlgorithm-biblioteket.

Et træk ved Gost28147CryptoServiceProvider-klassen er, at når en applikation forsøger at bruge egenskaben for objekter af denne klasse Key (sessionsnøgle), bliver der altid kastet en CryptographicException. For at udlede en sessionsnøgle fra en adgangssætning og eksportere-importere en tilfældig sessionsnøgle bør du derfor bruge andre metoder, end når du arbejder med andre klasser med implementeringer af symmetriske krypteringsalgoritmer.

For at udlede sessionsnøglen fra en adgangssætning skal du f.eks. bruge ByDeriveBytes-metoden fra Gost28147CryptoServiceProvider-klassen (adgangssætningen er indeholdt i et formularelement ved navn PassFrase1, og i arrayet ogBytes er en tilfældig blanding på 8 bytes lang):

Gost28147CryptoServiceProvider gostCSP = ny

byte randBytes = ny byte;

RNGCryptoServiceProvider rand = ny RNGCryptoServiceProvider();

rand.GetBytes(randBytes);

byte pwd = Encoding.Unicode.GetBytes(PassFrase1.Text);

byte buf=ny byte;

pwd.CopyTo(buf,0);

randBytes.CopyTo(buf, pwd.Length);

gostCSP.ByDeriveBytes(buf);

Hvis en tilfældig blanding bruges til at udlede nøglen fra adgangssætningen, skal den gemmes sammen med de krypterede data sammen med synkroniseringsmeddelelsen (initialiseringsvektor).

For at udveksle en tilfældig sessionsnøgle med modtageren af ​​krypterede data, bruges klasserne GostKeyExchangeFormatter (sessionsnøgleeksport), GostKeyExchangeDeformatter (sessionsnøgleimport) og Gost3410CryptoServiceProvider (asymmetrisk krypteringsalgoritme, der bruges når sessionsnøgleudveksling).

Gost3410CryptoServiceProvider-klassen, som indeholder implementeringen af ​​den digitale signaturalgoritme GOST Z 34.10-2001, er arving af den abstrakte klasse Gost3410, som igen er arving af standard abstrakt klasse af FCLAsymmetricAlgorithm-biblioteket.

For at eksportere en sessionsnøgle skal du bruge CreateKeyExchangeData-metoden fra GostKeyExchangeFormatter-klassen, og for at importere den skal du bruge DecryptKeyExchangeData-metoden fra GostKeyExchangeDeformatter-klassen.

Når du bruger objekter af Gost3410CryptoServiceProvider-klassen i en applikation, skal du huske på, at CryptoPro CSP-kryptoudbyderen kan gemme brugernes private nøgler på forskellige medier. Valg af et specifikt medie (f.eks. Windows-systemregistret) er muligt ved hjælp af CryptoProCSP-konfigurationsprogrammet. På fanen Hardware i indstillingsvinduet skal du vælge private nøglelæsere. Tilføjelse af en læser sker i en dialog med læserens installationsguide.

Når du opretter et asymmetrisk nøglepar i en beholder på det valgte medie, vil brugeren blive bedt om at starte processen til generering af tilfældige tal ved at trykke på tasterne eller flytte musen hen over vinduet til generering af tilfældige tal. Efter at have fuldført processen til oprettelse af nøglepar, skal du indstille og bekræfte en adgangskode for at få adgang til brugerens private nøgle. Nu skal denne adgangskode indtastes i tilfælde af, at applikationen skal bruge en privat nøgle til at importere en sessionsnøgle eller beregne en digital signatur.

Lad os se på et eksempel på eksport og import af en sessionsnøgle ved brug af Gost28147CryptoServiceProvider-klassen (værdien af ​​synkroniseringsmeddelelsen skal gemmes separat). Klasseobjektet CspParameters bruges i eksemplet til at angive en beholder med nøgler fra registreringsdatabasen, når du arbejder med CryptoPro CSP-kryptoudbyderen, som har type 75:

Gost28147CryptoServiceProvider gostEnc = ny

Gost28147CryptoServiceProvider();

CspParameters csp = new CspParameters();

csp.KeyContainerName = "Registrering";

csp.ProviderType = 75;

Gost3410CryptoServiceProvider gostExch = ny

Gost3410CryptoServiceProvider(csp);

GostKeyExchangeFormatter keyEnc = ny

GostKeyExchangeFormatter(gostExch);

byte sessionKey = keyEnc.CreateKeyExchangeData(gostEnc);

byte IV = gostEnc.IV;

GostKeyExchangeDeformatter keyDec = ny

GostKeyExchangeDeformatter(gostExch);

gostEnc = (Gost28147CryptoServiceProvider)nøgleDec.

DecryptKeyExchangeData(sessionKey);

gostEnc.IV = IV;

Implementeringen af ​​GOST 34.11-94 hashing-algoritmen er repræsenteret af den abstrakte klasse Gost3411, som er en efterfølger til den abstrakte standardklasse i FCLHashAlgorithm-biblioteket, og dens efterfølger - Gost3411CryptoServiceProvider-klassen.

For at beregne meddelelsesgodkendelseskoder baseret på hashing og imit-indsættelser (beskedgodkendelseskoder baseret på symmetrisk kryptering), klasserne Gost3411HMAC (arving af den abstrakte standardklasse HMAC) og Gost28147ImitCryptoServiceProvider (arving af den abstrakte klasse GostImit,4 er til gengæld an,4,1 arvtager af den abstrakte standardklasse KeyedHashAlgorithm).

Midler til beskyttelse af kryptografisk information

  • CryptoPro CSP– et middel til beskyttelse af kryptografisk information (kryptering/dekryptering, signaturbekræftelse, hashing) på operativsystemets kerneniveau. Kryptodriveren er beregnet til brug i specielle applikationer (IP-protokol, filsystemkryptering)
  • CryptoPro JCP– et kryptografisk informationsbeskyttelsesværktøj udviklet i overensstemmelse med JCA-specifikationen (Java Cryptography Architecture), der implementerer russiske kryptografiske standarder
  • CryptoPro Sharpei– giver dig mulighed for at bruge det kryptografiske informationsbeskyttelsesværktøj CryptoPro CSP på Microsoft .Net Framework-platformen. Softwareproduktet implementerer et sæt grænseflader til adgang til kryptografiske operationer.Net Cryptographic Provider
  • CryptoPro IPSec– et sæt protokoller, der sikrer beskyttelsen af ​​data transmitteret over internetprotokollens IP. Softwareproduktet tillader godkendelse og/eller kryptering af IP-pakker
  • CryptoPro HSM– hardware og software kryptografisk modul (hardware sikkerhedsmodul), kompatibel med CryptoPro CSP, leverer kryptografiske tjenester til brugere af virksomhedens netværk
  • Atlix HSM– hardwarekryptografisk modul (hardwaresikkerhedsmodul), kompatibelt med CryptoPro CSP. Atlix HSM er designet til at sikre sikker opbevaring og brug af den private nøgle fra en autoriseret person fra en certificeringsmyndighed

Kryptografiske informationsbeskyttelsesværktøjer med smart cards og USB-nøgler

  • MSc CSP– et kryptografisk informationsbeskyttelsesværktøj, der giver dig mulighed for at tage beskyttelsen af ​​brugerens hemmelige nøgle til et nyt niveau og øge gyldighedsperioden for hemmelige nøgler til 3 år
  • CryptoPro Rutoken CSP– software og hardware CIPF, der kombinerer funktionerne fra den russiske kryptoudbyder CryptoPro og Rutoken EDS identifikator
  • CryptoPro eToken CSP– et middel til kryptografisk informationsbeskyttelse, der giver dig mulighed for at tage beskyttelsen af ​​brugerens hemmelige nøgle til et højere niveau og øge gyldighedsperioden for hemmelige nøgler til 3 år

Offentlig nøgleinfrastruktur

  • Certificeringscenter "CryptoPro UC"– en pc designet til at udføre organisatoriske og tekniske foranstaltninger til at levere værktøjer og specifikationer til brug af offentlige nøglecertifikater til brugere af certificeringscentret som organisation
  • CryptoPro TSP– en serie af produkter designet til at organisere en tidsstempelserver og til at integrere funktionalitet til arbejde med tidsstempler i forskellige applikationer
  • CryptoPro OCSP– en serie af produkter designet til at organisere en OCSP-server og til at integrere funktionaliteten til at kontrollere certifikatstatusser ved hjælp af OCSP-protokollen i forskellige applikationer
  • Arbejdsstation til analyse af konfliktsituationer– en pc inkluderet i CryptoPro CA-softwaren og designet til at verificere overensstemmelsen af ​​den digitale signatur med indholdet af det elektroniske dokument og identificere deltageren i det automatiserede bankafviklingssystem, som fuldførte dets generering
  • CryptoPro-tilbagekaldelsesudbyder– et produkt designet til at integrere realtidskontrol af offentlige nøglecertifikatstatusser ved hjælp af OCSP-protokollen i Windows OS
  • Certificeringscenter Atlix CA
  • CryptoPro EDS– en forbedret digital signatur, der giver dig mulighed for at løse de vanskeligheder, der er forbundet med brugen af ​​digitale signaturer. CryptoPro EDS giver deltagere i elektronisk dokumenthåndtering en evidensbase relateret til at fastslå tidspunktet for underskrift og status for signaturens offentlige nøglecertifikat på underskriftstidspunktet

Beskyttelse mod uautoriseret adgang ved hjælp af CryptoPro CSP

  • CryptoPro TLS– CryptoPro TLS-netværksgodkendelsesstøttemodul, en del af CryptoPro CSP CIPF, implementerer Transport Layer Security-protokollen (TLS v. 1.0, RFC 2246) ved hjælp af russiske kryptografiske standarder
  • CryptoPro Winlogon– produktet er designet til Windows OS, implementerer indledende brugergodkendelse af Kerberos V5-protokollen (RFC 4120) ved hjælp af et certifikat og nøglemedie CryptoPro CSP 3.0 (smartkort, USB-token)
  • CryptoPro EAP-TLS– avanceret tovejs kryptografisk godkendelsesprotokol mellem fjernbrugere og RADIUS-serveren (Remote Authentication Dial-In User Service)
  • Secure Pack Rus 1.0, Secure Pack Rus 2.0– serviceopdateringspakke til Microsoft Windows XP og Microsoft Windows Server 2003 operativsystemer
  • CryptoPro EFS– et produkt til at sikre beskyttelse af fortrolige oplysninger, når de opbevares på en pc

Identifikationssystemer

  • IdM– systemer til automatisering af talrige opgaver, der opstår gennem identifikationsdatas livscyklus. Sikre interaktion mellem sikkerhedstjenesten i HR-afdelingen og IT-administratorer, forsyne dem med de nødvendige softwareværktøjer

Programmer og hjælpeprogrammer

  • CryptoARM (Crypto Three)– software designet til at arbejde med certifikater og udbydere, kryptere eller dekryptere data, oprette eller verificere en elektronisk digital signatur (EDS) ved hjælp af offentlige nøglecertifikater
  • cryptcp kommandolinjeapplikation– et softwareprodukt, der er en kommandolinjeapplikation til at arbejde med certifikater, kryptering og dekryptering af data, hashing af data ved hjælp af offentlige nøglecertifikater, oprettelse og verifikation af en elektronisk digital signatur (EDS)
  • EDS processor– et softwareprodukt til implementering af det certificerede CIPF-værktøj CryptoPro CSP i et sikkert elektronisk dokumenthåndteringssystem for at forene adgangen til de kryptografiske funktioner i CIPF CryptoPro CSP
  • CryptoPro PDF– modul til oprettelse og verifikation af digitale signaturer til generering og verifikation af elektroniske digitale signaturer i Adobe Reader, Adobe Acrobat version 7 og nyere
  • CryptoPro Office-signatur– et softwareprodukt til at give mulighed for at oprette og verificere en elektronisk digital signatur (EDS) i henhold til GOST R 34.10-2001-algoritmen for Word- og Excel-dokumenter fra Microsoft Office 2007 og Microsoft Office 2010