Dipende da quanti file ci sono e da come sono assegnati i collegamenti. Uno sviluppatore attento alla sicurezza renderà l'ID casuale per ogni file. La difficoltà di indovinare l'ID casuale di qualcun altro si basa sulla lunghezza dell'ID e sul numero di caratteri che compongono l'alfabeto.
Quanto è grande lo spazio delle chiavi?
Il link che hai postato ha 28 caratteri, ma hai detto che ne hai cancellato uno, quindi lo chiameremo 29 caratteri. Possiamo vedere i caratteri ASCII e numeri maiuscoli e minuscoli. Quindi, assumiamo anche che l'alfabeto sia composto solo da quei gruppi. Questo ci lascia con una dimensione di alfabeto di 62 caratteri. Per calcolare la dimensione dello spazio tasti usiamo
keyspace = (alphabet size)**(length of ID)
così
keyspace = (62)**(29) = 9.5358409e+51
Questo è un numero follemente grande. Quindi, in sostanza, dovresti fare supposizioni 9.5e + 51 per trovare un file particolare. Si noti che quanto sopra presuppone un ID che è sempre di 29 caratteri. Se l'ID è di lunghezza variabile (ad esempio, tra 29 e 50 caratteri), i numeri esplodono ancora di più.
Qual è la possibilità di ottenere il file di qualcun altro?
La domanda diventa "Se scelgo un ID casuale qual è il probabile cappuccio che restituirò un file".
Questa domanda può essere risolta solo se sai quanti ID validi ci sono. Per semplicità, supponiamo che ogni persona sul pianeta (7.1e + 10) abbia caricato migliaia di file. Ciò significherebbe che ci sono 7,1 + 12 ID validi. Anche se ipotizzassimo questo numero (e penso che possiamo essere tutti d'accordo sul fatto che il numero è molto più basso nella realtà), il probabile cappuccio di indovinare un numero corretto sarebbe
Likely hood of correct guess = (number of valid IDs)/(keyspace)
= 7.1e+12 / 9.5e+51
= 0.00000000000000000000000000000000000000074
In conclusione
Quindi, per essere sufficientemente protetto, lo sviluppatore dovrebbe garantire:
- Lo spazio delle chiavi dell'ID è sufficientemente grande
- L'ID viene generato in modo sicuro e casuale.