Генерировать уникальные хэши в Ruby / Rails

#ruby-on-rails #ruby

#ruby-on-rails #ruby

Вопрос:

Я ищу рекомендации о лучших методах генерации уникальных хэш-строк в Ruby / Rails. Обычно я использую MD5, SHA и т. Д. Для этого, Но было не совсем просто выбрать исходные значения для хэша (временные метки не всегда предпочитались использовать).
Итак, мой вопрос:

  1. Какие значения предпочтительнее использовать для генерации уникальных хэшей? (значения столбцов базы данных, временные метки и т. Д.)
  2. Есть ли какие-либо драгоценные камни для такого рода работы?

Любые рекомендации будут оценены.

Ответ №1:

Используйте UUID:

В ruby 1.9

 require 'securerandom'
SecureRandom.uuid
  

В ruby 1.8

 $ gem install uuidtools

UUIDTools::UUID.random_create
  

Комментарии:

1. Если вам нужно шестнадцатеричное значение: SecureRandom.hex дает вам eb693ec8252cd630102fd0d0fb7c3485