Это мой первый пост в Stackoverflow, поэтому я буду признателен за любые предложения по улучшению.
Я попробовал следующее из здесь Так что я пытаюсь закодировать строковое сообщение, дайте емубыть "тест", с Microsoft RSACryptoServiceProvider с помощью BouncyCastle.
У меня есть заданный открытый ключ, где провайдер сервера уже описал мне, как устроен открытый ключ.
открытый ключ:
Открытый ключ - это шестнадцатеричная строка, и я извлек модуль и показатель степени в отдельные переменные и сохранил их как строки Base64.Модуль и экспонента сохраняются в другой переменной в виде строки XML для использования в качестве RSAKeyValue.
string strModulusAndExponentAsXml = "<RSAKeyValue><Modulus>00970348B03E911DCCE5ED8F555C2116DBC4D7E96D4C1CDC4BBBAAD26BAA54B5C834F604F9DFB391459459772FB51D00AFD0FE3A9B2DA724E62113A9E8C95BEF377CB5FCF7FEBE42E5282A0DA50F01D5D2635DD958F9836CFB4F8B616777C0CF67DB9A5530AD679E321972E4D4F4F33DED057CB690417A3B42FBFCE2AD9FDD80C815AF1EC858C796D4EA2F17954E4BFAD08E3E0397FA34122AC5951D889B06359A401E5506E50FA176B5A77FAB84E25CFCDBF2330AA173DA1156C8B79D6DB6BFAE828B00811183E63F137648E1FC1786B52D815C248BCADDDF6A17C941414F67A23ADFE82FE76196B64B96E36F8604FA00E8E357F5AE6C83B992D622D5E9CD9C1D</Modulus><Exponent>010001</Exponent></RSAKeyValue>";
string strModulusAndExponentAsBase64 = Base64Encode(strModulusAndExponentAsXml);
Теперь я хочу создать объект Asn1Object и предоставить параметр байта
Asn1Object obj = Asn1Object.FromByteArray(Convert.FromBase64String(strModulusAndExponentAsBase64));
, и здесь это не удается, я получаю ошибку:
System.IO.IOException: 'обнаружен неизвестный тег 28'
Кто-нибудь знает, что я делаю неправильно, поэтому я могу создать Asn1Ojbect с заданным показателем степени и модулем?Дайте мне знать, если что-то неясно.