Есть ли библиотека с открытым исходным кодом, реализующая DUKPT или ANSI X9.24
Мне поручено реализовать функциональность дешифрования для устройства с использованием протокола/схемы/алгоритма DUKPT.
Сам алгоритм шифрования - это просто DESEDe, с которым легко работать и имеет хорошую библиотечную поддержку (JCE, BouncyCastle).
Проблема заключается в части DUKPT. У меня есть базовый ключ деривации (общий секрет), серийный номер ключа и шифрованный текст, но я не могу понять, что делать дальше.
Насколько это возможно, я не хочу писать свою собственную реализацию, и я предпочел бы использовать хорошо протестированную библиотеку.
Есть ли такая вещь?
Примечание: DUKPT = Производный уникальный ключ для транзакции
Ответы
Ответ 1
Я не знаю точно, как работает DUKPT, но используя отличный Thales Simulator Project, я взял код DUKPT и портировал его на Java-библиотека, мой собственный проект crypto-utils.
Отказ от ответственности: Это упражнение для меня и является НЕ производственным кодом. Это может помочь
Ответ 2
Чтобы реализовать безопасность только с использованием симметричных ключей, требуется HSM - не по соображениям производительности, а потому, что в программном обеспечении нет возможности безопасно хранить ключ. Таким образом, вы не найдете многого с точки зрения хорошо поддерживаемого программного обеспечения, которое реализует DUKPT, поскольку оно не имеет практического применения.