O SSH usa chaves, enquanto o SSL tende a usar certificados X.509 (e o SSH não é baseado em SSL, a propósito).
Um certificado (chave pública) é mais do que apenas uma chave pública: é a associação entre uma chave pública, um identificador (por exemplo, DN do Assunto) e outros atributos, sendo que o todo está assinado (pelo emissor para certificados X.509) .
Ao usar o RSA, por exemplo, é possível extrair o material de chave pública (módulo e expoente público) e transformá-lo em um certificado. O que falta neste modelo é que as chaves SSH são apenas isso, elas não são "assinadas" ou "emitidas" como os certificados X.509 são. Você não verá o aspecto da PKI usado com frequência no SSL em seu modelo. Uma maneira fácil de contornar isso seria criar um certificado autoassinado. Você teria que importá-lo explicitamente em seu cliente para torná-lo confiável ou importá-lo na primeira vez que se conectar a ele (que é afinal muito semelhante ao que acontece na primeira vez que você se conecta a um servidor SSH).
Os formatos de chaves RSA para SSH e X.509 são diferentes, então você precisará escrever algum código para ler o módulo e os expoentes das chaves SSH e produzir o certificado X.509 e a chave privada em um formato utilizável por Pilhas SSL.
Esta pergunta no StackOverflow deve ser de interesse (embora seja feita ao contrário)