CamiloYate09 / verifiedCommits

Verified Commits on GPG Key

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

verifiedCommits

@Author: [Camilo Yate] [camiloyate09@pm.me] [https://camiloyate.com/] Verified Commits on GPG Key

PRIMEROS PASOS

  1. Instalar GPG (https://www.gpg4win.org/)
  2. Crear una clave GPG
  3. Aquí la descripción de la imagen por si no carga
  4. Aquí la descripción de la imagen por si no carga Aquí la descripción de la imagen por si no carga
  5. Luego de presionar el bóton de generar, se debe ingresar una contraseña para la clave GPG (Está clave es muy importante, porque en cada Commit, nuestro IDE la va a solicitar)
  6. Ahora se ingresan los siguientes comandos en la terminal de git bash o PowerShell:
  7. Comando para conocer la llave GPG: gpg --list-secret-keys --keyid-format LONG
  8. Aquí la descripción de la imagen por si no carga
  9. Nota, en la imagen anterior se presenta un nombre y correo difirente, en ese caso se debe reemplazar por el nombre y correo que se utilizó en el paso 3.
  10. Comando para exportar la llave GPG: gpg --armor --export <ID de la llave GPG>
  11. Aquí la descripción de la imagen por si no carga
  12. Ahora ejecutamos los siguientes comandos git config --global user.name "TESTING FIRMA", este nombre debe ser el mismo que se utilizó en el paso 3. Y debe hacer match con el repositorio de GitHub o Gitlab.
  13. Ahora el correo que se tiene asociado con la cuenta de Github o Gitlab git config --global user.email <tu_correo_electronico@ejemplo.com>
  14. Luego poner el ID de la firma generada, en el paso 7 sobre la Palabra que indica 'sec' -> rsa4096/{ID} git config --global user.signingkey 43A638604C6789AB Aquí la descripción de la imagen por si no carga
  15. Ahora se debe configurar el commit para que sea firmado por defecto git config --global commit.gpgsign true
  16. Ahora se debe configurar el siguiente parámetro git config --global tag.gpgsign true
  17. Ahora se debe configurar el commit para que sea firmado por defecto git config --global merge.verifySignatures true
  18. Ahora se debe configurar la ruta de GPG git config --global gpg.program "C:\Program Files (x86)\GnuPG\bin\gpg.exe" Para conocer la ruta se debe ejecutar el siguiente comando where gpg Aquí la descripción de la imagen por si no carga
  19. Finalmente la llave GPG se debe agregar en GitHub o Gitlab, para ello se debe copiar el contenido del paso 10 y pegarlo en la configuración de la cuenta. Aquí la descripción de la imagen por si no carga Y para Gitlab 🐈 Aquí la descripción de la imagen por si no carga
  20. Ahora se debe crear un repositorio en GitHub o Gitlab y clonarlo en local.
  21. Configuración de la firma con el IDE de gusto, en este caso IntelliJ IDEA. Aquí la descripción de la imagen por si no carga
  22. Ahora se debe crear un archivo de texto con el nombre README.md y agregar el contenido que se desee.
  23. Y probamos el commit con la firma git commit -S -m "Prueba de firma" y realizamos un Push al repositorio remoto luego pedirá la contraseña de la llave GPG.
  24. Verificamos en el repositorio remoto, que todos nuestro commit´s estén firmados. Aquí la descripción de la imagen por si no carga

Beneficios:

  1. Autenticación: Los commits firmados permiten verificar que el autor del commit es quien dice ser.
  2. Integridad: Los commits firmados garantizan que el código no ha sido modificado desde que se realizó el commit.
  3. No repudio: Los commits firmados permiten al autor del commit no negar haber realizado el commit.

Referencias:

About

Verified Commits on GPG Key

License:Mozilla Public License 2.0