Diciamo che sto usando diverse funzioni di crittografia da una libreria di terze parti e quelle funzioni di crittografia non dovrebbero mai fallire perché il mio codice, e non un utente, sta inviando tutti gli argomenti (buffer, dimensioni, ecc.) quindi se il la funzione fallisce a causa di un "errore interno". Diciamo che ho una funzione rsa e una funzione hash, la mia domanda è:
Se queste funzioni falliscono, il mio codice dovrebbe restituire internal_error
codice di errore per entrambi i guasti? O dovrebbe restituire rispettivamente rsa_internal_error
e hash_internal_error
?
Restituire solo internal_error
rivela che un errore interno e non di più è più difficile eseguire il debug se il mio codice può restituire internal_error
da più posizioni in una funzione.
D'altro canto, restituire un codice di errore specifico per ogni tipo di errore rende più facile il debug, ma rivela anche più informazioni all'utente.
Quale pratica è migliore?
La restituzione di specifici codici di errore interni può aiutare gli aggressori nei loro tentativi di penetrazione?
EDIT: si tratta di sistemi incorporati, quindi siamo economici sui log. Poiché questo errore non dovrebbe verificarsi (non dipende dall'input o qualcosa del genere) di solito non registriamo quegli errori.