Sto costruendo un'API RESTful stateless e sto usando un token per l'autenticazione. Il problema che sto avendo è che non sono sicuro di quanto sia sicuro HMAC.
Sto utilizzando una libreria Token Web JSON che consente me crittografare e decrittografare i dati che ho passato.
Fondamentalmente, il modo in cui funziona è questo:
Se lo passo questo JSON:
{
token: "asdasdasdass",
userId: 1234
}
Restituisce 325345ljljn5llnk4.245j4k5j4525ñ4j55n
, dove la prima parte è codificata in JSON base64 e la seconda parte è in HMAC.
Ad esempio, se inserisco:
{
sessionId: 145
}
C'è un modo in cui un utente malintenzionato può generare un token valido con l'ID di sessione che desidera? È fattibile?
Inoltre, quanto dovrebbe durare la mia chiave?
Non ho trovato risposte su questo sito ... e ho letto molto.