- 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下基于Windows平台任意格式文件加密和解密程序
VB下基于Windows平台任意格式文件加密和解密程序
摘 要: 本文论述了以注册表为载体,对文件二进制读写,模块化设计,实现加解密程序。包括:引言、程序要求及实现目标、程序设计思路及方法、程序的主要实现代码、结论等内容。
关键词:注册表 文件二进制读写 模块化分组设计
中图分类号:TP309.7 文献标识码:A 文章编号:1003-9082(2015)07-0009-02
一、引言
信息社会,人们在享受信息资源利益的同时,也面临着信息安全的考验。信息安全已为世界性的问题,已威胁到国家各领域,同时,信息安全也是人们能否保护个人隐私的关键。也是社会稳定前提。解决方法是加密,所以加解密就显得重要。本文通过算法,保障信息安全,体现出数据价值。下面讨论对数据加解密,以及如何卸载程序。[1]
二、程序要求及实现目标
1.程序要求:运行效率没有要求,但对算法要求较高,即此算法是人工在有限时间内不可破解的。
2.实现目标:右键选中文件,经算法加密,或解密成原文件,供使用。达到方便快速目的。
三、程序设计思路及方法
1.程序思路:为了达到用户对程序的要求,该程序应选用合理的算法,设计好注册表参数,设计一个显示进度条,显示文件进度。还应有一个卸载程序,不需时卸载,需时再安装。
2.设计方法:采用“右键选中获取路径”的方式,一步操作就能获取路径。此功能要读写注册表。读注册表获取状态,决定是初始化还是已安装。如果未安装则启动初始化,若已安装则提示右键执行。会显示进度条,看执行百分比。用算法对文件读写,有两法。第一:大于或等于100KB的文件,用限制字节异或方法,能以最短时间执行,第二:小于100KB的文件,对所有数据异或和算术运算。还实现一个卸载程序,卸载时输入密码,保证完整性安全性。[2]
四、程序的主要实现代码
加解密是两个同算法互逆过程。用此算法加密的文件就一定也能用同样的算法解密。输入初始密码,此密码用于以后每次加解密时身份验证,最好用“数字+字母+特殊字符”的形式,牢记此密码。
代码如下:
Setreg2 =CreateObject(wscript.shell)
IfStrComp(Label2.Caption, 请输入初始密码) = 0Then
reg2.regwriteHKEY_CLASSES_ROOT\AllFilesystemObjects\shell\文件加密和解密\command\password,PasswordEn(Text1.Text),REG_SZ
Else
IftrComp(reg2.regread(HKEY_CLASSES_ROOT\AllFilesystemObjects\shell\文件加密和解密\command\password),PasswordEn(Text1.Text))Then
MsgBox密码错误!无法加解密!,vbCritical,密码
EndIf
lnglen=Len(strPassword)
Fori=1Tolnglen
lngtemp=((Asc(Mid(strPassword,i,1))Xor(2*i))+(13*i)-4)Mod128
SelectCaselngtemp
Case9,10
lngtemp=11
Case13
lngtemp=14
Case28To31
lngtemp=32
EndSelect
strtemp=strtempChr(lngtemp)
Nexti
PasswordEn=strtemp
系统提示右键菜单创建成功,这时就可以使用右键对文件加密和解密了,而不需要再双击“文件加密和解密.exe”文件了。
代码如下:
//注1
Setfol=fso.GetFolder(str)
ForEachfilInfol.Files
FileEnDefil.Path
CurrFileCount=CurrFileCount+1
Form3.ProgressBar1.Value=CurrFileCount
Nextfil
ForEachsubfolInfol.SubFolders
DirEnDesubfol.Path
Nextsubfol
argvAddress=GetCommandLine
argvApp=String(lstrlen(argvAddress)+1,0)
lstrcpyargvApp,argvAddress
cmd=Command
IfLen(cmd)Then
文档评论(0)