php - ejemplos - tablas en html5
¿Por qué los sitios web tienden a usar identificaciones aleatorias en tablas de bases de datos? (3)
¿Estás seguro de que los ID son aleatorios? o son codificados? De cualquier manera es por seguridad.
Me pregunto por qué muchos sitios web eligen usar identificaciones aleatorias en lugar de aumentar de 1 en sus tablas de base de datos. He buscado sin encontrar ninguna buena razón, ¿hay alguna?
Además, ¿cuál es el mejor método para usar? Parece bastante ineficiente comprobar si ya existe una identificación antes de insertar los datos (toma una segunda consulta).
¡Gracias por tu ayuda!
Las identificaciones secuenciales no se escalan bien (se convierten en un cuello de botella de sincronización en sistemas distribuidos).
Además, no es necesario que compruebe si ya existe un ID aleatorio recién generado; simplemente puede suponer que no es así (porque hay muchos de ellos).
Bajo el capó, es probable que estén usando identificadores incrementales en la base de datos para identificar filas, pero el valor que se expone a los usuarios finales a través de los parámetros de la URL a menudo se convierte en una cadena aleatoria para hacer que la secuencia de objetos disponibles sea más difícil de adivinar .
Es realmente una cuestión de seguridad a través de la oscuridad. Impide que los scripts automatizados avancen a través de valores incrementales e intenten ataques a través de la URL, y dificulta el raspado automatizado del contenido del sitio.
Si youtube, por ejemplo, usó identificadores incrementales en lugar de valores como v=HSsdaX4s
, puede descargar cada uno simplemente comenzando en v=1
e incrementando ese valor millones de veces.