Identificatore del cookie di firma (HMAC)

2

Relativo a questa altra domanda sulla condivisione del segreto per firmare i cookie , la mia domanda è più banale: come è veramente sicuro firmare un semplice identificatore di cookie?

Ad esempio, la libreria expressjs#session richiede un segreto , ma dice anche all'inizio del documento:

Session data is not saved in the cookie itself, just the session ID. Session data is stored server-side.

Ma non vedo alcun vantaggio nel creare un HMAC di un identificatore, perché questo valore sarà comunque un token al portatore per lo stato del server.

    
posta lucasvc 18.05.2015 - 17:02
fonte

1 risposta

1

Penso che un HMAC fornisca poca sicurezza aggiuntiva se l'ID di sessione è difficile da indovinare. Ad esempio, un PRNG lungo e sicuro. Ma se l'ID di sessione è semplice da indovinare, c'è il rischio di sequestro di sessione .

Poiché il framework expressjs ti consente di fornire una funzione di creazione dell'ID di sessione che restituisce gli ID con proprietà di sicurezza sconosciute, un HMAC sembra una buona strategia.

L'impostazione predefinita utilizza la libreria uid2 che sembra (io non sono un utente NodeJS quindi non sono sicuro) un PRNG sicuro (vedi codice sorgente ). In questo caso, un HMAC sembra avere meno valore.

    
risposta data 18.05.2015 - 20:28
fonte

Leggi altre domande sui tag