Me gustaría darles a los clientes un número de orden de aspecto aleatorio pero use 0, 1, 2, ... en el back-end. De esta forma, el cliente obtiene una URL de estado de pedido sin contraseña con el número de orden cifrado y no puede mirar los números de pedido de otros clientes agregando o restando 1. Esto podría reemplazar un esquema donde se generan claves de orden aleatorio, se verifica su exclusividad entre todos los pedidos anteriores, y vuelto a generar hasta que sea único. Cuando el servidor web recibe una solicitud para ver un pedido, descifra el número de pedido y recupera el pedido.¿Qué algoritmo de cifrado de bloque "bueno" tiene la salida más corta?
Para mantener la URL corta, ¿qué "buen" algoritmo de cifrado tiene el tamaño de bloque más corto? ¿Es este esquema una buena idea? (¿Qué pasa si encripta los identificadores de los empleados de Apple, Inc. para evitar que Steve Jobs solicite el Empleado # 0?)
Observe que todos los sitios web de seguimiento de paquetes le permiten rastrear paquetes sin autenticación. Estaría bien limitar la cantidad de información que se muestra en la página de estado de pedido sin contraseña.
¿Por qué? ¿No cree que un [UUID] (http://en.wikipedia.org/wiki/UUID) o un [Identificador global único] (http://en.wikipedia.org/wiki/Globally_Unique_Identifier) sería lo mejor para ¿ese? Hay bibliotecas para hacerlo. –
Es un poco extraño que coloque un estado de orden detrás de un enlace no protegido con contraseña.La seguridad por oscuridad no es muy buena seguridad en absoluto. – Chaos