Как подписать данные в MySQL Batabase Revision Safe (надежное временное метка)?

StackOverflow https://stackoverflow.com/questions/3990388

Вопрос

В настоящее время я планирую проект, в котором важна безопасность данных базы данных. Это означает: мы хотим иметь возможность подтвердить, что данные в базе данных не были смягчены, поскольку они были импортированы - ни один пользователь не изменил значение, ни один администратор DB вошел в базу данных и изменил его.

Как лучше всего это добиться?

До сих пор мне нравится идея подписания строки базы данных лучше всего: я создаю хэш MD5 всех полей в строке, а затем отправляю его на сервер подписчиков времен (Посмотрите на Википедию) и хранить созданную подпись с помощью ряда. С этого времени мы можем доказать, что никто не изменил строку, так как эта марка была создана.

Есть лучшие идеи? И, если вам нравится идея так же сильно, как и я, какой сервер TimeMant мне следует использовать и как я могу получить к ней доступ? А Verisign TimeStamp Server Похоже, используется много, но я не мог найти никакой документации о том, как использовать ее «RAW», например, без инструментов Signer Microsoft и т. Д.

Благодарю вас!

Это было полезно?

Решение

Серверы марки времени обычно не являются бесплатными.

В качестве альтернативы вы можете использовать HMAC-MD5 (или HMAC-SHA1) вместо этого и используйте пароль, который известен только авторизованному пользователю. Пароль, конечно, не используется напрямую, лучше через PKCS#5 или, по крайней мере, хэшируется с семенем. Без пароля никто не может проверить или воссоздать HMAC-MD5

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top