美文网首页
伪随机排列PRP和伪随机函数PRF

伪随机排列PRP和伪随机函数PRF

作者: 乐音X | 来源:发表于2020-12-07 15:57 被阅读0次

伪随机排列PRP一定是伪随机函数PRF吗?

以前遇到这个问题,在网上没有得到满意令人信服的解释

今天密码学老师带着期末复习,谈到了这个问题

老师的回答是:伪随机排列“不一定”是伪随机函数

首先,PRP是伪随机的,只是在排列之中看,它不能与真随机排列相区分

但是放在函数之中去,它就比较好分辨出来了:PRP是排列,是双射,一一对应;而PRF是函数,并不要求是双射。用“连线”去看,PRP是一一连线,PRF则可能比较杂乱,甚至有些没有连线,这就很好区分了。

因此,只要我们观察整个连接情况,就能区分PRP和真随机函数,也就是说PRP不是伪随机函数了

不过,从计算能力上看,我们只能进行多项式时间的查询,因此只要PRP的空间足够大,以致于我们不能探清它的拓扑结构,我们就区分不了了。此时,PRP是PRF

上面lin(n)是PRP输入,n是安全参数,lin(n)表示PRP输入长度是n的多项式

可能讲得不是很清楚,不过先就这样吧

相关文章

  • 伪随机排列PRP和伪随机函数PRF

    伪随机排列PRP一定是伪随机函数PRF吗? 以前遇到这个问题,在网上没有得到满意令人信服的解释 今天密码学老师带着...

  • PRF

    PRF定义 对比: PRG(伪随机生成器) F: K → X PRF(伪随机函数) F: K x X → Y...

  • 生成随机数

    两个C函数 rand()函数生成的随机数是伪随机数,所谓伪随机数,指的是程序每次运行,生成的随机数都是不变的,生成...

  • 皮相.实相.随机函数

    在加密算法里,找到高质量的伪随机函数是关键。伪随机函数(pseudo random function) 从一个种子...

  • 多线程环境下生成随机数

    生成伪随机数据 Java里有伪随机型和安全型两种随机数生成器。伪随机生成器根据特定公式将seed转换成新的伪随机数...

  • 密码学基础之伪随机数

    随机数分类 真随机数 伪随机数2.1 强伪随机数2.2 弱伪随机数 真随机数:其定义为随机样本不可重现。实际上只要...

  • Android Monkey笔记

    Monkey中伪随机和随机事件的区别?Monkey中伪随机其实就是事件的执行序列不是重复的,而随机事件就像是抛硬币...

  • 一文带你读懂生成随机数的方式?

    计算机的随机数都是由伪随机数。例如:rand() 函数可以用来产生随机数,但是这不是真正意义上的随机数,是一个伪随...

  • golang 生成随机数

    真随机和伪随机概念 先大概了解一下伪随机和真随机的概念。根据密码学原理,要想对一个“随机数”进行随机性检验有以下几...

  • Python random 模块详解

    我们可以先来了解下伪随机数和真随机数的概念。 伪随机数:伪随机数是用确定性的算法计算出来自[0,1]均匀分布的随机...

网友评论

      本文标题:伪随机排列PRP和伪随机函数PRF

      本文链接:https://www.haomeiwen.com/subject/vzjcvktx.html