一.换位加密
换位加密是一种CTF中常见的加密方法。原理是将明文中的字符按照一定的规律重新排列,从而得到密文。
换的实现方法有很多种,其中最简单的一种是按照固定的规则将明文中的字符重新排列。例如,可以将明文中的每个字符按照其在字符串中的位置排序,然后将排列后的字符组成新的字符串,就得到了密文。
例:hello word→ drow olleh
1.栅栏密码(对符号不会识别)
把将要传递的信息中的字母交替排成上下两行,注意加密组数
再将下面一行字母排在上面一行的后边,从而形成一段密码 将一段被加密的明文划分成N个组,然后取每个组的第1个字符,根据情况排列成一段话,特点相对简单,字母不会太多。 第一步:把明文一上一下分成N个一栏 明文: HAPPY NEW YEAR 分栏:HPYEYA APNWER 第二步:把每栏的字母连起来,形成一段看起来毫无意义的密文 密文:HPYEYAAPNWER
2.曲路密码
例
二.替换加密
替换加密是一种基于替换规则的加密方法,原理是将明文中的每个字符替换成密文中的另一个字符。例如将明文中的字母“A”替换成密文中的字母“D”。
替换规则可以是任意的,只要保证每个字符都有唯一的替换字符即可。在CTF比赛中,替换加密通常被用作一种简单的加密手段,用于隐藏密码或者加密重要信息。
1.凯撒密码
凯撒密码也称为凯撒加密、凯撒变换、变换加密,是一种最简单且最广为人知的加密技术。它是种替换加密的技术,明文中的所有字母都在字母表上向后(或向前)按照一个固定数目进行偏移后被替换成密文。
例如,当偏移量是3的时候,所有的字母A将被替换成D,B变成E,以此类推。凯撒密码加密/解密 - 一个工具箱 - 好用的在线工具都在这里!
例题
PCAPNG文件,拖进wireshark里分析
凯达密码 %7B%7D是URL编码表示{}
解码即可获得flag(偏移量一共26)
2.ROT5/13/18/47
ROT5:只对数字0-9进行编码,用当前数字往前数的第5个数字替换当前数字。
ROT13:只对字母进行编码,用当前字母往前数的第13个字母替换当前字母。
ROT18:ROT5和ROT13组合在一起,为了好称呼,将其命名为ROT18。
ROT47:对数字、字母、常用符号进行编码,用当前字符ASCII值往前数的第47位对应字符替换兰前字符,ROT47编码的字符其ASCII值范围是33-126。ROT47解码计算器 - 计算专家
3.培根密码
培根密码加密时,明文中的每个字母都会转换成一组五个英文字母,加密者需使用两种不同字体分别代表A和B。培根密码实际上就是一种替换密码,根据所给表一一对应转换即可加密解密。它的特殊之处在于:可以通过不明显的特征来隐藏密码信息,比如大小写、正斜体等,只要两个不同的属性,密码即可隐藏CTF在线工具-在线培根密码加密|在线培根密码解密|培根密码算法|Baconian Cipher
4.波利比奥斯方阵密码
霍城波利比奥斯棋盘密码是利用波利比奥斯方阵进行。加密的秘密方式简单的来说就是把字母排列好,用坐标行列的形式表达出来,字母是密文,明文便是字母的坐标。
例21,31,11,22 flag或bcag
两种解题方式:可以先看行再看列
可以先看列在看行