古典密码学入门:从加密算法到历史密码解析
1. 密码库与加盐密码
在密码学中, bcrypt 库是一个常用的选择,不过它可能依赖于 pycparser 和 cffi 。此外,还有一些替代方案,如使用 hashlib 或 cryptography 库的 scrypt ,以及 Simplecrypt ,它提供了加密、解密和加盐的库。
以下是一个在 Python 中为哈希密码添加盐的示例代码:
import bcrypt
passwd = b's$cret12'
salt = bcrypt.gensalt()
hashed = bcrypt.hashpw(passwd, salt)
print(salt)
print(hashed)
每次运行代码时,盐值都会不同,因此生成的输出虽然类似但不会完全相同。尽管哈希密码每次相同,但添加的盐确保了哈希密码的安全性。
2. 数据混淆
在深入研究加密和解密数据的密码方案之前,我们先来了解一下数据混淆(Data Obfuscation,DO)技术。数据混淆是一种掩盖数据的技术,它通过打乱数据来防止未经授权的访问敏感信息。
数据混淆加密有两种类型:网络安全数据混淆和密码学数据混淆。网络安全数据混淆用于应对旨在躲避网络保护系统检测的有效负载攻击;密码学数据混淆则是在将数据传输到其他加密
超级会员免费看
订阅专栏 解锁全文
86

被折叠的 条评论
为什么被折叠?



