Single

[b01lers2020]crypto_crossword3 min read

题目下载

     1   2   3   4   5
   +---+---+---+---+---+  }
   |   |   |   |   |   |  |   
   |---+---+---+---+---|  |     
 6 |   |   |   |   |   |  |
   |---+---+---+---+---|  \
 7 |   |   |   |   |   |   -> 密文
   |---+---+---+---+---|  /   
 8 |   |   |   |   |   |  |
   |---+---+---+---+---|  |
 9 |   |   |   |   |   |  |
   +---+---+---+---+---+  }

给了一个5×5的矩阵,不难猜测出是希尔密码。

第一关:

;fH;aCh7-“@UWb^G@>N&F#kFRDf’?”DIal3D]iJ!C3=T>+EqL-F<G%(Ci=3(F!,RC+EqL;D’3b7+B;0.==s

ascii85得到:Spelled backwards: command to adjust what belongs to whom on UNIX.(倒着拼写:在UNIX上调整属于谁的内容的命令。)

把这句话复制到搜索引擎上可以得到是chown,所以倒过来写应该是nwohc

第二关:

GUR FZNYYRFG EFN RKCBARAG RIRE VA JVQRFCERNQ HFR.

简单替换密码/ROT13得到:THE SMALLEST RSA EXPONENT EVER IN WIDESPREAD USE.(广泛使用的最小RSA指数。)

最小的值为3。(three

第三关:

4261636b77617264733a2074776f20666f722062696e6172792c2074656e20666f7220646563696d616c2c20616e64207369787465656e20666f72206865782e20

hex,Backwards: two for binary, ten for decimal, and sixteen for hex.(倒写:二进制为2,十进制为10,十六进制为16。)

base2就是二进制,base10就是十进制,base16就是十六进制,所以这个地方应该填“base”,但是它只有四位,用同义词radix代替。

反写就是xidar

第四关:

KLHHRYOB GSV URIHG QZEZHXIRKG UFMXGRLM BLF VEVI XZOOVW.

简单替换密码得到:POSSIBLY THE FIRST JAVASCRIPT FUNCTION YOU EVER CALLED.(可能是您调用过的第一个JAVASCRIPT函数。)

不难想到弹窗alert

第五关:

Ecceilnort cdemnostu ahtt eoprv ehinoprsw fo ,eksy cddeeru ot efiv .eelrstt

这关不能用quip了嘤嘤Q Q。。学习到了可以用Shuffled Letters就嗯猜。

得到:Electronic documents that prove ownership of ,keys reduced to five .letters(证明拥有钥匙的电子文件,答案五个字。)

不难想到证书(certs)。

第六关:

FRPPRQ UHVHUYHG ZRUG LQ F++ DQG SBWKRQ.

简单替换密码/CyberChef得到:COMMON RESERVED WORD IN C ++ AND PYTHON(C++和PYTHON中的常用保留字。)

常见又满足五个字的,很容易想到while了。

第七关:

TW9kZXJuIGNyeXB0byBlc3BlY2lhbGx5IGxpa2VzIGdyb3VwcyBvZiBwcmltZSBfX19fXy4=

base64:Modern crypto especially likes groups of prime _.(现代加密尤其喜欢___质数组。)

用搜索引擎得到order

第八关:

ooOo00oo0oOo0ooo0O0000oooo0oO0oOoo0ooOo0000OOO0ooOo0000oO0000ooOo0oO0OO0OOO0ooO0ooo0000OOO0oOOo0o0Oo0ooo0ooo0oOoo0000oooO0ooO0oOoo0Oo0o0oOo0oO0Oooo00oo0oOoo00oo0O0OoOO0oOoOoO0

三种字符(大小写o,数字0)摩斯密码:

FIRST HALF OF A FAMOUS OPENSSL VULNERABILITY.(著名的OPENSSL漏洞的前半部分)

也就是心脏滴血漏洞(Heartbleed),前半部分就是heart

第九关:

7×4 2×1 6×1 3×2 # 2×1 7×4 # 2×1 6×2 7×4 9×1 3×2 7×3 # 6×2 8×2 6×1 2×2 3×2 7×3 # 3×3 4×3 8×3 3×2 1×1

没反应过来这是啥,看了官方WP才知道这是手机键盘密码,锤自己怎么没反应过来,确实两两一组没有大于9的数字,符合它的规范。

用自己写的手机键盘解密傻软梭一下:

same as answer number five

和编号五的答案相同,也就是certs

至此,可以填矩阵啦。

竖着填,最终结果如下:

   1   2   3   4   5
   +---+---+---+---+---+
   | n | t | x | a | c |
   |---+---+---+---+---|
 6 | w | h | i | l | e |
   |---+---+---+---+---|
 7 | o | r | d | e | r |
   |---+---+---+---+---|
 8 | h | e | a | r | t |
   |---+---+---+---+---|
 9 | c | e | r | t | s |
   +---+---+---+---+---+

又因为希尔密码是每个字母当作26进制数字,A=0, B=1, C=2… 一串字母当成n维向量,所以把它们转为数字(字母表顺序-1)。

得到:

MESSAGEXISXNOXBLACKXSQUARESXAMIGOXSEPARATEDXBYXSPACEXANDXENCLOSEDXINXTHEXUSUALXFORMAT

以“X”为分隔符:MESSAGE IS NO BLACK SQUARES AMIGO SEPARATED BY SPACE AND ENCLOSED IN THE USUAL FORMAT

(flag是NO BLACK SQUARES AMIGO用空格隔开并且用常用格式括起来)