本文介绍了NIST即将定义的第三个后量子密码数字签名标准FN-DSA,它基于FALCON方法。FALCON的性能比Dilithium慢,但密钥大小和密文更小。文章对比了Falcon与Dilithium、RSA等算法在密钥大小、签名大小和性能上的差异,并提供了NTRU算法的简单示例和C代码实现。
文章讨论了后量子密码学中密钥封装机制(KEM)的选择,重点关注了NIST后量子密码竞赛的进展。
本文介绍了生日悖论以及它在密码学中的应用,特别是在哈希碰撞方面的应用。通过生日悖论,可以理解攻击者如何利用较少的计算量找到哈希碰撞,并探讨了MD5、SHA-1等哈希算法的安全性问题,以及量子计算对密码学的影响。最后,建议使用更长的密钥和哈希值,如256位的AES和SHA-256,以提高安全性。
本文介绍了Rabin函数,一种基于大素数分解难度的单向置换函数,并展示了如何利用其后门函数(已知素数因子)来逆转伪随机序列。文章提供Python代码示例,演示了在已知素数p和q的情况下,如何从当前值计算出序列中的前一个x值,揭示了其背后的数学原理。
文章讨论了量子计算的未来及其对加密技术的影响。量子计算机的发展将带来巨大的计算能力提升,但也对现有公钥加密方法构成威胁。NIST 正在开发新的加密标准来应对这一风险。展示了一种将经典图像转换为量子图像并通过量子算法进行加密和解密的方法,预示着量子计算在信息安全领域有着广阔的应用前景。
文章讨论了苹果公司在英国政府的压力下,放弃为英国用户提供高级数据保护(Advanced Data Protection)服务,该服务旨在通过加密保护用户存储在iCloud上的数据,使其无法被苹果公司访问。文章回顾了密码学的发展历程,强调了端到端加密的重要性,并表达了对苹果公司在隐私保护方面退步的失望,以及对未来更灵活的公司提供增强安全性和隐私保护的期望。
本文介绍了密码哈希算法Argon2,它是一种内存密集型的哈希算法,旨在抵抗GPU破解。文章解释了Argon2的原理、不同变体(Argon2d、Argon2i、Argon2id)及其参数,并提供了一个使用JavaScript实现的Argon2示例,展示了如何在浏览器中使用Argon2进行密码哈希。
本文介绍了如何使用Cloudflare rolls-up CDN存储库提供的JavaScript集成crypto-js库来实现HMAC(Hash-based Message Authentication Code)消息认证码。通过简单的JavaScript代码集成,可以选择不同的哈希算法(如MD-5, SHA-1, SHA-256等)生成消息的签名。
本文是关于椭圆曲线密码学(ECC)的快速问答,涉及ECC的共同发明者、比特币和TLS使用的曲线等问题。同时比较了RSA和ECC在密钥对生成方面的性能差异,指出ECC的密钥对生成速度明显快于RSA。
本文介绍了在浏览器中使用Web Cryptography API生成随机数的方法。通过Crypto.getRandomValues()函数,可以生成伪随机数,该函数使用用户代理提供的最佳熵值进行初始化,并从平台指定的随机数源(如Linux系统的/dev/urandom)中获取种子。文章提供了一个示例代码,展示了如何生成指定数量的随机数,并将其以整数和十六进制格式显示出来。