Skip to content

SSH agent can't import RSA keys (PKCS#1 / PEM) #15088

@Root-Core

Description

@Root-Core

Steps To Reproduce

  1. Create a new SSH key entry
  2. Copy a valid RSA key (PKCS1) into the clipboard
  3. Try to import the key

Expected Result

The RSA key should be imported.

Actual Result

The RSA key will not be imported.

Screenshots or Videos

No response

Additional Context

This is the format Oracle / OCI uses to hand out the generated SSH certs.

You can actually workaround by converting the key into the PKCS#8 or "OpenSSH" format.
I used the npm package sshpk-conv to achieve this.


Example, all of them represent the same cert:

PKCS#1 / PEM (not working):

-----BEGIN RSA PRIVATE KEY-----
MIIEpgIBAAKCAQEA6FORkScy3fuYXGTuGFcACNcaMYXlOQsxqBzscHMyk3H4FcjF
HwbhcdaAlemDXWGRYiNtKudJDFBSPzm70WYtTcqpQ5VDwY6t00oeTbRGXpH2K9gg
lsG7L1iv0w0yNWK9091HnfWlBmkaqathtxwzDnhRpjKo8Bcjx6lzZzms5QAmL13D
LWnt7uwLDZIRuyiQYAQyy5/H+NDmPlD8Lrhk8chYkHN/o1Gl218xODzirg/IJ+qO
J07f9HDdn9CYgn2x+DnwZKwMW8rZd96N8ElWb9jqAqLlAItZ4KBH9Zq+/UatwxCN
i7ZMLyV2AUX+pwNykXKdwvv5xZyuhs/S4WKGSQIDAQABAoIBAQDEsxR4/+YqWbzq
5S1NAEPwOCZeLY4gmOCnBC4PGwmEGqc/0mdK2KmBl2nxAu8M3fGYVIQ2IfIP8eVg
0IG7TbYnueFLbhIay7FSRduYUHyPzybMgkU9PrM75+udVfvfhUVRHnVnQLZC0jQX
2Rl3TfHQW4BNpXCxLfZGMqqZiBRhIP04wJt9PFxBOzwUYx7c/XJNQ7DMS42DAR1R
NpS3mxW5pZf1uLzXzBifqSdudZREHiDxUSfddHhT7DOXyHwkxQ+se1Ufu+CqGtlx
l2YNL+ZMinP0NtqWoSS1IkgeLRI/k0O2aXXAvdkQMT1D27b9X8WAx3V6bJdo9EuJ
TqZyicI9AoGBAPYW5n2B3t9bAaE/Ri3jAvXyF1eZCsL3hJo9WIxupOXXqFcH8dOH
utEWpjQlp84lo0wSpb6rjZiBDzmjuTWPYj/a0ywn00ja97raThPvABvGBkdMvAjx
Pgi3L6F5fJf+9zDCHl4Je4AZWryhZrL0KtFn25JffUVzT4xn3g1YtsRbAoGBAPGu
xrWos6xzdx7LJiO+U8VoQ6YUiBCwYVRIqu+fYA35vETcAa02bDZmYgGU+qbk/bgI
BuvrXi/sdfKaJZs0BooAhjhMqGkMF1zhPkyTbfv05eCEYkgLr6WqPZW2Qjhf88yN
8u141Cz8gLpDtdoB8JpU507G3BdGAdXmXtX56JErAoGBAIF3tNWM8ONTbr0Vm+di
Sll4fz1Pv/Co5fN7mM1xHIHrfp4jCN//xZJhNxmyQeFbvdi06swwVzNHmun5L+R0
xfzQNE9DuI3Y3YJJfdBQ6h6yhPUX8slFmhxdu8pZLuqMciINzoostPPE4w7gXzaA
7NH0sPkGEdLrAovczV76MFWHAoGBAItWUIn7MVuDVnISfXKuEG4HprjhrXCxv+tv
2d087YwhJ0Ir9Wt/rPPQI0D2O2xtKTooppTtpefLVFUCOhw46mw10Sw0RgQKTI3n
7psHhKl2j/HZYTBYTHQeqlLeOV93MoAEdsIin3EwQqcg0n9WDvlradApJkrkubow
jwyegE7xAoGBAM85enaDezGggJqzaBbmhLsVqUiBoNoslDl2peAXq8j/PDa/gZOJ
tIULkC0JzqOCJEFp05tgUSxCwFqx8e5RxINMQC92jaMf0RD0Q8Oish8PlDHDqViJ
v0gPhww51pVChBWBxOW2v4GeFhWbeKz+nvQ1/FKUEkaz4EMkrP62qMEb
-----END RSA PRIVATE KEY-----

