O PuTTY não suporta o formato PKCS # 8 - apenas as chaves "raw" PEM (PKCS # 1) e SSH.com "RFC4716-like". (Versões recentes também suportam o novo formato "bcrypt" do OpenSSH.)
Em outras palavras, o arquivo precisa ter um dos seguintes cabeçalhos:
-
PuTTY-User-Key-File-2: <key_type>
(PuTTY .ppk) -
-----BEGIN RSA PRIVATE KEY-----
-
-----BEGIN DSA PRIVATE KEY-----
-
-----BEGIN EC PRIVATE KEY-----
-
---- BEGIN SSH2 ENCRYPTED PRIVATE KEY ----
(SSH.com) -
-----BEGIN OPENSSH PRIVATE KEY-----
(OpenSSH)
Confusamente, as pessoas usam a mesma extensão ".pem" para os PKCS # 1 e PKCS # 8.
(Uma possível razão para a falta de suporte do PuTTYgen é que o ssh-keygen do OpenSSH sempre grava o PKCS # 1, então ninguém precisava do suporte ao PKCS # 8 até agora.)