Quali problemi di sicurezza generale potrebbero derivare dall'uso della UUID versione 1 che espone l'indirizzo MAC?

4

Sto codificando GENERIC_WEB_SERVICE, che potrebbe potenzialmente essere eseguito come istanze multiple su più macchine lungo la linea. Sto usando gli UUID come identificatori e non ho ancora deciso se utilizzare la versione 1 o la versione 4.

In questo caso, non ho assolutamente idea di quali siano le implicazioni dell'esposizione dell'indirizzo MAC usando la versione 1. Non penso di essere preoccupato di esporre il tempo di generazione.

  • Ci sono potenziali problemi?
  • Potrei applicare una maschera XOR sulla parte dell'UUID che rappresenta l'indirizzo MAC. La stessa maschera verrebbe utilizzata da ogni istanza del servizio in esecuzione. Gestisce sufficientemente i suddetti potenziali problemi?
posta Nan L 22.03.2013 - 19:34
fonte

1 risposta

5

Un UUID si intende, per costruzione, per essere unico in tutto il mondo. L'UUID della versione 1 lo raggiunge in un contesto di entità cooperanti . Tuttavia, gli indirizzi MAC e l'ora corrente non sono esattamente valori segreti; se qualcuno osserva diversi UUID versione 1 prodotti da una determinata macchina, può riuscire a prevedere il valore dell'UUID futuro prodotto dalla stessa macchina. A seconda di cosa usi l'UUID, questo può o non può essere un problema. Nota che nascondere il MAC con una maschera XOR o qualcosa del genere non risolve il problema.

UUID versione 4 usa 122 bit da un PRNG crittografico strong , il che li rende imprevedibili. È più strong e migliore. Ciò garantisce l'unicità anche in presenza di entità ostili .

Riepilogo: in caso di dubbi, usa UUID v4.

    
risposta data 22.03.2013 - 20:09
fonte

Leggi altre domande sui tag