В настоящее время я работаю над простой частью подписи данных. Я впервые использую подписывание, так что, возможно, я просто делаю что-то не так. Но я не думаю, что это нормально, что для подписи 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.
Это нормально, что это занимает так много времени или возникает ошибка?
Спасибо за любую помощь.