window.onload=function(){ /*页面加载完成之后生成博客目录*/ BlogDirectory.createBlogDirectory("cnblogs_post_body","h2","h3",20); }

[LitCTF 2023]隐晦的聊天记录

题目分数:451

题目标签: CRYPTOOPT加解密

题目描述:

- 题目描述:这是出题人和一个朋友的几条聊天记录,里面的加密方式似乎是OPT捏
- 出题人:dbuj7flag以NSSCTF{}形式提交

附件:

出题人:6c73d5240a948c86981bc294814d
某不知名收件人:收到消息attack at dawn
出题人:xxxxxxxxxxxxxxxxxxxxxxxxxxxx
某不知名收件人:收到消息Monday or Thur
已知出题人和收件人手中的密钥相同,请解出出题人第二次发送的密文呢(16进制,字母小写,解得的结果记得要加上LitCTF{}哦。)

根据题目提示,知道这是OPT加密,了解一下原理之后就知道如何解这题了

首先把 attack at dawn转成16进制,再和6c73d5240a948c86981bc294814d进行异或,即可得到密钥,因为两次密钥相同,所以把Monday or Thur和密钥异或,就是我们要的密文

ciphertext1 = 0x6c73d5240a948c86981bc294814d    #   attack at dawn转16进制后
plaintext1 = 0x61747461636b206174206461776e

key = ciphertext1 ^ plaintext1

#   key = 0xd07a14569fface7ec3ba6f5f623

plaintext2 = 0x4d6f6e646179206f722054687572      #  Monday or Thur转16进制后

ciphertext2 = key ^ plaintext2

print(hex(ciphertext2))
posted @ 2023-05-15 17:56  Kicky_Mu  阅读(228)  评论(0编辑  收藏  举报