トラック
/
WebAssembly
WebAssembly
/
演習
/
アトバシュ暗号
アトバシュ暗号

アトバシュ暗号

中級

説明

中東で生まれた古代の暗号化システム、アトバシュ暗号を実装してください。

アトバシュ暗号は、アルファベットのすべての文字を並べ替えて逆順のアルファベットを作る、単純な換字式暗号です。 最初の文字は最後の文字に、2番目の文字は後ろから2番目の文字に置き換えられ、以降も同様です。

ラテン文字のアルファベットに対するアトバシュ暗号は、次のようになります。

Plain:  abcdefghijklmnopqrstuvwxyz
Cipher: zyxwvutsrqponmlkjihgfedcba

鍵が1つしかなく、単純な単一換字式暗号であるため、非常に弱い暗号です。 しかし、この暗号が使われていた時代には、それほど問題ではなかったのかもしれません。

暗号文は固定長のグループに分けて書きます。伝統的なグループの長さは5文字で、数字はそのままにし、句読点は除外します。 これは、単語の区切りをもとに推測されるのを難しくするためです。 テキストはすべて小文字としてエンコードされます。

例

  • testをエンコードするとgvhgになります
  • x123 yesをエンコードするとc123b vhになります
  • gvhgをデコードするとtestになります
  • gsvjf rxpyi ldmul cqfnk hlevi gsvoz abwltをデコードするとthequickbrownfoxjumpsoverthelazydogになります

トラック固有の説明

線形メモリの64〜319バイトは、入力文字列用に予約されています。

入力文字列は、必要に応じてその場で変更できます。


出典

Wikipediaリンクは新しいウィンドウまたはタブで開きます
GitHubで編集する リンクは新しいウィンドウまたはタブで開きます
WebAssembly Exercism

アトバシュ暗号を始める準備はできましたか?

Exercismに登録すれば、87個の演習、そして本物の人間によるメンタリングとともに、WebAssemblyを学んでマスターできます。すべて無料です。