Софийски университет „Св. Климент Охридски”
Всички права запазени. Настоящата книга се разпространява свободно при следните условия:
Българската асоциация на разработчиците на софтуер е нестопанска организация, която подпомага професионалното развитие на българските софтуерни разработчици чрез различни дейности, насърчаващи обмяната на опит между тях и усъвършенстването на техните знания и умения в областта на проектирането и разработването на софтуер.
Асоциацията организира конференции, семинари, симпозиуми, работни срещи и курсове за обучение по разработка на софтуер и софтуерни технологии.
Съдържание 6
Увод 8
Цифрови подписи и сертификати 12
0.1. Цифров подпис 12
0.1.1. Основни понятия 12
0.1.2. Технология на цифровия подпис 15
0.2. Цифрови сертификати и PKI 17
0.2.1. Модели на доверие между непознати страни 17
0.2.2. Цифрови сертификати и инфраструктура на публичния ключ 21
0.2.3. Хранилища за сертификати 29
0.2.4. Издаване и управление на цифрови сертификати 30
0.2.5. Анулирани сертификати 34
0.3. Технологии за цифрово подписване в уеб среда 35
0.3.1. Общи съображения при подписването в уеб среда 36
0.3.2. Цифров подпис в уеб браузъра на клиента 37
Глава 1. Цифрови подписи и сертификати в Java 46
1.1. Java Cryptography Architecture и Java Cryptography Extension 46
1.1.1. Основни класове за работа с цифрови подписи и сертификати 46
1.1.2. Директна верификация на сертификати с Java 50
1.1.3. Верификация на сертификационни вериги с Java 50
1.2. Достъп до смарт карти от Java 53
Глава 2. Проектиране на система за цифрово подписване в уеб среда 58
2.1. Архитектура на системата 58
2.2. Java аплет за подписване на документи 59
2.2.1. Подписани Java аплети 59
2.2.2. Връзка между Java аплет и уеб браузър 61
2.2.3. Проектиране на аплета за подписване 63
2.3. Уеб приложение за верификация на цифровия подпис и използвания сертификат 64
2.3.1. Система за верификация на цифровия подпис 64
2.3.2. Система за верификация на сертификати 64
2.3.3. Проектиране на уеб приложението 66
Глава 3. NakovDocumentSigner – система за подписване на документи в уеб среда 68
3.1. Рамкова система NakovDocumentSigner 68
3.2. Java аплет за подписване с PKCS#12 хранилище 68
3.3. Java аплет за подписване със смарт карта 87
3.4. Уеб приложение за верификация на цифровия подпис и сертификата на изпращача 104
Глава 4. Тестване, оценка и усъвършенстване 130
4.1. Поддържани платформи 130
4.2. Експериментално тестване на системата 130
4.3. Недостатъци и проблеми 131
4.4. Бъдещо развитие и усъвършенстване 131
Заключение 134
Използвана литература 135