タグ付けされた質問 「cipher」

古典的な(ペンと紙の)暗号を使用してメッセージをエンコードすることに何らかの課題がある場合。AESなどの最新の暗号では、代わりに[暗号化]タグを使用します。

16
増分暗号
このタスクはかなり単純で、3つの異なる「演算子」文字を使用します。あなたの仕事は、使用してそれをエンコードするには、次のタスクを実行し、文字のシンプルなシーケンスを与えられています<、>、*。大文字または小文字を使用することもできますが、両方を処理する必要はありません。 暗号の説明 暗号は簡単です。インクリメントおよびデクリメント操作を使用し*て、「送信」機能として、文字1から末尾の文字まで移動します。「増分」の演算子はになり>、「減分」はになります<。 単語を使用した例adbc: 単語の最初の文字から始めて、その文字を出力します。 a 次に、>and <(brainfuckなど)を使用して、現在の文字を次の文字に「ナビゲート」します。a>その結果a、手紙が1だけ「上がる」ことになりbます。あなたは手紙を下げるので、a<結果になりzます(折り返します、あなたは常に操作の数が最も少なくなる方向を選択する必要があります)。 正しいminimalizedの組み合わせ出力した後<と>出力Aを*、我々は次の文字に達したことを示すために。 エンコードする手順adbcは次のとおりです。 a # a a>>>* # ad a>>>*<<* # adb a>>>*<<*>* # adbc 例 エンコードする手順azaは次のとおりです。 a # a a<* # az a<*>* # aza その他の例: "abcdef" = "a>*>*>*>*>*" "zyaf" = "z<*>>*>>>>>*" "zzzzzz" = "z*****" "z" = "z" "zm" = "z<<<<<<<<<<<<<*" or …
19 code-golf  cipher 

14
資本暗号
あなたの仕事は、範囲[32..126]の印刷可能なASCII文字で構成される空でない文字列を解読することです。 文字ごとの文字列の読み取り: 小文字の文字に出会うたびに、「A」で始まる大文字の次の文字に関連付けます 大文字の文字に出会うたびに、関連付けられている小文字の文字に置き換えます 他の文字は特別な処理を必要とせず、そのまま変更されません 例 入力文字列の場合"endlAsEBAEE": アソシエイトeへA、nへB、dへCとlへD 交換するAとe アソシエイトsへE 交換するEBAEEとsness 最終的な出力は"endlessness"です。 明確化と規則 入力文字列には、各小文字が1回しか含まれないことが保証されています。それ以降のすべてのインスタンスは、対応する大文字に置き換えられます。 入力文字列は有効であることが保証されています。(まだ小文字に関連付けられていない大文字は表示されません。) 大文字が小文字に関連付けられると、後で文字列で使用される場合とされない場合があります。例えば、CおよびD上記の例では使用されません。 これはcode-golfなので、バイト単位の最短回答が勝ちです! テストケース 入力: abcd honk! ABCD! abrAcAdABCA endlAsEBAEE helCo wDrCd! dermatoglyphics progBamFinD AuzJles & cCdL DCKf sphinx of black quKrtz, jOdge my vGw. K NODLM IPGZE HGF SOWBA GYVP QCV JKRX TGU. petBr AiABD …

5
バイナリ畳み込み
バイナリ畳み込みは数値Mで記述され、数値に適用されNます。のバイナリ表現の各ビットについてM、ビットが設定されている場合(1)、出力の対応するビットは、対応するビットに隣接する2ビットをXORすることで与えられますN(必要に応じて折り返します)。ビットが設定されていない場合(0)、出力の対応するビットはの対応するビットによって与えられNます。 実用的な例(8ビット値): ましょうN = 150、M = 59。それらのバイナリ表現は(それぞれ)10010110と00111011です。 Mのバイナリ表現に基づいて、ビット0、1、3、4、および5が畳み込まれます。 ビット0の結果は、ビット1と7をXORすることで得られ1ます(折り返すため)。 ビット1の結果は、ビット0と2のXOR演算によって得られ0ます。 ビット2の結果は、元のビット2で与えられ、を生成し1ます。 ビット3の結果は、ビット2と4のXORによって得られ0ます。 ビット4の結果は、ビット3と5のXOR演算によって得られ0ます。 ビット5の結果は、ビット4と6のXORによって得られ1ます。 ビット6と7の結果は、元のビット6と7で与えられ、とを生成0し1ます。 したがって、出力は10100110(166)です。 チャレンジ とが与えられたときN、on Mによって記述されたバイナリ畳み込みを実行した結果を出力しMますN。入力および出力は、便利で一貫性があり、明確な形式である場合があります。Nそして、M常に(包括的)範囲[0, 255](8ビット符号なし整数)にあり、バイナリ畳み込みを実行するために、バイナリ表現を8ビットにパディングする必要があります。 テストケース 150 59 -> 166 242 209 -> 178 1 17 -> 0 189 139 -> 181 215 104 -> 215 79 214 -> 25 190 207 -> 50 61 …
15 code-golf  binary  integer  bitwise  code-golf  rational-numbers  code-golf  string  palindrome  code-golf  ascii-art  code-golf  code-golf  string  fibonacci  code-golf  math  sequence  code-golf  code-golf  string  palindrome  code-golf  string  code-golf  math  primes  source-layout  code-golf  sequence  binary  integer  code-golf  math  arithmetic  game  code-golf  restricted-source  palindrome  code-golf  restricted-source  palindrome  code-golf  combinatorics  binary  code-golf  string  math  code-golf  ascii-art  number  code-golf  cipher  code-golf  base-conversion  counting  code-golf  sequence  random  classification  code-golf  string  subsequence  code-golf  permutations  code-golf  string  code-golf  string  cipher  code-golf  kolmogorov-complexity  arithmetic  integer  code-golf  quine  markov-chain  code-golf  string  code-golf  code-golf  ascii-art  maze 

13
コンピューター暗号
前書き: 私は子供の頃にコンパイルしたドキュメントにさまざまな暗号を保存しており、チャレンジに最も適していると考えたものをいくつか選んで(些細ではなく、難しくもありません)チャレンジに変換しました。それらのほとんどはまだサンドボックス内にあり、それらすべてを投稿するのか、それともほんの少数を投稿するのかはまだわかりません。しかし、ここで最初のものを始めます。 Computer Cipherは、指定されたテキストを指定されたの「ランダムな」文字グループに暗号化しますlength。そのようなグループに数字が含まれている場合、その数字を使用して、暗号化された文字の独自のグループにインデックスを付けます。グループに数字がない場合、最初の文字が使用されることを意味します。 たとえばthis is a computer cipher、指定された長さのテキストを暗号化したいとしましょう5。これは潜在的な出力です(注:次の例では、番号は1から始まります)。 t h i s i s a c o m p u t e r c i p h e r (without spaces of course, but added as clarification) qu5dt hprit k3iqb osyw2 jii2o m5uzs akiwb hwpc4 eoo3j muxer z4lpc 4lsuw …

30
プライムパワーからプライムを回復する
定義:素数はp nの形式で表現できる自然数です。pは素数で、nは自然数です。 タスク:プライムパワーp n > 1の場合、プライムpを返します。 テストケース: input output 9 3 16 2 343 7 2687 2687 59049 3 得点:これはcode-golfです。バイト単位の最短回答が優先されます。
13 code-golf  arithmetic  primes  king-of-the-hill  python  board-game  code-golf  number  subsequence  code-golf  ascii-art  code-golf  array-manipulation  decision-problem  grid  fastest-algorithm  logic-gates  logic  code-golf  cards  code-golf  rational-numbers  code-golf  math  number  sequence  code-golf  array-manipulation  integer  code-golf  number  array-manipulation  code-golf  number  sequence  decision-problem  code-golf  ascii-art  number  code-challenge  sequence  arithmetic  sorting  code-golf  date  fastest-algorithm  code-golf  string  number  random  combinatorics  code-golf  combinatorics  code-golf  ascii-art  base-conversion  code-golf  array-manipulation  code-golf  string  code-golf  string  number  arithmetic  code-golf  kolmogorov-complexity  code-golf  string  array-manipulation  json  code-golf  puzzle-solver  code-golf  binary  graph-theory  code-golf  arithmetic  haskell  code-golf  string  cipher  code-golf  code-golf  string  parsing  alphabet  code-golf  string  code-golf  ascii-art  code-golf  string  number  code-golf  string  balanced-string 

10
ASCII奇数/偶数暗号
以下の擬似コードを使用して、ASCII奇数/偶数暗号を定義します。 Define 'neighbor' as the characters adjacent to the current letter in the string If the one of the neighbors is out of bounds of the string, treat it as \0 or null Take an input string For each letter in the string, do If the 0-based index of the …

13
フィボナッチ製品
正のフィボナッチ数の一意の合計として、0より大きい数を分解できます。この質問では、可能な最大の正のフィボナッチ数を繰り返し減算することでこれを行います。例えば: 1 = 1 2 = 2 3 = 3 4 = 3 + 1 12 = 8 + 3 + 1 13 = 13 100 = 89 + 8 + 3 ここで、フィボナッチ積を上記と同じリストと呼びますが、加算は乗算に置き換えられます。たとえば、f(100) = 89 * 8 * 3 = 2136。 正の整数nを指定して、その数のフィボナッチ積を返すプログラムまたは関数を作成します。 テストケース: 1: 1 2: 2 3: 3 4: …
13 code-golf  math  sequence  fibonacci  code-golf  word  code-golf  cipher  code-golf  string  math  subsequence  code-golf  regular-expression  code-golf  brainfuck  assembly  machine-code  x86-family  code-golf  math  factorial  code-golf  math  geometry  code-golf  math  arithmetic  array-manipulation  math  number  optimization  stack  metagolf  code-golf  tips  assembly  code-golf  tips  lisp  code-golf  number-theory  path-finding  code-golf  number  sequence  generation  code-golf  math  geometry  code-golf  grid  permutations  code-golf  code-golf  graphical-output  geometry  fractal  knot-theory  code-golf  math  arithmetic  code-golf  interpreter  balanced-string  stack  brain-flak  code-golf  math  set-theory  code-golf  math  array-manipulation  code-golf  code-golf  string  natural-language  code-golf  code-golf  math  linear-algebra  matrix  code-golf  string  encode 

14
クロック(音訳)暗号
前書き: 私は子供の頃にコンパイルしたドキュメントにさまざまな暗号を大量に保存しています。チャレンジに最も適していると思われるものをいくつか選んで(簡単すぎず、難しくありません)、チャレンジに変換しました。それらのほとんどはまだサンドボックス内にあり、それらすべてを投稿するのか、それともほんの少数を投稿するのかはまだわかりません。3番目の最も簡単な方法は次のとおりです(以前に投稿したComputer CipherおよびTrifid Cipherの後)。 Clock Cipherでは、次の画像を使用してテキストを暗号化します。 したがって、次のような文は次のようthis is a clock cipherになります。 t h i s i s a c l o c k c i p h e r (without additional spaces of course, but added as clarification) 19:7:8:18:00:8:18:00:AM:00:2:11:14:2:10:00:2:8:15:7:4:17 チャレンジ: stringを指定するとsentence_to_encipher、上記のように暗号化します。 チャレンジルール: あなたが仮定することができます sentence_to_encipherは文字とスペースのみが含まれるます。 完全な小文字または完全な大文字のいずれかを使用できます(回答で使用したものを明記してください)。 をb介して1桁の暗号化文字に先行ゼロを追加することはできませんが、スペースにはj2つのゼロ00が必須です。 :区切り文字として使用する必要があり、先頭または末尾に追加する:ことはできません。 一貫性がある限り、大文字との代わりに小文字amとを使用できpmます。AMPM 一般的なルール: これはcode-golfであるため、バイト単位の最短回答が優先されます。 …

