ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² написании студСнчСских Ρ€Π°Π±ΠΎΡ‚
АнтистрСссовый сСрвис

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° систСмы Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ подлинности сСртификата ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π°

ΠšΡƒΡ€ΡΠΎΠ²Π°ΡΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈΠ£Π·Π½Π°Ρ‚ΡŒ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒΠΌΠΎΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹

БущСствуСт Π΄Π²Π° способа получСния Π΄ΠΎΠ²Π΅Ρ€ΡΡŽΡ‰Π΅ΠΉ стороной сСртификатов для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠΈ: модСль с ΠΏΡ€ΠΎΡ‚Π°Π»ΠΊΠΈΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΈ ΠΌΠΎΠ΄Π΅Π»ΡŒ с ΠΈΠ·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅ΠΌ. МодСль с ΠΏΡ€ΠΎΡ‚Π°Π»ΠΊΠΈΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚Π΅Π»ΡŒ ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚Π΅Π»ΡŽ вмСстС со ΡΠ²ΠΎΠΈΠΌ сСртификатом всС сСртификаты Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠΈ, ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ ΠΈΡ… ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ. МодСль с ΠΈΠ·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚Π΅Π»ΡŒ посылаСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ свой сСртификат… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° систСмы Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ подлинности сСртификата ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π° (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

Π—Π°Π΄Π°Π½ΠΈΠ΅

НСобходимо Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ систСму Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ сСртификата ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π° с ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ CryptoAPI Π½Π° ΡΠ·Ρ‹ΠΊΠ΅ Delphi. БистСма Π΄ΠΎΠ»ΠΆΠ½Π° Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ:

1. ГСнСрация ΠΏΠ°Ρ€Ρ‹ ΠΊΠ»ΡŽΡ‡Π΅ΠΉ (ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ ΠΈ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ) администратора для подписывания сСртификата

2. Π’Π΅Π΄Π΅Π½ΠΈΠ΅ списка ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΈ ΠΈΡ… ΡΠ΅Ρ€Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΠ² (созданиС, ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅, Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅)

3. Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ созданиС ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° ΠΊΠ»ΡŽΡ‡Π΅ΠΉ ΠΈ Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΡ ΠΏΠ°Ρ€Ρ‹ ΠΊΠ»ΡŽΡ‡Π΅ΠΉ — ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ ΠΈ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ.

4. Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ созданиС сСртификата ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π° (Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ сСртификата см. Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π’) ΠΈ Π΅Π³ΠΎ подписываниС администратором с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ своСго сСкрСтного ΠΊΠ»ΡŽΡ‡Π°. Экспорт сСртификата Π² Ρ„Π°ΠΉΠ».

5. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° подлинности сСртификата, присланного для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ сСртификата (Ρ‚.Π΅. ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ тСкущая Π΄Π°Ρ‚Π° мСньшС ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ³ΠΎ срока дСйствия сСртификата)

6. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ просмотра всСх ΠΏΠΎΠ»Π΅ΠΉ сСртификата ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ

7. ΠŸΡ€ΠΈ ΠΎΠΊΠΎΠ½Ρ‡Π°Π½ΠΈΠΈ срока дСйствия ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ сСртификата Π² Π°Ρ€Ρ…ΠΈΠ² сСртификатов. Π’Π΅Π΄Π΅Π½ΠΈΠ΅ Π°Ρ€Ρ…ΠΈΠ²Π° сСртификатов

Для обСспСчСния возмоТности ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ модуля Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ подлинности сСртификата Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€Π΅Π΄ΡƒΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ Π²Π½ΠΎΡΠΈΡ‚ΡŒ измСнСния Π² Π»ΡŽΠ±Ρ‹Π΅ поля сСртификата. Π­Ρ‚ΠΎΡ‚ Ρ€Π΅ΠΆΠΈΠΌ Π±ΡƒΠ΄Π΅Ρ‚ использован ΠΏΡ€Π΅ΠΏΠΎΠ΄Π°Π²Π°Ρ‚Π΅Π»Π΅ΠΌ ΠΏΡ€ΠΈ Π·Π°Ρ‰ΠΈΡ‚Π΅ студСнтом курсовой Ρ€Π°Π±ΠΎΡ‚Ρ‹.

1. Π˜Π½Ρ„Ρ€Π°ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Ρ… ΠΊΠ»ΡŽΡ‡Π΅ΠΉ PKI

Π˜Π½Ρ„Ρ€Π°ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Ρ… ΠΊΠ»ΡŽΡ‡Π΅ΠΉ PKI (Public Key Infrastructure) прСдставляСт собой ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ½ΡƒΡŽ систСму, ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΡƒΡŽ всС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ сСрвисы для использования Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Ρ… ΠΊΠ»ΡŽΡ‡Π΅ΠΉ. Π­Ρ‚Π° комплСксная систСма Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² ΡΠ΅Π±Ρ структуры, ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΈ, ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹, Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Π΅ ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Π΅ срСдства. PKI обСспСчиваСт Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½Ρ‹ΠΉ ΠΎΠ±ΠΌΠ΅Π½ сообщСниями ΠΈ Π½Π°Π΄Π΅ΠΆΠ½ΡƒΡŽ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ ΠΌΠ΅ΠΆΠ΄Ρƒ сторонами, Π½Π΅Π·Π½Π°ΠΊΠΎΠΌΡ‹ΠΌΠΈ Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Ρ‡Π΅Ρ€Π΅Π· ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Π΅ сСти. По ΠΏΡ€ΠΎΠ³Π½ΠΎΠ·Π°ΠΌ Π°Π½Π°Π»ΠΈΡ‚ΠΈΠΊΠΎΠ², Π² Π±Π»ΠΈΠΆΠ°ΠΉΡˆΠΈΠ΅ Π³ΠΎΠ΄Ρ‹ ΠΎΠΆΠΈΠ΄Π°ΡŽΡ‚ΡΡ высокиС Ρ‚Π΅ΠΌΠΏΡ‹ роста сфСры услуг ΠΏΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΡŽ PKI вслСдствиС ΡˆΠΈΡ€ΠΎΠΊΠΎΠ³ΠΎ развития элСктронной ΠΊΠΎΠΌΠΌΠ΅Ρ€Ρ†ΠΈΠΈ. Π’ Π½Π°ΡΡ‚оящСС врСмя поставщиками элСктронных услуг становятся Π±Π°Π½ΠΊΠΈ, Π½ΠΎΡ‚Π°Ρ€ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠΎΠ½Ρ‚ΠΎΡ€Ρ‹, страховыС ΠΈ Ρ‚ΠΎΡ€Π³ΠΎΠ²Ρ‹Π΅ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ, ΠΏΡ€ΠΈ опСрациях ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ†Π΅Π»ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ ΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π½Π΅ΠΎΡ‚ΠΊΠ°Π·ΡƒΠ΅ΠΌΠΎΡΡ‚ΡŒ ΠΎΡ‚ Ρ„Π°ΠΊΡ‚Π° Π΅Π΅ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ, ΠΈΠΌΠ΅Π΅Ρ‚ пСрвостСпСнноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.

1.1 ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ PKI

ΠžΡΠ½ΠΎΠ²Π½Ρ‹ΠΌΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ PKI ΡΠ²Π»ΡΡŽΡ‚ΡΡ:

Β· Π£Π΄ΠΎΡΡ‚ΠΎΠ²Π΅Ρ€ΡΡŽΡ‰ΠΈΠΉ Ρ†Π΅Π½Ρ‚Ρ€

Β· РСгистрационный Ρ†Π΅Π½Ρ‚Ρ€

Β· РССстр сСртификатов

Β· Архив сСртификатов

Β· ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ

Π£Π΄ΠΎΡΡ‚ΠΎΠ²Π΅Ρ€ΡΡŽΡ‰ΠΈΠΉ Ρ†Π΅Π½Ρ‚Ρ€ (Π£Π¦) являСтся Π³Π»Π°Π²Π½Ρ‹ΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠΌ PKI. НазначСниС ΡƒΠ΄ΠΎΡΡ‚ΠΎΠ²Π΅Ρ€ΡΡŽΡ‰Π΅Π³ΠΎ Ρ†Π΅Π½Ρ‚Ρ€Π° состоит Π² Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ сСртификатов ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Ρ… ΠΊΠ»ΡŽΡ‡Π΅ΠΉ, ΠΈ Ρ‚Π΅ΠΌ самым Π² ΡƒΠ΄ΠΎΡΡ‚ΠΎΠ²Π΅Ρ€Π΅Π½ΠΈΠΈ подлинности сторон, ΡƒΡ‡Π°ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… Π² ΠΎΠ±ΠΌΠ΅Π½Π΅ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ. ИспользованиС ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Ρ… ΠΊΠ»ΡŽΡ‡Π΅ΠΉ Π±Π΅Π· ΠΈΡ… Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΈ Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ нСсСт Π² ΡΠ΅Π±Π΅ ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ΄ΠΌΠ΅Π½Ρ‹ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π° ΠΈ Π²Ρ‹Π΄Π°Ρ‡ΠΈ сСбя Π½Π°Ρ€ΡƒΡˆΠΈΡ‚Π΅Π»Π΅ΠΌ Π·Π° Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ всС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ PKI Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ зарСгистрированноС удостовСрСниС подтвСрТдСния ΠΈΡ… Π»ΠΈΡ‡Π½ΠΎΡΡ‚ΠΈ, ΠΏΡ€ΠΈΠ·Π½Π°Π²Π°Π΅ΠΌΠΎΠ΅ всСми ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌΠΈ Π·Π°ΠΊΠΎΠ½Π½Ρ‹ΠΌ ΠΈ Π½Π°Π΄Π΅ΠΆΠ½Ρ‹ΠΌ. Π’Π°ΠΊΠΎΠ΅ удостовСрСниС содСрТится Π² ΡΠ΅Ρ€Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚Π΅ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. Для завСрСния этого сСртификата ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ цифровая подпись ΡƒΠ΄ΠΎΡΡ‚ΠΎΠ²Π΅Ρ€ΡΡŽΡ‰Π΅Π³ΠΎ Ρ†Π΅Π½Ρ‚Ρ€Π°. Π£Π΄ΠΎΡΡ‚ΠΎΠ²Π΅Ρ€ΡΡŽΡ‰ΠΈΠΉ Ρ†Π΅Π½Ρ‚Ρ€ выполняСт Ρ€ΠΎΠ»ΡŒ Π½ΠΎΡ‚Π°Ρ€ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΊΠΎΠ½Ρ‚ΠΎΡ€Ρ‹, ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π°ΡŽΡ‰Π΅ΠΉ ΠΏΠΎΠ΄Π»ΠΈΠ½Π½ΠΎΡΡ‚ΡŒ сторон, ΡƒΡ‡Π°ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… Π² ΠΎΠ±ΠΌΠ΅Π½Π΅ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ.

Π£Π΄ΠΎΡΡ‚ΠΎΠ²Π΅Ρ€ΡΡŽΡ‰ΠΈΠΉ Ρ†Π΅Π½Ρ‚Ρ€ извСстСн ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ ΠΏΠΎ Π΄Π²ΡƒΠΌ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π°ΠΌ: названию ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΌΡƒ ΠΊΠ»ΡŽΡ‡Ρƒ. Π£Π¦ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ своС имя Π² ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Π²Ρ‹ΠΏΡƒΡ‰Π΅Π½Π½Ρ‹ΠΉ ΠΈΠΌ ΡΠ΅Ρ€Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚. ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ сСртификаты ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ Π£Π¦ ΠΈ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ Π² ΠΈΡ… ΠΏΠΎΠ΄Π»ΠΈΠ½Π½ΠΎΡΡ‚ΠΈ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ Π£Π¦.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π£Π¦:

Β· ГСнСрация своСго сСкрСтного ΠΊΠ»ΡŽΡ‡Π° ΠΈ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ самоподписанного сСртификата

Β· Выпуск (Ρ‚.Π΅. созданиС ΠΈ ΠΏΠΎΠ΄ΠΏΠΈΡΡ‹Π²Π°Π½ΠΈΠ΅) сСртификатов ΠΏΠΎΠ΄Ρ‡ΠΈΠ½Π΅Π½Π½Ρ‹Ρ… ΠΈ / ΠΈΠ»ΠΈ связанных Π£Π¦ ΠΈ ΡΠ΅Ρ€Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΠ² ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Ρ… ΠΊΠ»ΡŽΡ‡Π΅ΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ

Β· Π’Π΅Π΄Π΅Π½ΠΈΠ΅ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ·Π΄Π°Π½Π½Ρ‹Ρ… сСртификатов ΠΈ Ρ€Π΅Π΅ΡΡ‚Ρ€Π° Π°Π½Π½ΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… сСртификатов

Выпуская сСртификат ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π° Π£Π¦ Ρ‚Π΅ΠΌ самым ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π»ΠΈΡ†ΠΎ, ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ Π² ΡΠ΅Ρ€Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚Π΅, Π²Π»Π°Π΄Π΅Π΅Ρ‚ сСкрСтным ΠΊΠ»ΡŽΡ‡ΠΎΠΌ, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΌΡƒ ΠΊΠ»ΡŽΡ‡Ρƒ. Π’ ΠΈΠ½Ρ„раструктурС PKI ΡƒΠ΄ΠΎΡΡ‚ΠΎΠ²Π΅Ρ€ΡΡŽΡ‰ΠΈΠ΅ Ρ†Π΅Π½Ρ‚Ρ€Ρ‹ Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°ΡŽΡ‚ ΠΊΠ°ΠΊ довСрСнная Ρ‚Ρ€Π΅Ρ‚ΡŒΡ сторона, ΡƒΠ΄ΠΎΡΡ‚ΠΎΠ²Π΅Ρ€ΡΡŽΡ‰Π°Ρ ΠΏΠΎΠ΄Π»ΠΈΠ½Π½ΠΎΡΡ‚ΡŒ участников.

РСгистрационный Ρ†Π΅Π½Ρ‚Ρ€ (Π Π¦) являСтся Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠΌ PKI. РСгистрационный Ρ†Π΅Π½Ρ‚Ρ€ выполняСт Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ:

Β· рСгистрации ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ,

Β· взаимосвязи ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ с Π£Π¦

Β· ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, которая заносится Π² ΡΠ΅Ρ€Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚.

Π£Π¦ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΠΌΠΈ рСгистрационными Ρ†Π΅Π½Ρ‚Ρ€Π°ΠΌΠΈ. Π’ ΡΠ»ΡƒΡ‡Π°Π΅ отсутствия Π Π¦ Π΅Π³ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ выполняСт сам ΡƒΠ΄ΠΎΡΡ‚ΠΎΠ²Π΅Ρ€ΡΡŽΡ‰ΠΈΠΉ Ρ†Π΅Π½Ρ‚Ρ€. Π Π¦ ΠΌΠΎΠΆΠ΅Ρ‚ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ»ΡŽΡ‡ΠΈ ΠΈ ΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒ свСдСния ΠΎ Π²Ρ‹ΠΏΡƒΡΠΊΠ΅ ΠΈ Π°Π½Π½ΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ сСртификатов. Но Π Π¦ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ сам Π²Ρ‹ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ сСртификаты ΠΈ Π°Π½Π½ΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ….

РССстр сСртификатов — это Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ…, Π³Π΄Π΅ хранятся Π΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ сСртификаты ΠΈ ΡΠΏΠΈΡΠΊΠΈ Π°Π½Π½ΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… сСртификатов. Π’Π΅Ρ€ΠΌΠΈΠ½ «Ρ€Π΅Π΅ΡΡ‚Ρ€» Π²Π²Π΅Π΄Π΅Π½ Π² ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΡƒ Π—Π°ΠΊΠΎΠ½ΠΎΠΌ Π Π€ «ΠžΠ± ΡΠ»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½ΠΎΠΉ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ подписи». РССстр обСспСчиваСт Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ ΠΈ Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½Π΅Π½ΠΈΠ΅ сСртификатов, управляСт внСсСниями ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΡΠ΅Ρ€Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚Ρ‹, прСдоставляСт ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ статусС сСртификата.

Архив сСртификатов — это Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ… Π΄ΠΎΠ»Π³ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ хранСния всСх ΠΈΠ·Π΄Π°Π½Π½Ρ‹Ρ… сСртификатов. Архив ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ споров ΠΎ ΠΏΠΎΠ΄Π»ΠΈΠ½Π½ΠΎΡΡ‚ΠΈ Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Ρ… подписСй, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ Π² ΠΏΡ€ΠΎΡˆΠ»ΠΎΠΌ Π·Π°Π²Π΅Ρ€ΡΠ»ΠΈΡΡŒ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹. Главная функция Π°Ρ€Ρ…ΠΈΠ²Π° — ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ Ρ†Π΅Π»ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ Ρ…Ρ€Π°Π½ΠΈΠΌΡ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‚. Π΅. отсутствиС нСсанкционированных ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΉ.

ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ PKI дСлятся Π½Π° Π΄Π²Π΅ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ: Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Ρ‹ сСртификатов ΠΈ Π΄ΠΎΠ²Π΅Ρ€ΡΡŽΡ‰ΠΈΠ΅ стороны. Π’Π»Π°Π΄Π΅Π»ΡŒΡ†Π΅ΠΌ сСртификата ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ физичСскоС ΠΈΠ»ΠΈ ΡŽΡ€ΠΈΠ΄ΠΈΡ‡Π΅ΡΠΊΠΎΠ΅ Π»ΠΈΡ†ΠΎ, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, сСрвСр, ΠΈ Ρ‚. ΠΏ. Π”ΠΎΠ²Π΅Ρ€ΡΡŽΡ‰ΠΈΠ΅ стороны Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°ΡŽΡ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ ΡΡ‚атусС сСртификатов ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Ρ… ΠΊΠ»ΡŽΡ‡Π°Ρ… ЭЦП своих ΠΏΠ°Ρ€Ρ‚Π½Π΅Ρ€ΠΎΠ². Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ сСртификата ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π° Π΄ΠΎΠ²Π΅Ρ€ΡΡŽΡ‰Π°Ρ сторона провСряСт ΡΠ»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½ΡƒΡŽ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΡƒΡŽ подпись своСго ΠΏΠ°Ρ€Ρ‚Π½Π΅Ρ€Π°.

1.2 Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° сСртификатов ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Ρ… ΠΊΠ»ΡŽΡ‡Π΅ΠΉ ΠΏΠΎ ΡΡ‚Π°Π½Π΄Π°Ρ€Ρ‚Ρƒ Π₯.509

Π€ΠΎΡ€ΠΌΠ°Ρ‚ сСртификата ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ Π² Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΡΡ… Π₯.509 ΠœΠ΅ΠΆΠ΄ΡƒΠ½Π°Ρ€ΠΎΠ΄Π½ΠΎΠ³ΠΎ Боюза ΠΏΠΎ Ρ‚СлСкоммуникациям (ITU).

Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° сСртификата

ВСрсия

Π‘Π΅Ρ€ΠΈΠΉΠ½Ρ‹ΠΉ Π½ΠΎΠΌΠ΅Ρ€

Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° подписи

Имя издатСля (Π£Π¦)

ΠŸΠ΅Ρ€ΠΈΠΎΠ΄ дСйствия

Имя ΡΡƒΠ±ΡŠΠ΅ΠΊΡ‚Π° (ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ)

ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ ΡΡƒΠ±ΡŠΠ΅ΠΊΡ‚Π°

Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ издатСля

Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΡΡƒΠ±ΡŠΠ΅ΠΊΡ‚Π°

Π Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ

Подпись

Под ΡΡƒΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ понимаСтся сторона, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΡŽΡ‰Π°Ρ сСкрСтный ΠΊΠ»ΡŽΡ‡, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Π΄Π°Π½Π½ΠΎΠΌΡƒ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΌΡƒ ΠΊΠ»ΡŽΡ‡Ρƒ.

ПолС ВСрсия опрСдСляСт Π²Π΅Ρ€ΡΠΈΡŽ стандарта Π₯.509, которая опрСдСляСт состав сСртификата. Π’ Π½Π°ΡΡ‚оящСС врСмя общСпринятой являСтся вСрсия 3.

ПолС Π‘Π΅Ρ€ΠΈΠΉΠ½Ρ‹ΠΉ Π½ΠΎΠΌΠ΅Ρ€ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ сСртификата, Π²Ρ‹ΠΏΡƒΡ‰Π΅Π½Π½ΠΎΠ³ΠΎ Π£Π¦. ΠšΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΡ ΠΈΠΌΠ΅Π½ΠΈ издатСля ΠΈ ΡΠ΅Ρ€ΠΈΠΉΠ½ΠΎΠ³ΠΎ Π½ΠΎΠΌΠ΅Ρ€Π° ΠΎΠ΄Π½ΠΎΠ·Π½Π°Ρ‡Π½ΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ сСртификат.

ПолС Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° подписи ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ ЭЦП, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ использован для Π·Π°Ρ‰ΠΈΡ‚Ρ‹ сСртификата, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ DSA с SHA-1 ΠΈΠ»ΠΈ RSA с MD5.

ПолС Π Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ содСрТит информация ΠΎ ΠΏΡ€Π°Π²Π°Ρ… доступа ΠΊ Ρ‚ΠΎΠΉ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ систСмС.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ сСртификата:

Π‘Π΅Ρ€ΠΈΠΉΠ½Ρ‹ΠΉ Π½ΠΎΠΌΠ΅Ρ€ #12 345 678

Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° подписи GOST open key

Имя издатСля C=RU, org=ACME

ΠŸΠ΅Ρ€ΠΈΠΎΠ΄ дСйствия c 01.01.2000 00:00:00

Π΄ΠΎ 31.12.2003 00:00:00

Имя ΡΡƒΠ±ΡŠΠ΅ΠΊΡ‚Π° C=RU, org=ACME, cn=UserName

ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ ΡΡƒΠ±ΡŠΠ΅ΠΊΡ‚Π° 100 111 001 001 000 115 118 192 721 920

Подпись Π£Π¦ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ: GOST P34.10−94 sign algoritm

Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅: 10 011 110 100 100 100 128 768

1.3 АрхитСктура PKI

PKI состоит ΠΈΠ· ΠΌΠ½ΠΎΠ³ΠΈΡ… ΡƒΠ΄ΠΎΡΡ‚ΠΎΠ²Π΅Ρ€ΡΡŽΡ‰ΠΈΡ… Ρ†Π΅Π½Ρ‚Ρ€ΠΎΠ² ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, связанных ΠΌΠ΅ΠΆΠ΄Ρƒ собой Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ способами. Π›ΡŽΠ±ΠΎΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ, ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ²ΡˆΠΈΠΉ Π·Π°Π²Π΅Ρ€Π΅Π½Π½ΠΎΠ΅ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ подписью сообщСниС, Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅Ρ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ ΠΏΠΎΠ΄Π»ΠΈΠ½Π½ΠΎΡΡ‚ΡŒ сообщСния с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π΅Π³ΠΎ сСртификата ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π°. ΠŸΡ€ΠΈ этом Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠ΄ΠΎΡΡ‚ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒΡΡ Π² ΠΏΠΎΠ΄Π»ΠΈΠ½Π½ΠΎΡΡ‚ΠΈ сСртификата, Π½Π΅ ΠΈΠΌΠ΅Ρ прямой связи с ΡƒΠ΄ΠΎΡΡ‚ΠΎΠ²Π΅Ρ€ΡΡŽΡ‰ΠΈΠΌ Ρ†Π΅Π½Ρ‚Ρ€ΠΎΠΌ — ΠΈΠ·Π΄Π°Ρ‚Π΅Π»Π΅ΠΌ сСртификата. ΠŸΠΎΠ΄Π»ΠΈΠ½Π½ΠΎΡΡ‚ΡŒ сСртификата провСряСтся, прослСТивая Ρ†Π΅ΠΏΠΎΡ‡ΠΊΡƒ сСртификатов ΠΌΠ΅ΠΆΠ΄Ρƒ двумя ΡƒΠ΄ΠΎΡΡ‚ΠΎΠ²Π΅Ρ€ΡΡŽΡ‰ΠΈΠΌΠΈ Ρ†Π΅Π½Ρ‚Ρ€Π°ΠΌΠΈ: своим ΠΈ ΠΎΡ‚правитСля. Для развСртывания PKI Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎ использовали Π΄Π²Π° Ρ‚ΠΈΠΏΠ° Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€: ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΠΈ ΡΠ΅Ρ‚Π΅Π²ΡƒΡŽ. Π’ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ врСмя Π² ΡΠ²ΡΠ·ΠΈ с Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒΡŽ объСдинСния Ρ€Π°Π·Π½ΠΎΡ€ΠΎΠ΄Π½Ρ‹Ρ… структур ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»Π° распространСниС гибридная Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°.

Π˜Π΅Ρ€Π°Ρ€Ρ…ΠΈΡ‡Π΅ΡΠΊΠ°Ρ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°

Π£Π΄ΠΎΡΡ‚ΠΎΠ²Π΅Ρ€ΡΡŽΡ‰ΠΈΠ΅ Ρ†Π΅Π½Ρ‚Ρ€Ρ‹ (Π£Π¦) ΠΎΡ€Π³Π°Π½ΠΈΠ·ΡƒΡŽΡ‚ΡΡ иСрархичСски ΠΏΠΎΠ΄ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠ³ΠΎ ΡƒΠ΄ΠΎΡΡ‚ΠΎΠ²Π΅Ρ€ΡΡŽΡ‰Π΅Π³ΠΎ Ρ†Π΅Π½Ρ‚Ρ€Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ выпускаСт самоподписанный сСртификат ΠΈ ΡΠ΅Ρ€Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚Ρ‹ для ΠΏΠΎΠ΄Ρ‡ΠΈΠ½Π΅Π½Π½Ρ‹Ρ… ΡƒΠ΄ΠΎΡΡ‚ΠΎΠ²Π΅Ρ€ΡΡŽΡ‰ΠΈΡ… Ρ†Π΅Π½Ρ‚Ρ€ΠΎΠ². ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΡƒΠ΄ΠΎΡΡ‚ΠΎΠ²Π΅Ρ€ΡΡŽΡ‰ΠΈΠΉ Ρ†Π΅Π½Ρ‚Ρ€ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ΄ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ сСртификаты Π£Π¦, находящихся Π½ΠΈΠΆΠ΅ Π΅Π³ΠΎ ΠΏΠΎ ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΠΈ. Π’ ΠΈΠ΅Ρ€Π°Ρ€Ρ…ичСской PKI каТдая Π΄ΠΎΠ²Π΅Ρ€ΡΡŽΡ‰Π°Ρ сторона Π·Π½Π°Π΅Ρ‚ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ подписи ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠ³ΠΎ Π£Π¦. Π›ΡŽΠ±ΠΎΠΉ сСртификат ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½ ΠΏΡƒΡ‚Π΅ΠΌ выстраивания Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠΈ сСртификатов ΠΎΡ‚ ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠ³ΠΎ ΡƒΠ΄ΠΎΡΡ‚ΠΎΠ²Π΅Ρ€ΡΡŽΡ‰Π΅Π³ΠΎ Ρ†Π΅Π½Ρ‚Ρ€Π°. ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠΈ сСртификатов ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ всС «ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Π΅» Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠΈ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ с ΡΠ΅Ρ€Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΠ², ΠΈΠ·Π΄Π°Π½Π½Ρ‹Ρ… ΠΊΠΎΡ€Π½Π΅Π²Ρ‹ΠΌ Π£Π¦. ΠŸΡ€ΠΈ этом Π½Π°Π΄ΠΎ ΡƒΠ΄ΠΎΡΡ‚ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ срок дСйствия ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ сСртификата Π² Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠ΅ Π½Π΅ ΠΈΡΡ‚Π΅ΠΊ ΠΈ ΡΠ΅Ρ€Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ Π½Π΅ Π°Π½Π½ΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Π½.

БущСствуСт Π΄Π²Π° способа получСния Π΄ΠΎΠ²Π΅Ρ€ΡΡŽΡ‰Π΅ΠΉ стороной сСртификатов для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠΈ: модСль с ΠΏΡ€ΠΎΡ‚Π°Π»ΠΊΠΈΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΈ ΠΌΠΎΠ΄Π΅Π»ΡŒ с ΠΈΠ·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅ΠΌ. МодСль с ΠΏΡ€ΠΎΡ‚Π°Π»ΠΊΠΈΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚Π΅Π»ΡŒ ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚Π΅Π»ΡŽ вмСстС со ΡΠ²ΠΎΠΈΠΌ сСртификатом всС сСртификаты Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠΈ, ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ ΠΈΡ… ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ. МодСль с ΠΈΠ·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚Π΅Π»ΡŒ посылаСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ свой сСртификат, ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚Π΅Π»ΡŒ Π΄ΠΎΠ»ΠΆΠ΅Π½ сам ΠΈΠ·Π²Π»Π΅Ρ‡ΡŒ сСртификаты всСй Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠΈ. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ сСртификат содСрТит имя издатСля, ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚Π΅Π»ΡŽ извСстны Π£Π¦ всСй Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠΈ.

БСтСвая Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°

НСзависимыС ΡƒΠ΄ΠΎΡΡ‚ΠΎΠ²Π΅Ρ€ΡΡŽΡ‰ΠΈΠ΅ Ρ†Π΅Π½Ρ‚Ρ€Ρ‹ Π²Π·Π°ΠΈΠΌΠ½ΠΎ ΡΠ΅Ρ€Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΡŽΡ‚ Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³Π°, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π²Ρ‹ΠΏΡƒΡΠΊΠ°ΡŽΡ‚ сСртификаты Π΄Ρ€ΡƒΠ³ для Π΄Ρ€ΡƒΠ³Π°. Π’Π·Π°ΠΈΠΌΠ½ΠΎ сСртифицированныС Π£Π¦ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡŽΡ‚ΡΡ Π² ΠΏΠ°Ρ€Ρ‹ Π²Π·Π°ΠΈΠΌΠ½ΠΎΠΉ сСртификации.

Π”ΠΎΠ²Π΅Ρ€ΡΡŽΡ‰Π°Ρ сторона Π·Π½Π°Π΅Ρ‚ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ блиТайшСго ΠΊ Π½Π΅ΠΉ Π£Π¦, ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Ρ‚ΠΎΠ³ΠΎ, ΠΊΡ‚ΠΎ выпустил для Π½Π΅Π΅ сСртификат. Π”ΠΎΠ²Π΅Ρ€ΡΡŽΡ‰Π°Ρ сторона провСряСт сСртификат, выстраивая Ρ†Π΅ΠΏΠΎΡ‡ΠΊΡƒ довСрия ΠΎΡ‚ ΠΈΠ·Π²Π΅ΡΡ‚Π½ΠΎΠ³ΠΎ Π΅ΠΉ Π£Π¦, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΎΠ½Π° довСряСт. НапримСр, ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚Π΅Π»ΡŒ сообщСния Π·Π½Π°Π΅Ρ‚ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ подписи Π£Π¦3, Π° ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚Π΅Π»ΡŒ — ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ подписи Π£Π¦4. Π’ ΡΠ΅Ρ‚Π΅Π²ΠΎΠΉ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅ всСгда сущСствуСт нСсколько Ρ†Π΅ΠΏΠΎΡ‡Π΅ΠΊ сСртификатов ΠΎΡ‚ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚Сля ΠΊ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚Π΅Π»ΡŽ сообщСния. Π’ Π΄Π°Π½Π½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ самая короткая Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠ° такая: ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚Π΅Π»ΡŒ сообщСния провСряСт сСртификат отправитСля, Π²Ρ‹ΠΏΡƒΡ‰Π΅Π½Π½Ρ‹ΠΉ Π£Π¦3, Π·Π°Ρ‚Π΅ΠΌ сСртификат Π£Π¦3, Π²Ρ‹ΠΏΡƒΡ‰Π΅Π½Π½Ρ‹ΠΉ Π£Π¦5, ΠΈ ΡΠ΅Ρ€Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ Π£Π¦5, Π²Ρ‹ΠΏΡƒΡ‰Π΅Π½Π½Ρ‹ΠΉ Π£Π¦4. Π£Π¦4 — это ΡƒΠ΄ΠΎΡΡ‚ΠΎΠ²Π΅Ρ€ΡΡŽΡ‰ΠΈΠΉ Ρ†Π΅Π½Ρ‚Ρ€, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚Π΅Π»ΡŒ довСряСт.

ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²ΠΎ сСтСвой Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ компромСтация ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π£Π¦ Π² ΡΠ΅Ρ‚ΠΈ Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π²Π΅Π΄Π΅Ρ‚ ΠΊ ΡƒΡ‚Ρ€Π°Ρ‚Π΅ довСрия ΠΊΠΎ Π²ΡΠ΅ΠΉ PKI.

Гибридная Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°

Для связывания Ρ€Π°Π·Π½ΠΎΡ€ΠΎΠ΄Π½Ρ‹Ρ… инфраструктур ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Ρ… ΠΊΠ»ΡŽΡ‡Π΅ΠΉ Π½Π΅Π΄Π°Π²Π½ΠΎ Π±Ρ‹Π»Π° ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π° гибридная ΠΈΠ»ΠΈ мостовая Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°. ΠŸΡ€ΠΈ использовании Ρ‚Π°ΠΊΠΎΠΉ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ соСдинСниС Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… PKI нСзависимо ΠΎΡ‚ ΠΈΡ… Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ достигаСтся Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ Π½ΠΎΠ²ΠΎΠ³ΠΎ Π£Π¦, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠ³ΠΎ мостовым. ЕдинствСнным Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ мостового Π£Π¦ являСтся установлСниС связСй ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ PKI.

Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ ΡΠ΅Ρ‚Π΅Π²ΠΎΠ³ΠΎ Π£Π¦ мостовой Ρ†Π΅Π½Ρ‚Ρ€ Π½Π΅ Π²Ρ‹ΠΏΡƒΡΠΊΠ°Π΅Ρ‚ сСртификаты нСпосрСдствСнно для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, Π° Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠ³ΠΎ Π£Π¦ Π² ΠΈΠ΅Ρ€Π°Ρ€Ρ…ичСской PKI — Π½Π΅ Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°Π΅Ρ‚ Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ ΡƒΠ·Π»Π° довСрия.

ВсС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ PKI Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°ΡŽΡ‚ мостовой Π£Π¦ ΠΊΠ°ΠΊ посрСдника. ΠœΠΎΡΡ‚ΠΎΠ²ΠΎΠΉ Π£Π¦ устанавливаСт ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ «Ρ€Π°Π²Π½Ρ‹ΠΉ с Ρ€Π°Π²Π½Ρ‹ΠΌ» ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΌΠΈ PKI. Если PKI являСтся иСрархичСской, мостовой Π£Π¦ устанавливаСт связь с ΠΊΠΎΡ€Π½Π΅Π²Ρ‹ΠΌ Π£Π¦. Если PKI являСтся сСтСвым, мостовой Π£Π¦ устанавливаСт связь с ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· Π£Π¦ сСти. Π’ Π»ΡŽΠ±ΠΎΠΌ случаС Π£Π¦, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ вступаСт Π² ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ с ΠΌΠΎΡΡ‚ΠΎΠ²Ρ‹ΠΌ, называСтся Π³Π»Π°Π²Π½Ρ‹ΠΌ.

Π“Π»Π°Π²Π½Ρ‹Π΅ Π£Π¦ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ PKI Π²Ρ‹ΠΏΡƒΡΠΊΠ°ΡŽΡ‚ сСртификат для мостового Π£Π¦, ΠΈ Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ PKI образуСтся взаимная сСртификация.

ИспользованиС Π²Π·Π°ΠΈΠΌΠ½ΠΎΠΉ сСртификации вмСсто ΠΈΠ»ΠΈ вмСстС с ΠΈΠ΅Ρ€Π°Ρ€Ρ…иями сСртификатов прСдставляСтся Π±ΠΎΠ»Π΅Π΅ Π½Π°Π΄Π΅ΠΆΠ½Ρ‹ΠΌ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ, Ρ‡Π΅ΠΌ чисто иСрархичСскиС ΠΌΠΎΠ΄Π΅Π»ΠΈ. Если Π² ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΠΈ довСрия скомпромСтирован сСкрСтный ΠΊΠ»ΡŽΡ‡ ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠ³ΠΎ Π£Π¦, Ρ‚ΠΎ Π²ΡΡ иСрархия Ρ‚ΠΎΠΆΠ΅ считаСтся скомпромСтированной. Π’ ΡΠ΅Ρ‚Π΅Π²ΠΎΠΉ ΠΈΠ»ΠΈ Π³ΠΈΠ±Ρ€ΠΈΠ΄Π½ΠΎΠΉ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅ компромСтация ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π£Π¦ Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ΄Ρ€Ρ‹Π²Π°Π΅Ρ‚ Π΄ΠΎΠ²Π΅Ρ€ΠΈΠ΅ ΠΊΠΎ Π²ΡΠ΅ΠΉ инфраструктурС PKI.

1.4 ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Π΅ срСдства ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ PKI

Entrust/PKI

Компания Entrust Technologies — Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ извСстный ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… срСдств ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ PKI. ОсновноС ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ — сСмСйство ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ² Entrast/PKI, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½ΠΎΠ΅ для ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ собствСнных ΡƒΠ΄ΠΎΡΡ‚ΠΎΠ²Π΅Ρ€ΡΡŽΡ‰ΠΈΡ… Ρ†Π΅Π½Ρ‚Ρ€ΠΎΠ² ΠΈ Ρ€Π°Π·Π²Π΅Ρ€Ρ‚ывания PKI. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Π΅ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ — Windows NT, Sun Solaris, HP-UX, AIX.

Entrast/PKI состоит ΠΈΠ· ΡΠ΅ΠΌΠΈ основных ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ²:

1. Entrast/Authority — основной ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ систСмы, ΠΎΡ€Π³Π°Π½ΠΈΠ·ΡƒΡŽΡ‰ΠΈΠΉ Π£Π¦. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для создания сСртификатов, Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΊΠ»ΡŽΡ‡Π΅ΠΉ ΠΈ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΡ ΠΊΠ»ΡŽΡ‡Π°ΠΌΠΈ ΠΈ ΡΠ΅Ρ€Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚Π°ΠΌΠΈ.

2. Directory — ΠΎΡ€Π³Π°Π½ΠΈΠ·ΡƒΠ΅Ρ‚ Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… сСртификатов ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Ρ… ΠΊΠ»ΡŽΡ‡Π΅ΠΉ ΠΈ ΡΠΏΠΈΡΠΊΠΎΠ² Π°Π½Π½ΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… сСртификатов.

3. Entrast/RA — выполняСт Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ рСгистрационного Ρ†Π΅Π½Ρ‚Ρ€Π°

4. Entrast/Auto RA — автоматичСский рСгистрационный Ρ†Π΅Π½Ρ‚Ρ€, рСгистрация ΠΈ Π°ΡƒΡ‚Снтификация ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Π±Π΅Π· участия администратора.

5. Entrast/Profile Server — Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΡ„ΠΈΠ»Π΅ΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ

6. Entrast/Timestamp — Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½ΠΎΠ΅ проставлСниС ΠΌΠ΅Ρ‚ΠΎΠΊ Π΄Π°Ρ‚Ρ‹-Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ

7. Entrast/Intelligence — обСспСчиваСт связь Entrust-совмСстимых ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ с ΠΎΡΠ½ΠΎΠ²Π½Ρ‹ΠΌΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ Entrust

Baltimore UniCert

ΠŸΡ€ΠΎΠ΄ΡƒΠΊΡ‚ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Baltimore Technologies LTD. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ комплСкс UniCert 5.0 обСспСчиваСт Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ Π£Π¦, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ, ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΠ»ΡŽΡ‡Π°ΠΌΠΈ, Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ нСотказуСмости Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… прилоТСниях. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ комплСкс раздСляСтся Π½Π° Π±Π°Π·ΠΎΠ²ΠΎΠ΅ ПО — UniCert Core, ΠΈ ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚ΠΎΠ΅ ПО — UniCert Advanced.

RSA Keon

ΠŸΡ€ΠΎΠ΄ΡƒΠΊΡ‚ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ RSA Security Inc. состоит ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ: Keon Certification Authority 6.5, Registration Authority, WebCentry, Key Recovery Module, Secure E-mail Module. ЯвляСтся самым Π΄Π΅ΡˆΠ΅Π²Ρ‹ΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² ΠΈΠ· Π·Π°Ρ€ΡƒΠ±Π΅ΠΆΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ².

ИспользованиС Π·Π°Ρ€ΡƒΠ±Π΅ΠΆΠ½ΠΎΠ³ΠΎ ΠŸΠž PKI ограничиваСтся Π² ΡƒΡΠ»ΠΎΠ²ΠΈΡΡ… России Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒΡŽ ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ трСбованиям отСчСствСнным криптографичСским стандартам, ΠΈ Ρ‚рСбованиям ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ сСртифицированныС ЀАПБИ отСчСствСнныС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Π΅ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Ρ‹ Π² ΡΠ»ΡƒΡ‡Π°Π΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΡΠ΅ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ появились ΠΏΠ΅Ρ€Π²Ρ‹Π΅ российскиС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Π΅ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Ρ‹ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ PKI-Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ.

VCERT PKI

ΠžΡ‚Π΅Ρ‡Π΅ΡΡ‚Π²Π΅Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ комплСкс управлСния сСртификатами ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Ρ… ΠΊΠ»ΡŽΡ‡Π΅ΠΉ. ВсС криптографичСскиС ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ Π² ΡΠΎΠΎΡ‚вСтствии с Ρ€ΠΎΡΡΠΈΠΉΡΠΊΠΈΠΌΠΈ стандартами: Π“ΠžΠ‘Π’ 28 147–89, Π“ΠžΠ‘Π’ Π 34.10−94 ΠΈ ΠΌΠ΅ΠΆΠ΄ΡƒΠ½Π°Ρ€ΠΎΠ΄Π½Ρ‹ΠΌΠΈ рСкомСндациями. БистСма Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° для ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Windows NT, 95/98. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ — МО ΠŸΠΠ˜Π­Π˜ ΠΈ ΠžΠžΠž «Π’Π°Π»ΠΈΠ΄Π°Ρ‚Π°».

ΠšΡ€ΠΈΠΏΡ‚ΠΎΠŸΡ€ΠΎ

ΠžΡ‚Π΅Ρ‡Π΅ΡΡ‚Π²Π΅Π½Π½ΠΎΠ΅ сСмСйство ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ². Основной ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ — ΠšΡ€ΠΈΠΏΡ‚ΠΎΠŸΡ€ΠΎ Π£Π¦, ΡƒΠ΄ΠΎΡΡ‚ΠΎΠ²Π΅Ρ€ΡΡŽΡ‰ΠΈΠΉ Ρ†Π΅Π½Ρ‚Ρ€, Π² ΡΠ²ΠΎΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ состоящий ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚. ΠŸΡ€ΠΎΠ΄ΡƒΠΊΡ‚ сСртифицирован ЀАПБИ. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ — компания «ΠšΡ€ΠΈΠΏΡ‚ΠΎ-ΠŸΡ€ΠΎ» ΠΈ Π³ΠΎΡΡƒΠ΄Π°Ρ€ΡΡ‚Π²Π΅Π½Π½Ρ‹ΠΉ НВЦ «ΠΡ‚лас».

2. ОписаниС Π»ΠΎΠ³ΠΈΠΊΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

3. ОписаниС интСрфСйса

ПодмСню Π‘Π΅Ρ€Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² ΡΠ΅Π±Ρ список ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΈ ΠΡ€Ρ…ΠΈΠ² сСртификатов.

ПодмСню АдминистрированиС Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² ΡΠ΅Π±Ρ Π“Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΡŽ ΠΊΠ»ΡŽΡ‡Π° ΠΈ Π‘Π°Π·Ρƒ Π”Π°Π½Π½Ρ‹Ρ….

ПодмСню ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² ΡΠ΅Π±Ρ созданиС Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈ ΡΠΏΠΈΡΠΎΠΊ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ (Ρ‡Π΅ΠΉ сСртификат Π½Π΅ Π½Π°Ρ…одится Π² Π°Ρ€Ρ…ΠΈΠ²Π΅).

Рисунок 1. Главная Ρ„ΠΎΡ€ΠΌΠ° Рисунок 2. Π€ΠΎΡ€ΠΌΠ° Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈ ΡΠΊΡΠΏΠΎΡ€Ρ‚Π° ΠΊΠ»ΡŽΡ‡Π° для подписи Рисунок 3. Π€ΠΎΡ€ΠΌΠ° экспорта ΠΊΠ»ΡŽΡ‡Π° Π€ΠΎΡ€ΠΌΠ° Π‘Π°Π·Π° Π”Π°Π½Π½Ρ‹Ρ… Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ Π’Π°Π±Π»ΠΈΡ†Ρƒ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π‘Π”. Π—Π΄Π΅ΡΡŒ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π‘Π” — ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ, Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ. ПолС Архив — ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅, Π²Ρ…ΠΎΠ΄ΠΈΡ‚ Π»ΠΈ сСртификат Π² Π°Ρ€Ρ…ΠΈΠ² — Ссли Π΄Π°, Ρ‚ΠΎ Π΅Π³ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 1, Ссли Π½Π΅Ρ‚-Ρ‚ΠΎ 0.

Рисунок 4. Π€ΠΎΡ€ΠΌΠ° Π‘Π°Π·Ρ‹ Π”Π°Π½Π½Ρ‹Ρ… Рисунок 5. Π€ΠΎΡ€ΠΌΠ° экспорта ΠΊΠ»ΡŽΡ‡Π΅ΠΉ На Ρ„ΠΎΡ€ΠΌΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, ΡΠ³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ»ΡŽΡ‡ ΠΈ ΡΠΊΡΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ. Π”Π°Π»Π΅Π΅ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ поля сСртификата. ПослС ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠ³ΠΎ создания сСртификата, ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π² Π‘Π”.

Рисунок 6. Π€ΠΎΡ€ΠΌΠ° создания Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Рисунок 7. Π€ΠΎΡ€ΠΌΠ° добавлСния Π½ΠΎΠ²ΠΎΠ³ΠΎ сСртификата гСнСрация сСртификат ΠΊΠ»ΡŽΡ‡ ΠΏΠΎΠ΄Π»ΠΈΠ½Π½ΠΎΡΡ‚ΡŒ Рисунок 8. Π€ΠΎΡ€ΠΌΠ° просмотра списка сСртификатов На Π€ΠΎΡ€ΠΌΠ΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ сСтрификата Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ подпись сСртификата. ΠŸΠΎΡ‚ΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ. Если срок дСйствия истСк, Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ этот сСртификат Π² Π°Ρ€Ρ…ΠΈΠ². Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π΄Ρ€ΡƒΠ½ΠΈΠ΅ поля сСртификата.

Рисунок 9. Π€ΠΎΡ€ΠΌΠ° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ сСтрификата Рисунок 10. — Π€ΠΎΡ€ΠΌΠ° просмотра ΠΏΠΎΠ»Π΅ΠΉ сСртификата Рисунок 11. Архив

4. Листинг ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

4.1 ΠœΠΎΠ΄ΡƒΠ»ΡŒ Π³Π»Π°Π²Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΡ‹ FormMain

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Menus, Wcrypt2, StdCtrls, unit2, sertif, Users, KeysForm, Verific, NewUser, DatM, Expo, Proc, Unit6, DatBase;

type

TMainF = class (TForm)

MainMenu1: TMainMenu;

Certificate: TMenuItem;

Verify: TMenuItem;

Archive: TMenuItem;

Admin: TMenuItem;

GenKey: TMenuItem;

Exit: TMenuItem;

N1: TMenuItem;

N2: TMenuItem;

N3: TMenuItem;

N4: TMenuItem;

procedure Button1Click (Sender: TObject);

procedure GenKeyClick (Sender: TObject);

procedure VerifyClick (Sender: TObject);

procedure ExitClick (Sender: TObject);

procedure N3Click (Sender: TObject);

procedure N2Click (Sender: TObject);

procedure N4Click (Sender: TObject);

procedure FormClose (Sender: TObject; var Action: TCloseAction);

procedure ArchiveClick (Sender: TObject);

private

{Private declarations}

public

{Public declarations}

end;

var

MainF: TMainF;

implementation

{$R *.dfm}

procedure TMainF. Button1Click (Sender: TObject);

var s, s1, s2: string;

f1, f2: Boolean;

begin

end;

procedure TMainF. GenKeyClick (Sender: TObject);

begin

Keys. Button3. Enabled:= false;

Keys. Show;

end;

procedure TMainF. VerifyClick (Sender: TObject);

begin

Form3. Show;

end;

procedure TMainF. ExitClick (Sender: TObject);

begin

MainF. Close;

end;

procedure TMainF. N3Click (Sender: TObject);

begin

UsersForm.pFIBDataSet1. Active:= true;

UsersForm. Show;

end;

procedure TMainF. N2Click (Sender: TObject);

begin

DatM. SerN:= GetserNom;

DatM. IdAlgS:= 'GOST open key';

DatM. Izd:= 'GOST';

DatM. Org:= 'Org';

DatM. User:= 'User';

DatM. OpKU:= «;

DatM. SignAlg:= 'sign algoritm';

NewU. Edit2. Text:= DatM. User;

NewU. SpeedButton2. Enabled:= false;

NewU. SpeedButton3. Enabled:= false;

NewU. Show;

end;

procedure TMainF. N4Click (Sender: TObject);

begin

BD. Show;

end;

procedure TMainF. FormClose (Sender: TObject; var Action: TCloseAction);

begin

DM.pFIBDatabase1. Connected:= false;

end;

procedure TMainF. ArchiveClick (Sender: TObject);

begin

Ar.pFIBDataSet1. Active:= true;

Ar. Show;

end;

end.

4.2 ΠœΠΎΠ΄ΡƒΠ»ΡŒ Ρ„ΠΎΡ€ΠΌΡ‹ KeysForm

unit KeysForm;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Menus, Proc, Wcrypt2, ComCtrls, Expo;

type

TKeys = class (TForm)

Button1: TButton;

ConComboBox: TComboBox;

Button2: TButton;

Label1: TLabel;

ReportMemo: TMemo;

Label3: TLabel;

Label4: TLabel;

KeyLEdit2: TEdit;

UpDown2: TUpDown;

CheckBox2: TCheckBox;

Button3: TButton;

procedure Button1Click (Sender: TObject);

procedure FormActivate (Sender: TObject);

procedure Button2Click (Sender: TObject);

procedure Button3Click (Sender: TObject);

private

{Private declarations}

public

{Public declarations}

end;

var

Keys: TKeys;

implementation

uses Math;

{$R *.dfm}

procedure createCont (nameCon: String);

var cont: PChar;

name, con: string;

hContext: PHCRYPTPROV;

begin

// ВыполняСм созданиС ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° ΠΈΠ»ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊ Π½Π΅ΠΌΡƒ

// Имя ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° Π±Π΅Ρ€Π΅ΠΌ ΠΈΠ· ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° EdtCont

// имя ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° con

//if length (edtCont. Text) = 0 then

con:=nameCon;

name:= Con;

cont:= StrAlloc (length (name) + 1);

StrPCopy (cont, name);

// пытаСмся ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒΡΡ ΠΊ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρƒ

if not CryptAcquireContext (@hContext, cont, nil, PROV_RSA_FULL, 0) then

begin // Ссли Π½Π΅ ΡƒΠ΄Π°Π»ΠΎΡΡŒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒΡΡ

// создаСм Π½ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ с Π²Π²Π΅Π΄Π΅Π½Π½Ρ‹ΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ

if not CryptAcquireContext (@hContext, cont, nil, PROV_RSA_FULL,

CRYPT_NEWKEYSET) then

begin

//error:= GetLastError;

MessageDlg (' Ошибка создания ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°:', mtInformation, [mbOK], 0);

Exit;

end

else MessageDlg (' Π‘ΠΎΠ·Π΄Π°Π½ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ с ΠΈΠΌΠ΅Π½Π΅ΠΌ ' + name,

mtInformation, [mbOK], 0);

end

else MessageDlg ('ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΠ»ΠΈΡΡŒ ΠΊ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρƒ '+name, mtInformation, [mbOK], 0);

end;

procedure GenKey (s:string); // (Sender: TObject);

var

cont: PChar;

err, KeyL1, KeyLS: string;

hProv: HCRYPTPROV;

KeyExchKey, SignKey: HCRYPTKEY;

flag, keyLen: DWORD;

begin

Keys. ReportMemo. Clear;

{"считываСм" имя ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°}

if length (s) = 0 then

cont:= nil

else

begin

err:= s;

cont:= StrAlloc (length (err) + 1);

StrPCopy (cont, err);

end;

KeyLS:= IntToStr (Keys. UpDown2. Position);

CryptAcquireContext (@hProv, cont, nil, PROV_RSA_FULL, 0);

keyLen:= strtoint (KeyLS);

if Keys. CheckBox2. Checked then

begin

flag:= keyLen shl 16;

if not CryptGenKey (hProv, AT_SIGNATURE, flag, @SignKey) then

begin

case int64 (GetLastError) of

ERROR_INVALID_HANDLE: err:= 'ERROR_INVALID_HANDLE';

ERROR_INVALID_PARAMETER: err:= 'ERROR_INVALID_PARAMETER';

NTE_BAD_FLAGS: err:= 'NTE_BAD_FLAGS';

NTE_BAD_ALGID: err:= 'NTE_BAD_ALGID';

NTE_BAD_UID: err:= 'NTE_BAD_UID';

NTE_FAIL: err:= 'NTE_FAIL';

else err:= 'Unknown error';

end;

MessageDlg ('Ошибка создания ΠΊΠ»ΡŽΡ‡Π° подписи: ' + err, mtError, [mbOK], 0);

end

else

begin

Keys. ReportMemo. Lines. Add ('');

Keys. ReportMemo. Lines. Add ('Π‘ΠΎΠ·Π΄Π°Π½ ΠΊΠ»ΡŽΡ‡ подписи:');

flag:= 4;

if not CryptGetKeyParam (SignKey, KP_KEYLEN, @keyLen, @flag, 0) then

begin

GetLastError;

MessageDlg ('Ошибка получСния Π΄Π»ΠΈΠ½Ρ‹ ΠΊΠ»ΡŽΡ‡Π°: ' + err,

mtError, [mbOK], 0);

end

else Keys. ReportMemo. Lines. Add (' Π΄Π»ΠΈΠ½Π° ΠΊΠ»ΡŽΡ‡Π° — ' + inttostr (keyLen));

flag:= 4;

if not CryptGetKeyParam (SignKey, KP_ALGID, @keyLen, @flag, 0) then

begin

GetLastError;

MessageDlg ('Ошибка получСния Π΄Π»ΠΈΠ½Ρ‹ ΠΊΠ»ΡŽΡ‡Π°: ' + err, mtError, [mbOK], 0);

end

else Keys. ReportMemo. Lines. Add (' Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ — ' + inttostr (keyLen));

end;

end;

CryptReleaseContext (hProv, 0);

end;

procedure TKeys. Button1Click (Sender: TObject);

var

s: string;

begin

if Keys. ConComboBox. Text<>'' then

begin

s:=ConComboBox. Text;

createCont (s);

ConComboBox. Items. Add (s);

Keys. Button2. Enabled:= true;

end

else

MessageDlg (' Π’Π²Π΅Π΄ΠΈΡ‚Π΅ имя ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°', mtInformation, [mbOK], 0);

end;

procedure TKeys. FormActivate (Sender: TObject);

begin

Keys. ReportMemo. Clear;

Keys. Button2. Enabled:= false;

end;

procedure TKeys. Button2Click (Sender: TObject);

var

s, l: String;

begin

s:= ConComboBox. Text;

l:= IntToStr (UpDown2. Position);

if Length (s)=0 then

begin

MessageDlg (' Π’Π²Π΅Π΄ΠΈΡ‚Π΅ имя ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°', mtInformation, [mbOK], 0);

Exit;

end

else begin

GenKey (s);

Button3. Enabled:= true;

end;

end;

procedure TKeys. Button3Click (Sender: TObject);

begin

Exp. ComboBox1. Text:= Keys. ConComboBox. Text;

Exp. Show;

end;

end.

4.3 ΠœΠΎΠ΄ΡƒΠ»ΡŒ Ρ„ΠΎΡ€ΠΌΡ‹ NewUser

unit NewUser;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ComCtrls, StdCtrls, Buttons, Expo, Sertif, Proc, ExtCtrls, Wcrypt2, DatM, expOp, Users, AddUsers;

type

TNewU = class (TForm)

Edit1: TEdit;

Button1: TButton;

UKeyL: TEdit;

UpDown1: TUpDown;

Button2: TButton;

Edit2: TEdit;

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

Button3: TButton;

SpeedButton1: TSpeedButton;

Panel1: TPanel;

Label6: TLabel;

Label5: TLabel;

Label7: TLabel;

PerS: TDateTimePicker;

PerEnd: TDateTimePicker;

Memo1: TMemo;

SaveDialog1: TSaveDialog;

OpenDialog1: TOpenDialog;

SpeedButton2: TSpeedButton;

SpeedButton3: TSpeedButton;

Edit4: TEdit;

AdmKey: TEdit;

Label4: TLabel;

procedure SpeedButton1Click (Sender: TObject);

procedure FormActivate (Sender: TObject);

procedure Button1Click (Sender: TObject);

procedure Button2Click (Sender: TObject);

procedure Button3Click (Sender: TObject);

procedure SpeedButton2Click (Sender: TObject);

procedure SpeedButton3Click (Sender: TObject);

private

{Private declarations}

public

{Public declarations}

end;

var

NewU: TNewU;

implementation

{$R *.dfm}

procedure TNewU. SpeedButton1Click (Sender: TObject);

begin

Certifikat. SerNom. Text:= DatM. SerN;

DatM.p1:= DateToStr (PerS. DateTime);

DatM.p2:= DateToStr (PerEnd. DateTime);

Certifikat. Show;

end;

procedure TNewU. FormActivate (Sender: TObject);

begin

Randomize;

Button3. Enabled:= DatM. flag;

end;

procedure TNewU. Button1Click (Sender: TObject);

begin

createCont (Edit1. Text);

end;

procedure TNewU. Button2Click (Sender: TObject);

var

l: string;

begin

l:= IntToStr (UpDown1. Position);

if Length (Edit1. Text)=0 then

begin

MessageDlg (' Π’Π²Π΅Π΄ΠΈΡ‚Π΅ имя ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°', mtInformation, [mbOK], 0);

Exit;

end

else begin

GenKeyOp (Edit1. Text, l);

SpeedButton2. Enabled:= true;

end;

end;

procedure TNewU. Button3Click (Sender: TObject);

var

FName, S, path: String;

cont: PChar;

Name: string;

hProv: HCRYPTPROV;

alg: ALG_ID;

hash: HCRYPTHASH;

f2, f1: file;

size: DWORD;

buf: array [0.511] of byte;

signature: PBYTE;

str:string;

posn:integer;

key: HCRYPTKEY;

test, textsize: DWORD;

buf2: PBYTE;

signkey: PBYTE;

format:array [0.9] of char;

i:integer;

ft: TextFile;

begin

Memo1. Lines. Add ('Π‘Π΅Ρ€ΠΈΠΉΠ½Ρ‹ΠΉ Π½ΠΎΠΌΠ΅Ρ€ ' + DatM. SerN);

Memo1. Lines. Add ('Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° подписи '+ DatM. IdAlgS);

Memo1. Lines. Add ('Имя издатСля '+DatM. Izd);

Memo1. Lines. Add ('ΠŸΠ΅Ρ€ΠΈΠΎΠ΄ дСйствия');

Memo1. Lines. Add ('c '+DateToStr (PerS. DateTime)+ ' 00:00:00');

Memo1. Lines. Add ('Π΄ΠΎ '+DateToStr (PerEnd. DateTime)+ ' 00:00:00');

Memo1. Lines. Add ('Имя ΡΡƒΠ±ΡŠΠ΅ΠΊΡ‚Π° '+ DatM. Org+' '+ DatM. User);

Memo1. Lines. Add ('ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ ΡΡƒΠ±ΡŠΠ΅ΠΊΡ‚Π° '+ DatM. OpKU);

Memo1. Lines. Add ('Подпись Π£Π¦ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ: '+ DatM. SignAlg);

path:= ExtractFilePath (Application. ExeName)+'temp.txt';

AssignFile (ft, path);

Rewrite (ft);

for i:= 0 to 6 do

begin

s:= Memo1. Lines[i];

Writeln (ft, s);

end;

s:= 'ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ ΡΡƒΠ±ΡŠΠ΅ΠΊΡ‚Π° '+ DatM. OpKU;

Writeln (ft, s);

s:= 'Подпись Π£Π¦ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ: '+ DatM. SignAlg;

Writeln (ft, s);

CloseFile (ft);

if AdmKey. Text='' then

begin

MessageDlg ('НС Π²Ρ‹Π±Ρ€Π°Π½ ΠΊΠ»ΡŽΡ‡ подписи!!!', mtWarning, [mbOK], 0);

exit;

end

else begin

alg:= CALG_SHA;

Name:= AdmKey. Text;

cont:= StrAlloc (length (name) + 1);

StrPCopy (cont, name);

if not CryptAcquireContext (@hProv, cont, nil, PROV_RSA_FULL, 0) then

begin

MessageDlg ('Ошибка открытия ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°!!!', mtError, [mbOK], 0);

exit;

end;

if not CryptCreateHash (hProv, alg, 0, 0, @hash) then

begin

MessageDlg ('Ошибка создания Ρ…Π΅Ρˆ-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°!!!', mtError, [mbOK], 0);

exit;

end;

if SaveDialog1. Execute then begin

str:=SaveDialog1. FileName;

Edit4. Text:= str;

posn:=pos ('.cer', str);

if posn <> 0 then delete (str, posn, 4);

SaveDialog1. FileName:=str;

AssignFile (f1, SaveDialog1. FileName+'.cer');

rewrite (f1, 1);

str:= ExtractFileName (path);

posn:=pos ('.', str);

if posn <> 0 then delete (str, 1, posn-1)

else str:='';

for i:=0 to length (str) — 1 do

format[i]: =str [i+1];

for i:=length (str) to 9 do

format[i]: =#0;

BlockWrite (F1, format, 10);

BlockWrite (f1, alg, 4);

AssignFile (f2, path);

reset (f2, 1);

size:= FileSize (f2);

BlockWrite (f1, size, 4);

while not eof (f2) do

begin

BlockRead (f2, buf{^}, 512, size);

BlockWrite (f1, buf, size);

if not CryptHashData (hash, @buf, size, 0) then

begin

MessageDlg ('Ошибка ΠΏΡ€ΠΈ Ρ…Π΅ΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ!!!', mtError, [mbOK], 0);

exit;

end;

end;

CloseFile (f2);

if not CryptSignHash (hash, AT_SIGNATURE, nil, 0, nil, @size) then

begin

MessageDlg ('Ошибка ΠΏΡ€ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° подписи!!!', mtError, [mbOK], 0);

CloseFile (f1);

exit;

end;

GetMem (signature, size);

if not CryptSignHash (hash, AT_SIGNATURE, nil, 0, signature, @size) then

begin

MessageDlg ('Ошибка ΠΏΡ€ΠΈ подписании Ρ…Π΅ΡˆΠ°!!!', mtError, [mbOK], 0);

CloseFile (f1);

exit;

end;

BlockWrite (f1, size, 4);

BlockWrite (f1, signature^, size);

CloseFile (f1);

if not CryptDestroyHash (hash) then

begin

MessageDlg ('Ошибка ΠΏΡ€ΠΈ уничтоТСния Ρ…Π΅ΡˆΠ°!!!', mtError, [mbOK], 0);

end;

if not CryptReleaseContext (hProv, 0) then

begin

MessageDlg ('НС ΡƒΠ΄Π°Π»ΠΎΡΡŒ ΠΎΡΠ²ΠΎΠ±ΠΎΠ΄ΠΈΡ‚ΡŒ контСкст!!!', mtError, [mbOK], 0);

end;

MessageDlg ('Π€Π°ΠΉΠ» подписан ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ!!!', mtInformation, [mbOK], 0);

end;

// ΡƒΠ½ΠΈΡ‡Ρ‚ΠΎΠΆΠ°Π΅ΠΌ Ρ…Π΅Ρˆ-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΈ ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°Π΅ΠΌ контСкст

CryptDestroyHash (hash);

CryptReleaseContext (hProv, 0);

// Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΠΎΠΆΠ½ΠΎ внСсти Π΄Π°Π½Π½Ρ‹Π΅ Π² Π‘Π”

SpeedButton3. Enabled:= true;

end;

end;

procedure TNewU. SpeedButton2Click (Sender: TObject);

begin

Form4. ComboBox1. Text:= Edit1. Text;

Form4. Show;

end;

procedure TNewU. SpeedButton3Click (Sender: TObject);

begin

DatM. Path:= ExtractFileName (Edit4. Text);

AdUser. Edit2. Text:= DatM. SerN;

AdUser. Edit1. Text:= DatM. Org;

AdUser. Edit3. Text:= DatM. Path;

AdUser.pFIBDataSet1. Active:= true;

AdUser. Show;

end;

end.

БиблиографичСский список

1. Бтолингс, Π’. ΠšΡ€ΠΈΠΏΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΡ ΠΈ Π·Π°Ρ‰ΠΈΡ‚Π° сСтСй [ВСкст] /Π’ΠΈΠ»ΡŒΡΠΌ Бтоллингс. — Πœ.: Π˜Π·Π΄Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ Π΄ΠΎΠΌ «Π’ΠΈΠ»ΡŒΡΠΌΡ», 2001. — 685 с.

2. Калинина Н. А. ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈ ΡΡ€Π΅Π΄ΡΡ‚Π²Π° Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ: ΠœΠ΅Ρ‚ΠΎΠ΄ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ указания ΠΏΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡŽ курсовой Ρ€Π°Π±ΠΎΡ‚Ρ‹ для студСнтов ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΡΡ‚Π΅ΠΉ 220 400 «ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Ρ‚Π΅Ρ…Π½ΠΈΠΊΠΈ ΠΈ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… систСм» ΠΎΡ‡Π½ΠΎΠΉ, ΠΎΡ‡Π½ΠΎΠΉ ускорСнной ΠΈ Π·Π°ΠΎΡ‡Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌ обучСния, 552 800 «Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠΊΠ° ΠΈ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ Ρ‚Π΅Ρ…Π½ΠΈΠΊΠ°» ΠΎΡ‡Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΡ‹ обучСния / Π‘ΠΎΡΡ‚Π°Π²ΠΈΡ‚Π΅Π»ΡŒ Н. А. Калинина. — ΠšΡ€Π°ΡΠ½ΠΎΡΡ€ΡΠΊ: Π‘ΠΈΠ±Π“Π’Π£, 2008. — 18 с.

3. Калинина Н. А. ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈ ΡΡ€Π΅Π΄ΡΡ‚Π²Π° Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ: ΡƒΡ‡Π΅Π±Π½ΠΎΠ΅ пособиС для студСнтов ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ 230 105 «ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Ρ‚Π΅Ρ…Π½ΠΈΠΊΠΈ ΠΈ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… систСм» ΠΎΡ‡Π½ΠΎΠΉ, ΠΎΡ‡Π½ΠΎΠΉ ускорСнной ΠΈ Π·Π°ΠΎΡ‡Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌ обучСния / Н. А. Калинина. — ΠšΡ€Π°ΡΠ½ΠΎΡΡ€ΡΠΊ: Π‘ΠΈΠ±Π“Π’Π£, 2009. — 196 с.

4. БВП 3.4.204−01. Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚ прСдприятия. ВрСбования ΠΊ ΠΎΡ„ΠΎΡ€ΠΌΠ»Π΅Π½ΠΈΡŽ тСкстовых Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ². — ΠšΡ€Π°ΡΠ½ΠΎΡΡ€ΡΠΊ: Π‘ΠΈΠ±Π“Π’Π£, 2001. — 46 с.

5. FIBPlus 6.9.6 Руководство Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°.

ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ вСсь тСкст
Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