Скорость подписания с помощью RSACryptoServiceProvider

В настоящее время я работаю над простой частью подписи данных. Я впервые использую подписывание, так что, возможно, я просто делаю что-то не так. Но я не думаю, что это нормально, что для подписи 448 байт требуется 4,6 секунды с использованием 512-битного хеширования RSA и SHA1.

Код:

byte[] Data = enc.GetByte(MsgString); //Get Message as byte[]
//Data is 448 bytes long

RSACryptoServiceProvider Crypter = new RSACryptoServiceProvider(512);
Crypter.ImportCspBlob(Convert.FromBase64String(KeyString));

byte[] SignedData = Crypter.SignData(Data, "SHA1"); //Line takes 4.6 seconds

Почему это так медленно? Я нашел это: http://support.microsoft.com/kb/948080 , но это проблема .NET 2.0. Я использую 4.0.

Это нормально, что это занимает так много времени или возникает ошибка?

Спасибо за любую помощь.

9
задан Marks 23 November 2010 в 16:44
поделиться