當前位置:首頁 » 密碼管理 » 二進制流加密

二進制流加密

發布時間: 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

熱點內容
android源碼管理系統 發布:2025-09-09 06:11:04 瀏覽:424
機刷源碼 發布:2025-09-09 05:54:48 瀏覽:620
win7文件夾無法訪問 發布:2025-09-09 05:46:14 瀏覽:261
android出棧 發布:2025-09-09 05:21:40 瀏覽:360
源碼部 發布:2025-09-09 05:15:56 瀏覽:699
vmware虛擬機linux安裝 發布:2025-09-09 04:57:40 瀏覽:690
密碼箱合不上怎麼辦 發布:2025-09-09 04:54:51 瀏覽:919
c連接字元串加密 發布:2025-09-09 04:54:50 瀏覽:284
手機中的壓縮包是什麼 發布:2025-09-09 04:46:14 瀏覽:633
linux內存溢出 發布:2025-09-09 04:39:45 瀏覽:483