24.12.2014 Views

Download - Svetlin Nakov

Download - Svetlin Nakov

Download - Svetlin Nakov

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Класът предлага още функционалност за проверка на цифрови сигнатури,<br />

която използва алгоритъма SHA1withRSA – същият, който се използва от<br />

аплета за подписване.<br />

Предоставят се още методи за директна верификация на сертификат и<br />

верификация на сертификационни вериги.<br />

Методът за директна верификация на сертификат като параметър очаква<br />

сертификата и множество от доверени сертификати, сред които да търси<br />

издателя на проверявания сертификат. Верификацията е успешна, ако<br />

методът завърши изпълнението си без да генерира изключение.<br />

Методът за проверката на сертификационни вериги е малко по-сложен. Той<br />

приема като вход сертификационна верига и множество от доверени Rootсертификати.<br />

При проверката на подадената верига първоначално се проверява дали тя се<br />

състои от поне 2 сертификата. Верига от 1 сертификат не може да бъде<br />

валидна, защото тя трябва да завършва с Root-сертификата на някой<br />

сертификационен орган от първо ниво, а в същото време тя започва с<br />

потребителския сертификат.<br />

Проверката започва с построяване на множество от крайни точки на доверие<br />

(TrustAnchor обекти) от зададените доверени Root-сертификати. След това<br />

се създава обект, съдържащ множеството от параметри на алгоритъма за<br />

проверка. От тези параметри се указва на алгоритъма да не използва<br />

списъци от анулирани сертификати (CRLs). Използването на такива CRL<br />

списъци не се прилага, защото е сложно за реализация и изисква<br />

допълнителни усилия за извличане на тези списъци от сървърите на<br />

сертификационните органи, които ги издават и разпространяват.<br />

След създаването на крайните точки на доверите и инициализирането на<br />

параметрите на алгоритъма за верификация има още една важна стъпка<br />

преди самата верификация. Алгоритъмът PKIX, който се използва за верификацията<br />

има една особеност. Той очаква да му се подаде сертификационна<br />

верига, която не завършва с Root-сертификат на някой сертификационен<br />

орган, а със сертификата, който стои непосредствено преди него, т.<br />

е. очаква от сертификационната верига да бъде отстранен последният<br />

сертификат. Ако последният сертификат от веригата не бъде отстранен<br />

преди проверката, верификацията няма да е успешна.<br />

Ако веригата не е валидна, се генерира изключение, в което се указва<br />

поредният номер на сертификата, в който е възникнал проблемът.<br />

За работа с Base64-кодирана информация в уеб приложението се използва<br />

същият клас Base64Utils, който се използва и при аплета за подписване на<br />

файлове.<br />

Конфигурационен файл на уеб приложението<br />

Съгласно стандартите на платформата J2EE за работата на демонстрационното<br />

уеб приложение е необходим още конфигурационният файл:<br />

131

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!