PKCS#8 (working):

-----BEGIN PRIVATE KEY-----
MIIEwAIBADANBgkqhkiG9w0BAQEFAASCBKowggSmAgEAAoIBAQDoU5GRJzLd+5hc
ZO4YVwAI1xoxheU5CzGoHOxwczKTcfgVyMUfBuFx1oCV6YNdYZFiI20q50kMUFI/
ObvRZi1NyqlDlUPBjq3TSh5NtEZekfYr2CCWwbsvWK/TDTI1Yr3T3Ued9aUGaRqp
q2G3HDMOeFGmMqjwFyPHqXNnOazlACYvXcMtae3u7AsNkhG7KJBgBDLLn8f40OY+
UPwuuGTxyFiQc3+jUaXbXzE4POKuD8gn6o4nTt/0cN2f0JiCfbH4OfBkrAxbytl3
3o3wSVZv2OoCouUAi1ngoEf1mr79Rq3DEI2LtkwvJXYBRf6nA3KRcp3C+/nFnK6G
z9LhYoZJAgMBAAECggEBAMSzFHj/5ipZvOrlLU0AQ/A4Jl4tjiCY4KcELg8bCYQa
pz/SZ0rYqYGXafEC7wzd8ZhUhDYh8g/x5WDQgbtNtie54UtuEhrLsVJF25hQfI/P
JsyCRT0+szvn651V+9+FRVEedWdAtkLSNBfZGXdN8dBbgE2lcLEt9kYyqpmIFGEg
/TjAm308XEE7PBRjHtz9ck1DsMxLjYMBHVE2lLebFbmll/W4vNfMGJ+pJ251lEQe
IPFRJ910eFPsM5fIfCTFD6x7VR+74Koa2XGXZg0v5kyKc/Q22pahJLUiSB4tEj+T
Q7ZpdcC92RAxPUPbtv1fxYDHdXpsl2j0S4lOpnKJwj0CgYEA9hbmfYHe31sBoT9G
LeMC9fIXV5kKwveEmj1YjG6k5deoVwfx04e60RamNCWnziWjTBKlvquNmIEPOaO5
NY9iP9rTLCfTSNr3utpOE+8AG8YGR0y8CPE+CLcvoXl8l/73MMIeXgl7gBlavKFm
svQq0Wfbkl99RXNPjGfeDVi2xFsCgYEA8a7GtaizrHN3HssmI75TxWhDphSIELBh
VEiq759gDfm8RNwBrTZsNmZiAZT6puT9uAgG6+teL+x18polmzQGigCGOEyoaQwX
XOE+TJNt+/Tl4IRiSAuvpao9lbZCOF/zzI3y7XjULPyAukO12gHwmlTnTsbcF0YB
1eZe1fnokSsCgYEAgXe01Yzw41NuvRWb52JKWXh/PU+/8Kjl83uYzXEcget+niMI
3//FkmE3GbJB4Vu92LTqzDBXM0ea6fkv5HTF/NA0T0O4jdjdgkl90FDqHrKE9Rfy
yUWaHF27ylku6oxyIg3Oiiy088TjDuBfNoDs0fSw+QYR0usCi9zNXvowVYcCgYEA
i1ZQifsxW4NWchJ9cq4QbgemuOGtcLG/62/Z3TztjCEnQiv1a3+s89AjQPY7bG0p
OiimlO2l58tUVQI6HDjqbDXRLDRGBApMjefumweEqXaP8dlhMFhMdB6qUt45X3cy
gAR2wiKfcTBCpyDSf1YO+Wtp0CkmSuS5ujCPDJ6ATvECgYEAzzl6doN7MaCAmrNo
FuaEuxWpSIGg2iyUOXal4BeryP88Nr+Bk4m0hQuQLQnOo4IkQWnTm2BRLELAWrHx
7lHEg0xAL3aNox/REPRDw6KyHw+UMcOpWIm/SA+HDDnWlUKEFYHE5ba/gZ4WFZt4
rP6e9DX8UpQSRrPgQySs/raowRs=
-----END PRIVATE KEY-----

OpenSSH format (working):

