Используя PyCrypto, я смог генерировать публичную и частную сериализацию PEM для ключа RSA, но в PyCrypto класс DSA не имеет метода exportKey().Как сгенерировать сериализацию PEM для общедоступного ключа RSA/DSA
Trying PyOpenSSL Мне удалось создать приватную сериализацию PEM для RSA и DSA-ключей, bu не существует метода crypto.dump_publickey в PyOpenSSL.
Я ищу предложение о том, как сгенерировать сериализацию PEM для ключей RSA и DSA.
Большое спасибо!
PS: Между тем, я изменил код PyOpenSSL, чтобы экспортировать метод dump_privatekey для криптографического API. PyOpenSSL ошибка и патч можно найти на сайте: https://bugs.launchpad.net/pyopenssl/+bug/780089
Я уже использовал Twisted.conch поэтому я решил эту проблему, вручную генерации ключа DSA/RSA с использованием PyCrypto, а затем инициализации twisted.conch.ssh.key . Используйте этот ключ. Класс Key из Conch предоставляет метод toString для сериализации строк.
Благодарит за Ваш ценный пример. Я просто хочу сгенерировать пары ключей из Python, чтобы их можно было использовать с OpenSSH. Я заботился о ключевой части. Для открытого ключа я думаю, что мне нужен ** SubjectPublicKeyInfo **, так как это то, что я читаю с man-страницы. Когда используется с открытым ключом, он использует структуру SubjectPublicKeyInfo: это ошибка, если ключ не является DSA. 'Еще раз спасибо! –
Я нашел формат открытого ключа в файле Twisted: http://twistedmatrix.com/trac/browser/tags/releases/twisted-11.0.0/twisted/conch/ssh/keys.py#L93 –
В этом случае может вам следует ознакомиться с источниками [paramiko] (http://www.lag.net/paramiko/). – abbot