Где разместить цифровую подпись документов в моей системе? - PullRequest
0 голосов
/ 22 февраля 2011

Я занимаюсь разработкой системы архивирования, которая хранит документы в базе данных и предоставляет пользователю различные функции.Я добавил часть для подписи и проверки любого документа в базе данных.Тем не менее, я застрял в логике и задаюсь вопросом, где мне разместить функцию подписи.
Подсказки о моих целях:

Ни один документ не должен быть загружен в базу данных без подписи Если документбез изменений он должен сохранить свою подпись Если документ не имеет подписи .. он должен быть подписан подписью загрузчика Подпись не будет шифровать файл, поэтому он будет доступен для чтения после применения процесса подписания

Первоначальное решение, которое я использовал, - поместить процедуру подписи в форму, вызываемую кнопкой Загрузить , и сохранить подпись файла в отдельном столбце в таблице «Документы» вбаза данных.Однако это решение оказалось недействительным для моего сценария, как если бы сотрудник загрузил файл, а затем снова загрузил его, тогда он будет подписан им, и, следовательно, оригинальная подпись будет потеряна.Кроме того, подпись не будет иметь никакого значения вне системы.
Мой главный вопрос:
Есть ли способ сохранить подпись внутри документов?
Подсказка: Моя система будет работать только с документами PDF, JPEG, Tiff, MS Office и TXT.
Дополнительный запрос: Было бы здорово, если бы был способ сохранить подпись в любом типе файлов!

Ответы [ 2 ]

0 голосов
/ 23 февраля 2011

Поскольку подписи подписывают хэш документа, вы можете просто создать хэши таблицы для подписи.Таким образом, загрузка и повторная загрузка документа не удалит существующие подписи, поскольку хэш останется прежним.Полезность этого подхода зависит, конечно, от семантического значения сигнатуры в вашей системе.

0 голосов
/ 23 февраля 2011

Есть ли способ сохранить подпись внутри документов?

Цифровая подпись должна быть построена с использованием хэша подписываемого документа.Поскольку добавление подписи в документ изменяет документ (который делает недействительным хеш), общего решения для хранения цифровой подписи внутри документа не существует.

Некоторые форматы документов допускают цифровую подпись и определяют, какая часть должна бытьбыть исключенным из хэша, но те форматы, которые были перечислены - насколько я знаю - не входят в их число.(Хотя PGP может использоваться в документах TXT.)

...