У меня есть следующий открытый ключ, сгенерированный из Java, как RSA:Java для Win32 Crypto API
305c300d06092a864886f70d0101010500034b003048024100ab12b3ee64b85bdda7e9744df3210d9b0efc7fbd36385cd903a4f8ee51101bc9c4f0b23583ff090e7d61773e024cbbff4008037cba6538d1c70d865c948716e70203010001
Я пытаюсь импортировать ключ в следующем:
1) Декодирование строки байт массив (Ключ)
public static byte[] DecodeKey(string data)
{
int count = data.Length;
byte[] key = new byte[count/2];
for (int i = 0; i < count ; i += 2)
key[i/2] = Convert.ToByte(data.Substring(i, 2), 16);
return key;
}
2) CryptAcquireContext
использованием Microsoft Strong Cryptographic Provider
и PROV_RSA_FULL
.
3) Затем позвоните по телефону CryptImportKey
с помощью вышеуказанного ключа и key.Length
.
возвращает:
Bad версии провайдера.
Если это Java, почему вы отметили C#, C++ * и * C?!? – Borgleader
Он создан на Java и хочет импортировать его на C или C#. – user2179256
Внесите свою собственную версию RSA в Java и C#, ее не так сложно –