Используйте гарантированный генератор случайных строк, закодируйте его в base64, а затем сократите до чего-то приемлемого (8 символов?)
require 'uuidtools'
require 'base64'
uid = UUIDTools::UUID.random_create
Base64.encode64(uid)[0..7]
=> "Y2I2ZTQ5"
В Rails вы будете изменять маршруты для загрузки на основе столбца :slug
и установите это значение, используя что-то вроде этого:
before_create do
self.slug = Base64.encode64(UUIDTools::UUID.random_create)[0..8]
end