【密码学】一文读懂基于离散对数的随机数生成器

简介: 是的,我又来水文章了,本文带着大家来了解一个新的随机数生成器,基于离散对数的随机数生成器,之前已经带着大家了解过了两个类似的随机数生成器了,其中一个是BBS随机数生成器,另一个是基于RSA的随机数生成器,有兴趣的读者可以自行回顾一下之前的文章哈。

【密码学】一文读懂基于离散对数的随机数生成器


NATD]46H@T]NNBF07F_`10G.jpg

是的,我又来水文章了,本文带着大家来了解一个新的随机数生成器,基于离散对数的随机数生成器,之前已经带着大家了解过了两个类似的随机数生成器了,其中一个是BBS随机数生成器,另一个是基于RSA的随机数生成器,有兴趣的读者可以自行回顾一下之前的文章哈。


生成器结构

  • 选取一个k比特的素数p, 是p的一个本原元
  • 选择一个种子 是 当中的任意元素
  • 根据如下的规则生成随机序列

image.png

  • 最终生成的随机bit的结果规则如下

image.png

其中

image.png

$QRIC9)CJYP39OKA5DQ62WG.png

image.gifDLP随机数生成器


番外篇

因为这个算法比较简单,因此呢,这次我们也不写代码了,来玩一个小程序(这不是一个广告, 逃~~)。

image.gif

F7RSW)~X8L)532@7HZG{%@I.png

点进去之后,就可以输入对应的参数以及生成的随机数个数来玩一下基于离散对数的随机数生成器了。

QEH0VDZ1A]21L4ZM}@2`8DM.jpg


好了,到这里本文其实就结束了。

相关文章
|
SQL NoSQL Oracle
响应式关系数据库处理R2DBC
响应式关系数据库处理R2DBC
|
IDE Linux 开发工具
【2026最新】Arduino IDE下载安装汉化保姆级教程(附安装包)
Arduino IDE是全球最易用的开源单片机开发环境,专为初学者设计,支持Win/macOS/Linux全平台,免费开源。界面简洁、汉化便捷,配套教程丰富,兼容海量硬件与项目,助电子爱好者、学生和创客快速实现创意原型。
5904 2
|
10月前
|
存储 Ubuntu Linux
Linux Mint与Ubuntu:它们之间的差异真的很大吗?
因为它们之间的差异主要体现在您与图形用户界面(GUI)的交互方式上,因此我建议您在做出决定之前先试用一下Ubuntu和Linux Mint。您可以使用虚拟机进行试用,或者甚至只需在浏览器中尝试一下。
|
消息中间件 设计模式 缓存
什么是动态代理?还有什么代理类型?
什么是动态代理?还有什么代理类型?
363 2
|
NoSQL 测试技术
内存程序崩溃
【10月更文挑战第13天】
575 62
|
安全 物联网 量子技术
量子加密技术
量子加密技术
1360 1
|
SQL 监控 安全
浅析Waf优缺点:硬件Waf、软件Waf、云Waf之总结
WAF(Web应用防火墙)是专为Web应用设计的安全防护产品,主要形态有硬件WAF、软件WAF和云WAF。硬件WAF易于部署,可承受高吞吐量,但价格昂贵;软件WAF廉价易用,功能丰富,但可能误杀和占用内存;云WAF部署简单,维护成本低,但存在被绕过和数据泄露的风险。RASP(运行时应用自我保护)是一种新兴技术,通过注入应用程序提供实时保护,误报率低,维护成本低,但部署复杂且可能影响性能。未来,WAF防护技术将结合机器学习、词法分析、行为识别和大数据关联分析,实现更精准的攻击识别和防护。
3328 2
|
安全 C#
【Azure 应用服务】在安全漏洞扫描中发现有泄露服务器IIS版本的情况,如何实现屏蔽服务版本号信息呢?
【Azure 应用服务】在安全漏洞扫描中发现有泄露服务器IIS版本的情况,如何实现屏蔽服务版本号信息呢?
749 1
|
存储 Java 程序员
"揭秘HashMap底层实现:从数组到链表,再到红黑树,掌握高效数据结构的秘密武器!"
【8月更文挑战第21天】HashMap是Java中重要的数据结构,采用数组+链表/红黑树实现,确保高效查询与更新。构造方法初始化数组,默认容量16,负载因子0.75触发扩容。`put`操作通过计算`hashCode`定位元素,利用链表或红黑树处理冲突。`get`和`remove`操作类似地定位并返回或移除元素。JDK 1.8优化了链表转红黑树机制,提升性能。理解这些原理能帮助我们更高效地应用HashMap。
322 0