破解DNA之密
这题wp换个视角,站在选手角度来说
CATA CACC CTAG CTAT CACG CGTA CGGC CCTT CGAA CCCC CCGT GTCT CCTT GTCC CATT CCTT CCGT CGTT CAGC CAAT CACG CATA CCCT GTCG CGAA CGCG CCCT CACG GTCG CCCT CACG CTCT CAGC GTGC CACG CTCT GTCG CGTT CGAA CGCG CTTC
由于提示了flag开头为nex,然后密文又是四位四位的给,猜测是每四位代表一个ASCII码。拿第一个n来验证。n的二进制为
01 10 11 10
第一段密文为
C A T A
发现好像有这样的映射关系:
01 -> C
10 -> A
11 -> T
00 -> G
写个脚本验证一下这样的关系是否正确:
c = "CATA CACC CTAG CTAT CACG CGTA CGGC CCTT CGAA CCCC CCGT GTCT CCTT GTCC CATT CCTT CCGT CGTT CAGC CAAT CACG CATA CCCT GTCG CGAA CGCG CCCT CACG GTCG CCCT CACG CTCT CAGC GTGC CACG CTCT GTCG CGTT CGAA CGCG CTTC"
s = {'C':'01','A':'10','T':'11','G':'00'}
for i in c.split(" "):
str = "".join(s[j] for j in i)
print(chr(int(str,2)),end="")
#nex{dNA_JUS7_5o_SOakdnW4JDWd4Wdwa1dw4OJD}
发现得到最终flag