導航:首頁 > 編程語言 > 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加密程序怎麼編相關的資料

熱點內容
電視劇批量修改文件名 瀏覽:213
怎麼評價學生編程能力強 瀏覽:909
米家app怎麼添加手錶聯系人 瀏覽:779
swift網路請求封裝 瀏覽:501
排刀數控編程對刀輸入什麼指令 瀏覽:196
小米如何關閉網路 瀏覽:600
電腦如何把照片以文件的形式發送出去 瀏覽:287
襪子怎麼編程序 瀏覽:575
文件誤刪後用什麼軟體恢復 瀏覽:325
文件載入pdf 瀏覽:201
魅族mx4無線共享密碼設置 瀏覽:248
excel文件怎麼拉開行高 瀏覽:844
在聯通app怎麼查寬頻密碼 瀏覽:434
辦信用卡大數據很亂是什麼意思 瀏覽:705
啟辰智聯app怎麼看車在哪裡 瀏覽:461
寵物升級卷有什麼用 瀏覽:142
修改桌面後桌面文件找不到 瀏覽:526
多人問責文件格式 瀏覽:604
壞小孩文字微信頭像 瀏覽:244
win7新窗口打開文件夾 瀏覽:475

友情鏈接