基于MatlabGUI的RSA密码演示系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
62计算机与现代化2009年第7期
“string”属性分别设为“系统参数的生成”、“P(保密)”、“q(保密)”、“n(公开)”、“e(公钥)”、“d(私钥)”、“明文”、“密文”、“解密后的明义”;建立八个编辑框(EditBox),分别用于显示生成的系统参数P、q、n、e、d值和明文、密文、解密后的明文,它们的“Tag”属性分别设为“P”、“q”、“n”、“e”、“d”、“plain—text”、“eipertext”、“rplaintext”。
后面三个编辑框的“Max”属性设置为“2”;建立一个边框(Frame),将系统参数P、q、n、e、d的相关信息圈在一块。
(3)双击GUI设计窗口中的某个空白位置,弹出figure的有关属性,设置“Name”属性为“基于Matlab/GUI的RSA密码演示系统2009年5月313制”。
RSA密码系统的主界面外观如图l所示。
图1liSA密码系统的主界面
4.2界面的完成
为了实现本系统的各个功能,需要添加的代码如下:
(1)大素数P的生成。
functionppCallback(hObject,eventdata,handles)
%ran@rime.m的功能:先产生一个随机数,然后利用primetest检测是否是素数
P2randprime(10000);
Set(handles.P,’string’,num2str(P))
(2)大素数q的生成。
functionpq_CaUhaek(hObject,eventdata,handles)
q2
randprime(10000);
Set(handles.q,’string’,num2str(q))
(3)n的生成。
functionpnCallback(hObject,eventdata,handles)
n=str2nttm(get(handles.P,’string’))¥str2num(get(hart-dies.q,’string’));
set(handles.n,7string’,num2str(n))
(4)公钥e的生成。
functionpc_Callback(hObject,eventdata,handles)
phin=(str2num(get(handles.P,’string’))·1)}(str2num(get(handles.q,’string7))·1)
crag=1:
whileenag
e=1+floor((phin一1)事,and(1,1));
g=god(e。
phin):
ifg==1
set(handles.e,7strin97,num2str(e))
break;
end
end
(5)私钥d的生成。
functionpd—callback(hObject,eventdata,handles)
phin=(str2num(get(handles.P,’string’))-1)掌(str2num(get(handles.q,’string’))·1);
e=str2num(get(handles.e,7string’));
d=invmodn(e,plain):
set(handles.d,7string’,num2str(d))
(6)RSA加密。
functionencrypt_Callback(hObject,eventdata,handles)
111=text2int(set(handles.plaintext,’string’));
n=str2num(set(handles.n,’string’));
e=str2num(get(handles.e,’string’));
C=nundstr(powermod(m,e,n));
set(handles.cipertext,’strin97,c)
(7)RSA解密。
functiondecrypt_Callbaek(hObject,eventdata,handles)
n=str2num(get(handles.n,’string’));
d=str2num(set(handles.d9tstring’));
C=str2num(get(handles.cipertext,’string7));
m=int2text(powermod(C,d,n));
set(handles.rplaintext,’string’,m);
4.3实验结果
以本文的“摘要”为例,利用本系统先生成系统参数,然后在明文框内输入摘要内容,点击菜单“RSA加密”进行加密,最后点击菜单“RSA解密”对密文解密,整个过程如图2所示。
测试结果表明,解密后的明文与原明文完全一致,并且加密后的密文不可理解,达到了保护信息的目的,这说明本系统设计得比
较合理,有效地实现了RSA密码系统。
2009牟第7期陈华等:基于Matlab/GUI的RSA密码演示系统63
参考文献:
[1]刘卫同.Maflab程序设计与应用(第2版)[M].北京:
高等教育出版社,2006.
[2]周玉洁,冯登国.公开密钥密码算法及其快速实现[M].
北京:国防工业出版社.2002.
[3]陈文海,徐育育.基于Matlab图形用户界面的CAI课件
设计[J].温州师范学院学报,2003,24(5):86-89.
[4]SchneierBruce.应用密码学——协议、算法及C源程序
[M].吴世忠译.北京:机械工业出版社,2006.
[5]TrappeWade,WashingtonLawrenceC.密码学概论[M].
邹红霞,许鹏文,等译.北京:人民邮电出版社,2004.
[6]陈华.盲签名理论研究与设计[D].湖北工业大学硕士
学位论文,2007:8-12.
[7]SpillmanR.经典密码学与现代密码学[M].叶阮健,曹
英译.北京:清华大学出版社,2005.图2基于Matlab/GUI的RSA密码演示系统[8]贾中平,张焕国,等.信息安全数学基础[M].北京:清华
大学出版社,2006.
5结束语[9]RivestR,ShamirA,AdlemanL·Amethodforobtaining
digitalsignaturesandDublic.keycIWDtOSv8ternrJ1.Com.根据密码学课程的特点,本文以Matlab7.1为开孟c‘of也eAc矗.19r78,21。
(2)一:120。
.126.。
发平台,开发了RSA密码演示系统,将RSA中参数获[10]丁宏,郭艳华.快速大数模乘算法及其应用[J].小型微取、加密、解密等复杂过程以图形的形式形象直观地型计算机系统,2003,24(7):1367.1370.
表现出来。
实践表明,该系统界面友好、操作方便,便[11]SchimmlerManfred,BunimovViktor·Fastmodularmulti-
于理解RSA的基本原理,有益于提高课堂教学效果。
phcafionbyoperandcllal嚼Ilg[c]//IntemationalConfer.这对开发其他密.码演示委统具有抛砖引玉的作用。
:翼三皇‘::::慧:主艺轰嘉C,806mp24ut.i唱需要注意的是,本文主要侧重于研究RSA密码演示【12]囝洪i;军涛.实现1RSA算法盖薹意磊高题[J].计算
系统的Matlab实现,参数的选取并没有达到安全性
机应用与软件,2008,23(5):253-254.
要求,由于Matlab自身的数据特点,也不可能达到。
[13]陈华,蔡光兴.Sehnorr盲签名的一般化及其安全性分析实际上,随着计算机、数论以及并行技术的不断发展,[J].信息安全与通信保密,2007(6):231-233.
RSA安全参数的要求越来越大,长期安全应该至少[14]蔡光兴,陈华.一种新的基于身份的代理盲签名方案使用t024位二进制数。
[。
5]芝=芝銎:羔黧=攀。
脚pllb&l【ey
ety咖EJ].IEICETrsm.,1985,J68-D(11):1956-1965.
(上接第39页)
[5]bsc∞∞PeterA,SmalleyStephenD。
Meetingcritical删-tyobjectiveswithsecurity—enhancedLinux[c]//Proceedings
0fthe20010ltawaLinuxSyrr呻ium.2001:58-63.
[6]丁仲,左春.用于RBAC权限管理的面向对象框架[J】.计算机工程与应用,2005,41(17):43·45.
[7]李志英,等.RBAC模型研究、改进与实现[J].计算机应用,2006.26(12):2945-2947.
[8]许春根.访问控制技术的理论与方法的研究[D].南京理工大学工学博士论文,2003:10一I1.
[9]FerraioD,CnginiJ,KuhnR.Role-basedaP_.ce8scontrol(RBAC):Featuresandmotivations[c]//Proceedingsof
the1lthAnnualComputerSecurityApplicationConference.
NewOrleans,LA,1995:241-248.
[10]邵津,王千祥.一种基于模型的软件系统监测方法
[c]//2008全国软件与应用学术会议论文集.广州:华
南理工大学,2008:172.177.
[11]许谦,雷咏梅.基于角色与代理的访问控制模型[J].计算机应用与软件,2008,25(4):46-50.
[12]HermosiUoGabriel。
eta1.AProSec:Anaspectforprogram-ming8ecu陀Web印plieafions[c]//The2ndIntemationsl
ConferenceAvailability,ReliabilityandSecurity.Vien-
咐,Austria,2007:1026-1033.
[13]TangLiu—ying,QingSi—ban.AdministrationofmultiplerolesinthehybridRBAC.DTEpoliey[J].JournalofCom-
putem,2006,29(8):1419—1426.
[14]LoscoccoPeter,SmaUeyStephen.Integratingflexiblesup-
portforsecuritypoliciesintotheLinuxoperatingsystem
[C]//ProceedingsofUSENIXAnnualTechnicalConfer-
enee(FREENIX’01).2001:2942.
基于Matlab/GUI的RSA密码演示系统
作者:陈华, 蔡光兴, CHEN Hua, CAI Guang-xing
作者单位:陈华,CHEN Hua(湖北工业大学理学院,湖北,武汉,430068;武汉大学数学与统计学院,湖北,武汉,430072), 蔡光兴,CAI Guang-xing(湖北工业大学理学院,湖北,武汉,430068)
刊名:
计算机与现代化
英文刊名:COMPUTER AND MODERNIZATION
年,卷(期):2009,""(7)
被引用次数:0次
1.刘卫国Matlab程序设计与应用 2006
2.周玉洁.冯登国公开密钥密码算法及其快速实现 2002
3.陈文海.徐育育基于Matlab图形用户界面的CAI课件设计[期刊论文]-温州师范学院学报 2003(05)
4.Schneier Bruce.吴世忠应用密码学--协议、算法及C源程序 2006
5.Trappe Wade.Washington Lawrence C.邹红霞.许鹏文密码学概论 2004
6.陈华盲签名理论研究与设计 2007
7.Spillman R.叶阮健.曹英经典密码学与现代密码学 2005
8.贾中平.张焕国信息安全数学基础 2006
9.Rivest R.Shamir A.Adleman L A method for obtaining digital signatures and public-key cryptosystem 1978(02)
10.丁宏.郭艳华快速大数模乘算法及其应用[期刊论文]-小型微型计算机系统 2003(07)
11.Schimmler Manfred.Bunimov Viktor Fast modular multiplication by operand changing 2004
12.闫洪亮.牛军涛实现RSA算法应注意的问题[期刊论文]-计算机应用与软件 2008(05)
13.陈华.蔡光兴Schnorr盲签名的一般化及其安全性分析[期刊论文]-信息安全与通信保密 2007(06)
14.蔡光兴.陈华一种新的基于身份的代理盲签名方案[期刊论文]-计算机工程 2007(09)
15.Koyama K Secure secret voting system using the RSA public key crytosystem 1985(11)
1.学位论文王海春一种安全、高效的网络考试系统的研究与设计2004
基于网络环境的考试系统的研究与设计,是当前计算机辅助教学(CAI)研究的重要内容之一.建立在网络和多媒体环境的自动化考试系统,对于促进传统教育方式的变革具有重要意义.在对现有计算机网络系统体系结构、利用计算机实现计算机基础课程考核评分自动化的技术和方法进行了深入研究的基础上,作者设计了"无纸化计算机网络考试系统".本文在对相关的理论和技术作较全面介绍的基础上,对这一设计进行了深入研究.
2.学位论文高功步基于真实数据驱动的选择性电子商务综合实验平台建设研究2006
随着电子商务的飞速发展,社会对电子商务人才的需求迅速增多,同时,对电子商务人才的综合实践技能要求也越来越高。
教学实习是高校培养学生实践能力的主要途径,然而,从目前看,传统的到企业进行电子商务实地实习,已不能满足电子商务综合实践技能培养的要求。
师生自建电子商务公司模式难度较大。
在这种情况下,目前的高校,一般采用建立电子商务实验室,利用网络平台,安装电子商务模拟实验平台,仿真电子商务活动,让学生在实验系统中体验电子商务,完成专业技能训练。
在这种实习方式中,电子商务实验软件的水准是影响学生电子商务技能培养的最关键因素。
但从实际情况来看,目前的电子商务实验软件存在着诸如仿真性差、指导功能和阶段评估功能弱、综合性不强、安全性差、易用性差、互动功能不强等问题
,直接影响了电子商务人才的培养质量。
本文试图从电子商务企业和高校实际出发,从教学、管理的角度构建一个符合社会需要的、综合功能更完善的、基于真实数据的、具有选择功能的电子商务综合实验平台。
为提高实验平台使用效果和实验实习效果,本文结合现代教学技术进行了平台应用和教学策略设计。
具体来说,主要研究工作包括:
1、研究分析了社会需求和电子商务学科特点,提出电子商务实习的重要性。
2、对电子商务各种实习方式进行了总结和分析,提出建立电子商务实验室开展模拟实验教学的重要性。
3、对目前高校应用的电子商务实验平台进行了分析与总结,认为其存在仿真性差、阶段评估功能弱、综合性不强、安全性差、易用性差、互动功能不强等问题。
4、创立了“基于真实数据驱动的选择性电子商务综合实验平台”设计思想,构建了“真实数据驱动”、“选择性”、“综合性”等理论模型。
在此基础上,构建仿真的电子商务实验环境,提高实验平台的真实性,从而提高实验的实效性;将企业内部、企业外部等全部电子商务活动过程融入平台
,构建综合性的实验平台,提高系统的综合性,提高学生对电子商务的全方面体验和理解;同时,在综合平台上,采用可选择的模块化设计,提高单一模块的选择实验,实现阶段可评估性,提高电子商务实验平台的易用性。
5、在设计思想的指导下,确定了平台的总体开发思路;确定了B/S的计算模式,分析了XML、数据挖掘、虚拟现实、信息安全等支撑技术;确定了作为开发工具,SQLServer作为数据库管理系统;构建了学生实验子库独立的平台数据库逻辑模型;从程序级角度分析了平台安全控制;提出平
台应达到的目标与要求。
6、对当前电子商务成功案例进行了调查和研究,选择了一些有代表性的B2B、B2C、C2C等交易网站,以及网上支付平台、支付工具作为平台的参考模型。
7、结合电子商务(EB)的定义、电子商务的社会需求、专业培养特点及实验教学要求构建了实验平台七大模块,即企业外部电子商务模块、企业内部管理模块、公共服务模块、电子商务网站开发与应用模块、教学案例数据中心、学生控制台、教师管理与互动模块。
尤其强调建立教学案例数据中心
,体现“真实数据驱动”的设计思想并强化学生控制台和教师管理与互动模块的设计;强调师生交互,既设计了传统的E-mail、BBS等师生交互工具,又将新的博客系统引入平台,特别是提出QQ等互联网交互工具的跨平台使用,以强化师生间的协作学习。
8、分析和强调了教师在电子商务实验平台中的重要地位,研究了电子商务实验实习指导教师的现状,提出采取多种方式培养师资和聘任企业电子商务专家担任实习指导教师的重要性和途径。
9、从管理和技术的角度,构建了一个基于Internet的“四级安全管理模型”,通过对Internet级、校园网级、局域网级和工作站级的安全设置和管理,有效地保障实验的正常进行。
10、设计了“基于真实数据驱动的选择性电子商务综合实验平台”的教学策略。
阐述了实验教学策略对提高平台实验效果的重要性,在分析基于Internet的教学模式的基础上,论述了讲授式教学、个别化教学、讨论式教学、协作式教学、发现式教学、选择式教学等模式以及BBS、E-mail、BLOG、QQ等交流工具在实验平台中的具体应用。
3.期刊论文米捷.李可.MI Jie.LI Ke辅助教学系统的设计与安全优化-河南工程学院学报(自然科学版)
2008,20(2)
基于网络教学的理论基础,研究了网络环境下开发辅助教学系统的相关技术.以Internet/Intranet为依托,采用三层B/S模式,以IIS为网络平台,运用ASP、网络数据库技术等设计开发了网上辅助教学系统,并从系统的安全性方面加以描述,针对信息安全的威胁制定了相应策略.
4.学位论文玉淑美基于开源软件的高中《信息技术》教材设计研究2008
开放源代码软件是一种源代码公开的软件,用户可以自由的使用、复制、散发以及修改源码(补充漏洞,按具体需求定制功能),可免费获取。
开源软件不仅仅在技术上体现出自身的优势(更好的性能、更好的稳定性、更好安全性等),同时在社会文化领域它也带来了变化,尤其是对学习与教育的影响越来越深刻。
开源软件凭借自身的优势在世界各地的政府、企业和教育部门等领域得到广泛应用,“自由、开放、共享、互助合作、平等、创新”的开源理念得到了广泛传播。
我国中小学的部分信息技术教师也开始接触和使用开源软件。
开源软件作为一种开放精神的体现,也作为和私有软件鼎立的一方,有它存在的价值和必要,让学生学习是有必要的。
开源软件给教师和学生提供了一个更加自由、开放、互助合作的学习环境,在培养学生的创新能力、协作能力、合作能力、深入研究的能力、动手能力、表达能力和社会情绪能力等方面具有更大优势。
信息技术教育不能再局限于微软系列软件为主的教学,而应倡导开源软件和多元化的教学。
本研究主要探讨开源软件应用于高中信息技术课程的可行性和基于开源软件的高中《信息技术》教材的设计与开发,为进行开源软件教学实验研究提供了教材准备;在基于学习活动的教材设计过程中体现开源的精神,旨在促进开源软件在教育领域的的应用与推广以及开源理念的广泛传播。
本研究主要成果与创新点包括两大部分:
1.首先,阐述开源软件与教育的关系,揭示开源软件的教育意蕴,即:①为信息技术课程的教与学提供了新的学习内容和认知工具,促进个性化学习;②传播开源精神,促进知识的创新、共享以及人与人之间的合作;③促进非正式学习。
其次,从五个方面进行了信息技术教育使用微软系列软件和开源软件教学的比较分析:“总体使用成本”(TCO)的比较、学生创新培养的比较、安全稳定性的比较、国家的信息安全和软件产业发展比较、开放精神比较;基于开源软件从“信息技术课程的五个模块”和“课程标准对教材编写的建议”两方面解读了《普通高中信息技术课程标准》;进而阐述了当前我国中小学信息技术课程改革面临着这样一个关键点:从单一的微软系列软件教学转向开源软件和多元化的教学。
最后得出的结论是:开源软件应用于高中信息技术课程是具有可行性的。
2.在深入学习与研究基于开源软件的高中信息技术教材设计开发相关的理论——教材设计理论、学习理论、教学理论、教学目标分类理论、教育传播理论和以学习活动为中心的教学设计理论——的基础上,提出基于开源软件的高中信息技术教材的设计构想,重点阐述了编写目的、设计思想与设计特点、整体构想与篇章结构以及样章样节的设计。
编写的目的是向学生提供一套符合现代教学理念的、适应当今社会开放文化的、以提高学生的信息素养为目标的基于开源软件的高中信息技术教材,着力促进高中信息技术课程改革的步伐和开源软件的推广应用及其“自由、开放、共享、互助合作、平等、创新”理念的传播。
设计思想主要包括五个方面:①从教学内容来说,注重不同学习者对学习内容的不同感受,强调学习者经验的作用;②从教学组织来说,教师是组织者管理者角色越显突出,学习活动的执行者是学习者自己;③从教学环境来说,如何根据实际情况综合利用网上与网下环境资源,是教学设计的要点之一;④从教学方法来说,强调活动设计,让学习者通过体验来将知识内容转化为行动能力;⑤从教学评价来说,更加注重真实性评价,即学习者学习过程真实的表现。
设计特点包含四个方面:一是以提升高中学生的信息素养为中心主题进行教材内容的设计;二是教材遵循“技术”学习的认识规律设计学习活动
,突出开源理念的文化价值;三是教材设计体现基础性、开放性、科学性、操作性、实践性的特点;四是将多元化评价和真实性评价有机融合在教学过程中。
在课程标准的指导下,本研究教材设计具体包括六大模块:“信息技术基础”(必修模块)、“算法与程序设计”(选修模块)、“多媒体技术应用”(选修模块)、“网络技术应用”(选修模块)、“数据管理技术”(选修模块)和“人工智能初步”(选修模块)。
文中详细地列出了信息技术基础(必修模块)内容框架。
样章样节是“信息技术基础”(必修模块)中“Linux操作系统”和“文本和表格信息加工”两部分内容。
在信息教育中利用开源软件进行教学,符合当前社会大力提倡的创新教育和素质教育的主题。
因此,开源软件进入中小学信息技术课程的课堂必定成为一种趋势,在教育领域进行开源理念的传播和促进开源软件的应用与推广则是一种时代使命。
当然,笔者并不是倡导开源软件完全替代微软系列软件,而是认为开源软件的教学应成为信息技术教育教学的一部分。
基于开源软件的信息技术课程教材的设计与开发是进行开源软件教学的前提,也是我们进行开源软件教学实验研究的基础。
本文链接:/Periodical_jsjyxdh200907017.aspx
授权使用:咸宁学院(xnxy),授权号:e57c3475-d2a1-487a-b6ec-9de30129fbc7
下载时间:2010年8月31日。