对文件作简单的加密

在加密方法中有一种最原始的替换法,即将某一字符串中的某一些字符用特定字符替换或相互交换位置,本文的例子用异或、替换的方法替换文件二进制码达到加密目的。
Option Explicit
Public Const GENKEY = &H18 '//密钥
Public Function CodeFile(ByVal lpSrcFile As String, _
ByVal lpDesFile As StringAs Boolean

    CodeFile 
= False

On Error GoTo ErrHandle:

    
If Dir(lpSrcFile) <> "" Then
        
Dim FileSize As Long, FileNumber As Integer
        FileSize 
= FileLen(lpSrcFile)
        
Dim arrbytes() As Byte, j As Long
        
ReDim arrbytes(1 To FileSize) As Byte
        
        FileNumber 
= FreeFile
        
'//打开源文件
        Open lpSrcFile For Binary Access Read As #FileNumber
            
Get #FileNumber, , arrbytes()
        Close #FileNumber
        
        
'//对每一字节进行异或处理
        For j = 1 To FileSize
            arrbytes(j) 
= Abs(arrbytes(j) Xor GENKEY)
        
Next j
        
        
'//写入目标文件
        Open lpDesFile For Binary Access Write As #FileNumber
            Put #FileNumber, , arrbytes()
        Close #FileNumber
        
        CodeFile 
= True
    
End If

ErrHandle:

End Function
引用:
Sub Main()
    
If CodeFile("c:/file.txt""c:/file_enc.txt"= True Then
        
MsgBox "加密成功", vbInformation, "成功"
    
Else
        
MsgBox "加密失败", vbExclamation, "失败"
    
End If
End Sub
C:/ 下新建一个名为 file.txt 的文本文件,其内容为“ I love WYC!”。经加密后的新文件 file_enc.txt 文件内容为 “ Q8twn}8OA[9” 达到加密目的。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值