Уроки утечки LinkedIn
2012-06-08 02:45 pmPoul-Henning Kamp делает выводы из утечки базы данных хэшей к паролям пользователей социальной сети LinkedIn:
http://queue.acm.org/detail.cfm?id=2254400
Статья в целом хорошая и годная, но совет зациклить хэш-функцию на тысячу итераций (равно как и использовать эквивалентные bcrypt/PBKDF2) не очень хорош, с точки зрения устойчивости к аппаратному криптоанализу на FPGA, и с точки зрения потери энтропии. Чтобы сделать жизнь аппаратных ребят веселее и увлекательнее, лучше сделать алгоритм, которому нужно много памяти. Например:
( Исходный код на C++ )
Первоначальная заливка и свёртка итогов заняли некоторое время, но его можно выиграть уменьшением количества итераций дорогого в вычислении HMAC (OWT_ITERATION_COUNT), зато количество задействованных в вычислениях транзисторов сразу увеличилось на 3-4 порядка, как и рассеиваемое системой криптоанализа тепло, как и счета криптоаналитика за электричество. В видеокартах объём памяти для кода, кэши и пропускная способность шины данных тоже не резиновые.
http://queue.acm.org/detail.cfm?id=2254400
Статья в целом хорошая и годная, но совет зациклить хэш-функцию на тысячу итераций (равно как и использовать эквивалентные bcrypt/PBKDF2) не очень хорош, с точки зрения устойчивости к аппаратному криптоанализу на FPGA, и с точки зрения потери энтропии. Чтобы сделать жизнь аппаратных ребят веселее и увлекательнее, лучше сделать алгоритм, которому нужно много памяти. Например:
( Исходный код на C++ )
Первоначальная заливка и свёртка итогов заняли некоторое время, но его можно выиграть уменьшением количества итераций дорогого в вычислении HMAC (OWT_ITERATION_COUNT), зато количество задействованных в вычислениях транзисторов сразу увеличилось на 3-4 порядка, как и рассеиваемое системой криптоанализа тепло, как и счета криптоаналитика за электричество. В видеокартах объём памяти для кода, кэши и пропускная способность шины данных тоже не резиновые.