Varias ideas ... La criptografía de clave pública es la respuesta más flexible.
Ofuscación (solo para código)
Para las partes del código que desea ocultar, ¿podría colocarlas en un proyecto diferente, compilarlas y registrar solo el código compilado, no la fuente? Esto es no encriptado y no es adecuado para encriptar contraseñas o claves. Las personas aún pueden aplicar ingeniería inversa a su código compilado, pero no obtienen la fuente.
Repositorio GIT privado
¿Tiene que ser un público git repositorio?
Almacenamiento del servidor
¿Puede almacenar esta información en un archivo protegido en el directorio de inicio de la cuenta de usuario en la que se ejecuta la aplicación? Copiaría la forma en que ssh hace esto con ~ / .ssh / id_rsa y un chmod de 600. En su defecto, podría usarse una variable de entorno. Necesita un lugar en el servidor para almacenar algún tipo de clave, o no hay forma de proteger nada.
Criptografía simétrica (solo para ti)
Si usted es el único desarrollador, puede poner una clave en el servidor y tener esa misma clave en su máquina y usar un esquema de cifrado simétrico para proteger algunos datos como una contraseña o un certificado. Compartir una clave simétrica con amigos se complica.
Criptografía asimétrica (para múltiples desarrolladores)
Si otros desarrolladores necesitan registrar cosas secretas en un repositorio público de git, se realizó una criptografía de clave pública / clave privada (asimétrica) para este tipo de cosas. Instale una clave privada en su servidor (¡no la ingrese en el control de código fuente) y genere una clave pública a partir de ella! Cifre sus datos secretos utilizando la clave pública del servidor. Solo el servidor puede descifrar esos datos usando su clave privada. Incluso puede ingresar la clave pública en el control de origen para que otras personas puedan cifrar los datos usando la misma clave pública y solo el servidor pueda descifrarlos.
Herramienta
Openssl es probablemente la única herramienta de criptografía que necesitarás. No escriba su propio algoritmo de criptografía o su propia implementación de un algoritmo publicado.
Pensamientos finales
Si el "servidor" es un servidor web que usa https, entonces ya debería tener un almacén de claves de algún tipo en el servidor para almacenar la clave privada. Es como si una empresa de hospedaje no lo hiciera. hacer concesiones para esto. Tal vez tengan algunos consejos sobre cómo otros resuelven el desafío al que te enfrentas.