2013-03-31 5 views
2

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

Мой вопрос в том, почему нам нужно выставлять наш алгоритм, в то время как он зависит главным образом от длины ключа, если мой ключ был достаточно длинным и по-настоящему рандомизированным, так что же полезно знать алгоритм?

+4

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

+3

С криптографией - где, по-видимому, важная информация заперта - нет такой вещи, как «безопасность через безвестность». Алгоритм может быть тривиально испорчен способами, проложенными простым ручным размахом при «длине ключа». Например, возьмите простой алгоритм XOR - возьмите большую длину ключа. Подайте серию данных и наблюдайте за выходом. Трещина. Помните, что даже некоторые защищенные в отрасли протоколы безопасности оказались сломанными - помните [WEP] (http://en.wikipedia.org/wiki/Wired_Equivalent_Privacy#Flaws)? – 2013-03-31 01:42:55

+0

, но дело в том, что рассмотренный алгоритм теперь доступен всем, как я понимаю, поэтому каждый хакер знает алгоритм и как его отменить, что означает отсутствие разницы с моим hiden алгоритмом при взломе. если я неправильно пойму что-нибудь скажу. @pst – Dorgham

ответ

4

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

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

Противоположный подход называется «безопасность для безвестности» и полностью зависит от того, что никто никогда не узнает, как все работает. И если они делают (как хакеры привыкли), у вас есть проблема.

Теоретически, нет никакой разницы, если вы сообщаете подробности своего нового безопасного алгоритма с кем-либо еще или нет. Но на практике это единственный способ узнать, действительно ли он безопасен, и единственный способ заставить других доверять вашему алгоритму.

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

+0

Я имею в виду, что они выставляют предложенный алгоритм для его проверки, поэтому теперь это известно ... так какая разница, когда я скрою свой собственный алгоритм и был взломан криптоаналитиками и знал его подробности? в конце это будет зависеть от длины ключа, чтобы предотвратить атаку грубой силы и истинный случайный ключ для предотвращения математического анализа. – Dorgham

+3

Нет! Дело в том, что алгоритм * secure * может быть атакован только жестоким форсированием (что может быть сделано невозможным с длинными ключами). Но не все алгоритмы являются безопасными. Их можно сломать с гораздо меньшими усилиями, чем клавишами принудительного форсирования. Если вы не пересмотрите свой алгоритм, мы не будем верить вам в то, что он безопасен (и ни один из вас, гениальные умы не справился с этими вещами раньше). – Thilo

+0

, но точка в том, что рассмотренный алгоритм теперь доступен всем, как я понимаю, поэтому каждый хакер знает алгоритм и как его отменить, если я неправильно понял, что-то мне рассказываю. – Dorgham

Смежные вопросы