Использование AES с целью коммитмента
Можно ли для коммитмента данных B размером в AES-блок вместо хеш-функции H(B) использовать значение C=AESB(B)?
По идее, функция необратимая и должна обеспечивать и binding, и hiding.
Так ли это? Используется ли такой подход на практике вместо хеш-функций?
комментариев: 9796 документов: 488 редакций: 5664
Можно. Безопасно, но неэффективно.
Классический вариант: С = B xor AES(B,k), где k – несекретный ключ.
Чтобы не переинициализировать раундовые ключи всякий раз.
http://www.zas-comm.ru
комментариев: 393 документов: 4 редакций: 0
Спасибо. Можно ссылку, или хотя бы авторов?
комментариев: 9796 документов: 488 редакций: 5664
Можете рассмотреть это для вашего случая как вариант Matyas–Meyer–Oseas из ссылки в вики, приведённой выше. Вместо g(Hi-1) — произвольный фиксированный несекретный ключ.