字节逐位倒排序加密法是以比特为单位的换位加密方法,用VB实现的具体算法是:

(1) 以二进制模式打开源文件;

(2) 从源文件第I位读取一个字节,假设为字母“A”,得到“A”的ASCII值为65;

(3) 将65转换成八位二进制串为“01000001”;

(4) 将“01000001”按字节逐位倒排序得另一个八位二进制串“10000010”;

(5) 将“10000010”转换成十进制再写回源文件第I位置,完成一个字节的加密;

(6) 重复(2)、(3)、(4)和(5),直到所有字节加密结束。

为了使程序模块化,我们用函数过程ByteToBin完成将字节型数据转换成二进制串(其实质就是将十进制数转换成八位二进制串);用函数过程BinToByte将二进制串转换成字节型数据(实质是将八位二进制串转换成十进制数):用函数过程Reverse将八位二进制串逐位倒排序。具体程序如下:

Function ByteToBin(m As Byte) As String ' 将字节型数据转换成八位二进制字符串

Dim c$

c$ =

Do While m 0

r = m Mod 2

m = m \ 2

c$ = r & c$

Loop

c$ = Right(00000000 & c$, 8)

ByteToBin = c$

End Function

Function Reverse(m As String) As String ' 将八位二进制字符串颠倒顺序

Dim i%, x$

x =

For i = 1 To 8

x = Mid(m, i, 1) & x

Next i

Reverse = x

End Function

Function BinToByte(m As String) As Byte ' 将八位二进制串转换成十进制

Dim x As String * 1, y%, z%

z = 0

For i = 1 To 8

x = Mid(m, i, 1)

y = x * 2 ^ (8 - i)

z = z + y

Next i

BinToByte = z

End Function

Private Sub Command1_Click()

Dim x As Byte, i%, fname$

fname = InputBox(请输入要加密的文件名!注意加上路径名:)

If Dir(fname) = Then

MsgBox 文件不存在!

Exit Sub

End If

Open fname For Binary As #1 ' 以二进制访问模式打开待加密文件

For i = 1 To LOF(1) ' LOF函数是求文件长度的内部函数

Get #1, i, x ' 取出第i个字节

x = BinToByte(Reverse(ByteToBin(x))) ' 这里调用了三个自定义函数

Put #1, i, x ' 将加密后的这个字节写回到文件原位置

Next i

Close

MsgBox 任务完成!

End Sub

本例可以完成对任意文件的加密与解密,对同一文件作第一次处理为加密,第二次处理为解密。要调试本程序,可用记事本在C盘根目录下任意建立一个文本文件(假设为文件名为aaa.txt),其中的内容任意(可以包括字母、汉字、数字、回车符、换行符等)。运行本程序后,在输入文件名的对话框中输入文件名(如:“C:\aaa.txt”)后回车,即可完成对文件的加密。文件加密后,可以在记事本中打开该文件查看加密效果。如果想解密,可再次运行该程序并输入相同文件名。

取消

评论

