7,765
社区成员
发帖
与我相关
我的任务
分享
Option Explicit
'加密字符串
Public Function JiaMiString(ByVal strSource As String, ByVal MA As Currency) As String
'该函数只对中西文起到加密作用
'参数为:源文件,密码
On Error GoTo ErrEnDeCode
Dim X As Double, i As Integer
Dim CHARNUM As Currency, RANDOMINTEGER As Currency
Dim SINGLECHAR As String * 1
Dim strTmp As String
If MA < 0 Then
MA = MA * (-1)
End If
X = Rnd(-MA)
For i = 1 To Len(strSource) Step 1 '取单字节内容
SINGLECHAR = Mid(strSource, i, 1)
CHARNUM = Asc(SINGLECHAR)
g: RANDOMINTEGER = Int(127 * Rnd)
If RANDOMINTEGER < 30 Or RANDOMINTEGER > 100 Then GoTo g
CHARNUM = (1031 * CHARNUM) Xor (131 * RANDOMINTEGER)
CHARNUM = CHARNUM Xor RANDOMINTEGER
strTmp = strTmp & Chr(CHARNUM)
DoEvents
Next i
JiaMiString = strTmp
Exit Function
ErrEnDeCode:
JiaMiString = ""
Debug.Print Err.Number & "\" & Err.Description
End Function
Private Sub Command1_Click()
Debug.Print JiaMiString("1003.56", 20091117) '结果为: 眵賠韨喾?餫
End Sub
'加密
dim sData as string
dim aData1() as byte, aData2 as byte
dim sBase64 as string
sData = "1003.56"
aData1 = StrConv(sData,vbFromUnicode)
aData2 = Real_Enocde(aData1,password)
sBase64 = Base64_Encode(aData2)
debug.print sBase64
'解密
dim sData as string
dim aData1() as byte, aData2 as byte
dim sBase64 as string
sBase64 = "..."
aData2 = Base64_Decode(sBase64)
aData1 = Real_Decode(aData2,password)
sData = StrConv(aData1,vbUnicode)
debug.print sData
Option Explicit
Dim shuzi As String
Dim strzh As String
Dim shuziHY As String
Dim i As Long
Private Sub Command1_Click() '加密
For i = 1 To Len(shuzi)
strzh = strzh & Chr(Asc(Mid(shuzi, i, 1)) + 15)
Next
Text2 = strzh
End Sub
Private Sub Command2_Click() '解密
For i = 1 To Len(shuzi)
shuziHY = shuziHY & Chr(Asc(Mid(strzh, i, 1)) - 15)
Next
Text3 = shuziHY
End Sub
Private Sub Form_Load()
shuzi = "1003.56"
Text1 = shuzi
End Sub
Private Sub Form_Load()
Text1 = 1003.56
End Sub
Private Sub Command1_Click() '加密
Dim i As Integer
Dim temp As String
For i = 1 To Len(Text1)
temp = temp & Chr(Asc(Mid(Text1, i, 1)) Xor 97)
Next
Text1 = temp
End Sub
Private Sub Command2_Click() '解密
Dim temp As String
Dim i As Integer
For i = 1 To Len(Text1)
temp = temp & Chr(Asc(Mid(Text1, i, 1)) Xor 97)
Next
Text1 = temp
End Sub