Который является механизмом оптимального шифрования, Тройным DES или RC4?

Почему бы вам не добавить изменяющуюся логику индекса в функцию ()? Или добавить обертку func_b (), которая вызывает func () и применить переименование индекса?

5
задан Unihedron 2 November 2014 в 04:56
поделиться

7 ответов

Как высокий уровень просматривают следующие комментарии к обоим, должно быть полезным.

  • Чрезвычайно легко создать протокол на основе RC4 (такого как WEP), который имеет чрезвычайно низкую прочность (вскрываем с потребительским оборудованием в мелких количествах как чрезвычайно слабый).

  • Тройной DES не является большим в той своей силе, прибывает, хотя чрезмерное усилие по CPU, но это имеет значительно большую силу (оба теоретически в нападениях реального мира), чем RC4 так должен быть выбором по умолчанию.

Движение несколько глубже:

В области шифрования без четко определенного целевого приложения затем определение 'лучших' по сути твердо, так как 'фитнес' алгоритма является много вариантом.

  • Простота реализации
    • Можно ли выполнить его на потребительском оборудовании?
    • Реализации, подвергающиеся случайным дефектам, которые значительно уменьшают безопасность при тихом разрешении 'правильности' поведения.
  • Стоимость реализации
    • Питание/кремний/время кодировать/декодировать.
  • Усилие повредиться
    • Устойчивость Грубой силы. Довольно измеримый
    • Сопротивление криптоанализу, менее измеримому, Вы могли бы думать так, но возможно у правильного человека еще не было попытки:)
  • Гибкость
    • Можно ли обменять одно из вышеупомянутого для другого
    • Каков максимальный размер ключа (таким образом верхние пределы Грубой силы)
    • То, какой введенный размер требуется, чтобы получать достойное шифрование, делает это требует соления.

На самом деле разработка усилия повредить себя требует большого количества времени и усилия, которое является, почему Вы (как не шифровальщик) идете с чем-то уже сделанным, а не самокруткой. Это также подвержено изменениям со временем, надо надеяться, только в результате улучшений аппаратных средств доступные а не фундаментальные дефекты в обнаруживаемом алгоритме.

Базовое переопределяющее беспокойство, конечно, просто, что, это безопасно? Нужно отметить, что много более старых алгоритмов, ранее продуманных безопасный, больше не находятся в той категории. Некоторые так эффективно повреждаются, что их использование просто бессмысленно, у Вас нет безопасности вообще просто мрак (полезный, но никоим образом сопоставимый с реальной безопасностью).

В настоящее время ни один из основных алгоритмов RC4 и TDES не находится в той категории, но наивную реализацию RC4 считают чрезвычайно испорченной в протоколах, где данные сообщения могут быть вынуждены повториться. RC4 имеет несколько более значительных теоретических дефектов, чем TDES.

Это сказало, что TDES не лучше, чем RC4 во всех упомянутых выше областях. Значительно более дорого вычислить (и та дороговизна не выравнивается по ширине, другие менее дорогостоящие crypto системы существуют с сопоставимой безопасностью к TDES),

После того как у Вас есть приложение реального мира, Вы обычно добираетесь один или оба из следующего:

  • Ограничивает на Ваших аппаратных средствах, чтобы сделать задачу
  • Ограничения наложили быть данными, которые Вы шифруете (это используется для передачи данных, которые должны держаться в секрете только в течение X дней..., например),

Затем можно заявить, с допусками и предположениями, что может достигнуть этого (или если Вы просто не можете) и идут с этим.

В отсутствие любых таких ограничений мы можем только дать Вам следующее:

Простота реализации

У обоих есть общедоступные безопасные бесплатные реализации почти для любой архитектуры и доступной платформы. Реализации RC4 не могут быть столь безопасными, как Вы думаете, может ли сообщение быть вынуждено повториться (см. проблемы WEP). Разумное использование соления может снизить этот риск, но это НЕ будет подвергаться строгому анализу, которым были необработанные реализации, и как таковой должен быть просмотрен с подозрением.

Стоимость реализации

У меня нет полезных сравнительных тестов для RC4 (это СТАРО), http://www.cryptopp.com/benchmarks.html имеет некоторые полезные руководства для помещения TDES в контекст с RC5, который медленнее, чем RC4 (TDES является, по крайней мере, порядком величины медленнее, чем RC4), RC4 может зашифровать поток приблизительно в 7 циклах на байт во внедрении FAST на современных x86 процессорах для сравнения.

Усилие повредиться

Устойчивость Грубой силы TDES, как в настоящее время полагают, высока, даже в присутствии многих выводов шифрования. Устойчивость грубой силы RC4 является порядками величины ниже, чем TDES и далее является чрезвычайно низкой в определенных режимах работы (отказ отбросить начальные биты потока)

