[摘要]大数运算不仅仅运用在密码学中,还运用在一些物理学研究、生物学,化学等科目中。
大数运算,意味着参加的值和计算结果通常是以上百位数,上千位数以及更大长度之间的整数
运算。例如大家所熟知圆周率 的值,在一般的数值计算中用到圆周率的不须要多大的精度,
但在计算一些星球或是星系上的体积面积时便显的误差很大了,这就要求 值计算的精度达到
几百万位甚至更高,才能缩小误差。人工计算是远远不行了,而且本身误差也无法估计。只有
在计算机中用大数运算求 值了。又如,考古学家计算石头内的碳元素衰变来考证地球形成的
时间,更是将计算的结果精确到了百年以内。所以说大数的运算是涉及领域多,应用范广,与
我们生活息息关。在此,我采用一个在 语言下实现计算大数运算的一个程序为例,讲解包括
了大数的加法,减法,乘法和除法及求幂运算的算法及代码。
[关键词]大数计算 网络安全 密码学
随着计算机网络技术的发展和因特网的广泛普及,网络安全事故逐年增加,
黑客的攻击已经和病毒并列成为对信息安全影响最严重的两大危害。其很大程
度上是被黑客破解了用户的计算机名及登陆密码及资料的加密较差,而使得黑
客来对网民的资料如同自己般的随意更改和破坏。而安全的密码和账号成为了
网民的安全之本,怎么才能提高安全问题成为的人们和社会关注的问题。而加
密大部又是以大素数的计算为基础的,如非对称密码体制 的安全性依赖于
对大数进行因数分解的耗时性。一个二进制数 的因数分解所需的机器周期大
约是 。若机器周期为 , 为二进制数的位数,
分解 所需时间如下表所示:
位数
时间
秒
天
年
兆
年
年
年
实际应用中,、! 的选择都在 数字以上,这样每个明文块的二进
制位数可达 " 比特,即 # 个字节。而 $% 只有 # 个字符。一般认为,对于
- 1
- 2
前往页