Когда вы заключаете значение в кодировке base64 в BEGIN PRIVATE KEY
, вы сообщаете тому, кто использует это значение, что оно находится в определенном формате. Это не просто число d. У вас есть несколько форматов - если я помню, вы можете использовать PKCS # 1 https://tools.ietf.org/html/rfc3447 или PKCS # 8.
Самый простой способ отформатировать ваш PKCS 1, Например, это использовать некоторую библиотеку cryptographi c, которая позволяет вам указать ключ в XML, например, и попросить его создать значение DER или PEM в кодировке base64. Например, в C# у вас есть RSA.FromXmlString (String). Создайте XML с соответствующими значениями, включая ваш d, и попросите библиотечную функцию построить ключ RSA, а затем попросите его предоставить вам формат PEM этого ключа. Это даст вам, например, файл с BEGIN PRIVATE KEY
, который вы затем можете сделать следующим шагом и использовать для расшифровки всего, что у вас есть.