CTF密码学密文脚本解密及WP(凯撒解密)

题目来源实验吧

分析题意,说是困在栅栏中,所以将字符栅栏解密看看有什么,利用工具CTFcraktools

得到三条密文

然后说是密码是凯撒,在将四栏依次凯撒解码,寻找可能的key,这里很显然,在尝试第一个的时候,解出的明文里有一个“CTF{}”字样的一栏

解题成功。

这时我在想,这些结果那么多,答案不容易找到。于是我写了一个给出密文和偏移度就能写得出唯一的结果。说了那么多上代码

#!/usr/bin/python
#encoding=utf-8

import string
import sys

z=[]
for i in string.lowercase:       #string.lowercase表示a~z所有字母
z.append(i)

zifu=raw_input("zi fu chuan:")
n=raw_input("pian yi du:")
str1=‘‘

for i in zifu:
if ord(i)+int(n)>122:         #ord()函数给出字母的ASCII码
a=96+ord(i)+int(n)-122
else:
a=ord(i)+int(n)
str1+=chr(a)             #给出ASCII码的对应字母
print str1

执行结果:

脚本马马虎虎吧,害怕你们不理解,还用上了拼音(咳咳,承认英语水平欠优)

担待担待。。。。

原文地址:http://blog.51cto.com/12332766/2116685

时间: 2024-10-09 20:48:43

CTF密码学密文脚本解密及WP(凯撒解密)的相关文章

PHP脚本实现凯撒加(解)密

原文:PHP脚本实现凯撒加(解)密 今天在看某ctf时候遇到一题凯撒加密的题,然后看到write up里有这样一句 顿时感觉这题目有点坑啊,这要不写个脚本来跑要推到啥时候啊,于是又了本文: 1 <?php 2 $text=" the text "; //需要解密的文本 3 echo $text."<hr>"; 4 for($j=0;$j<25;$j++) 5 { 6 for ($i=0;$i<strlen($text);$i++) 7

《密码学》 凯撒密码和栅格密码(0)

凯撒密码(0) 在密码学中,恺撒密码(英语:Caesar cipher),或称恺撒加密.恺撒变换.变换加密,是一种最简单且最广为人知的加密技术.它是一种替换加密的技术,明文中的所有字母都在字母表上向后(或向前)按照一个固定数目进行偏移后被替换成密文.例如,当偏移量是3的时候,所有的字母A将被替换成D,B变成E,以此类推.这个加密方法是以罗马共和时期恺撒的名字命名的,当年恺撒曾用此方法与其将军们进行联系. 加密公式:En(x) = (x + n) mod 26 解密公式:Dn(x) = (x -

凯撒加密与解密实现

1.背景与原理 引自维基百科 在密码学中,凯撒密码(英语:Caesar cipher),或称凯撒加密.凯撒变换.变换加密,是一种最简单且最广为人知的加密技术.它是一种替换加密的技术,明文中的所有字母都在字母表上向后(或向前)按照一个固定数目进行偏移后被替换成密文.例如,当偏移量是3的时候,所有的字母A将被替换成D,B变成E,以此类推.这个加密方法是以罗马共和时期凯撒的名字命名的,据称当年凯撒曾用此方法与其将军们进行联系. 简单来说就是当秘钥为n,其中一个待加密字符ch,加密之后的字符为ch+n,

凯撒密码加密解密--JAVA实现(基础)

凯撒密码一种代换密码,据说凯撒是率先使用加密函的古代将领之一,因此这种加密方法被称为恺撒密码.凯撒密码的基本思想是:通过把字母移动一定的位数来实现加密和解密.明文中的所有字母都在字母表上向后(或向前)按照一个固定数目进行偏移后被替换成密文. 使用JAVA程序实现对明文的加密: package com.qikeyishu.www; public class Kaisapwd { public static void main(String[] args) { char str[]={'a','b'

实验吧:您的位置:首页&gt;决斗场&gt;训练题库&gt;CTF题库&gt;困在栅栏里的凯撒

困在栅栏里的凯撒分值:10 来源: 北邮天枢战队 难度:易 参与人数:8293人 Get Flag:4709人 答题人数:4950人 解题通过率:95% 小白发现了一段很6的字符:NlEyQd{seft} 抓住CTF{***}的模式,先将NlEyQd{seft}丢入栅栏密码中解出CTF{}的形式,在将它丢入凯撒密码中解密 结果:CTF{tianshu} 原文地址:https://www.cnblogs.com/jc12138/p/10012753.html

凯撒加密解密(java字母移位)

1.设计思想:加密就是将字符数据转化为ASC码表中的数字,a—w之间通过加3之后再转化为字符型输出,x—z之间通过转化为ASC码表中的数字后减去23再转化为字符型输出.解密就是将字符数据转化为ASC码表中的数字,d—z之间通过减去3之后再转化为字符型输出,a—c之间通过转化为ASC码表中的数字后加23再转化为字符型输出. 2.程序流程图 3.程序源码 import java.util.Scanner;public class Code {//严羽卿 凯撒加密与解密  2015 10 23 pub

变异凯撒

恺撒密码 凯撒密码一般指恺撒密码 它是一种代换密码.据说凯撒是率先使用加密函的古代将领之一,因此这种加密方法被称为凯撒密码. 凯撒密码作为一种最为古老的对称加密体制,在古罗马的时候都已经很流行,他的基本思想是:通过把字母移动一定的位数来实现加密和解密.明文中的所有字母都在字母表上向后(或向前)按照一个固定数目进行偏移后被替换成密文.例如,当偏移量是3的时候,所有的字母A将被替换成D,B变成E,以此类推X将变成A,Y变成B,Z变成C.由此可见,位数就是凯撒密码加密和解密的密钥. 概念 在密码学中,

信息安全加密技术--凯撒密码

凯撒密码技术是一种代替技术,也称作凯撒移位,是最简单的加密方式之一,在密码学中,凯撒密码(或称恺撒加密.恺撒变换.变换加密)是一种最简单且最广为人知的加密技术.它是一种替换加密的技术.这个加密方法是以恺撒的名字命名的,当年恺撒曾用此方法与其将军们进行联系.恺撒密码通常被作为其他更复杂的加密方法中的一个步骤,例如维吉尼亚密码.恺撒密码还在现代的ROT13系统中被应用.但是和所有的利用字母表进行替换的加密技术一样,恺撒密码非常容易被破解,而且在实际应用中也无法保证通信安全. 1.加密公式: 密文=(

CTF---密码学入门第四题 困在栅栏里的凯撒

困在栅栏里的凯撒分值:10 来源: 北邮天枢战队 难度:易 参与人数:4531人 Get Flag:2124人 答题人数:2285人 解题通过率:93% 小白发现了一段很6的字符:NlEyQd{seft} 解题链接: 原题链接:http://www.shiyanbar.com/ctf/1867 [解题报告] 这是我入门密码学开始写的第四道题,这道题有点意思,题目标题为困在栅栏里的凯撒,说明肯定是要用到栅栏密码和凯撒密码,所以我们先对这段字符进行暴力破解,这时我们可以用到一个工具,叫CTFCrac