在通用 Windows 平台 (UWP) 应用程序中使用 DESCryptoServiceProvider

Using DESCryptoServiceProvider in Universal Windows Platform (UWP) app

我有一个与我的网络服务通信的 UWP 应用程序,并且为了使用某些方法,我的应用程序必须加密参数。 对于解密,我们在

中使用了 DESCryptoServiceProvider and CryptoStream
System.Security.Cryptography

但 UWP 没有 System.Security.Cryptography, 并且 Windows.Security.Cryptography 不包含 DESCryptoServiceProvider and CryptoStream!!!

请帮助我谢谢。

在通用 Windows 应用程序中,您必须使用 CryptographicEngine 进行加密和解密操作。

对于您的解密 use-case,您将使用 DecryptAsync 方法,这需要 - 除了加密数据和 IV - 一个执行操作的密钥。

您需要的密钥将由 SymmetricKeyAlgorithmProvider class. Therefore, initialize a new instance by opening the desired algorithm 创建并创建密钥。

例如:

// Static method call, "SymmetricAlgorithmNames" has several DES algorithms,
// so choose the correct one
var provider = SymmetricKeyAlgorithmProvider
                   .OpenAlgorithm(SymmetricAlgorithmNames.DesEcbPkcs7);
var key = provider.CreateSymmetricKey(myKeyMaterial);