Un generador de passwords en grails

A raíz del post en wwhatsnew donde se listan diferentes aplicaciones web para generar passwords seguras, he decidido crear un sencillo servicio de Grails que genera passwords. En DATA he quitado los números 1 y 0, y las letras L minúscula, I mayúscula y las dos oes, así se evitan confusiones del tipo “eso es una o mayúscula o un cero?”, aunque se pueden volver a añadir. La proporción de símbolos, números y letras es de 25%/25% y 50%, respectivamente. El código es autoexplicativo.

class PasswordGeneratorService {

    int DEFAULT_SIZE = 8
    Random rnd = new Random()
    String DATA =
        '!$%&().?=/*+!$%&().?=/*+'+
        '234567892345678923456789'+
        'abcdefghijkmnpqrstuvwxyz'+
        'ABCDEFGHJKLMNPQRSTUVWXYZ'

    String generateNew() {
        return generateNew(DEFAULT_SIZE)
    }

    String generateNew(int size) {
        StringBuffer result = new StringBuffer()

        size.times {
            result << DATA[rnd.nextInt(DATA.length())]
        }

        return result.toString()
    }
}

En alt1040 han creado un interesante post sobre como crear contraseñas seguras.

2 thoughts on “Un generador de passwords en grails

Comments are closed.