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.

Фигура 3-2. Диалог-предупреждение на Java Plug-In 1.5 за подписан аплет<br />

3.2.2. Връзка между Java аплет и уеб браузър<br />

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

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

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

Това може да се реализира по няколко начина – аплетът или отваря сокет<br />

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

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

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

препраща към сървъра.<br />

Последната възможност е най-удобна, защото изисква най-малко усилия от<br />

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

този случай сървърът може да получава файла заедно с подписа наведнъж с<br />

една единствена заявка от браузъра без да са необходими никакви други<br />

действия.<br />

Достъп до HTML форма от Java аплет<br />

Да предположим, че имаме обикновена HTML форма, с която се изпращат<br />

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

да разширим тази форма, така че да поддържа и цифрови подписи, можем да<br />

интегрираме в нея Java аплет за подписване на файлове.<br />

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

поставя тази сигнатура в някакво поле на тази HTML форма, усилията<br />

необходими за изпращане на цифровия подпис към сървъра ще са<br />

минимални. Уеб браузърът, когато изпраща HTML формата, ще изпрати<br />

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

се занимава с комуникация между клиента и сървъра.<br />

67

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

Saved successfully!

Ooh no, something went wrong!