gpt4 book ai didi

vb.net - "Invalid algorithm specified"在 OFB 密码模式下使用 AES (VB.NET)

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:03:19 25 4
gpt4 key购买 nike

我必须使用 OFB 密码模式的 AES 加密,我使用 VB.NET 4.5、windows 8 和以下代码:

   Public Function DoEncryption(ByVal KeyArray() As Byte, ByVal IVArray() As Byte, ByVal Buffer As String) As Byte()
Dim encrypted() As Byte
Using a As Aes = Aes.Create()
a.Mode = CipherMode.OFB

Dim encryptor As ICryptoTransform
encryptor = a.CreateEncryptor(KeyArray, IVArray)


' Create the streams used for encryption.
Using msEncrypt As New MemoryStream()
Using csEncrypt As New CryptoStream(msEncrypt, encryptor, CryptoStreamMode.Write)
Using swEncrypt As New StreamWriter(csEncrypt)

'Write all data to the stream.
swEncrypt.Write(Buffer)
End Using
encrypted = msEncrypt.ToArray()
End Using
End Using
End Using

Return encrypted

End Function

我在

处遇到错误“指定的算法无效”
  swEncrypt.Write(Buffer)

有什么建议吗?

最佳答案

是的,它可以使用 @Plutonix 提到的 BouncyCaSTLe使用 Nuget 安装 BouncyCaSTLe 后我的新代码是:

Imports System.Security.Cryptography
Imports System.IO
Imports Org.BouncyCastle.Crypto
Imports Org.BouncyCastle.Security
Imports Org.BouncyCastle.Crypto.Parameters
Public Class EncryptionFunction
Public Function DoEncryption(ByVal KeyArray() As Byte, ByVal IVArray() As Byte, ByVal Buffer As Byte()) As Byte()

Dim ae As New CipherKeyGenerator()
ae.Init(New KeyGenerationParameters(New SecureRandom(), 256))
Dim aesKeyParam As KeyParameter = ParameterUtilities.CreateKeyParameter("AES", KeyArray)
Dim aesIVKeyParam As ParametersWithIV = New ParametersWithIV(aesKeyParam, IVArray)
Dim cipher As IBufferedCipher = CipherUtilities.GetCipher("AES/OFB/NoPadding")
cipher.Init(True, aesIVKeyParam)
Dim encrypted() As Byte = cipher.DoFinal(Buffer)


Return encrypted

End Function
End Class

谢谢你:)

关于vb.net - "Invalid algorithm specified"在 OFB 密码模式下使用 AES (VB.NET),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30560523/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com