Skip to main content

Создание ключа GPG

Если у вас нет существующего ключа GPG, можно создать новый ключ GPG для подписывания фиксаций и тегов.

Поддерживаемые алгоритмы ключей GPG

GitHub Enterprise Server поддерживает несколько алгоритмов ключей GPG. При попытке добавить ключ, созданный с помощью неподдерживаемого алгоритма, может возникнуть ошибка.

  • RSA
  • ElGamal
  • DSA
  • ECDH
  • ECDSA
  • EdDSA

Создание ключа GPG

Примечание. Перед созданием ключа GPG необходимо подтвердить свой адрес электронной почты. Если вы еще не сделали этого, то не сможете подписывать фиксации и метки с помощью GPG.

  1. Скачайте и установите программы командной строки GPG для своей операционной системы. Как правило, рекомендуется устанавливать последнюю версию для вашей операционной системы.

  2. Откройте ТерминалТерминалGIT Bash.

  3. Создайте пару ключей GPG. Так как версий GPG несколько, может потребоваться обратиться к соответствующей странице руководства, чтобы найти команду создания ключей. Ключ должен использовать RSA.

    • Если вы используете версию 2.1.17 или более позднюю, вставьте приведенный ниже текст, чтобы создать пару ключей GPG.
      Shell
      $ gpg --full-generate-key
    • В других версиях команда gpg --full-generate-key не работает. Вставьте приведенный ниже текст и перейдите к шагу 6.
      Shell
      $ gpg --default-new-key-algo rsa4096 --gen-key
  4. В командной строке укажите нужный тип ключа или нажмите клавишу Enter, чтобы принять значение по умолчанию.

  5. В командной строке укажите нужный размер ключа или нажмите клавишу Enter, чтобы принять значение по умолчанию. Размер ключа должен быть не менее 4096 бит.

  6. Введите срок действия ключа. Нажмите Enter, чтобы принять значение по умолчанию: бессрочный ключ. Если вам не требуется установка даты окончания срока действия, рекомендуется принять значение по умолчанию.

  7. Проверьте правильность выбранных параметров.

  8. Введите идентификатор пользователя.

    Примечание. При запросе адреса электронной почты введете подтвержденный адрес, связанный с вашей учетной записью GitHub.

  9. Введите надежную парольную фразу.

  10. Команда gpg --list-secret-keys --keyid-format=long позволяет получить длинную форму ключей GPG, для которых у вас есть открытый и закрытый ключ. Закрытый ключ необходим для подписания фиксаций или тегов.

    Shell
    $ gpg --list-secret-keys --keyid-format=long

    Примечание. В некоторых установках GPG в Linux для просмотра списка существующих ключей может требоваться gpg2 --list-keys --keyid-format LONG. В этом случае также нужно будет настроить Git для использования gpg2, выполнив git config --global gpg.program gpg2.

    1. Из списка ключей GPG скопируйте длинную форму идентификатора ключа GPG, который вы хотите использовать. В этом примере идентификатором ключа GPG является `3AA5C34371567BD2`: ```shell{:copy} $ gpg --list-secret-keys --keyid-format=long /Users/hubot/.gnupg/secring.gpg ------------------------------------ sec 4096R/3AA5C34371567BD2 2016-03-10 [expires: 2017-03-10] uid Hubot ssb 4096R/4BB6D45482678BE3 2016-03-10 ```
  11. Вставьте приведенный ниже текст, подставив нужный идентификатор ключа GPG. В этом примере идентификатором ключа GPG является 3AA5C34371567BD2:

    Shell
    $ gpg --armor --export 3AA5C34371567BD2
    # Prints the GPG key ID, in ASCII armor format
  12. Скопируйте ключ PGP, начиная с -----BEGIN PGP PUBLIC KEY BLOCK----- и заканчивая -----END PGP PUBLIC KEY BLOCK-----.

  13. Добавьте ключ GPG в учетную запись GitHub.

Дополнительные материалы