Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

143
Vistas
Generación de PINS: protección, limitación y forma más rápida

Mi tarea para hoy es generar un PIN. Un pin de cuatro dígitos. Tiene que ser al azar. ¿Existen limitaciones para hacerlo y hacerlo de la manera que planeo? Entiendo que los humanos nunca pueden crear algo VERDADERAMENTE aleatorio, pero bueno, tenemos que intentarlo.

Actualmente lo estoy generando en el cliente (JS), luego lo paso al Modelo (C #) y esto se inyecta en el DB (Oracle). Las únicas medidas de seguridad en las que puedo pensar hasta ahora son generar desde 0001> en adelante hasta menos de 10000, por lo que 9999 será el número más alto. Cualquier cosa que se devuelva que esté entre estos dos números, siempre que no se haya usado antes en mi lógica, es aleatoria; también sabemos que tenemos que verificar la base de datos para ver si el PIN ya existe SI NO, luego generarlo.

Supongo que puedo:

 onGen() { //generate pin var pin = characters.charAt(Math.floor(Math.random() * charactersLength)); //check db if pin exists const exists = checkDB('select pin from pins where pin =' + pin + ';') //if pin exist generate again if(exists) pin = characters.charAt(Math.floor(Math.random() * charactersLength)); //also should I put my login of 0001 > and < 10000 in the SELECT or js? if pin > 0000 return pin //or this checkDB('select pin from pins where pin =' + pin + 'AND pin > 0001 and pin < 10000;') }
about 4 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda