Ingressの暗号

2023/01/05

つぶやき 暗号

何年か前、Ingressでは毎日ちょっとした暗号がポストされて、それを解くとハック数回分程度のアイテムが手に入るというミニゲームがあった。慣れてくるとほとんどの問題は数分で解けるのだが、中にはかなり難しいものもあり、毎日楽しく取り組んでいた。


・・という思い出を振り返りに過去に解いた問題を見てみたら、数分で解けていたはずの問題も相当狂った難易度である。解けないぞ、これ。


例えば


暗号

abb02ed0b1a2cab1aba0e2c21a11e1a1bac2cec20bb0a3b01a34b1a0a1a0bbb0c3d200a042d4b1b0a133a011a0b4a1a1b0b0a1a11a01b231a1b0b0a0e0b1a1b3e3c3a0a11ab004b01b00ab00bba0b0b0b1b00d42b0a11a33a101abb0edd2ecd23b00bab43e2421a0b4d1b0b1a122e2a0c2e0a1b11a12c3d43d20a110d4d3e1b100b1a3d310a1a1b2abb10a43b1a0eba1abb01d111a111a10a0c1bab00aa2b1b0a1a011a0b0d1abb0a0b0


解法

数字部分を空白 (_), 文字部分を黒塗り(■)に置き換えると

■■■__■■_■_■_■■■_■■■_■_■__■__■_■_■■■_■■■__■■_■_■__■__■_■_■_■_■■■_■_■___■___■_■_■_■___■___■_■_■_■_■_■_■_■__■__■___■_■_■_■_■_■_■_■_■_■_■_■__■■___■__■__■■__■■■_■_■_■_■__■__■_■__■__■___■■■_■■■_■■■__■__■■■__■____■_■_■_■_■_■___■_■_■_■_■_■__■__■_■__■__■___■_■_■_■___■_■_■___■_■_■_■■■__■__■_■_■■■_■■■__■___■___■__■_■_■■■__■■_■_■_■_■___■_■_■_■■■_■_■_

68文字×5行に折り返すと 

■■■__■■_■_■_■■■_■■■_■_■__■__■_■_■■■_■■■__■■_■_■__■__■_■_■_■_■■■_■_■_
__■___■_■_■_■___■___■_■_■_■_■_■_■_■__■__■___■_■_■_■_■_■_■_■_■_■_■_■_
_■■___■__■__■■__■■■_■_■_■_■__■__■_■__■__■___■■■_■■■_■■■__■__■■■__■__
__■_■_■_■_■_■___■_■_■_■_■_■__■__■_■__■__■___■_■_■_■___■_■_■___■_■_■_
■■■__■__■_■_■■■_■■■__■___■___■__■_■_■■■__■■_■_■_■_■___■_■_■_■■■_■_■_

アスキーアートになっており、3JXE6VOINICHA4X9X が答え。


もとの文をabcde->01234に置き換えてさらに考える。

0110243011022011010042221011410110222422011003101034110001001110233200004234111001330011001401011010010110011231011010004011011343230001101004101100010011001010111003421001103301010110433242323100101434242100143110110122420022400111101223343320011034334111001103331001011201110043110041010110131110111010002110100002111001001100103101100010

この中から0と1だけを取り出すと

01100110011010010111011001100101011000100111000001110010011001010110100101100111011010000110110001101001011000100110010101110010011001010110100101100111011010000111101001101110011010010110111001100101011011110111010001101000011100100110010101100010

8文字区切りで2進数->ASCII CODEで読むと

fivebpreighlibereighznineothreb

->5bpr8liber8z9o3b

8をさらにateと読んで、5bpr8liberatez9o3b が第2の答え。


逆に234だけを取り出すと

24322422242224223342332423433423434323434233433242323434242432242224223343323433433324343223

2 を -、 3を .、 4を区切りとしてモールス信号で読むと

TWOOZXNINEREDUCETTWOZFIVEP

2OZX9REDUCET2Z5P が第3の答え。


なんで当時、これが普通に解けていたんだろう。


あの頃、腕が冴えているうちにもっと暗号を作っておけばよかった。