Pergunta

Então, eu tenho um serviço em que você se inscreve em eventos. Ao se inscrever, você recebe um e -mail com um URL onde pode assinar o evento. O parâmetro dado do URL deve ser algo que ninguém pode adivinhar.

Eu pensei no UID, mas isso simplesmente não é humano legível. Também pensei em hash, mas não sei se quero usar isso.

por falar nisso; Estou fazendo isso em Java, caso você conheça algumas ferramentas bacanas.

Alguma sugestão?

Foi útil?

Solução

Se você está enviando um URL dentro de um e -mail, ele realmente precisa ser legível por humanos? Não é incomum que os e -mails de verificação contenham uma string aleatória.

Você sempre pode escrever o e -mail em HTML:

<a href="http://your.site/signoff?id=unguessable-random-number">Sign off here</a>

e o bit aleatório será oculto do usuário. Obviamente, isso pode desencadear filtros de spam, então você precisará ter um pouco de cuidado.

EDIT: A propósito, você provavelmente deseja usar um GUID, pois o número deve ser usado apenas uma vez. Você pode hash algo, se quiser, mas sempre que estiver lidando com um nonce (número usado uma vez), aleatório é seu amigo.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top