Я пытался осмыслить ECDsaCng, CngKey и подписаться с действующим сертификатом EC. Сертификат выдается «Symantec Class 3 ECC 256 bit Extended Validation CA», имеет алгоритм подписи «sha256ECDSA», алгоритм хеширования подписи «sha256», параметры открытого ключа = «ECDSA_P256» и использование ключа = «Цифровая подпись ( 80) ».
Помимо ECDsaCng, я пробовал использовать JwtSecurityTokenHandler с сертификатом, но получаю исключение «алгоритм сертификата не поддерживается». Использование «стандартного» 2048-битного сертификата SSL с этим Работает нормально.
Что мне нужно сделать, так это подписать JWT с помощью ES256, и пока это работает только с использованием «случайно сгенерированного» 256-битного ключа с ECDsaCng, поэтому ответ на любой из этих вопросов действительно сделает меня счастливым:
Как заказать действительный сертификат, который можно использовать с JwtSecurityTokenHandler для подписи ES256?
Как мне создать CngKey из моего сертификата в магазине? (Закрытый ключ сертификата не экспортируется.)
Есть ли другой способ подписаться с помощью ES256 и закрытого ключа сертификата, который нельзя экспортировать из магазина?
Практически любая помощь приветствуется!
С наилучшими пожеланиями,
Хенрик