2
マルセルプルーストとマルコフ解読セキュリティサービスのT9テキスト
この挑戦は、もう精神的にPythonesqueであるかのように... マルコフ連鎖や暗号化技術の予備知識は必要ありません。 あなたはイギリスの警備サービスM1Sから重要な情報を入手する必要があるスパイです。M1Sのエージェントは、Wi-Fi信号が傍受される可能性があること、Android / iOSのセキュリティ脆弱性が悪用されることなどを十分に認識しているため、全員がNokia 3310を使用して、T9自動補完を使用して入力されるテキスト情報を送信しています。 あなたは以前に電話をハッキングしてagency報機関に配送し、キーロガーを素晴らしいプラスチックキーボードの下にインストールしていたので、入力した文字に対応する一連の数字を受け取るので、「ワシは巣から離れてエージェントに警告します」 84303245304270533808430637802537808430243687 ちょっと待って!一部のT9シーケンスはあいまいです(「6263」は「name」、「mane」、または「oboe」になる可能性があります。不明瞭になるほど、疑わしくなります!)、どうしますか?M1Sが使用する入学試験は、マルセルプルーストの傑作「過去の記憶」を15秒で要約することだけなので、chef-d全体の頻度分布に従って、前の単語の次に来る単語を選択します。プルーストの傑作! コードを解読して、元のメッセージを入手できますか? T9の原理 T9自動補完メカニズムは、次のように説明できます。上の図に示すように、アルファベット文字を数字にマップします。 abc -> 2 def -> 3 ghi -> 4 jkl -> 5 mno -> 6 pqrs -> 7 tuv -> 8 wxyz -> 9 <space> -> 0 <other> -> <is deleted> T9復号化装置は一連の数字を受け取り、それらのキーを押して入力できる単語を推測しようとします。標準の頻度表を使用することもありますが、さらに一歩進んで、マルコフ連鎖を使用して次の単語を予測しています! 学習サンプル コーパスは、プルーストの「物事過去の思い出」のこの重く取り除かバージョン(s/-/ /g、s/['’]s //gおよびs/[^a-zA-Z ]//g-仰せられた混乱所有格's!)もともとに掲載さアデレード大学のウェブサイト(この作品のテキストは、オーストラリアでのパブリックドメインです)。 テキスト全体が一つの長い単語のベクトルとして、一つの長い文として、1つの文字列として分析する必要があります(あなたの言語のためのより便利な方)、改行が取り除かれ、スペースで単語に分割。(単一のパラグラフファイルは、githubツールによって眉をひそめられる可能性があるため、提供していません。) …

6
柵フェンス暗号
2つのプログラムを作成 します。-文字列とキーを読み取り、そのキーを使用して文字列を柵フェンス暗号にエンコードするプログラム。-同様に、リバース機能のプログラムを作成します。キーを使用して柵のフェンスを解読します。 レールフェンス暗号が何であるかを知らない人にとって、それは基本的に、らせん状に線形パターンを作成する方法でプレーンテキストを書き込む方法です。例-「FOOBARBAZQUX」が3のキーを使用して柵で囲まれた場合 F . . . A . . . Z . . . . O . B . R . A . Q . X O . . . B . . . U 上記のスパイラルを1行ずつ読み取ると、暗号文は「FAZOBRAQXOBU」になります。 詳細については、- 柵フェンス暗号-ウィキペディアをご覧ください。 任意の言語のコードを歓迎します。 バイト単位の最短回答が優先されます。

25
列暗号をエンコードする
エンコードする文字列と列数(キー)を指定して、次のように文字列をエンコードします。 例Hello, world!とキーを使用します3 まず、列の数を書き出します。 1 2 3 次に、左上から列ごとに1文字ずつテキストを書き、列が足りなくなったら次の行に進みます。 1 2 3 H e l l o , w o r l d ! ここで、エンコードされたテキストを取得するには、左上隅からテキストを読み取りますが、今回は最初に1つの列を読み取ってから、次の列を読み取っていきます。スロットにキャラクターがいない場合はスペースを入れてください。 Hl r!eowl l,od ここには、末尾にスペースがあることに注意してください。 これはエンコードされたテキストです。 別のテストケースはProgramming Puzzles and Code Golf SEkeyを使っています5: 1 2 3 4 5 P r o g r a m m i n …
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.