Glacier Upload中此平台不支持指定的加密算法

时间:2014-10-10 12:36:33

标签: c# windows-xp amazon-glacier

我们在Windows XP机器上将数据上传到冰川时遇到了问题。以下是错误消息 “此平台不支持指定的加密算法。”

行发生错误(对于.net低级别冰川API)

client.UploadMultipartPart(uploadMPUrequest);

以及使用以下高级API时的代码是

string archiveId =   manager.Upload(vaultName,"name",archiveToUpload).ArchiveId;

在阅读几个链接时,我们发现Windows XP不支持加密。但我们有很多客户端运行XP机器,有没有任何解决方案或任何热修复。

我在搜索错误时遇到了一个热门修复程序,但它适用于Windows服务器计算机而且没有运气的Windows XP。

2 个答案:

答案 0 :(得分:1)

假设你的加密算法是SHA256。

如果您可以访问代码,则可以尝试使用SHA256Managed而不是SHA256CryptoServiceProvider。

该算法将由框架运行,而不是尝试由平台运行。

如果您需要性能,可以尝试使用平台算法,然后框架实现一个(Thomas Dufour解决方案):

    SHA256 hash;
    try
    {
        hash = new SHA256Cng( );
    }
    catch ( PlatformNotSupportedException )
    {
        hash = SHA256.Create( );
    }

另一个解决方案描述here是重命名注册表中的加密服务。

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Defaults\Provider中,找到名为“Microsoft Enhanced RSA and AES Cryptographic Provider(Prototype)”的子项并将其重命名为 “Microsoft增强型RSA和AES加密提供程序”。

系统必须是XP SP3。

答案 1 :(得分:1)

我使用了AWSDK 2.3版并解决了这个问题,但是使用更高版本导致了许多命名空间,并在代码中使用了类名更改。