Gerando uma ID de seqüência de caracteres unguessável semelhante ao Instagram ou ao Youtube em ruby ​​/ ActiveRecord

Ao criar uma instância de um determinado objeto modelo ActiveRecord, eu preciso gerar uma string exclusiva (6-8 caracteres) para usar como um identificador em URLs, no estilo de URLs de fotos do Instagram (comohttp://instagram.com/p/P541i4ErdL/, que acabei de embaralhar para ser um 404) ou URLs de vídeo do Youtube (comohttp://www.youtube.com/watch?v=oHg5SJYRHA0).

Qual é a melhor maneira de fazer isso? É mais fácil apenascriar uma string aleatória repetidamente até que seja único? Existe uma maneira de alterar aleatoriamente o ID inteiro de tal forma que os usuários não possam hackear o URL alterando um caractere (como eu fiz com o link 404'd do Instagram acima) e acabar em um novo registro?

questionAnswers(3)

yourAnswerToTheQuestion