gpt4 book ai didi

windows - UWP 中用于 Xamarin Forms 项目的 AES 加密

转载 作者:可可西里 更新时间:2023-11-01 11:46:15 26 4
gpt4 key购买 nike

我有几个简单的加密函数需要在 Windows 10 的新 UWP 应用程序中使用。由于 AesManaged 在 UWP 中不可用,我查看了 Windows.Security.Cryptography.Core 文档和此处的帖子,但似乎无法让它发挥作用。例如,我还没有找到设置填充的位置。这两个函数使用也在字节数组中的 key 对字节数组缓冲区的内容进行加密和解密。

    byte[] Buffer;

private void EncryptBuff(byte[] sessionKey)
{
AesManaged myAes = new AesManaged();

myAes.Mode = CipherMode.ECB;
myAes.KeySize = 128;
myAes.Key = sessionKey;
myAes.Padding = PaddingMode.Zeros;

ICryptoTransform encryptor = myAes.CreateEncryptor();
Buffer = encryptor.TransformFinalBlock(Buffer, 0, Buffer.Length);
}

private void DecryptBuff(byte[] sessionKey)
{
AesManaged myAes = new AesManaged();

myAes.Mode = CipherMode.ECB;
myAes.KeySize = 128;
myAes.Key = sessionKey;
myAes.Padding = PaddingMode.Zeros;

ICryptoTransform decryptor = myAes.CreateDecryptor();
Buffer = decryptor.TransformFinalBlock(Buffer, 0, Buffer.Length);
}

如能提供任何帮助将其转换为在 UWP 应用程序中运行,我们将不胜感激。此代码用于与现有硬件 Controller 通信,因此我无法更改内容以提高安全性。

此外,这是针对 Xamarin Android/iOS/UWP 项目的,因此据我所知,不幸的是,.NET Core 不是一个选项。原始代码在 Android/iOS 中运行良好,但在 UWP 中运行不正常。

谢谢!

最佳答案

虽然 AesManaged 在 .NET Core 1.0 或 1.1 中不可用,但 Aes.Create() 可用。如果你更换

AesManaged myAes = new AesManaged();

Aes myAes = Aes.Create();

一切都将只适用于 .NET Core/UWP 包。

关于windows - UWP 中用于 Xamarin Forms 项目的 AES 加密,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44020198/

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