テキストがあり、それを友人に送信したいが、他の人に読んでほしくないとしましょう。それはおそらくあなたとあなたの友人だけがそれを読むことができるようにあなたがそれを暗号化することを意味します。しかし、問題があります。あなたとあなたの友人は暗号化方法に同意するのを忘れていたので、あなたが彼らにメッセージを送ると、彼らはそれを解読することができません!
しばらくこのことを考えた後、メッセージとともにメッセージを暗号化するコードを友人に送信することにします。あなたの友人はとても賢いので、おそらく暗号化方法を勉強することでメッセージを解読する方法を理解できるでしょう。
もちろん、他の人がメッセージを読んでいる可能性があるため、解読を可能な限り難しくする暗号化スキームを選択する必要があります(復号化スキームを図に示します)。
警官の仕事
この課題では、警官がライターの役割を果たします。つまり、文字列を文字列に変換する暗号化スキームを設計します。ただし、この暗号化スキームはbijectiveでなければなりません。つまり、2つの文字列を別の文字列にマッピングする必要はなく、すべての文字列は入力によってマッピングできます。入力は1つだけである必要があります。エンコードされる文字列です。
次に、暗号化を実行するコードと、コードで詳述されたスキームで暗号化された単一のメッセージを投稿します。
メッセージを送信するためにバイト単位で支払うため、スコアはコードの長さに暗号文の長さを加えたものになります。あなたの答えがひび割れている場合、あなたは無限のスコアを持っています。
1週間後、テキストを公開し、回答を安全としてマークできます。安全な答えは、解読できないものです。
強盗のタスク
強盗は、作家の友人または悪意のある中間者のいずれかとしてプレイします(実質的な違いはありませんが、そうすることがより楽しくなるかのようにロールプレイできます)。彼らは暗号化スキームと暗号文を取り、暗号化されたメッセージを見つけようとします。暗号化されたメッセージを見つけたら、コメントで投稿します。(この質問には、別の強盗のスレッドはありません。)
勝者は、最もひびの入った強盗になります。
ひびの入ったソリューションがどのように見えるかの例を次に示します。