我的key和iv都是指向cpu和主板序號,只能找個修改一下給你,key和iv可以是0-255的任意數值,用連續(xù)的編號的方式是便于數碼芹襪首和位數,md5部分自己寫吧
成都創(chuàng)新互聯公司堅持“要么做到,要么別承諾”的工作理念,服務領域包括:成都網站建設、做網站、企業(yè)官網、英文網站、手機端網站、網站推廣等服務,滿足客戶于互聯網時代的北辰網站設計、移動媒體設計的需求,幫助企業(yè)找到有效的互聯網解決方案。努力成為您成熟可靠的網絡建設合作伙伴!
'vb點虐 2005
Imports System.Diagnostics
Imports System.Security.Cryptography
Imports System.IO
Public Class Form1
Public My_key() As Byte = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23}
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim aa, bb As String
aa = EncryptTripleDES("今天很冷123456789")
bb = DecryptTripleDES(aa)
End Sub
'TRIPLE DES加密
Private Function EncryptTripleDES(ByVal value As String) As String
Dim des_iv() As Byte = {0, 1, 2, 3, 4, 5, 6, 7}
Dim cryptoProvider As TripleDESCryptoServiceProvider = New TripleDESCryptoServiceProvider()
Dim ms As MemoryStream = New MemoryStream()
Dim cs As CryptoStream = New CryptoStream(ms, cryptoProvider.CreateEncryptor(My_key, des_iv), CryptoStreamMode.Write)
Dim sw As StreamWriter = New StreamWriter(cs)
'Dim a As Integer
'a = cryptoProvider.KeySize '密鑰大小
sw.Write(value)
sw.Flush()
cs.FlushFinalBlock()
ms.Flush()
Return Convert.ToBase64String(ms.GetBuffer(), 0, ms.Length)
End Function
'遲激TRIPLE DES解密
Private Function DecryptTripleDES(ByVal value As String) As String
Dim des_iv() As Byte = {0, 1, 2, 3, 4, 5, 6, 7}
Dim cryptoProvider As TripleDESCryptoServiceProvider = New TripleDESCryptoServiceProvider()
Dim buffer As Byte() = Convert.FromBase64String(value)
Dim ms As MemoryStream = New MemoryStream(buffer)
Dim cs As CryptoStream = New CryptoStream(ms, cryptoProvider.CreateDecryptor(My_key, des_iv), CryptoStreamMode.Read)
Dim sr As StreamReader = New StreamReader(cs)
Return sr.ReadToEnd()
End Function
End Class
首先,還是談談圖像像素時數據獲取方面吧,點虐 中的圖像相關類基本上都是基于GDI+的,因此,圖像數據的獲取其實也是調用GDI+的一些函數。這個函數就是LockBits,在vb點虐 中彩色圖像數據的快速獲取 一文中,我們是調用了Marshal.Copy把LockBits鎖定的內存數據拷貝到數據中,然后對數組中的值進行處理。這樣做主要的原因是VB.NET不好直接訪問內存(Marshal.ReadByte之類的函數不適合用于大型的循環(huán)中)。那么,這就造成了2個不好的事情,第一:在同一時間需要2倍于圖像數據量的內存,第二:內存數據拷貝到數據,以及處理后再把數組的數據拷貝會內存中都是會減低速度的。困搭春作為一種改進,我們應該充分利用LockBits的功能。LockBits中的LockMode中有一種模式為ImageLockMode.UserInputBuffer,該模式下需要用戶先申請內存,然后在把枝橘圖像數據按照相關格式填充如這個內存中。這樣,就可以先定義個數組,然后把圖像數據填充到這個數組中,就避免了來回拷貝的耗時了,簡汪耐單示例代碼如下:
Dim BmpData As New BitmapData
Stride = ((Bmp.Width * 3 + 3) And HFFFFFFFC)
Dim PixleValue(Stride * Bmp.Height) As Byte
Dim Hanlde As GCHandle = GCHandle.Alloc(PixleValue, GCHandleType.Pinned)
BmpData.Scan0 = Hanlde.AddrOfPinnedObject()
"我有一個確認無檔咐錯的程序"
其實它把數據先壓縮成16進制bcd值(數據長度為原先一半),處理完后把結果再展開成16進春橘制串(長度加倍,即16個字符)
有dll函數可用(和你的確認無錯的程序一樣效果):
Private Declare Function icePub_desEncryptionHex Lib "icePubDll.dll" (ByVal strInputHexstring As String,ByVal strOutputHexstring As String,ByVal strKeyHexstring As String) As Integer
Private Declare Function icePub_desDecryptionHex Lib "icePubDll.dll" (ByVal strInputHexstring As String,ByVal strOutputHexstring As String,ByVal strKeyHexstring As String) As Integer
Private Declare Function icePub_3desEncryptionHex Lib "icePubDll.dll" (ByVal strInputHexstring As String,ByVal strOutputHexstring As String,ByVal strDoubleKeyHexstring As String) As Integer
Private Declare Function icePub_3desDecryptionHex Lib "icePubDll.dll" (ByVal strInputHexstring As String,ByVal strOutputHexstring As String,ByVal strDoubleKeyHexstring As String) As Integer
Dim str1 As String
str1 = Space(1024)
a2 = icePub_desEncryptionHex("6060606060606060", str1, "6060606060606060")
MsgBox str1
str1 = Space(1024)
a2 = icePub_desDecryptionHex("6060606060606060", str1, "扒蠢團6060606060606060")
MsgBox str1
str1 = Space(1024)
a2 = icePub_3desEncryptionHex("6060606060606060", str1, "60606060606060606565656565656565")
MsgBox str1
str1 = Space(1024)
a2 = icePub_3desDecryptionHex("6060606060606060", str1, "60606060606060606565656565656565")
MsgBox str1
'icePubDll.dll收郵件即可
'或下載即可
"采用DES算法"這個說法不明確,首先是使用多少位的DES進行加密,通常是128位或192位,其次是,要先把主密鑰轉化成散列,才能供DES進行加密,轉化的方法是什么沒有明確,通常是md5,所以有的銀行卡說是128位md5 3DS就是指用md5轉換主密鑰散列,用DES進行加密,但是DES本身是64位(包含校驗碼),舉蘆巖2DES是128位,3DES是192位,但正御是沒有2DES的叫法,所以128位、192位統(tǒng)稱3DES
要完整的md5+3DS實例嘩吵,需要100分以上,要不到我的空間中查找相關的文章
文章標題:vb點虐
3des的簡單介紹
本文鏈接:http://www.chinadenli.net/article4/ddpgioe.html
成都網站建設公司_創(chuàng)新互聯,為您提供服務器托管、微信公眾號、、做網站、響應式網站、小程序開發(fā)
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