¿Puedo eliminar un conjunto de claves GPG especificado con --keyring mientras la transmisión se está cifrando actualmente?

¿Puedo eliminar un conjunto de claves GPG especificado con --keyring mientras la transmisión se está cifrando actualmente?

Tengo un proyecto en el que estoy cifrando una secuencia de esta manera:

some_command | gpg --keyring tempkeyring.gpg --recipient "person" --output filename.gpg --encrypt

Entonces, mientras se realiza la transmisión y el cifrado ya ha comenzado, ¿perjudicará el proceso de eliminar el conjunto de claves actualmente utilizado? El conjunto de claves es temporal y se crea de nuevo cada vez que se ejecuta el script. Supongo que el kernel aún permitirá que el sistema acceda al archivo y una vez que gpg haya terminado, liberará espacio. ¿Se desactivará gpg o finalizará bien el cifrado?

Los sistemas operativos son kernels Linux RHEL y CentOS 2.6+ si eso marca la diferencia.

Respuesta1

Investigué y, si bien esto responde a los kernels de Linux, de ninguna manera incluye otros sistemas operativos o sistemas de archivos.

A gpg no le importa. Sospecho que trata esto como cualquier otra eliminación dentro del sistema. En entornos *nix, cuando eliminas un archivo, en realidad estás "desvinculando" ese archivo. Cuando elimina todos los enlaces a un archivo, el sistema ENTONCES elimina el archivo y libera espacio. Lo que hacen los kernels de Linux (y Unix, estoy seguro...) es desvincular el archivo, luego verificar si algún programa está usando esos archivos y, si lo están, esperan hasta que el programa que los usa se cierre y luego liberan el archivo. espacio eliminando realmente el archivo. Dado que el archivo ya estaba desvinculado, nadie más puede acceder a ese archivo, pero la aplicación actualmente abierta no tendrá problemas siempre que no intente acceder al archivo por su nombre y solo use el identificador actualmente abierto.

información relacionada