난 파일 100 MB 이상의 작게 ecnrypt 수 있지만 어레이의 메모리 사용량 증가 X7 및 프로그램 패스 2기가바이트 메모리 제한VB.Net는 암호화 파일 증가 바이트 배열 X7
예 Test.rar 크기 1백메가바이트
을 행 파일 바이트를 운반 암호화 한 후프로그램 7백메가바이트 램을 사용하고
' AesCryptoServiceProvider
Dim aes As New AesCryptoServiceProvider()
aes.BlockSize = 128
aes.KeySize = 256
aes.Key = Encoding.UTF8.GetBytes("12K2K2K2K2K2K2K212K2K2K2K2K2K2K2")
aes.IV = Encoding.UTF8.GetBytes("12K2K2K2K2K2K2K2")
aes.Mode = CipherMode.CBC
aes.Padding = PaddingMode.PKCS7
' Convert string to byte array
Dim src As Byte() = My.Computer.FileSystem.ReadAllBytes("C:\TestFolder\Test.rar")
' encryption
Using enc As ICryptoTransform = aes.CreateEncryptor()
Dim dest As Byte() = enc.TransformFinalBlock(src, 0, src.Length)
Dim ms As New MemoryStream 'Create New Memory Space
Dim cs As New CryptoStream(ms, aes.CreateEncryptor, mode:=CryptoStreamMode.Write) 'Write İn Ms
cs.Write(dest, 0, dest.Length)
cs.Close()
Dim ss() As Byte = ms.ToArray
My.Computer.FileSystem.WriteAllBytes("C:\TestFolder\TestCopy.rar", ss, True)
ms.Dispose()
cs.Dispose()
src = Nothing
ss = Nothing
dest = Nothing
상수 IV는 각 메시지마다 다른 IV 점을 완전히 놓칩니다. 또한 키는 바이너리이므로 UTF-8을 사용하여 인코딩 할 수 없습니다 (16 진수 및 64 진수). – CodesInChaos