2024.11.15——加解密算法、编码相关
本文最后更新于 182 天前,其中的信息可能已经有所发展或是发生改变。

0x01单向散列算法加密-MD5 SHA MAC CRC—-以MD5为例

单向散列算法,又称杂凑算法,就是把任意输入消息字符串变成固定长度的输出串的一种函数。对于任意一个输出,计算出杂凑值是很容易的,并且并不需要公钥秘钥、偏移量之类的,因此解密需求只要有密文即可

算法优点:方便存储,损耗低:对于性能的损耗微乎其微

缺点即存在暴力破解的可能性,最好通过加盐的方式提高安全性。

此外可能存在散列冲突。因为散列算法是一种压缩映射,散列表的空间小于输入值的空间,因此可能会造成不同的输入得到相同输出的情况。

MD5加密算法的原理与实现https://blog.csdn.net/forgotaboutgirl/article/details/7258109

0x02 对称加密算法 DES AES RC4

对称加密的优点是算法公开、计算量小、加密速度快,效率高

缺点是发送方与接收方必须商定好秘钥(双方秘钥一样),因此管理秘钥成为双方的负担。

解密需求:以AES DES为例 需要 密文 模式 秘钥(key) 偏移量 解密是利用逆向的算法解密,因此只要有上面的所有参数,是可以百分百解出来的

PHP中AES加密模块EncryptionTool是使用AES-128-ECB-Pkcs7,传入的key是1234567891234567 进行AES加密,最后以base64的编码输出ECB模式没有偏移量。

0x03非对称加密–RSA RSA2 PKCS

上课讲过的加密模式。

与对称加密相比,安全性更好。因为加解密需要不同的秘钥,公钥和私钥分别进行加、解密

缺点是加密和解密花费时间较长,速度慢,只适合少量的数据进行加密。

特点:添加公钥和私钥之后对明文进行加密,每次加密得到的密文不一样。

通过上课讲的原理,可以知道只需密文 和私钥,就可以解密

0x04识别特征

MD5

1.由数字0-9和字母a-f组成的字符串

2.固定16位或32位

Base64

1.大小写区分,数字字母组合,英文字母居多

2.一般在尾部会有“==”或“=”,明文很少的时候则没有

3.明文越长,越不会出现“/”在密文中(基本上不会有),而AES、DES会有斜杠在里面(以base64输出)

4.明文越长 编码越长

RSA

1.密文长度与秘钥的位长相同。

0x05拿到一个密文之后,没有源码,该怎么入手去解密?

1 观察密文特征

2 听天由命

我草你妈 再也不水群了 明天好好学

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