- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
文件逐位倒排序加密法在VB中运用研究
文件逐位倒排序加密法在VB中运用研究
摘 要:为了保证文档文件与应用程序不被非授权阅读及使用,通常将原始可用文件通过指定密钥进行某种加密算法处理后,变成不可打开或不可阅读的文档文件或不可执行的应用程序文件,处理后的文件称为密文。常用的文件加密算法有逐位倒排序加密法、循环移位加密法、矩形转置加密法及异或加密法。逐位倒排序加密法由于算法简单,容易实现,通常作为大学程序设计语言课程学习中的应用开发基础案例。对逐位倒排序加密法在VB中的运用进行了研究,给出的文件逐位倒排序加密程序适用于各种类型的文件,包括中文与英文的混合文档文件加密,具有通用性,对大学计算机专业课或非计算机专业公共课中的VB程序设计综合应用具有指导意义。
关键词:逐位倒排序;文件加密;VB程序
中图分类号:TP301 文献标识码:A 文章编号:1672-7800(2016)003-0021-03
作者简介:王德超(1964-),男,重庆人,博士,四川师范大学基础教学学院副教授,研究方向为计算机应用、算法设计与分析。
1 文件字节逐位倒排序加密法
将文件以二进制方式打开后,在内存中形成二进制位比特流,通常以字节8位为单位逐位倒序后,形成密文字节流式文件,这种文件加密法称为字节逐位倒排序加密法[1-5]。显然,这种文件加密法是可逆的,即对密文进行一次同样的字节逐位倒排序加密即可得到原文。因此,字节逐位倒排序加密法因其具有规律导致安全性很低。如原文中的字符“D”的ASCII码值是68,其字节比特流为,其字节逐位倒排序加密密文为。
2 VB实现
VB将文件分为顺序文件、随机文件与二进制文件[6],将待加密文件以二进制方式打开后,在形成的二进制字节
流式文件中,逐字节读取数据,每个字节逐位倒排序后便形成密文字节流,将加密后的字节流写入密文文件即可。
整个加密过程涉及3个程序功能模块:①将原文按字节转换成8位二进制;②将二进制字节逐位倒排序;③将倒序后的字节二进制转换成ASCII码值或字符。本文将这3个模块定义成3个通用VB函数过程。在解密事件过程中,对于包含中文与英文的混合文档文件,ASCII字符占1个字节,直接使用chr()函数即可获得原文字符,而汉字占两个字节,需要将高字节乘以位权28左移8位,与低字节连接形成两字节16位后,再使用chr()函数才能得到原文汉字。
2.1 逐位倒排序加密法VB程序界面设计
程序设计界面如图1所示,运行界面如图2所示。界面中使用了4个标签对象Label1-Label4,分别说明程序功能及相关3个文件内容,4个文本框对象Text1-Text4,分别显示文件的当前路径与3个相关文件内容,4个命令按钮对象Command1-Command4,通过Click事件实现文件的打开、加密、解密及退出功能。程序执行中文件的打开与保存均是通过通用对话框来完成的。
2.2 逐位倒排序加密法的VB实现过程
整个VB程序过程由7个功能模块组成,包括3个通用函数过程和4个事件过程。主要过程的VB代码如下所示:
Dim sf$,ef$,rf$
Dim bin() As Byte
Private Sub Form_Load()
Text1.Text = :Text2.Text =
Text3.Text = :Text4.Text =
CommonDialog1.InitDir = d:\\MyVB
CommonDialog1.Filter = 文件|*.dat;*.txt
CommonDialog1.FilterIndex = 1
End Sub
Private Sub Command1_Click()
CommonDialog1.DialogTitle = 选择待加密文件
CommonDialog1.Action = 1
sf = CommonDialog1.FileName
Text1.Text = CommonDialog1.FileName
CommonDialog1.DialogTitle = 输入加密文件名
CommonDialog1.ShowSave
ef = CommonDialog1.FileName
End Sub
Function ByToBi(x As Byte) As String
Dim s As String
Do While x 0
r = x Mod 2:x = x \\ 2:s = r s
Loop:ByToBi = s
End Function
Functi
您可能关注的文档
最近下载
- 生物神经调节.ppt VIP
- 2.1 整十整百数乘一位数的口算和估算(课件)2025-2026学年度苏教版数学三年级上册.pptx
- 中粮集团品牌VI手册.pdf
- 利润表模板一.doc VIP
- 2024-2025学年九年级化学上册 第一单元 单元测试卷(人教版).pdf VIP
- 天津执业药师继续教育《儿科常用药物概要》习题答案.docx VIP
- 怎么群里所有人.doc VIP
- 宝山古木阳光顶棚改造项目施工组织设计.doc VIP
- (高清版)JGT 503-2016 承插型盘扣式钢管支架构件.pptx VIP
- TB0101-301-2018建筑材料、构配件和设备进场质量控制工作指南.pdf VIP
文档评论(0)