本文介绍了变形密码学的概念,它允许对同一密文进行不同的解密,使得在“独裁者”审查的环境下,可以向审查者显示无害信息,同时秘密接收者可以解密出真实信息。文章通过ElGamal算法演示了变形密码学的实现,并提供了相应的Python代码示例。
本文讨论了后量子密码学(PQC)的两种主要数字签名方法:基于哈希的签名(SPHINCS+)和基于格的签名(ML-DSA)。SPHINCS+通过Lamport签名和WOTS+方法减少公钥和私钥的大小,但签名较大。ML-DSA使用Fiat-Shamir方法将Schnorr身份证明转换为非交互式零知识证明,避免了陷门。
本文介绍了针对RSA加密算法的Fermat攻击方法,该方法利用了当RSA使用的两个质数因子非常接近时,模数可以被容易地分解的漏洞。文章给出了Fermat分解算法的Python代码示例,并提供了一个CTF挑战,要求读者利用该方法解密RSA加密的消息,找出对应的英文城市。
本文介绍了OpenSSL 3.5.0中引入的对量子安全密码算法的支持,包括ML-KEM (FIPS 203), ML-DSA (FIPS 204) 和 SLH-DSA (FIPS 205)。文章展示了如何在Windows环境下编译OpenSSL 3.5,并演示了如何使用这些新的密码算法生成密钥对、签名和验证消息,以及进行了性能基准测试。
本文介绍了属性加密(ABE)在电信行业后量子密码学中的应用,重点介绍了基于属性的加密(CP-ABE)的密文策略以及其在密钥封装机制(KEMs)中的应用,通过属性策略控制密钥的访问,以增强安全性。文章还提供了一个CP-ABE的示例代码和在线演示。
本文探讨了RSA加密中的消息隐藏现象,即某些明文消息在加密后仍然等于其密文。文章解释了RSA加密的原理,并通过Python代码演示了如何找到这些未隐藏的消息,以及如何计算未隐藏消息的数量和百分比,最后,文章还提供了一个在线工具,供读者尝试。
文章探讨了宇宙中电子数量与不同位数的质数数量的对比,指出质数的数量远大于电子的数量,特别是在密码学中使用的2048位质数。文章介绍了评估质数数量的方法,包括使用Sieve of Eratosthenes算法和Riemann R函数,并提供了Python和PowerShell代码示例来生成和测试质数,强调了质数在公钥加密中的重要性以及生成大质数的必要性。
本文介绍了Rabin公钥加密方法,一种在理论上可证明安全的加密方案。文章阐述了Rabin加密的基本原理,包括密钥生成、加密和解密过程,并通过一个简单的例子和Python代码演示了其用法。Rabin加密的安全性基于大数分解的难度,但其解密结果存在多个可能性,需要一些方法来确定正确的原始消息。
HP发布了首款量子安全的打印机,使用了基于哈希的数字签名方法,如LMS和W-OTS。LMS使用Winternitz一次性签名方案,并利用Merkle树来验证私钥。文章还提供了使用Bouncy Castle库在C中实现LMS的示例代码,并展示了不同参数设置下的密钥和签名长度。
本文讨论了移动通信网络、RFID和TETRA的加密弱点,特别关注了GPRS/GSM网络中使用的A5/1、A5/3(KASUMI)加密算法,SPECK在RFID通信中的应用以及TETRA标准中的TEA3加密算法。研究表明,由于GPU计算能力的增强,这些加密算法容易受到暴力破解攻击,强调了增加密钥长度至128位以上的重要性,并提出了在数据层进行加密的建议。