Сравнение DES, Triple DES, AES, шифрование blowfish для данных - программирование

Сравнение DES, Triple DES, AES, шифрование blowfish для данных

Есть ли у кого-то плюсы и минусы для сравнения этих алгоритмов шифрования?

4b9b3361

Ответ 1

Используйте AES.

Подробнее:

  • DES - это старый "стандарт шифрования данных" с семидесятых. Его размер ключа слишком короток для правильной безопасности (56 эффективных бит, это может быть грубым, как было показано более десяти лет назад). Кроме того, DES использует 64-битные блоки, что вызывает некоторые потенциальные проблемы при шифровании нескольких гигабайт данных с одним и тем же ключом (гигабайт в наши дни не такой уж большой).
  • 3DES - это трюк для повторного использования реализаций DES, путем каскадирования трех экземпляров DES (с различными ключами). Считается, что 3DES безопасна, по крайней мере, до уровня "2 112" (что довольно много, и довольно далеко в сфере "не разрушаемых с сегодняшней технологией" ). Но он медленный, особенно в программном обеспечении (DES был разработан для эффективной аппаратной реализации, но он засасывает программное обеспечение, а 3DES всасывает в три раза больше).
  • Blowfish - это блок-шифр, предложенный Брюсом Шнайером, и развернутый в некоторых программах. Blowfish может использовать огромные ключи и считается безопасным, за исключением его размера блока, который составляет 64 бита, точно так же, как DES и 3DES. Blowfish эффективен в программном обеспечении, по крайней мере на некоторых программных платформах (он использует зависящие от ключа таблицы поиска, поэтому производительность зависит от того, как платформа обрабатывает память и кеши).
  • AES является преемником DES как стандартного симметричного алгоритма шифрования для федеральных организаций США (и, как стандарт для почти всех остальных). AES принимает ключи из 128, 192 или 256 бит (128 бит уже очень нерушимы), использует 128-битные блоки (поэтому нет проблем) и эффективен как для программного обеспечения, так и для аппаратного обеспечения. Он был выбран в рамках открытого конкурса с участием сотен криптографов в течение нескольких лет. В принципе, у вас не может быть лучшего.

Итак, если у вас есть сомнения, используйте AES.

Обратите внимание, что блочный шифр представляет собой поле, которое шифрует "блоки" (128-битные фрагменты данных с AES). При шифровании "сообщения", которое может быть длиннее 128 бит, сообщение должно быть разделено на блоки, а фактический способ разделения данных называется режимом или "цепочки". Наивный режим (простой раскол) называется ECB и имеет проблемы. Правильное использование блочного шифра непросто, и это более важно, чем выбор между, например, AES или 3DES.

Ответ 2

Все эти схемы, кроме AES и Blowfish, обладают уязвимостями и не должны использоваться.
Тем не менее, Blowfish был заменен на Twofish.

Ответ 3

Описанные методы шифрования представляют собой симметричные шифры блоков ключей.

Стандарт шифрования данных (DES) является предшественником, шифруя данные в 64-битных блоках с использованием 56-битного ключа. Каждый блок зашифровывается изолированно, что является уязвимостью безопасности.

Triple DES расширяет длину ключа DES, применяя три операции DES для каждого блока: шифрование с ключом 0, дешифрование с ключом 1 и шифрование с ключом 2. Эти ключи могут быть связаны.

DES и 3DES обычно встречаются при взаимодействии с устаревшими коммерческими продуктами и услугами.

AES считается преемником и современным стандартом. http://en.wikipedia.org/wiki/Advanced_Encryption_Standard

Я считаю, что использование Blowfish не рекомендуется.

Настоятельно рекомендуется не пытаться реализовать собственную криптографию и вместо этого использовать высокоуровневую реализацию, такую ​​как GPG для данных в состоянии покоя или SSL/TLS для передачи данных. Вот превосходное и отрезвляющее видео по уязвимостям шифрования http://rdist.root.org/2009/08/06/google-tech-talk-on-common-crypto-flaws/

Ответ 4

AES - симметричный криптографический алгоритм, а RSA - асимметричный (или открытый ключ) криптографический алгоритм. Шифрование и дешифрование выполняется с помощью одного ключа в AES, в то время как вы используете отдельные ключи (общедоступные и закрытые ключи) в RSA. Сила 128-битного ключа AES примерно эквивалентна 2600-битовому RSA-ключу.

Ответ 5

Хотя TripleDESCryptoServiceProvider - безопасный и хороший метод, но он слишком медленный. Если вы хотите обратиться к MSDN, вы получите совет, который поможет вам использовать AES, а не TripleDES. Пожалуйста, проверьте ниже ссылку: http://msdn.microsoft.com/en-us/library/system.security.cryptography.tripledescryptoserviceprovider.aspx вы увидите это внимание в разделе примечаний:

ПримечаниеНовый алгоритм симметричного шифрования, расширенное шифрование Стандарт (AES), доступен. Рассмотрите возможность использования Класс AesCryptoServiceProvider вместо Класс TripleDESCryptoServiceProvider. использование TripleDESCryptoServiceProvider только для совместимости с наследием приложений и данных.

Удачи.

Ответ 6

AES - это общепринятый стандартный алгоритм использования (отсюда имя Advanced Encryption Standard).

Остальные - нет.

Ответ 7

                DES                               AES
Developed       1977                              2000
Key Length      56 bits                           128, 192, or 256 bits
Cipher Type     Symmetric                         Symmetric
Block Size      64 bits                           128 bits
Security        inadequate                        secure
Performance     Fast                              Slow

Ответ 8

введите описание изображения здесь

DES - это старый "стандарт шифрования данных" с семидесятых.