当前位置:首页 » 密码管理 » 二进制流加密

二进制流加密

发布时间: 2025-09-09 01:28:32

A. C#的DES加密解密模块加密解密16进制文本的代码或例子

''' <summary>
''' 二进制文件流加密类
''' </summary>
''' <remarks></remarks>
Public Class EncryptionDES

''' <summary>
''' 默认密钥向量
''' </summary>
''' <remarks></remarks>
Private Shared Keys As Byte() = New Byte() {&H12, &H34, &H56, 120, &H90, &HAB, &HCD, &HEF}

''' <summary>
''' 文件加密
''' </summary>
''' <param name="encryptBy">待加密文件流</param>
''' <param name="encryptKey">密钥</param>
''' <returns></returns>
''' <remarks></remarks>
Public Shared Function EncryptDES(ByVal encryptBy As Byte(), ByVal encryptKey As String) As Byte()
Dim mStream As MemoryStream = Nothing
Dim cStream As CryptoStream = Nothing
Try
Dim rgbKey As Byte() = Encoding.UTF8.GetBytes(encryptKey.Substring(0, 8))
Dim rgbIV As Byte() = Keys
Dim dCSP As New DESCryptoServiceProvider
mStream = New MemoryStream
cStream = New CryptoStream(mStream, dCSP.CreateEncryptor(rgbKey, rgbIV), CryptoStreamMode.Write)
cStream.Write(encryptBy, 0, encryptBy.Length)
cStream.FlushFinalBlock()
Return mStream.ToArray
Catch
Return encryptBy
Finally
mStream.Dispose()
mStream.Close()
cStream.Flush()
cStream.Dispose()
cStream.Close()
End Try
End Function

''' <summary>
''' 文件解密
''' </summary>
''' <param name="decryptBy">待解密文件流</param>
''' <param name="decryptKey">密钥</param>
''' <returns></returns>
''' <remarks></remarks>
Public Shared Function DecryptDES(ByVal decryptBy As Byte(), ByVal decryptKey As String) As Byte()
Dim mStream As MemoryStream = Nothing
Dim cStream As CryptoStream = Nothing
Try
Dim rgbKey As Byte() = Encoding.UTF8.GetBytes(decryptKey)
Dim rgbIV As Byte() = Keys
Dim DCSP As New DESCryptoServiceProvider
mStream = New MemoryStream
cStream = New CryptoStream(mStream, DCSP.CreateDecryptor(rgbKey, rgbIV), CryptoStreamMode.Write)
cStream.Write(decryptBy, 0, decryptBy.Length)
cStream.FlushFinalBlock()
Return mStream.ToArray
Catch
Return decryptBy
Finally
mStream.Dispose()
mStream.Close()
cStream.Flush()
cStream.Dispose()
cStream.Close()
End Try
End Function

End Class

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim by As Byte()
Dim sfd As New SaveFileDialog
sfd.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.MyComputer)
sfd.Filter = "test(*.test)|*.testa"
If sfd.ShowDialog = DialogResult.OK Then
Dim stream As Stream = File.Open(sfd.FileName, FileMode.Create)
Dim formatter As New BinaryFormatter()
formatter.Serialize(stream, tClass)
stream.Close()

by = File.ReadAllBytes(sfd.FileName)
File.WriteAllBytes(sfd.FileName, EncryptionDES.EncryptDES(by, "05320532"))
End If
End Sub

热点内容
java返回this 发布:2025-10-20 08:28:16 浏览:594
制作脚本网站 发布:2025-10-20 08:17:34 浏览:889
python中的init方法 发布:2025-10-20 08:17:33 浏览:583
图案密码什么意思 发布:2025-10-20 08:16:56 浏览:766
怎么清理微信视频缓存 发布:2025-10-20 08:12:37 浏览:685
c语言编译器怎么看执行过程 发布:2025-10-20 08:00:32 浏览:1014
邮箱如何填写发信服务器 发布:2025-10-20 07:45:27 浏览:257
shell脚本入门案例 发布:2025-10-20 07:44:45 浏览:115
怎么上传照片浏览上传 发布:2025-10-20 07:44:03 浏览:807
python股票数据获取 发布:2025-10-20 07:39:44 浏览:714