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

时间:2016-01-20 05:56:05

标签: uwp des

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

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

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

请帮帮我谢谢。

1 个答案:

答案 0 :(得分:1)

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

对于您的解密用例,您需要使用DecryptAsync方法,除了加密数据和IV之外,还需要一个执行操作的密钥。

您需要的密钥将由SymmetricKeyAlgorithmProvider类创建。因此,通过打开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);