免费下载
网站简介

找论文变得更简单!

帮找论文

当前位置:

重点论文网    理科论文    信息与计算科学论文    大数加减法演示器
创建时间:07-12

大数加减法演示器

研究目标、内容和拟解决的关键问题(根据任务要求进一步具体化)
(1) 正确的在计算机中表示大数,用指针对两个大数的大小进行比较,并能运用加减法运算计算出大数的正确结果。
(2) 用C++程序语言设计一个运算器,它能通过窗口界面使得使用者能够正确计算大整数的加减法以及自增自减运算。
(3) 为今后《现代密码学》课程的实践教学的资源(算术和数论函数库)建立提供最基本的算术运算函数。
       
特色与创新之处
(1) 能界面中较好的演示大数的加减法运算,能为算术和数论函数库的建立提供最基本的算术运算函数。
(2) 用C语言较好的表示了大数加减时的运算过程,以及大数在计算机中的存储方式和运算方式。
(3) 运用指针和宏定义清楚准确的表示大数和大数的加减法运算。

目  录

摘要    1
引言    3
1 C语言和MFC的简单介绍    4
1.1 C语言的发展和特点    4
1.2 MFC的概述    4
2 大数运算的必要性    7
2.1 大数在RSA中的应用    7
2.2 大数在椭圆曲线密码中的应用    9
3 大数在计算机中的表示    11
4 大数加减法的C语言实现    16
4.1 数的m进制表示    16
4.2 同余类    18
4.3 加法的C实现    18
4.4 自增的C实现    22
4.5 减法的C实现    23
4.6 自减的C实现    26
5 实现加减法的界面操作    28
6 总结    32
7 参考文献    33
8 谢辞    34
附录    35

密码技术可以回溯到远古,它大致经历了特殊符号、手工密码、机械密码、电子密码等阶段。密码学的发展可以分为三个阶段:古代加密方法、古典密码和近代密码。现在普遍认为,20世纪70年代公钥密码出现之后,密码学才从幕后走到前台,并发展成为一门生机勃勃的学科。密码技术不仅涉及国家安全,而且也与我们的日常生活息息相关。
目前,由于计算机网络技术的迅速发展,由计算机网络通信而带来的网络安全问题引起了人们的普遍关注,作为网络安全基础理论之一的密码学引起了人们的极大关注,吸引着越来越多的研究人员投入到密码领域的研究当中;同时,由于现实生活当中的实际需要以及计算技术的发展变化,密码学的每一个研究领域都出现了许多新的课题、新的方向。例如:在分组密码领域,由于DES已经无法满足高保密性的要求,美国于1997年1月开始征集新一代数据加密标准(即高级数据加密标准,Advanced Encryption Standard,AES)。2000年10月2,正式宣布选择比利时密码学家所开发的Rijndael算法成为AES的最终算法。AES征集活动是国际密码学界又掀起了一次分组密码研究高潮。另外,由于嵌入式系统的发展、智能卡的应用,这些设备上所使用的密码算法由于系统资源本身的限制,要求密码算法可以以较小的资源快速实现,这样,公开密钥密码的快速实现成为了一个新的研究热点。最后,随着其他技术的发展,一些具有潜在密码应用价值的技术也逐渐得到了密码学家的重视,出现了一些新的密码技术。
本文讲述现代密码学中所需大数运算的理论和部分核心运算及其实现。文中用C语言和C++语言紧密结合使得大数的运算充分得以体现。
现代密码学的一个重要特征就是它与数学(特别是数论)及计算机科学的紧密结合。现代密码学可以依赖数学和计算机科学的有效合作。数学为算法的应用和分析建立了基础。没有数学,特别是没有数论,公钥密码学是不可能产生的。基于数学所提供的成果,算法发挥了重要的作用。当密码算法被实现时,需要与有可能处理大数的方法打交道。算法应该不仅在理论上能够工作,而且必须能够在现实中实现。算法的实现是计算机科学所研究的问题。
密码学以整数算术及其在计算机程序中的应用为中心,与计算机求解的大问题相比,这也是个明显的大问题。只要我们把数的范围限制在能用程序语言的标准类型表示的范围,算术是相当简单的事情,熟悉的算术运算使得他们的传统表现在程序中伴随着常见符号+、-、*、/ 等。但如果所求的结果超过能用16和32比特表示的范围,事情的意外性就难以预料了。对这类数,即使是基本的算术运算也无从利用,不投入很大的努力首先解决以前根本不认为是问题的问题,就不能再前进一步。研究过数论问题及其应用,特别是那些与现代密码学主题有关的人,无论是专家还是业余爱好者,都知晓这种情况。我们在学校所学的算术计算的技巧需要重新引起重视,并且有时要经历非常复杂的过程。
本文从大数的C语言表示开始,详细地描述了算术运算,基础数论算法及其大数的加减法运算的实现。

最新论文

网站导航

热门论文