Какие факторы мне нужно учитывать, чтобы определить, должен ли я «доверять настройкам по умолчанию» в отношении шифрования - PullRequest
1 голос
/ 25 августа 2010

Фон

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

Криптография - невероятно сложная тема, которую разработчики должны оставить экспертам по безопасности `

Я понимаю и согласен с обоснованием этого утверждения и поэтому следую советам при использовании криптографии в приложении.

При этом, поскольку криптография так легкомысленно используется во всех, кроме криптоспецифичных справочных материалах, я не знаю достаточно о том, как работает криптография, чтобы определить, адекватен ли предоставленный мне стандарт по умолчанию для данной ситуации. Я в. Есть тысячи крипто-фреймворков на множестве разных языков, я отказываюсь верить, что каждая из этих реализаций безопасна, потому что я не верю, что каждая крипто-реализация была создана экспертом по крипто, в основном потому, что если верить общественному мнению, их не так уж и много.

Вопрос:

Какую информацию мне нужно знать о данном алгоритме шифрования, чтобы определить для себя , является ли алгоритм разумным выбором?

Ответы [ 3 ]

1 голос
/ 25 августа 2010
  • Вам необходимо знать текущие оценки времени прерывания для каждого варианта алгоритма.
  • Вам необходимо знать сертификаты для конкретных библиотек.
  • Вам необходимо знать необходимый эффективный уровень безопасности для данных, которые вы шифруете. Например, к информации о здоровье в США предъявляются особые требования. Так делают электрические утилиты.

Чем более технически вы хотите получить оценку криптоалгоритма, тем больше вам нужны услуги эксперта. : - /

Рассмотрим http://www.cryptopp.com в качестве примера предоставленной информации. Например, оно сертифицировано NIST .

0 голосов
/ 25 августа 2010

Эффективные методы хорошо документированы и широко используются.Я склонен думать о трех ситуациях, связанных с криптографией:

  1. Если организация государственного размера захочет получить ваши вещи, они ее получат.
  2. Для конфиденциальных личных или деловых вещей, социальной инженерииа не криптографические средства почти всегда более эффективны, чем взлом кода, практически для любой мыслимой ситуации.
  3. Для сокрытия вещей от друзей, родственников и просто посторонних лиц достаточно всего готового.В этих сценариях то, что у вас есть скрытые вещи, как правило, более изнурительно, чем то, что могло бы быть само по себе.

Было время, когда железнодорожные вагоны переходили от сверхмощных навесных замков к легко побеждаемым, но трудно подделываемым петлямпровод.Сделайте замок сильнее, и они просто войдут в стены.Превратите замок в детектор вторжений, и вы что-то получили.

Подписание и проверка подлинности оказываются лучшим способом использования криптографии, чем простое шифрование.

0 голосов
/ 25 августа 2010

Какую информацию мне нужно знать о заданном алгоритме шифрования быть в состоянии определить для себя является ли алгоритм разумным выбор

Как только вы определите, что вам нужно, существует очень мало проверенных решений, которым вы можете доверять. Например:

Симметричное шифрование: AES (Rijndael), Triple DES
Асимметричное шифрование: Диффи-Хеллман, RSA
Хеширование: семейство функций SHA

Это проверенные, проверенные в бою решения. Пока кто-то не докажет обратное, их можно безопасно использовать. Прошло много времени с тех пор, как криптография отошла от безопасности из-за неясности и «свернула свои собственные» реализации.

Существует множество криптографических шарлатанов, просто будьте осторожны при выборе решения. Убедитесь, что он основан на проверенных технологиях, и если он звучит слишком хорошо или содержит такие слова, как «неразрушимый», «революционный» или тому подобное, вы можете быть на 99% уверены, что это фальшивка.

...