随机数很值钱

本来不想写这篇文章,但是今天有人问起我这个问题,随意的回答了一下,觉得不妥,因此在这里仔细的回答一下。有恰好看到某人的文章,知道他看了其他人的博客,所以讨论了一通。而很可能,这个朋友也是看了某人的博客,所以才问我这个问题。那么好现在我正式的回答一下。

其实这个问题,应该是很简单和明确的,而且是应该在最初的 入门阶段就已经掌握的。但是也往往是被人忽视的,因为只有很少数的应用才真正需要明白这个问题。

我先说现在实际的情况。如果我们想要一个随机数,真正的办法是求助随机数机。我想大家很多人都没听说过这些东西。其实这个东西昂贵而复杂,用途也不广泛。但是凡是用到的对方,都是关键性的。并且这个东西一般还没人会卖,因为事关国家机密。因为它可以真正的产生随机数,真真正正的随机数。

那我们平常的应用中,随机数函数又是什么呢?其实这个随机数函数,并不随机。他只不过会根据机器的某种状态,随机的在一个数列里面出趣一个数。然后,所有的数都是跟在这个数后面的数列里面的数。所以才有了,去取一个数,然后还要保留一个种子的问题。也就是如果我们真的有一个真正能随机活得随机数的函数,这个所谓的随机数函数就根本不会存在了。恰恰因为它仅仅是一个伪的,而不是真的,所以才造成今天的状况。而本身,就随机数函数来说,根本上就应该是无状态的。现在有状态,恰恰不是因为他是纯粹的,而是因为他不纯粹,它作不到纯粹,或者是做到纯粹的代价太大了。

当然有些人做了进一步的工作,把这个函数作了修改。比如更这个随机数,跟时间和过程挂钩。这样看起来会获得一个比较随机的数。但是因为是跟时间等挂钩,所以还是依赖状态。从本质上来说,还是不纯粹的。

所以随机数机才会很昂贵,很重要。一个典型应用,就是用在密码加密和解密上;进一步还可以用在密码本编写上。而即便是随机数机也不是真正的随机的,也还是可以通过大量数据的统计,来发现其变化的规律上。所以密码机的保密系数,虽然很高,但是还是存在被破解的可能。因此必须在一定时间内,更好随机数的算法。因此密码机虽然加密程度比较高,但是真正关键的时候,还是应该依靠密码本。可以说,只要做到密码本完全的独一性,才能保证密码传递的可靠。而又因为,要发明和使用一套密码机制,代价是非常大的。所以根本就不能保证密码本只被用在一个地方。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值