Вопрос

Я хотел бы реализовать Слепая подпись RSA в .NET. Есть ли способ использовать стандарт System.Security.Cryptography API для этого достичь?

«Очевидная» идея не работает:

using (var rsa = new RSACryptoServiceProvider())
  signed = rsa.Decrypt(messageBytes, false);
                // CryptographicException: bad data

Я ценю опасность слепой подписи, но давайте игнорируем тех, кто на мгновение. Кроме того, я не заинтересован в других типах цифровых подписей.

Это было полезно?

Решение

Вы собираетесь бросить вас. Вы можете использовать класс Biginteger .NET 4 или просто используйте библиотеку BouncycaCtle C #.

Другие советы

Вы можете использовать метод «Signdata», чтобы подписать любые данные, которые вам нравятся. Он имеет перегрузки для байтовых массивов и ручьев. Что касается ослепления, вы, вероятно, захотите использовать зашифрованные данные (используя ключ, недоступную для сигнала), а затем подписать это.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top