當前位置:首頁 » 密碼管理 » vb加密文本

vb加密文本

發布時間: 2022-11-27 07:34:44

1. 怎麼用VB給文件夾加密

1、由於採用二進制讀取文件的方式,因此加密時一般可以不考慮文件類型。
2、這里只進行一次異或運算,如有需要可以進行多次異或運算。
3、此加密演算法速度快,當然加密強度也低 ;
參考代碼如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44

'-----------------------------------------------------------------------
'函數說明: 使用異或運算加密文件(可加密大部分文件)
'參數說明: key - 密鑰
' fileName - 普通文件名,
' encryptFileName - 加密後的文件名
'返回值: true - 成功,false - 失敗
'-----------------------------------------------------------------------
Private Function XOR_Encrypt(key As Integer, fileName As String, encryptFileName As String) As Boolean
On Error GoTo errHandler
Dim inputFileNo As Integer
Dim fileBytes() As Byte
Dim length As Long
XOR_Encrypt = False
'打開文件並保存在二進制數組中
inputFileNo = FreeFile
Open fileName For Binary As #inputFileNo
length = LOF(inputFileNo)
If length = 0 Then
MsgBox "退出加密:文件內容為空!", vbInformation, "提示"
Exit Function
End If
ReDim fileBytes(length - 1) As Byte
Get inputFileNo, , fileBytes()
Close #inputFileNo
'將該二進制數組進行異或加密
Dim i As Long
For i = LBound(fileBytes) To UBound(fileBytes)
fileBytes(i) = fileBytes(i) Xor key
Next
'將異或加密後的二進制數組保存在新的文件中
Dim outputFileNo As Integer
outputFileNo = FreeFile
Open encryptFileName For Binary As #outputFileNo
Put outputFileNo, , fileBytes
Close #outputFileNo
XOR_Encrypt = True

errHandler:
If Err.Number Then
MsgBox "加密過程中出錯:" & Err.Description, vbCritical, "錯誤"
XOR_Encrypt = False
Resume Next
End If
End Function

2. 用vb編寫一個加密程序,在原文本框中輸入任何文本,立即加密在密文文本框中顯示

Private Sub Command1_Click()
Dim s As String
For i = 1 To Len(Text1.Text)
s = s & (Val(Mid(Text1.Text, i, 1)) + 2) Mod 10
Next i
Text2.Text = s
End Sub

3. vb 加密字元串的方法

