常见密码学(积累与特征)坚持更新

一.md5(哈希算法)

md50-9a-f组成,长度为32,是一个32位长度的16进制字符串 

形如  a8db182db78ed452ba0882fb9554fca

flag{666666666666}

注:缺位则补,多余则除(符合规则)

**有时候真的不是,可以试试十六进制转换字符.

hill密码(希尔密码)_野原新之助-CSDN博客_hill密码(了解一下)

简单例题你以为是md5吗 – Bugku CTF 

二.猪圈密码

形如:

解出:haveagoodtimetoday

附对应密码表:

三.栅栏密码

栅栏密码:

就是把要加密的明文分成N个一组(栅栏数),

然后把每组的第1个字连起来,形成一段无规律的字符串。 

 不过栅栏密码本身长度不会太长,也就是组成栅栏的字母一般不会太多

形如:

解出得到  KEY{sad23jjdsa2}

这个比较简单,两层栅栏,分层,从上往下,自左向右读出:

KYsd3js2

E{a2jda}

四.ook!

 题目:ok – Bugku CTF

特征:Brainfuck 类型密码,密文由 Ook 和 三种标点 . ! ? 构成,不见得都得用上,有的是Ook,有的没有Ook只有标点。

形如:

**在线工具yyds,python早点学起!

五.Brainfuck

特征: + – [ ] { } . < > 这些符号构成的密码

形如:

六.jsfuck

特征:[]+! () 经典组合,循环往复

形如:

解密来一波:CTF在线工具-在线JSfuck加密|在线JSfuck解密|JSfuck|JSfuck原理|JSfuck算法 (hiencode.com)

七.摩尔斯(Morse code)电码

形如:

附电码对应表: 

在线工具: 摩斯密码在线加密解密 – Bugku

八.凯撒密码

特征:英文字母排序往后延,有一定的偏移,密钥是 1 <= k <= 26,y = x + k;

如果偏移量是4,那么abc都往后偏移4,变成efg,以此类推。加密需往后数,解密需要往前数

形如:

 flag{hello_ctf}

米斯特安全解密有被快乐到,感谢网友,附上链接:CTFcrackTools的下载与安装_qq_40328109的博客-CSDN博客

九.Escape/unescape

特征:(1)Escape编码/加密,就是字符对应UTF-16 16进制表示方式前面加%u。

2)Unescape解码/解密 ,就是去掉"%u"后,将16进制字符还原后,由utf-16转码到自己目标字符

形如:

在线工具:在线Escape加密解密工具-在线Escape字符串编码解码工具 (jsons.cn)

十.base家族

Base64:

*特征:(1)在base64中的可打印字符包括字母A-Z、a-z、数字0-9,+ / =  

  1. 永远是4的倍数,不足四的用=补齐

*形如:

如要编码的字节数不能被3整除,最后会多出1个或2个字节,那么可以使用下面的方法进行处理:先使用0字节值在末尾补足,使其能够被3整除,然后再进行base64的编码。

在编码后的base64文本后加上一个或两个“=”号,代表补足的字节数。也就是说,当最后剩余一个八位字节(一个byte)时,最后6位的base64字节块有四位是0值,最后附加上两个等号;如果最后剩余两个八位字节(2byte)时,最后一个6位的base字节块有两位是0值,最后附加一个等号。

*附上网上base64索引表:

Base32:

*特征:用32个可打印字符(字母A-Z和数字2-7)对任意字节数据进行编码的方案,编码后的字符串不用区分大小写并排除了容易混淆的字符

*形如:

*附对照表: 

*待补充

Base16:

*特征:用16个ASCII可打印字符(数字0-9和字母A-F),对任意字节数据进行编码。先获取输入字符串每个字节的二进制值(不足8比特在高位补0),然后将其串联进来,再按照4比特一组进行切分,将每组二进制数分别转换成十进制(十六进制转ASCII)

*形如:

*区别:Base16编码是一个标准的十六进制字符串(注意是字符串而不是数值),更易被人类和计算机使用,因为它并不包含任何控制字符,以及Base64和Base32中的“=”符号。

Base58:

*特征:与base64相似(上方),但无“0,O,i,I,+,/对应符号

*形如:

Base85:

*待补充

Base91:

*特征:需要91个字符来表示ASCII编码的二进制数据。 从94个可打印ASCII字符(0x21-0x7E)中,以下三个字符被省略以构建basE91字母:-(破折号,0x2D)  \(反斜杠,0x5C)  '(撇号,0x27) 

*形如:

Base91编码/解码 – 一个工具箱 – 好用的在线工具都在这里! (atoolbox.net)

十一.Unicode(万国码)

特征:每一个字符都用一个5位字符编码表示,并用 \ 分割, 其中&#&#x\u 都可以用来表示一串 unicode 编码。

形如:

十二.Urlencode

