实验吧-密码学-凯撒和某某加密

某某加密也是试出来的,这个加密其实和栅栏加密类似,但不过也没啥关系,就是自己根据格式拼出来的。现在解密的工具很多,也有软件,也有在线的,可惜这个题用这两个都做不了。为什么呢,这些工具对于凯撒一般都是26个字母循环移位,符号不处理,ASCII码超过Z的也不处理,正好这个题就是超越这些限制的移位,这就需要脚本了。首先,用一个脚本,改脚本可在33-126的ASCII码范围内解码。代码转...
摘要由CSDN通过智能技术生成

某某加密也是试出来的,这个加密其实和栅栏加密类似,但不过也没啥关系,就是自己根据格式拼出来的。

现在解密的工具很多,也有软件,也有在线的,可惜这个题用这两个都做不了。

为什么呢,这些工具对于凯撒一般都是26个字母循环移位,符号不处理,ASCII码超过Z的也不处理,正好这个题就是超越这些限制的移位,这就需要脚本了。

首先,用一个脚本,改脚本可在33-126的ASCII码范围内解码。

代码转自:https://blog.csdn.net/dongyanwen6036/article/details/76447628

#实现33-126ASCII能打印的字符循环平移
#和通常凯撒加密不同注意
def change(c,i):
	num=ord(c)
	if(num>=33 and num<=126):
		num=33+(num+i-33)%(94)#126-33=93
	return chr(num)
 
	
def kaisa_jiAmi(string,i):
	string_new=''
	for s in string:
		string_new+=change(s,i)
	print(string_new)
	return string_new
 
#本题有种暴力解密感觉
def kaisa_jiEmi(string):
	for i in range(0,94):
		print('第'+str(i+1)+'种可能:',end='   ')
		#区别在于 string 是该对象原本就是字符串类型, 而 str()则是将该对象转换成字符串类型。
		kaisa_jiAmi(string,i)
		
#你要知道input输入的数据类型都是string	
def main():
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值