当前位置: 首页 > news >正文

猫玖破密啦

题目:

终究还是猫哥:3d5a3a0cfff7fb2e29194c0b7a89f284ff19a8
玖离:收到消息Oh,what_is_the_flag
玖离:7468655f666c61675f69735f666c13556d2cf2faec1e2d0f330b7dcceea1c62cb2
终究还是猫哥:收到消息************************************
已知使用了异或进行了加密,通信双方手中的密钥相同,请解出‘终究还是猫哥’收到的明文



1、猫发送密文,玖接受到后用密钥进行破解获得明文
2、玖发送加密信息给猫,问猫接受到的明文是什么——猫接受到的是玖发送的密文,所以需要密钥解密,密钥又是相同的,所以需要用步骤1取得密钥


1中的密钥求法:

异或算法只能用二进制进行异或,相同则为0,在字符串之间,例如:A^B=C,反之B^C=A,或者A^C=B.    所以1中的密文^密钥=明文,反之,密文^明文=密钥



二,十进制,十六进制依次对应的结果:
猫的密文:111101010110100011101000001100111111111111011111111011001011100010100100011001010011000000101101111010100010011111001010000100111111110001100110101000

1368205316501309152335016276706240728768911784

3d5a3a0cfff7fb2e29194c0b7a89f284ff19a8

玖接收到消息后解密后的明文:
1001111011010000010110001110111011010000110000101110100010111110110100101110011010111110111010001101000011001010101111101100110011011000110000101100111

1770833679565073800544537810246306849905992039

4f682c776861745f69735f7468655f666c6167



异或得到的密钥:1110010001100100001011001111011100101111001011010001111011100010100000001101010000100110111111100010010111011001010110111100010100100110111100011001111

2546648217423285344414476194497936508289513679

7232167B97968F71406A137F12ECADE29378CF


玖发出的密文:11101000110100001100101010111110110011001101100011000010110011101011111011010010111001101011111011001100110110000010011010101010110110100101100111100101111101011101100000111100010110100001111001100110000101101111101110011001110111010100001110001100010110010110010

13479101997762112292594521034034389377799862087305995464570874642725817064762546

7468655f666c61675f69735f666c13556d2cf2faec1e2d0f330b7dcceea1c62cb2


跟密文异或后得到猫最后接受的明文二进制:11101000110100001100101010111110110011001101100011000010110011101011111011010010111001101011111011001100110110001100001011001110111101101010111011001010110110001100011011011110110110101100101001000000111010001101111001000000100001101000011010101010101010001111101

13479101997762112292594521034034391118830829094402208504536293746893526815560829

7468655F666C61675F69735F666C61677B57656C636F6D6520746F20434355547D


最后转为字符串:the_flag_is_flag{Welcome to CCUT}

异或的python脚本:

def xor_binary_strings(bin_str1, bin_str2):# 确保两个字符串的长度相同,不同长度的二进制字符串需要填充max_len = max(len(bin_str1), len(bin_str2))bin_str1 = bin_str1.zfill(max_len)  # 用0填充到相同长度bin_str2 = bin_str2.zfill(max_len)# 进行异或操作result = ''for b1, b2 in zip(bin_str1, bin_str2):# 异或操作:相同为0,不同为1result += '1' if b1 != b2 else '0'return result# 示例输入
bin_str1 = input("请输入第一个二进制字符串: ")
bin_str2 = input("请输入第二个二进制字符串: ")# 计算异或结果
xor_result = xor_binary_strings(bin_str1, bin_str2)# 输出结果
print(f"异或结果: {xor_result}")
def xor_decimal_numbers(num1, num2):# 进行异或操作result = num1 ^ num2return result# 示例输入
num1 = int(input("请输入第一个十进制数字: "))
num2 = int(input("请输入第二个十进制数字: "))# 计算异或结果
xor_result = xor_decimal_numbers(num1, num2)# 输出结果
print(f"异或结果: {xor_result}")
def xor_hex_numbers(hex_str1, hex_str2):# 将十六进制字符串转换为整数num1 = int(hex_str1, 16)num2 = int(hex_str2, 16)# 进行异或操作result = num1 ^ num2# 将结果转换回十六进制字符串(去掉 '0x' 前缀,并转为大写)return hex(result)[2:].upper()# 示例输入
hex_str1 = input("请输入第一个十六进制数字(例如:1A3F):")
hex_str2 = input("请输入第二个十六进制数字(例如:2B4):")# 计算异或结果
xor_result = xor_hex_numbers(hex_str1, hex_str2)# 输出结果
print(f"异或结果: {xor_result}")

http://www.lryc.cn/news/456464.html

相关文章:

  • SpringBoot框架:服装生产管理的现代化工具
  • Android Preference的使用以及解析
  • HCIP——GRE和MGRE
  • 微信小程序——音乐播放器
  • OceanBase 4.x 部署实践:如何从单机扩展至分布式部署
  • 大数据新视界 --大数据大厂之TeZ 大数据计算框架实战:高效处理大规模数据
  • docker详解介绍+基础操作 (三)
  • 【大语言模型-论文精读】谷歌-BERT:用于语言理解的预训练深度双向Transformers
  • 【Java】集合中单列集合详解(一):Collection与List
  • 【Fine-Tuning】大模型微调理论及方法, PytorchHuggingFace微调实战
  • 清华系“仓颉”来袭:图形起源:用AI颠覆字体设计,推动大模型商业化落地
  • 分布式一致性协议的深度解析:Paxos与Raft
  • ai写作,五款软件助你快速写作!
  • 解决JavaScript 数学运算精度丢失的问题
  • mysql学习教程,从入门到精通,SQL窗口函数(38)
  • gbase8s数据库实现黑白名单的几种方案
  • Qt-窗口布局按钮输入类
  • Apache DolphinScheduler社区9月进展记录
  • 在docker中安装并运行mysql8.0.31
  • C++ | Leetcode C++题解之第458题可怜的小猪
  • 【万字长文】Word2Vec计算详解(三)分层Softmax与负采样
  • 【分布式微服务云原生】探索Dubbo:接口定义语言的多样性与选择
  • SAP将假脱机(Spool requests)内容转换为PDF文档[RSTXPDFT4]
  • DNS能加速游戏吗?
  • Raspberry Pi3B+之C/C++开发环境搭建
  • [笔记] 仿射变换性质的代数证明
  • 遥感影像-语义分割数据集:sar水体数据集详细介绍及训练样本处理流程
  • 极狐GitLab 发布安全补丁版本 17.4.1、17.3.4、17.2.8
  • 汽车管理系统中使用函数
  • 大数据分析入门概述