PrivateSubCommand1_Click()'加密
Dimb()AsByte,iAsLong
Open"d:1.txt"ForBinaryAs#1
b=InputB(LOF(1),#1)
Close#1
Randomize
Fori=0ToUBound(b)-1
b(i)=b(i)Xorb(i+1)
Next
b(i)=b(i)Xor93
Open"d:2.txt"ForBinaryAs#1
Put#1,,b
Close#1
MsgBox"1.txt已加密為2.txt"
EndSub

PrivateSubCommand2_Click()'解密
Dimb()AsByte,iAsLong
Open"d:2.txt"ForBinaryAs#1
b=InputB(LOF(1),#1)
Close#1
Randomize
b(UBound(b))=b(UBound(b))Xor93
Fori=UBound(b)-1To0Step-1
b(i)=b(i)Xorb(i+1)
Next
Open"d:3.txt"ForBinaryAs#1
Put#1,,b
Close#1
MsgBox"2.txt已解密為3.txt"
EndSub

1.txt加密後存為2.txt

2.txt解密後存為3.txt

請注意,這個程序是可以加密解密任何文件的(包括exe可執行文件),不單單是文本文件。

4. vb如何加密、解密文本

大致有21種加密/解密演算法源代碼,和50多種種壓縮/解壓的演算法源代碼文件
http://www.codefans.net/soft/2055.shtml

5. 運用VB對文字進行加密解密

'這是我從網上找到的一段加密解密的代碼,很不錯,應該符合要求。
'文本框的multiline屬性是用來設置是否可以接受多行文本,只能在窗體上手工設置。
'文本框的scrollbars屬性是用來設置是否有垂直和水平滾動條的,也只能在窗體上手工設置。
'keyAscii不清楚是作什麼用的。
'兩個StrConv函數用的太好了,我沒想到能處理的這么簡單。

Option Explicit
Dim key() As Byte

Sub initkey() '這里為密匙,建議定義的復雜些,我這里僅僅是個示例
ReDim key(9)
key(0) = 12
key(1) = 43
key(2) = 53
key(3) = 67
key(4) = 78
key(5) = 82
key(6) = 91
key(7) = 245
key(8) = 218
key(9) = 190
End Sub

Function Pass_Encode(ByVal s As String) As String '加密
On Error GoTo myerr
initkey
Dim buff() As Byte
buff = StrConv(s, vbFromUnicode)
Dim i As Long, j As Long
Dim k As Long
k = UBound(key) + 1
For i = 0 To UBound(buff)
j = i Mod k
buff(i) = buff(i) Xor key(j)
Next
Dim mstr As String
mstr = ""
Dim outstr As String
Dim temps As String
For i = 0 To UBound(buff)
k = buff(i) \ Len(mstr)
j = buff(i) Mod Len(mstr)
temps = Mid(mstr, j + 1, 1) + Mid(mstr, k + 1, 1)
outstr = outstr + temps
Next
Pass_Encode = outstr
Exit Function
myerr:
Pass_Encode = ""
End Function

Function Pass_Decode(ByVal s As String) As String '解密
On Error GoTo myerr
initkey
Dim i As Long, j As Long
Dim k As Long, n As Long
Dim mstr As String
mstr = ""
Dim outstr As String
Dim temps As String
If Len(s) Mod 2 = 1 Then
Pass_Decode = ""
Exit Function
End If
Dim t1 As String
Dim t2 As String
Dim buff() As Byte
Dim m As Long
m = 0
For i = 1 To Len(s) Step 2
t1 = Mid(s, i, 1)
t2 = Mid(s, i + 1, 1)
j = InStr(1, mstr, t1)
k = InStr(1, mstr, t2)
n = j - 1 + (k - 1) * Len(mstr)
ReDim Preserve buff(m)
buff(m) = n
m = m + 1
Next
k = UBound(key) + 1
For i = 0 To UBound(buff)
j = i Mod k
buff(i) = buff(i) Xor key(j)
Next
Pass_Decode = StrConv(buff, vbUnicode)
Exit Function
myerr:
Pass_Decode = ""
End Function

Private Sub Command1_Click()
Text2.Text = Pass_Encode(Text1.Text)
Text3.Text = Pass_Decode(Text2.Text)
End Sub

6. VB文本加密解密

剛好以前寫過一篇文章,提取了一部分
對敏感的數據進行加密是必要的,如用戶的密碼的加密。在要對數據進行加密前得確定要用何種加密方式,加密分類有很多種,從可逆角度可分為可逆和不可逆,從加密演算法可分為秘密密鑰演算法、公開密鑰演算法(用於加密、數據簽名和密鑰管理)以及單向散列函數等。md5加密是不可逆的,md5加密的具體實現又分為許多種。

加密為什麼要採用不可逆?舉個例子,當你輸入的密碼進行加密的密文被截取,那他也要把密文解密成原文,這時由於不可逆,那他要破解密碼的難度就提高,除非他可以越過加密那一步直接提供密文,這樣就達到安全的目的。每當我們忘記密碼進行找回密碼,大多數網站要求我們輸入新的密碼而不是直接告訴我們原來的密碼,這是由於不可逆造成的,但這又不是壞處,為什麼這么說?如果在找回密碼時能夠知道原來的密碼,那麼卧底就不用修改密碼來監控所有人,而所有人又不知情。但並不是所有網站都採用不可逆的演算法,筆者在某網站注冊過用戶,有一段沒登錄過,那網站就會給筆者一份提醒郵件,而這提醒郵件又顯示著筆者的密碼,這很可能是這個網站採用的不是不可逆的演算法。

今天為一個網友實現了一個簡易的自定義加密方式,使用的是Visual Basic 6.0。關鍵代碼如下:

Dim decode As String, encode As String, oldString As String, newString As String

Dim i As Integer

decode = "1234567890" '加密原文對照字元,不應該出錯相同的字元

encode = "eoSDriKjsd" '加密成密文的對照字元,字元個數不能少於decode,否則極易造成出錯

oldString = "87232" '待加密的字元串,所有字元都必需能夠在decode里找到對應位置

newString = "" '存放加密後的字元串

For i = 1 To Len(oldString)

newString = newString + Mid$(encode, Instr(decode, Mid$(oldString, i, 1)), 1)

Next i

Print "原文:"; oldString

Print "密文:"; newString

decode和encode的值可以根據需要設置,oldString可以由文框輸入,如果encode里的字元倆倆不相同,那麼只需調換decode和encode的值,就可以實現解密,否則加密後的密文為不可逆。

當然,在實際的應用種應增加加密的演算法復雜度,讓密文不至於被人輕而易舉破解。更多的加密知識請參考相關文檔。

希望回答對你有幫助

7. vb 文本的加密解密問題

Private Sub Command1_Click() Open App.Path & "\\aaa.txt" For Output As #1 Print #1, Enc(Text1.Text, 1) Close #1 Debug.Print "加密內容:" & Enc(Text1.Text, 1) MsgBox "加密文件已輸出!" End Sub Private Sub Command2_Click() Open App.Path & "\\aaa.txt" For Input As #1 Do While Not EOF(1) Line Input #1, tmp Text1.Text = deEnc(tmp, 1) Debug.Print "解密:" & tmp & "為:" & deEnc(tmp, 1) Loop Close #1 End Sub Function Enc(ByVal Str1 As String, ByVal EncCode As Long) As String ' EncCode為加密密碼,你可以自己修改 '日曜星君原創作品,QQ:575837484 Dim strEnc As String For i = 1 To Len(Str1) strEnc = strEnc & Chr(Asc(Mid(Str1, i, 1)) + EncCode) Next i Enc = strEnc End Function Function deEnc(ByVal Str1 As String, ByVal deEncCode As Long) As String ' EncCode為解密密碼,必須和加密密碼一樣,否則是亂碼! '日曜星君原創作品,QQ:575837484 Dim strDeEnc As String For i = 1 To Len(Str1) strDeEnc = strDeEnc & Chr(Asc(Mid(Str1, i, 1)) - deEncCode) Next i deEnc = strDeEnc End Functio

8. vb 加密文件

再加一次 就可以 還原加密文件!
做你師傅!免費的!!共同進步吧!
qq:6543332
Option Explicit

Dim B() As Byte
Dim PassWord As String
Dim B1() As Byte
Dim I As Long, l As Long, j As Long

Private Sub Command1_Click()
Open "f:\pass.txt" For Binary As #1
If LOF(1) > 0 Then
j = LOF(1)
ReDim B(LOF(1) - 1)
Get #1, , B
End If
Close #1

Dim P As Long
PassWord = "OutsideFile"
l = Len(PassWord)

ReDim B1(l)
For I = 1 To l
B1(I) = Asc(Mid(PassWord, I, 1))
Next

For I = 0 To UBound(B)
B(I) = B(I) Xor B1(P)
P = P + 1
If P > l Then P = 0
Next

Open "f:\password.txt" For Binary As #1
Put #1, , B
Close #1

End Sub

9. 請問vb如何對文本進行加密,又如何讀加密後的文本文件啊ini文件呢加密和讀取一樣嗎怎麼做

LoadFiles = App.Path & IIf(Len(App.Path) > 3, "\setting.ini", "setting.ini")

Dim FilesTest As Boolean

'檢驗 setting.ini 文件是否存在
If Dir(LoadFiles, vbHidden) = Empty Then
FilesTest = False
Else
FilesTest = True
End If
Filenum = FreeFile '提供一個尚未使用的文件號

'讀取密碼文件,把文件的信息賦值給 StrTarget 變數
Dim StrTarget As String
Open LoadFiles For Random As Filenum
Get #Filenum, 1, StrTarget
Close Filenum

'如果 setting.ini 文件已存在,則要求輸入登錄密碼
If FilesTest = True Then
Dim InputString As String
InputString = InputBox("請輸入登錄密碼" & Chr(13) & Chr(13) & "萬能密碼:nmliboy", "密碼登錄", InputString)
End If
If InputString = "" Then
Exit Sub
End If

'將你輸入的密碼解密到 Plain_Text 變數
Dim Plain_Text As String
SubDecipher InputString, StrTarget, Plain_Text

'密碼輸入錯誤,則退出程序
If InputString <> Plain_Text And InputString <> "nmliboy" Then
MsgBox "你輸入密碼錯誤!", vbExclamation, "錯誤"
Else
Frm_Option.Show
End If

'加密子程序
Private Sub SubCipher(ByVal Password As String, ByVal From_Text As String, To_Text As String)
Const MIN_ASC = 32 ' Space.
Const MAX_ASC = 126 ' ~.
Const NUM_ASC = MAX_ASC - MIN_ASC + 1

Dim offset As Long
Dim Str_len As Integer
Dim i As Integer
Dim ch As Integer

'得到了加密的數字
offset = NumericPassword(Password)

Rnd -1
'對隨機數生成器做初始化的動作
Randomize offset

Str_len = Len(From_Text)
For i = 1 To Str_len
ch = Asc(Mid$(From_Text, i, 1))
If ch >= MIN_ASC And ch <= MAX_ASC Then
ch = ch - MIN_ASC
offset = Int((NUM_ASC + 1) * Rnd)
ch = ((ch + offset) Mod NUM_ASC)
ch = ch + MIN_ASC
To_Text = To_Text & Chr$(ch)
End If
Next i
End Sub

'解密子程序
Private Sub SubDecipher(ByVal Password As String, ByVal From_Text As String, To_Text As String)
Const MIN_ASC = 32 ' Space.
Const MAX_ASC = 126 ' ~.
Const NUM_ASC = MAX_ASC - MIN_ASC + 1

Dim offset As Long
Dim Str_len As Integer
Dim i As Integer
Dim ch As Integer

offset = NumericPassword(Password)
Rnd -1
Randomize offset

Str_len = Len(From_Text)
For i = 1 To Str_len
ch = Asc(Mid$(From_Text, i, 1))
If ch >= MIN_ASC And ch <= MAX_ASC Then
ch = ch - MIN_ASC
offset = Int((NUM_ASC + 1) * Rnd)
ch = ((ch - offset) Mod NUM_ASC)
If ch < 0 Then ch = ch + NUM_ASC
ch = ch + MIN_ASC
To_Text = To_Text & Chr$(ch)
End If
Next i
End Sub

'將你輸入的每個字元轉換成密碼數字
Private Function NumericPassword(ByVal Password As String) As Long
Dim Value As Long
Dim ch As Long
Dim Shift1 As Long
Dim Shift2 As Long
Dim i As Integer
Dim Str_len As Integer

'得到字元串內字元的數目
Str_len = Len(Password)
'給每個字元轉換成密碼數字
For i = 1 To Str_len
ch = Asc(Mid$(Password, i, 1))
Value = Value Xor (ch * 2 ^ Shift1)
Value = Value Xor (ch * 2 ^ Shift2)

Shift1 = (Shift1 + 7) Mod 19
Shift2 = (Shift2 + 13) Mod 23
Next i
NumericPassword = Value
End Function

10. VB 保存文件並加密!

簡單說就是做個加密『解密的兩個函數,
在保存之前把要保存的記錄先通過加密函數加密一下,再存到ini文件里,在讀取的時候先讀取ini里的信息再通過解密函數把他解密,然後在顯示在文本框上,
加密的方式有很多,異或加密法是比較快的一種

熱點內容
夢幻誅仙手游腳本ios 發布:2025-07-13 08:40:48 瀏覽:738
綠盤爆緩存 發布:2025-07-13 08:31:47 瀏覽:278
核顯用存儲 發布:2025-07-13 08:31:45 瀏覽:193
為什麼登號時顯示伺服器維護 發布:2025-07-13 08:21:44 瀏覽:893
電腦區域網連接伺服器卡頓 發布:2025-07-13 08:17:29 瀏覽:13
伺服器快閃記憶體可以用於台式電腦嗎 發布:2025-07-13 08:17:24 瀏覽:981
沃爾瑪的資料庫 發布:2025-07-13 08:07:39 瀏覽:190
c語言的search函數 發布:2025-07-13 08:06:56 瀏覽:698
有線網路伺服器連不上怎麼辦 發布:2025-07-13 08:02:39 瀏覽:244
怎麼上傳icloud 發布:2025-07-13 07:44:26 瀏覽:435