E C Publi c ключ из publi c байт ключа, извлеченный из azure keyvault - PullRequest
0 голосов
/ 17 февраля 2020

как получить publi c ключ из байтов? например, у меня есть ключ publi c (сгенерированный по алгоритму E C, кривая "secp256r1") и его закодированные байты на java. Как я могу создать ключ publi c из этих байтов в c#?

1 Ответ

0 голосов
/ 05 марта 2020

Существуют разные способы получения ключа из хранилища. Для этого я использовал следующее:

var secret = keyVaultClient.GetSecretAsync(vaultAddress, "Honeywellpkiofflinetokenprime256v1cert").GetAwaiter().GetResult();
 X509Certificate2Collection exportedCertCollection = new X509Certificate2Collection();
            exportedCertCollection.Import(Convert.FromBase64String(secret.Value));


            X509Certificate2 certFromSecret = exportedCertCollection.Cast<X509Certificate2>().Single(s => s.HasPrivateKey);
            var publickeybyte = certFromSecret.GetPublicKey();
            var publicekeybyte = certFromSecret.GetPublicKeyString();
            var PublicKeyCNG= certFromSecret.GetECDsaPublicKey();


            var privateECDsa = LoadPrivateKey(FromHexString(privateKey));
            var publiccECDsa = LoadPublicKey(FromHexString(publicKey));

, теперь вы можете использовать тот же ключ для проверки вашей подписанной информации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...