Url编码通常也被称为百分号编码,是因为它的编码方式非常简单,使用%百分号加上两位的字符——0123456789ABCDEF——代表一个字节的十六进制形式。 Url编码默认使用的字符集是US-ASCII。 例如a在US-ASCII码中对应的字节是0x61,那么Url编码之后得到的就是%61

形如:

  

UrlEncode编码和UrlDecode解码-在线URL编码解码工具

十三.核心价值观编码

特征:社会主义核心价值观这些文字

例子就不举了。

十四.佛语论禅

特征:不认识的字(笔画特别多),有”梵,哆,佛曰,施主“等字眼

形如:

十五.当铺密码

特征:简单汉字组成,当前汉字有多少笔画凸出来,就转化乘数字几

形如:

十六.希尔(hill)密码

希尔密码是矩阵乘法密码,运用基本矩阵论原理的替换密码。每个字母当作26进制数字:A=0, B=1, C=2… 一串字母当成n维向量,
  跟一个n×n的密钥矩阵相乘,再将得出的结果模26

原理:将d个明文字母通过线性变换将它们转换为d个密文字母。解密只要作一次逆变换就可以了,密钥就是变换矩阵本身。

附上,了解一下

hill密码(希尔密码)_野原新之助-CSDN博客_hill密码

加深对希尔密码的理解,题目:小山丘的秘密 – Bugku CTF

**附上我的新手wp(水平有限,全是大白话):

bugku ctf 小山丘的秘密_LJW_wenjingli7的博客-CSDN博客

在线工具也要密钥(一般题目给提示),才能解开。

希尔密码加密/解密 – 一个工具箱 – 好用的在线工具都在这里! (atoolbox.net)

十七.培根(bacon)密码

特征:全由a(A)和b(B)组成,一种替换密码,根据所给表一一对应转换即可加密解密。

它的特殊之处在于:可以通过不明显的特征来隐藏密码信息,比如大小写、正斜体等,只要两个不同的属性,密码即可隐藏。

例如:

 好了,给你提示这是培根密码,D和C循环往复,强行培根c–>a,d–>b.解密!

附上网友的密码对应表(注意大小写):

在线工具|培根密码加解密 (bugku.com)

  • SHA 家族函数的比较
  1. sha1(安全散列算法1)

特性:不可以从消息摘要中复原信息;两个不同的消息不会产生同样的消息摘要。

是一种密码散列函数,SHA-1可以生成一个被称为消息摘要的160(20字节)散列值和MD5类

特征:散列值通常的呈现形式为40个十六进制数。

附上大佬详解:

  SHA1算法实现及详解_随心散人专栏-CSDN博客_sha1算法详细图解

​ 举例:

明文:hello,world.123456

sha1(hello,world.123456)= 0179303b8f08fbc3d16cd23a4be5828790e12375

法及其变体

输出长度
(位)

内部状态大小
(位)

块大小
(位)

最大消息长度
(位)

循环

操作

安全性
(位)

示例的性能 MiB/s)

MD5
(作为参考)

128

128
(4 × 32)

512

264 − 1

64

按位与, 按位异或, 循环移位, 填充(求模 232), 按位或

<18
(已发现碰撞)

335

SHA-0

160

160
(5 × 32)

512

264 − 1

80

按位与, 按位异或, 循环移位, 填充(求模 232),按位或

<34
(已发现碰撞)

SHA-1

160

160
(5 × 32)

512

264 − 1

80

<63
(已发现碰撞)

192

SHA-2

SHA-224
SHA-256

224
256

256
(8 × 32)

512

264 − 1

64

按位与, 按位异或, 循环移位, 填充(求模 232), 按位或, 移位


112/128

139

SHA-384
SHA-512
SHA-512/224
SHA-512/256

384
512
224
256

512
(8 × 64)

1024

2128 − 1

80

按位与, 按位异或, 循环移位, 填充(求模 264), 按位或, 移位


192/256/112/128

154

SHA-3

SHA3-224
SHA3-256
SHA3-384
SHA3-512

224
256
384
512

1600
(5 × 5 × 64)

1152
1088
832
576

无限制

24

按位与, 按位异或, 循环移位, 取反


112/128/192/256

SHAKE128
SHAKE256

d (可变长)
d (可变长)

1344
1088


min (d/2, 128)
min (d/2, 256)

十九.Bubble编码                       

特征:5个字符串-5个字符串(循环往复),形象地气泡一个接着一个

形如

很长的话可以进行多次解密,爆出flag

二十.rsa算法

二十一.柱形密码 

了解请看,柱形密码:密码学(编自crimaster) – 知乎 (zhihu.com)

突然翻到,碰到题目要记得回来补

CTF在线工具-在线简单换位密码加密|在线简单换位解密|简单换位密码算法|Simple Substitution Cipher (hiencode.com)

Published by

风君子

独自遨游何稽首 揭天掀地慰生平

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注