Создать файл PEM в Python

Чтобы создать файл PEM в Python, вы можете использовать различные методы в зависимости от ваших конкретных требований. Вот несколько распространенных подходов:

  1. Использование библиотеки криптографии:

    from cryptography.hazmat.primitives import serialization
    from cryptography.hazmat.primitives.asymmetric import rsa
    private_key = rsa.generate_private_key(
       public_exponent=65537,
       key_size=2048
    )
    pem = private_key.private_bytes(
       encoding=serialization.Encoding.PEM,
       format=serialization.PrivateFormat.PKCS8,
       encryption_algorithm=serialization.NoEncryption()
    )
    with open('private_key.pem', 'wb') as f:
       f.write(pem)
  2. Использование библиотеки pyOpenSSL:

    from OpenSSL import crypto
    key = crypto.PKey()
    key.generate_key(crypto.TYPE_RSA, 2048)
    with open('private_key.pem', 'wb') as f:
       f.write(crypto.dump_privatekey(crypto.FILETYPE_PEM, key))
  3. Использование библиотеки paramiko:

    import paramiko
    key = paramiko.RSAKey.generate(2048)
    key.write_private_key_file('private_key.pem')

Эти методы генерируют закрытый ключ и сохраняют его в файл PEM. Не забудьте установить необходимые библиотеки (cryptography, pyOpenSSLили paramiko) с помощью pip перед их использованием.