Yo siempre lo he hecho asi:
Código:
UPDATE RDB$PROCEDURES
SET RDB$PROCEDURE_SOURCE = NULL
WHERE RDB$PROCEDURE_SOURCE IS NOT NULL
Para los SP, y para los Triggers:
Código:
UPDATE RDB$TRIGGERS
SET RDB$TRIGGER_SOURCE = NULL
WHERE RDB$TRIGGER_SOURCE IS NOT NULL
y siempre ha funcionado, incluso en Firebird 1.5
Nota: El código (fuente) no se oculta, realmente se elimina.