Dire che ho una grande applicazione per la quale vorrei creare un'API sicura. Il modo standard per andare sarebbe lavorare con una chiave API pubblica e una chiave API segreta e fornirle all'utente. Successivamente, in ogni richiesta API, i messaggi vengono firmati utilizzando un MAC sulla chiave segreta e (in parte il messaggio).
Ora, dal momento che questa applicazione è grande, non voglio dover selezionare il mio campo messaggio su base gateway per API (ad esempio se la mia richiesta API era per rispondere a una domanda, message=answer
, se la mia richiesta API era per la pubblicazione di un commento message=comment
ecc ...).
Per comodità vorrei quindi aggiungere un campo casuale crittograficamente sicuro, che viene aggiunto ad ogni richiesta (chiamiamo questo campo il nostro salt
). In questo modo posso scrivere una verifica di richiesta che copre tutte le situazioni.
Le mie domande ora sono:
Questa è una buona idea e perché (non) così?