Spec-Zone .ru
спецификации, руководства, описания, API
|
Теперь, когда Вы генерировали подпись для некоторых данных, Вы должны сохранить байты подписи в одном файле и байты с открытым ключом в другом так, можно отправить (через модем, дискету, почту, и так далее) кому-то еще
Получатель может проверить, что данные прибыли от Вас и не были изменены в пути, работая VerSig
программа, которую Вы генерируете в предстоящей Проверке Цифровой подписи, ступает. Та программа использует открытый ключ, чтобы проверить, что полученная подпись является истинной подписью для полученных данных.
Вспомните, что подпись была помещена в названный байтовый массив realSig
. Можно сохранить байты подписи в названном файле sig
через следующий.
/* save the signature in a file */ FileOutputStream sigfos = new FileOutputStream("sig"); sigfos.write(realSig); sigfos.close();
Вспомните из Генерирования шага Открытых и Закрытых ключей, что открытый ключ был помещен в названный объект PublicKey pub
. Можно получить закодированные ключевые байты, вызывая getEncoded
метод и затем хранит закодированные байты в файле. Можно назвать файл вообще, Вы хотите. Если, например, Вашим именем является Сьюзен, Вы могли бы назвать его чем-то как suepk
(для открытого ключа "Сью"), как в следующем:
/* save the public key in a file */ byte[] key = pub.getEncoded(); FileOutputStream keyfos = new FileOutputStream("suepk"); keyfos.write(key); keyfos.close();