Discuss this help topic in SecureBlackbox Forum
Remove a subkey from an OpenPGP key
There are two options to remove a subkey from the primary key. The first option is where you need to remove the subkey publicly and let other infrastructure users about the removal. In this case we are talking about subkey revocation. Please read Revoke OpenPGP Key article for more details.
If you only need to remove the subkey from your local keyring without revoking it, you can simply remove it from the list of subkeys attached to the keys. Open your keyring and find the appropriate TElPGPPublicKey or TElPGPSecretKey object. Iterate over its Subkeys[] property (get_Subkeys() method on certain platforms) looking for the subkey you want to remove. Once found, remove the subkey with the primary key object's RemoveSubkey() method.
The RemoveSubkey() call will remove all the signatures associated with the subkey automatically.
Note that adding or removing a secret subkey affects both the secret and public parts of the key, so you need to update both your public and secret keyring files to propagate the change.