La création d'un unique alphanumérique de 10 caractères chaîne de caractères

Je cherche à créer un simple court terme le système de réservation, et je voudrais générer des numéros de confirmation qui sont

  • unique
  • hasard-à la recherche
  • alphanumérique
  • court-ish, au moins beaucoup plus courte que 32 caractères les chaînes retournées par sha1

Je suis seulement à la recherche de ~500 réservations, donc je n'ai pas imaginer haute probabilité de collissions.

Une idée que j'ai eu est de générer un hash sha1 basé sur un horodatage et un nom d'utilisateur, puis la tronquant à ses 10 premiers caractères. Serait quelque chose comme ça de façon fiable et assez unique pour le traitement de ~500 réservations?

OriginalL'auteur saturdayplace | 2009-01-21