电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

文字的加密与解密

4页
  • 卖家[上传人]:cl****1
  • 文档编号:464680877
  • 上传时间:2024-01-19
  • 文档格式:DOC
  • 文档大小:42.50KB
  • / 4 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、文字的加密与解密 摘要:每个字符的都有相应的ASCII码对应,给文字加密可利用增加或減少字符的ASCII值,产生一组新的文字,达到加密的效果。然后再制作解密程序还原出文字,使解密者知道文字的真实信息。关键词:文字加密 解密 余则成打开收音机,接收来自上级的信息,用笔在纸上记下收音机讲述的代码,打开密码本,记下表述的内容,划燃火柴将纸销毁。此时,他已经知道接下的任务是什么了。这是近期热播电视连续剧潜伏中的一段经典镜头。上级将任务写好后,找出密码本,将其转换为代码,称之为加密;余则成通过从收音机中接收代码,用密码本查找对应文字,转换出文字信息,此为解密。在我们讲述算法与程序设计课程时,同学们问过我如何制作一个进行文字加密和解密的工具。于是我与同学进行了一节课的共同思考,决定采用如下ASCII的值改变来解决问题,过程为:1、读入要加密的文本;2、将需加密的每个字符的ASCII表示出来,然后增加或减少相应ASCII的值,使每个字变成另一个字后输出,产生一批谁都不能理解的文字。3、交给信息接收者一段程序及加密后的文字,接收者通过解密程序将原文字解密。接下来我们就开始了程序设计制作的过程。一、加密

      2、程序的制作:我们用Visual Basic6.0制作右图所示窗体:这里text1文本框中放入待加密的文字,text2文本框中放入需偏移的位置,每个字可以不同,text3文本框中产生加密后的文字。假如我们在文本框text1中输入“余则成是好人”。加密的方法是:将每个字的ASCII值减去一定的值,再将文字显示出来。这时出来的文字谁都不会理解它的意思了。开始我们考虑的程序如下:Private Sub Command1_Click()Dim i As Integerjmwz = Text1.Text j = Len(jmwz) 提取文字长度Dim jm(100) As Integer 建一个数据库将提取的每个字存入以下循环作用为将文字ASCII值減少5后显示出来For i = 1 To j jm(i) = Asc(Mid(jmwz, i, 1) 5 给每个文字ASCII值减去5 t = t + Chr(jm(i)Next i Text3.Text = t 将文字内容显示在text3文本框中 End Sub当然地,上述方法由于每个字的ASCII增加或減少的值是一样的,很容易被人找出规律来。这时我

      3、们可以给每个字符的ASCII值增加或减少不同的数值,这时,加密出来的文字就很难被找出规律来。我们增加一个联系码,由加密者提供给接收者,接收者通过程序将其还原出来。程序可被我们修改为:Private Sub Command1_Click()Dim i As Integer,k as integerjmwz = Text1.Text j = Len(jmwz) ad=len(text2.text)取联系码字符串长度Dim jm(100) As Integer 建一个数据库将提取的每个字存入Dim ad(100) as string 建一个数据库将联系码字符串的每个字符存入For k=1 to ad Ad(k)=mid(text2.text,k,1)Next k以下循环作用为将文字ASCII值減少一定数值后显示出来For i = 1 To j 当联系码长度比加密文本长时,减去相应位置的数字,否则重复联系码内容数字。 If jad thenjm(i) = Asc(Mid(jmwz, i, 1) val( ad(i)else jm(i) = Asc(Mid(jmwz, i, 1) val(ad(

      4、i mod ad) ) endif t = t + Chr(jm(i)Next i Text3.Text = t 将文字内容显示在text3文本框中 End Sub然后调试,我们输入文字“余则成是好人”输入联系码“675874”。我们发现出来的文字发音还是差不多的,其它人多念几遍就能猜出大概意思,。于是,我们在“jm(i) = Asc(Mid(jmwz, i, 1) val( ad(i)”和“jm(i) = Asc(Mid(jmwz, i, 1) val(ad(i mod ad) )”两句话后面均加入“-55”使文字发音差距大,产生的文字为“莹怨硰蕦簢葦”,效果不错。然后我们利用Visual Basic6.0软件中的“文件”、“生成工程1.exe”生成一个可执行文件。发给加密操作者使用。二、解密程序的制作我们接下来设计解密程序。研究发现:解密程序的原理与加密的程序原理是一样的。我们制作如右图所示窗体。程序代码如下:Private Sub Command1_Click()Dim i As Integer,k as integerjmwz = Text1.Text j = Len(jmwz

      5、) adm=len(text2.text)取联系码字符串长度Dim jkm(100) As Integer 建一个数据库将提取的每个字存入Dim ad(100) as string 建一个数据库将联系码字符串的每个字符存入For k=1 to ad Ad(k)=mid(text2.text,k,1)Next k以下循环作用为将文字ASCII值增加一定数值后显示出来For i = 1 To j 当联系码长度比加密文本长时,減去相应位置的数值,否则重复联系码内容数字。 If jadm thenjkm(i) = Asc(Mid(jmwz, i, 1) +val( ad (i)+55else jkm(i) = Asc(Mid(jmwz, i, 1) + val(ad (i mod adm) )+55 endif t = t + Chr(jkm(i)Next i Text3.Text = t 将文字内容显示在text3文本框中 End Sub然后调试,我们输入文字“莹怨硰蕦簢葦”(手工输入很麻烦,复制粘贴比较方便),输入联系码“675874”。产生的文字为“余则成是好人”,成功。然后我们利用Visual Basic6.0软件中的“文件”、“生成工程1.exe”生成一个可执行文件。发给解密操作者使用。这段程序设计及代码输入完成后,同学们发现对循环结构、数组、ASCII码有了更深的了解,每位同学均有很强的成功感,觉得程序设计还是很“好玩”的。接下来我要求学生对这个程序做一个操作说明,经过讨论,总结出如下结果:1、程序设计者将加密程序、解密程序分另交给加密操作者和解密操作者。2、加密操作者如有“情报”发出,只需发出联系码与加密后文字。3、解密操作者在解密程序中输入加密后的文字及联系码,即可产生还原好的文字。4、从“情报”角度看,加密程序与解密程序成为最重要的“工具”,相当于余则成时代的“密码本”。如果“密码本”没有泄露,而真实的“情报”被“对手”是否得到就不用太担心。参考文献:算法与程序设计(选修)(教育科学出版社)小说潜伏(龙一著)

      《文字的加密与解密》由会员cl****1分享,可在线阅读,更多相关《文字的加密与解密》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    监控施工 信息化课堂中的合作学习结业作业七年级语文 发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.