-----BEGIN OPENSSH PRIVATE KEY-----
b3BlbnNzaC1rZXktdjEAAAAABG5vbmUAAAAEbm9uZQAAAAAAAAABAAABFwAAAAdzc2gtcn
NhAAAAAwEAAQAAAQEA6FORkScy3fuYXGTuGFcACNcaMYXlOQsxqBzscHMyk3H4FcjFHwbh
cdaAlemDXWGRYiNtKudJDFBSPzm70WYtTcqpQ5VDwY6t00oeTbRGXpH2K9gglsG7L1iv0w
0yNWK9091HnfWlBmkaqathtxwzDnhRpjKo8Bcjx6lzZzms5QAmL13DLWnt7uwLDZIRuyiQ
YAQyy5/H+NDmPlD8Lrhk8chYkHN/o1Gl218xODzirg/IJ+qOJ07f9HDdn9CYgn2x+DnwZK
wMW8rZd96N8ElWb9jqAqLlAItZ4KBH9Zq+/UatwxCNi7ZMLyV2AUX+pwNykXKdwvv5xZyu
hs/S4WKGSQAAA8CfHVlOnx1ZTgAAAAdzc2gtcnNhAAABAQDoU5GRJzLd+5hcZO4YVwAI1x
oxheU5CzGoHOxwczKTcfgVyMUfBuFx1oCV6YNdYZFiI20q50kMUFI/ObvRZi1NyqlDlUPB
jq3TSh5NtEZekfYr2CCWwbsvWK/TDTI1Yr3T3Ued9aUGaRqpq2G3HDMOeFGmMqjwFyPHqX
NnOazlACYvXcMtae3u7AsNkhG7KJBgBDLLn8f40OY+UPwuuGTxyFiQc3+jUaXbXzE4POKu
D8gn6o4nTt/0cN2f0JiCfbH4OfBkrAxbytl33o3wSVZv2OoCouUAi1ngoEf1mr79Rq3DEI
2LtkwvJXYBRf6nA3KRcp3C+/nFnK6Gz9LhYoZJAAAAAwEAAQAAAQEAxLMUeP/mKlm86uUt
TQBD8DgmXi2OIJjgpwQuDxsJhBqnP9JnStipgZdp8QLvDN3xmFSENiHyD/HlYNCBu022J7
nhS24SGsuxUkXbmFB8j88mzIJFPT6zO+frnVX734VFUR51Z0C2QtI0F9kZd03x0FuATaVw
sS32RjKqmYgUYSD9OMCbfTxcQTs8FGMe3P1yTUOwzEuNgwEdUTaUt5sVuaWX9bi818wYn6
knbnWURB4g8VEn3XR4U+wzl8h8JMUPrHtVH7vgqhrZcZdmDS/mTIpz9DbalqEktSJIHi0S
P5NDtml1wL3ZEDE9Q9u2/V/FgMd1emyXaPRLiU6mconCPQAAAIEAzzl6doN7MaCAmrNoFu
aEuxWpSIGg2iyUOXal4BeryP88Nr+Bk4m0hQuQLQnOo4IkQWnTm2BRLELAWrHx7lHEg0xA
L3aNox/REPRDw6KyHw+UMcOpWIm/SA+HDDnWlUKEFYHE5ba/gZ4WFZt4rP6e9DX8UpQSRr
PgQySs/raowRsAAACBAPYW5n2B3t9bAaE/Ri3jAvXyF1eZCsL3hJo9WIxupOXXqFcH8dOH
utEWpjQlp84lo0wSpb6rjZiBDzmjuTWPYj/a0ywn00ja97raThPvABvGBkdMvAjxPgi3L6
F5fJf+9zDCHl4Je4AZWryhZrL0KtFn25JffUVzT4xn3g1YtsRbAAAAgQDxrsa1qLOsc3ce
yyYjvlPFaEOmFIgQsGFUSKrvn2AN+bxE3AGtNmw2ZmIBlPqm5P24CAbr614v7HXymiWbNA
aKAIY4TKhpDBdc4T5Mk2379OXghGJIC6+lqj2VtkI4X/PMjfLteNQs/IC6Q7XaAfCaVOdO
xtwXRgHV5l7V+eiRKwAAAAhnZW40LmtleQE=
-----END OPENSSH PRIVATE KEY-----

Operating System

Linux

Operating System Version

CachyOS - rolling

Installation method

Other

Build Version

2025.5.0

Issue Tracking Info

  • I understand that work is tracked outside of GitHub. A PR will be linked to this issue should one be opened to address it, but Bitwarden doesn't use fields like "assigned", "milestone", or "project" to track progress.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions