На форуме StackExchange один из присутствующих задался вопросом, почему RSA Security рекомендуют использовать ключи длиной 1024, 2048 и даже 3072 бит, тогда как большинство алгоритмов симметричного шифрования ограничиваются ключами длиной от 112 до 256 бит. Почему бы не увеличить длину ключей, например, до нескольких миллионов, чтобы защититься от возможного брутфорса со стороны суперкомпьютеров, которые ещё не изобретены.
Несмотря на всю свою банальность, этот вопрос набрал достаточно много баллов голосования, то есть у многих нет ещё чёткого понимания, чем все-таки различается ассиметричный, криптографический алгоритм с открытым ключом от шифра симметричного, где для шифрования и расшифрования используется один ключ.
С точки зрения bruteforce, разница лищь в том, что для взлома ключей RSA нужно найти сомножитель определённой длины. Это математическая задача, которую нельзя сильно усложнять, в противном случе обычная расшифровка сообщения будет занимать слишком много времени. На диаграмме показана скорость дешифровки на процессоре 2 Ghz.
Для взлома симметричного шифра требуется перебирать 2^N комбинаций шифра. Где N — длина ключа. Расшифровка сообщения происходит мгновенно, имея симметричный ключ. По оценке NIST, 256bit симметричный ключ примерно соответствует 15360-битному ключу RSA.
Опубликовано: 2013-01-18 10:23:27
Обсуждение поста