我使用以下命令将rsa键转换为pem
openssl rsa -in ~/.ssh/id_rsa -outform pem > id_rsa.pem
然而,当我尝试将这个密钥上传到Azure上托管的ubuntu服务器时,我会得到一个错误
The certificate is in an invalid format. X.509 standard format in a .cer or .pem file is supported.
将rsa键转换为pem格式的正确方法是什么?
这是我用来生成openssl rsa 4096位密钥的c函数。
bool rsa_gen_keys()
{
int ret = 0;
RSA *rsa = NULL;
BIGNUM *bignum = NULL;
BIO *bio_private = NULL;
BIO *bio_public = NULL;
int bits = 4096;
unsigned long k
我需要生成一个带有Net::SSLeay的密钥对,并将公钥发送到一个中心web服务。
我成功地生成了一个RSA对并提取了这个private.pem。如何使用Net::SSLeay提取公钥?
use Net::SSLeay;
use File::Slurp ;
my $pk = Net::SSLeay::EVP_PKEY_new();
my $rsa = Net::SSLeay::RSA_generate_key(2048, 0x10001);
Net::SSLeay::EVP_PKEY_assign_RSA($pk,$rsa);
my $pem_privkey = Net::SSLeay::
我正在尝试从生成的公钥加载一个rsa对象。我使用PEM_write_bio_RSAPublicKey生成公钥字符串。然后,我使用PEM_read_bio_RSA_PUBKEY从公钥字符串加载rsa对象。问题是rsa对象为空。据我所知,生成的字符串看起来还行。有什么想法吗?
-----BEGIN RSA PUBLIC KEY-----
MIIBCgKCAQEAxIReUspesPy6a4CPBjt/4Jt+H13q9MekMiutzNKdNO1uuwqcdqDX
pKPeTKXyUH6oCyRdUxkk6IVXGlBlxtW7OsxaYWhpfl9z3CCERCEpFmzN++dvlK2v
mc
我有个很奇怪的情况。
1.当我在文件中使用此代码时
const pathToPrivKey = path.join(__dirname, "..", "src/helpers/key/id_rsa_priv.pem");
错误是:
Error: ENOENT: no such file or directory, open 'C:\Users\arpitanand\Desktop\node-app\src\src\helpers\key\id_rsa_priv.pem'
注意,src在路径字符串中自动复制为\src\src\。
2.当我在文件中使