web-dev-qa-db-ja.com

安全な暗号化アルゴリズムであると広く知られている、公開されていると信じられている自分を「実装する」ことがなぜ間違っているのですか?

暗号アルゴリズムを設計してはいけないという一般的なアドバイスを知っています。それはこのサイトとブルース・シュナイアーのような能力のある専門家のウェブサイトで非常に広範囲に話されました。

ただし、一般的なアドバイスはそれ以上に進んでいます。つまり、私たちより賢明に設計されたimplementアルゴリズムを使用するべきではなく、専門家が作成したよく知られ、十分にテストされた実装に固執する必要があるということです。

そして、これは私が詳細に議論したことを見つけることができなかった部分です。シュナイアーのウェブサイトも簡単に検索しましたが、この主張もそこでは見つかりませんでした。

したがって、なぜ暗号アルゴリズムも実装しないように断固としてアドバイスされるのですか?評判の高いセキュリティの専門家がこれについて話していることを参考にして、回答をいただければ幸いです。

¹ より正確に言えば、私たちの心に合わせてデザインします。それは良い学習経験かもしれません。 くださいお願いお願い、私たちが設計したものを使用しないでください。

174
gaazkam

非常に簡単に言えば、より広く使用されている古い暗号化ソフトウェアは、より多くのテスト(友好的および非友好的)およびより多くの分析にさらされてきました。

さらに、暗号化の歴史には壊れたソフトウェアが散らばっており、その一部は著名な専門家の暗号学者によって作成されました。

したがって、最も信頼できるコードは、かなり以前から存在しているコードです。

0
DrM