質問: 私自身の暗号化アルゴリズムを書く 私は現在大学でイギリスの大学でITを勉強しています、そしてコースワークは私を死に至らしめています。私は長い間、主にC#やJavaなどのオブジェクト指向言語でコーディングしてきましたが、退屈してすぐにあきらめてしまうことがほとんどです。コード設計と実際にアルゴリズムを作成します。私は私自身の種類のアルゴリズムを書き始め、そしてユーザフレンドリ性の面から離れ始め、そして私の興味を引くもの、すなわち暗号化と圧縮を学び始めたい。ファイルまたは文字列のバイトを暗号化するために、私自身の暗号化アルゴリズムを書きたいと思います。いくつかの質問を聞きたいんです: * 私はこれでどこから始めますか、どんな本/材料が推奨されます 暗号化から始める理由は? * 基本的な知識を習得するには、暗号に関する広範な知識が必要ですか。 アルゴリズム? * 暗号化アルゴリズムを実行するのにC#は問題ないでしょうか? 任意の助けは心から高く評価されます。私はそれがuniに適用することになるとなると、私は私のアプリケーション上の私の大胆な主張のすべてのために示すために何かがあるので、コードを書き始めたいです!
回答: ここにあるすばらしい答えに、別の角度で積み重ねるだけです。 あなたのv1アルゴリズムが安全でなくひどいものになるだろうと仮定した場合、あなたのv100はほんの少しだけ良くなるでしょうが、同様に安全ではありません。 (あなたのv1000のように) その前提を念頭に置いて、今日の科学になるために暗号化技術が解決する必要がある問題を解決することで、多くのことを学ぶことができます。すなわち、車輪を再発明する。 個人的には、ホイールの再発明は、複雑なタスクを学ぶための優れた方法です。それはあなたに解決するための何かを与えます。それがあなたのものであれば、暗号化よりも解決が難しいものは少なくなります。 そのように、あなたは大学に行って、言うことができます、よく私は難しい問題を解決する方法を学ぶための手段として私自身の暗号化アルゴリズムを設計していました。 v50ではアルゴリズムは駄目になりますが、これらは私が学んだ教訓、私が見つけた解決策、そしてこれが実世界でそれらが解決される方法です。 私が「良い」暗号化プロトコルを書いたことと、ほぼ確実に非常に弱いプロトコルを書いたことの間には大きな違いがあります。個人的には、後者を言った人には大いに敬意を表したいと思います。 (私はおそらく前者にうなずいた - そしてすぐに彼にドアを見せる)