Сопротивление криптоанализу, Там публично известны дефекты Тройным DES, но они не уменьшают эффективность его к реалистическому нападению в следующее десятилетие или два, то же не верно для RC4, где несколько дефектов известны и объединились, они произвели надежные нападения на несколько протоколов на основе его.

Гибкость

TDES имеет очень мало гибкости (и Ваша библиотека не может выставить их так или иначе), RC4 имеет намного больше гибкости (ключ, используемый для инициализации его, может быть произвольно длинным в теории, хотя библиотека может ограничить это.

На основе этого и Вашего оператора, который необходимо использовать один или другой, необходимо рассмотреть реализацию RC4, только если стоимость ЦП TripleDES делает нереалистичным реализовать в среде, или низкий уровень безопасности, обеспеченной RC4, все еще значительно выше, чем требования указывают.

Я должен также указать, что системы существуют, которые опытным путем лучше во всех областях, чем RC4 и TDES. eSTREAM проект оценивает различные потоковые шифры в порядке 5 или меньше циклов на байт, хотя работа криптоанализа над ними не действительно завершена. Много более быстрых, более сильных шифров блока существуют для конкуренции с TDES. AES является, вероятно, самой известной, и была бы кандидатом, так как это имеет сопоставимые (если не лучше) безопасность, но намного быстрее.

26
ответ дан 18 December 2019 в 05:15
поделиться

Извините - утраиваются, DES больше не считают лучшими практиками. AES является просто лучшим алгоритмом поэтому, если можно использовать ее затем, Вы должны. Для простого внедрения пойдите сюда.

Я настоятельно рекомендую, чтобы Вы узнали больше путем чтения на TDES на Википедию. Денежная кавычка:

"TDES медленно исчезает из использования, в основном замененного Усовершенствованным стандартом шифрования (AES)".

RC4 является, честно, просто не приемлемой опцией для любого приложения, где безопасность важна.

9
ответ дан 18 December 2019 в 05:15
поделиться

Согласованный - DES в основном устарел, поэтому если нет серьезное основание использовать его, пойдите с AES. Если бы это не опция, TDES был бы лучшим выбором, если Вы не имеете дело с потоковой передачей данных (т.е., данные, которые не могут быть повреждены в блоки), то RC4 является способом пойти (из данных опций).

Конечно, я чувствую, что должен упомянуть... Криптография должна действительно, действительно трудно для разбираний, и даже самый сильный алгоритм может быть поврежден легко, если Вы получаете что-то даже немного неправильное (см., например, более старый Kerberos или WEP).

4
ответ дан 18 December 2019 в 05:15
поделиться

Это не могло бы быть самым информативным ответом, но во время моего 4-летнего условия трудового договора с очень крупной телекоммуникационной компанией, Утроиться, DES был стандартом шифрования для всех чувствительных приложений, другим просто не разрешили. Это был Тройной DES, или приложение не идет живое. Надежда, которая помогает.

2
ответ дан 18 December 2019 в 05:15
поделиться

Оба безопасны, хорошо... достаточно. RC4 быстрее поэтому, если это важно для Вас...

После чтения других ответов народов (которые все корректны), ясно, что это действительно зависит от Вашего контекста. Существует столько других вопросов, которые могли влиять на Ваше решение. Если это просто должно быть надежно, если это не действительно что-то чувствительное, и у Вас есть много данных, и скорость является фактором, пойдите для RC4.

Иначе при необходимости в чем-то немного более безопасном и более легком для реализации или поскольку Вы говорите "более жесткий для завинчивания" :) затем пойдите для 3DES, который является, насколько я помню, достаточно безопасный до 2020-2030, или что-то как этот.

2
ответ дан 18 December 2019 в 05:15
поделиться

Те Ваши только две опции? Если можно использовать AES (также известный как Rijndael), затем используют его вместо этого. DES является медленным, и теперь рассмотренный устаревшим (AES является заменой для него). RC4 сосет, не используйте его. Это - поточный шифр, но можно использовать блочный шифр вместо этого, просто заполнить заключительный блок данных (Google дополнительная схема PKCS#5). В последнее время я только видел, что DES используется во встроенных устройствах (встроенное микропрограммное обеспечение), потому что реализация проста, и это использует очень мало памяти. Даже в JavaME можно использовать AES.

2
ответ дан 18 December 2019 в 05:15
поделиться

Одним из факторов при выборе между 3DES и RC4 является поддержка языка. Java изначально не поддерживает RC4, и для реализации вам понадобится библиотека с открытым исходным кодом, такая как BouncyCastle. У MS нет такой же проблемы.

2
ответ дан 18 December 2019 в 05:15
поделиться
Другие вопросы по тегам:

Похожие вопросы: