相关密码学的知识点:
https://baijiahao.baidu.com/s?id=1721920305612879489&wfr=spider&for=pc
crypto
凯撒密码
凯撒密码称为凯撒加密,凯撒变换,变换加密,是一种最简单且为广为人知的加密技术。它就是一种替换加密。在明文中使用字母进行前移(或后退)的方法进行替换对应的字母,明文中的所有字母都在字母表上向后(或向前)按照一个固定数目进行偏移后被替换成密文。例如,当偏移量是3的时候,所有的字母A将被替换成D,B变成E,以此类推。
恺撒密码的加密、解密方法还能够通过同余的数学方法进行计算。首先将字母用数字代替,A=0,B=1,...,Z=25。此时偏移量为n的加密方法即为:
解密就是:
恺撒密码的替换方法是通过排列明文和密文字母表,密文字母表示通过将明文字母表向左或向右移动一个固定数目的位置。例如,当偏移量是左移3的时候(解密时的密钥就是3):
明文字母表:ABCDEFGHIJKLMNOPQRSTUVWXYZ ;
密文字母表:DEFGHIJKLMNOPQRSTUVWXYZABC。
使用时,加密者查找明文字母表中需要加密的消息中的每一个字母所在位置,并且写下密文字母表中对应的字母。需要解密的人则根据事先已知的密钥反过来操作,得到原来的明文。例如:
明文:THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG ;
密文:WKH TXLFN EURZQ IRA MXPSV RYHU WKH ODCB GRJ。
Base 系列编码
Base64 是我们最常见的编码,除此之外,其实还有 Base16、Base32、Base58、Base85、Base100 等,他们之间最明显的区别就是使用了不同数量的可打印字符对任意字节数据进行编码,比如 Base64 使用了64个可打印字符(A-Z、a-z、0-9、+、/),Base16 使用了16个可打印字符(A-F、0-9),这里主要讲怎么快速识别,其具体原理可自行百度,Base 系列主要特征如下:
Base16:结尾没有等号,数字要多于字母;
Base32:字母要多于数字,明文数量超过10个,结尾可能会有很多等号;
Base58:结尾没有等号,字母要多于数字;
Base64:一般情况下结尾都会有1个或者2个等号,明文很少的时候可能没有;
Base85:等号一般出现在字符串中间,含有一些奇怪的字符;
Base100:密文由 Emoji 表情组成。
第一题
用WinRAR打开后发现是这样的文件
然后我们先进行base32的解密,得到新的一串密文
新的密文可知是base64编码的,于是我们将新的密文进行base64解码
得到flag。
第二题
用记事本打开可知该密文是由社会主义核心价值观加密
解密后可知新的密文由百家姓加密而成
得到flag
第三题
在cmd界面下安装gmpy2后可用python脚本进行计算
得到flag。
第四题
a-f,可知偏移量为5,可用python脚本编写程序进行解密
得到flag