CTF-Crypto密码学

密码学

在这里插入图片描述

01密码学概述

在这里插入图片描述
在这里插入图片描述

密码学的发展

在这里插入图片描述

密码编码学

在这里插入图片描述
编码与加密?
编码为一类映射的关系(一一映射)
加密为一类算法(有算法(公开的),密钥(不可泄漏))
明文 ------> 密文
plain text cipher text

对称密码和不对称密码算法

在这里插入图片描述
对称密码算法优点:加密解密速度快
缺点:密钥不能泄漏(除了AES,因为密钥很长,目前无机器能够在短时间内破解)
对称密码算法常考DES

非对称密码算法(Asymetric cipher):
加密密钥和解密密钥不同,从一个很难退出另一个。又叫共要密码算法(Public-key cipher)。加密密钥可以公开,称为公开密钥(public key),简称公钥;解密密钥必须保密,称为私人密钥(private key),简称私钥。
如RSA,ECC,ElGamal

非对称密码算法优点:速度慢(比对称慢1000倍)
非对称密码算法常考RSA

在这里插入图片描述

摘要算法:

在这里插入图片描述
数据摘要算法为密码学算法里非常重要的一个分支,它通过对所有数据提取指纹信息以实现数据签名,数据完整性校验等功能,由于其不可逆性,有时候会被用作敏感信息的加密。数据摘要算法也被称为哈希(Hash)算法,散列算法,常见的摘要算法有MD5和SHA。

在互联网上进行大文件传输时,都要得利用MD5算法产生一个与文件匹配的,存储MD5值的文本文件(后缀名为.md5或.md5sum),这样接收者在接收到文件后,就可以利用与SFV类同的方法来检查文件完整性,绝大多数大型软件公司或者开源组织都以这类方式来校验数据完整性,而且部分操作系统也利用此算法来对用户密码进行加密,另外,它也是目前计算机犯罪里数据取证的最常用算法。

SHA里SHA1的应用较为广泛,主要应用于CA和数字证书里,另外在互联网里流行的BT软件里,也是利用SHA1来进行文件校验的,由于SHA系列算法的数据摘要长度较长,因此其运算速度与MD5相比,也相对较慢。
在这里插入图片描述

编码

在这里插入图片描述

02 常见编码

ASCII编码

在这里插入图片描述
ASCII码利用指定的7位或8位二进制组合来表示128或255类可能的字符。标准ASCII码也叫基础ASCII码,利用7位二进制数(剩下的1位二进制为0)来表示所有的大写和小写字母,数字0到9,标点符号,以及在英语里利用的特殊控制字符。
在这里插入图片描述
在这里插入图片描述
在python控制台里ord(‘a’)

CTF竞赛一个强功能的解密加密网站:http://ctf.ssleye.com

Base64编码:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
第一行:3乘8=24
第二: 4乘6=24
第三: 4乘8=32
base64也有自己的base64表
base64解密可能会出错,可在后面加上一个或两个“=”

在这里插入图片描述
在这里插入图片描述
此题注意:base为base64,但base的表妹为base32
若以base64编码来解密,在密文后面去掉一个“=”,两个“=”,三个“=”甚至“=”都去掉会发现找不到flag,但以base32编码来解密可成。

URL编码:

在这里插入图片描述
特点:密文里有多个%字符

Unicode编码:

Unicode码扩展自ASCII字元集。在严格的ASCII里,以7位元表示一个字元,或电脑普遍采用的每字元有8位元宽;而Unicode采用全16位元字元集。这令Unicode能够表示所有语言里可能用于电脑通讯的字元和其他字符。
特点:密文里有多个\uxxx

JS混淆(并不是一个编码方式):

在这里插入图片描述
此函数可以计算字符串,并执行其里的JS代码
在这里插入图片描述
例题1:
在这里插入图片描述
在浏览器按F12,点击控制台,在>>处输入密文,会车即可,得到“alert(“key”)”

例题2:
在这里插入图片描述
会车会弹出一个弹窗,
在这里插入图片描述
XSS并不是flag,flag即为alert(‘XSS’)

JSfuck:

在这里插入图片描述
在这里插入图片描述
若出现没有[],而有{},就注意可能需要将{}改为[].

在这里插入图片描述

03 常见加密算法

在这里插入图片描述

换位密码-栅栏密码

在这里插入图片描述
第一组:分组里的第一个字母
第二组:分组里的第二个字母

例题:
在这里插入图片描述
提示3组分别为yawce oreo@ uelm@
y a w c e
yo ar we co e@
you are wel com e@@
即为youarewelcome@@

换位加密-曲路密码

在这里插入图片描述
5行7列即为每5行就有一个空格

路径分为先上后下和先下后上
例题:
在这里插入图片描述
此题四个字母就有一个空格
首先先看先上后下:
c o n g r a t
u l a t i o n
t o y o u g e
t t h e k e y
从左向右看:congratulation to you get the key

一般夺旗看key,flag,CTF,CTF{},flag{}等关键
在这里插入图片描述

替换加密-凯撒密码

在这里插入图片描述

替换加密-摩斯电码

在这里插入图片描述

例题:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
打开密码工具的离线工具,点击摩斯电码,在密文框里加入密文,在上方的“点”框加入*,右边加入-,字母间隔加入空格即可点击解密,得到give you the key

替换加密-ROT5/13/18/47

在这里插入图片描述

替换加密-维吉尼亚密码

在这里插入图片描述
维吉尼亚解密网站:https://www.guballa.de/vigenere-solver

在这里插入图片描述

替换加密-培根密码

在这里插入图片描述

替换加密-键盘密码

在这里插入图片描述

04 摘要算法

在这里插入图片描述

  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值