计算机如何用vb文本加密,怎么样用VB编写一个文件加密程序相关推荐

  1. word计算机桌面加密,如何给电脑的Word文件加密

    如何给电脑的Word文件加密 Word文件是我们在工作和生活中会频繁使用到的,采用适当的方法给需要保护的Word文件加密,可以确保信息安全.这里所讲的加密,是指以某种特殊的方法改变原有的信息数据,使得 ...

  2. c语言文件加密解密单词统计,C语言文件加密解密及单词统计程序.doc

    C语言文件加密解密及单词统计程序.doc (10页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 15.9 积分  高级语言程序设计 课程设计学 院 计算 ...

  3. 贴别人的一个文件加密程序!

    代码下载 using System; using System.Collections.Generic; using System.Linq; using System.Text; using Sys ...

  4. 宏杰文件夹加密V2878【永久免费的文件加密软件】

    宏杰文件夹加密 V2878 [永久免费的文件加密软件] 授权方式:免费常用软件 界面语言:简体中文 软件大小:2.75MB 所属专题:安全相关 运行环境:WinXP,Win2003,Vista,Win ...

  5. 文档加密软件怎么实现对数据文件加密?上海企业办公中使用较多的文档图纸加密软件有哪些?

    随着不断发展的企事业单位,其数据信息安全的保护工作又该何去何处?怎么样来对办公程序生成的批量电子文件进行加密管控? 企业加密需求是不断变化的,会随着应用程序的升级.文件格式的变化.使用范围的变化而变化 ...

  6. python实现md5加密_如何用Python编写一个MD5加密和解密代码

    PythonMD5加密程序 # coding:utf-8 import hashlib md5 = hashlib.md5()     # 应用MD5算法 data = input("请输入 ...

  7. c语言编写atm取款功能_21行C语言代码编写一个具备加密功能的聊天程序!网友:666...

    具备加密功能的VC++聊天程序实例,"密聊"采用 2048bit 的 RSA 数据加密算法对数据进行加密和数字签名,在使用前必须生成用户的私钥和公钥. 只要通过安全通道相互把公钥传 ...

  8. 古罗马皇帝凯撒在打仗时曾经使用过以下方法加密军事情报: 请编写一个程序,使用上述算法加密或解密用户输入的英文字串...

    设计思想:将输入的字符转化为ASCLL码进行相加再转化为字符 程序流程图: 程序源码: package kehouzuoye; import java.util.Scanner; public cla ...

  9. 手把手教你制作一个文件加密工具

    目录 一.前言 二.思路 (1)加密算法的实现 (二)GUI等的实现 三.代码实现 一.前言 现在,互联网上的安全问题越来越严重.我们的文件虽然有杀毒软件保护,但光使用杀毒软件也不是完全安全的.于是, ...

  10. js某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,请编写一个函数,传入原文,输出密文

    加密规则如下: 每位数字都加上5,然后用除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换 // 定义函数encryptData对数据进行加密 x为形参function encryp ...

最新文章

  1. 5.spring boot使用FastJson解析JSON数据
  2. lua学习:使用Lua处理游戏数据
  3. mysql 造1亿条记录的单表--大数据表
  4. 美团点评基于 Flink 的实时数仓平台实践
  5. h5获取http请求头_React 前端获取http请求头信息
  6. python paramiko长连接_【Python】 SSH连接的paramiko
  7. 列表页时间日期标签靠显示html,帝国CMS列表页面list.var分别调用年月日,显示个性时间日期...
  8. MXRuntimeUtils,替代 [NSObject performSelector object object ]的工具
  9. react循环key值_01 React快速入门(一)——使用循环时对于‘key’报错处理
  10. atom对比 vscode_Atom、Sublime Text、VSCode 三者比较
  11. C++基础巩固getchar 和 getch区别
  12. w10计算机字体怎么设置在哪里设置,如何设置修改win10系统电脑的显示字体
  13. python123汉诺塔实践_python汉诺塔问题
  14. 文件系统系列之一:fat文件系统的结构分析
  15. Unity在运行时使用FBX SDK的API
  16. [转载]Oraclenbsp;grantnbsp;revokenbsp;…
  17. 联想拯救者y7000p加内存条_联想 拯救者Y7000P 如何插入SD卡?
  18. eureka服务返回的数据是xml格式
  19. Windows 远程桌面连接方法及远程桌面控制软件推荐
  20. 谷歌中一些十分有趣的特效现象

热门文章

  1. 计算机数据网络延迟,影响网络速度的两个重要因素:网络带宽和网络延迟!
  2. CET6 历年真题原词复现 核心词汇 做题技巧 听力拿分技巧汇总(这篇文章是英语四六级考试最后的版本,谢谢大家一路陪伴)
  3. hiberfil.sys文件过大
  4. php shopnc.dll,shopnc开发手册-ZX版.doc
  5. html清除iframe的缓存,如何清除iFrame的缓存?
  6. Egret 使用自定义皮肤
  7. android studio 自定义皮肤
  8. 计算机体系结构 第一章 计算机系统结构的基础知识(2)
  9. c语言求开平方标准库函数,关于C语言中的开方计算,首先想到的当然是sqrt()函数,让我们先来回顾一下它的基本用法: 头文件:#include math.hsqrt(...
  10. 传奇地图号怎么看?传奇GM命令在哪里查看?