导航:首页 > 编程语言 > vb加密程序怎么编

vb加密程序怎么编

发布时间:2025-05-27 05:07:23

1. 怎样用VB给文件夹进行密码加密

1、由于采用二进制读取文件的方式,因此加密时一般可以不考虑文件类型。

2、这里只进行一次异或运算,如有需要可以进行多次异或运算。

3、此加密算法速度快,当然加密强度也低 ;

参考代码如下:

'-----------------------------------------------------------------------
'函数说明:使用异或运算加密文件(可加密大部分文件)
'参数说明:key-密钥
'fileName-普通文件名,
'encryptFileName-加密后的文件名
'返回值:true-成功,false-失败
'-----------------------------------------------------------------------
PrivateFunctionXOR_Encrypt(keyAsInteger,fileNameAsString,encryptFileNameAsString)AsBoolean
OnErrorGoToerrHandler
DiminputFileNoAsInteger
DimfileBytes()AsByte
DimlengthAsLong
XOR_Encrypt=False
'打开文件并保存在二进制数组中
inputFileNo=FreeFile
OpenfileNameForBinaryAs#inputFileNo
length=LOF(inputFileNo)
Iflength=0Then
MsgBox"退出加密:文件内容为空!",vbInformation,"提示"
ExitFunction
EndIf
ReDimfileBytes(length-1)AsByte
GetinputFileNo,,fileBytes()
Close#inputFileNo
'将该二进制数组进行异或加密
DimiAsLong
Fori=LBound(fileBytes)ToUBound(fileBytes)
fileBytes(i)=fileBytes(i)Xorkey
Next
'将异或加密后的二进制数组保存在新的文件中
DimoutputFileNoAsInteger
outputFileNo=FreeFile
#outputFileNo
PutoutputFileNo,,fileBytes
Close#outputFileNo
XOR_Encrypt=True

errHandler:
IfErr.NumberThen
MsgBox"加密过程中出错:"&Err.Description,vbCritical,"错误"
XOR_Encrypt=False
ResumeNext
EndIf
EndFunction

2. 用VB编写程序怎样给文件夹加密码

加密原理:循环使用密码中每个字符的ASCII码值与文件的每个字节进行异或运算,然后写入文件即可。这种加密方法是可逆的,即对明文进行加密得到密文,用相同的密码对密文进行加密就得到明文。
界面设计:在窗体From1上放置驱动器列表框(Driver1)、目录列表框(Dir1)、文件列表框(File1)各一个,这三个控件相互配合,用来确定要加密文件的位置。其中File1的Pattern属性设为“*.TXT”,即仅显示文本文件;再放置一个Check控件,用来控制显示文件的类型,其Caption属性设为“显示全部文件”;接着放置两个文本框,Text1显示文件内容,Text2用来输入密码,其Passchar属性设为“*”,一个Label控件,其Caption属性设为“密码”;最后,放置两个命令按钮,其Caption属性分别设为“加密/解密”和“退出”。
程序代码:
Option Explicit
Dim i As Long
Dim databuff() As Byte ’定义数组用于存放文件内容
Dim addbuff() As Byte ’定义数组用于存放加密后的文件内容
Dim password() As Byte ’定义数组用于存放密码的ASCII值
Dim filename As String
Private Sub Check1_Click()�
If Check1.Value Then ’控制是否显示全部文件
File1.Pattern = "*.*"
Else
File1.Pattern = ".txt"
End If
End Sub
Private Sub Command1_Click()�
Dim j As Integer
Dim password_len As Integer
password_len = Len(Text2.Text)
ReDim password(password_len) As Byte
For i = 0 To password_len - 1 ’把密码转化为ASCII码
password(i)= Asc(Mid(Text2.Text,i + 1,1))
Next
If filename = "" Then Exit Sub
Open filename For Binary As #1 ’读取要加密的文件内容
ReDim databuff(LOF(1))
Get #1,, databuff
Close #1
ReDim addbuff(UBound(databuff))As Byte
For i = 0 To UBound(databuff)
If j >= password_len Then ’循环使用密码
j = 0
Else
j = j + 1
End If
addbuff(i)= databuff(i)Xor password(j)’进行异或运算
Next
Open filename For Binary As #1 ’把加密后的内容写入文件
Put #1,,addbuff
Close #1
Text1 = StrConv(addbuff vbUnicode)’显示加密后的文件内容
Text2.Text = ""
End Sub
Private Sub Command2_Click()�
.End
End Sub
Private Sub Dir1_Change()�
File1.Path = Dir1.Path ’与文件列表框相关联
End Sub
Private Sub Drive1_Change()�
On Error GoTo a0
Dir1.Path = Drive1.Drive ’与目录列表框相关联
a0:If Err Then MsgBox(Error(Err))’发生错误,提示错误内容
End Sub
Private Sub File1_Click()’单击文件时,显示文件内容
filename = Dir1.Path + File1.filename
If filename = "" Then Exit Sub
Open filename For Binary As #1
ReDim databuff(LOF(1))
Get #1,,databuff
Close #1
Text1 = StrConv(databuff,vbUnicode)
End Sub

