2015-06-16 5 views
0

Мне нужно создать уникальный номер отслеживания всего 10 цифр.Создание уникального отслеживания счетов в сети точек

, как я Google единственной полезную статьи из StackOverflow Generating unique tracking numbers

, но это не точка чистого кода. я пытаюсь найти способ написать точку net equivelant этого кода, но я не могу этого сделать.

>>> int(hashlib.sha256(str(1) + "!salt!").hexdigest()[:13], 16) 
1269883740611281 
>>> int(hashlib.sha256(str(2) + "!salt!").hexdigest()[:13], 16) 
3655373802716929 

Может ли кто-нибудь мне помочь?

+1

Всего 10 цифр. Отлично. Здесь вы идете: 1.000.000.000 - 9.999.999.999. Наслаждаться. –

+0

В asp.net есть Гиды https://en.wikipedia.org/wiki/Globally_unique_identifier –

+0

Что вы подразумеваете под GUIDs.GUID не подходят для отслеживания номера счета. –

ответ

0

Я не знаю, почему в коде, который вы используете, используется хэш. Значения хэш не уникальны. Хэш, по-видимому, неправильно используется здесь как генератор случайных чисел. Вместо этого использует ГСЧ непосредственно:

new Random().Next(1000 * 1000 *1000, 1000 * 1000 *1000 * 10).ToString() 

Вы можете использовать веб-поиск, чтобы найти криптостойкий способ генерации случайных чисел в этом диапазоне.

У вас может быть больше возможных кодов отслеживания, используя буквы.

 Смежные вопросы

  • Нет связанных вопросов^_^