2014-10-10 5 views
2

У нас возникла проблема с загрузкой данных на ледник на компьютере под управлением Windows XP. Ниже приведено сообщение об ошибке «Указанный криптографический алгоритм на этой платформе не поддерживается».Указанный криптографический алгоритм не поддерживается на этой платформе в Glacier Upload

Ошибка происходит в строке (для .net низкого уровня ледниковой API)

client.UploadMultipartPart(uploadMPUrequest); 

, а также при использовании высокого уровня API ниже приведен код

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

Прочитав несколько ссылок, мы узнали, что Windows XP не поддерживает криптографию. Но у нас много клиентов, работающих под управлением XP, есть ли какое-либо решение или какое-либо исправление для него.

Я столкнулся с проблемой исправления ошибок при поиске ошибки, но она работает на сервере Windows Server и не удалась для Windows XP.

ответ

1

Я использовал версию AWSDK версии 2.3, и это решило проблему, но с использованием более высокой версии привело к тому, что во многих пространствах имен использовались имена имен используемых классов.

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 и AES Cryptographic Provider (Prototype)" и переименуйте его в "Microsoft Enhanced RSA и AES Cryptographic Provider".

Система должна быть XP SP3.

+0

Я предполагаю, что API Galcier по умолчанию использует алгоритм SHA256 для вычисления контрольной суммы, я не вижу его явно указанным в примере кода. так вот как я не могу его изменить. –

+0

Если вы угадали (и я так думаю), трюк реестра должен быть единственным решением. Вам просто нужно создать файл '.reg', который изменит реестр и предоставит его вашим клиентам: o) – Orace

+0

ошибка ниже происходит в методе uploadMultipartPart. это в методе сборки, представленной Amazon Glacier API –

Смежные вопросы