3. VB 加密与解密的程序代码

加密:

PrivateFunction JiaMi(ByVal varPass As String) As String '参数varPass是需要加密的文本内容

Dim varJiaMi As String * 20

Dim varTmp As Double

Dim strJiaMi As String

Dim I

For I = 1 To Len(varPass)

varTmp = AscW(Mid$(varPass, I, 1))

varJiaMi = Str$(((((varTmp * 1.5) / 5.6) * 2.7) * I))

strJiaMi = strJiaMi & varJiaMi

NextI

JiaMi = strJiaMi

EndFunction

解密函数:

PrivateFunction JieMi(ByVal varPass As String) As String '参数varPass是需要解密的密文内容

Dim varReturn As String * 20

Dim varConvert As Double

Dim varFinalPass As String

Dim varKey As Integer

Dim varPasslenth As Long

varPasslenth = Len(varPass)

For I = 1 To varPasslenth / 20

varReturn = Mid(varPass, (I - 1) * 20 + 1, 20)

varConvert = Val(Trim(varReturn))

varConvert = ((((varConvert / 1.5) * 5.6) / 2.7) / I)

varFinalPass = varFinalPass & ChrW(Val(varConvert))

NextI

JieMi = varFinalPass

EndFunction

(3)vb加密程序怎么编扩展阅读:

注意事项

编写加密程序,将用户输入的一个英文句子加密为加密字符串,然后输出加密字符串。假设句子长度不超过100个字符。

根据给定的句子加密函数原型SentenceEncoding,编写函数SentenceEncoding调用给定的字符加密函数CharEncoding完成句子加密。

然后,编写主程序提示用户输入英文句子,然后调用函数SentenceEncoding对句子加密,最后输出加密后的句子。

字符加密规则为大写字母和小写字母均加密为其补码, 我们定义ASCII码值相加为’A’+’Z’即155的两个大写字母互为补码,ASCII码值相加为’a’+’z’即219的两个小写字母互为补码。

空格用@代替,句号以#代替,其它字符用句点代替。

函数原型:

void SentenceEncoding(char *soure,char *code);

功能:对待加密字符串source加密后保存加密字符串到code.

参数:char *soure,指向待加密句子的字符串指针;

char *code 指向加密字符串的字符串指针;

字符加密函数代码。

阅读全文

与vb加密程序怎么编相关的资料

热点内容
ps邀请函制作教程 浏览:23
rp管螺纹怎么编程 浏览:823
linuxssh下载文件 浏览:765
如何进行光盘数据迁移 浏览:614
编程怎么搭建网站 浏览:481
webjspwebinf 浏览:520
软件系统文件夹怎么用 浏览:126
数据库应用技术中级证书有什么用 浏览:811
数据存储方式有哪些网络存储 浏览:552
苍穹数据服务云都有哪些 浏览:257
简历表格下载word格式百度文库 浏览:674
word修改软件 浏览:266
网络攻击问题有哪些 浏览:446
win10缺少配置文件 浏览:295
php连接数据库的配置文件 浏览:801
jsp获取request中的值 浏览:986
jsp中layershow 浏览:679
贝尔金数据线多少钱 浏览:477
微信扣扣电视剧都没声是怎么回事 浏览:329
如何用电脑复制文件到优盘 浏览:537

友情链接