Пин Генерация - PullRequest
       50

Пин Генерация

16 голосов
/ 01 января 2009

Я хочу разработать систему, в которой мне нужно назначить каждому пользователю уникальный пин-код для обеспечения безопасности. Пользователь будет вводить этот пин-код только для идентификации себя. Таким образом, я не хочу, чтобы пользователь мог угадать пин-код других пользователей. Предполагая, что максимальное количество пользователей, которое у меня будет, составляет 100000, как долго должен быть этот пин-код?

например. 1234 4532 3423

Должен ли я генерировать этот код по какому-то алгоритму? Или я должен генерировать его случайно?

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

Извините, если мой вопрос звучит немного смущающе, но с удовольствием проясню любые сомнения.

Большое спасибо.

UPDATE

После прочтения всех постов ниже, я хотел бы добавить некоторые подробности.

  1. Я пытаюсь достичь чего-то очень похожего на скретч-карту.
  2. Пользователь получает карточку, которую он / она должен поцарапать, чтобы найти пин-код.
  3. Теперь, используя этот пин-код, пользователь должен иметь доступ к моей системе.

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

Спасибо всем за ваши удивительные ответы снова.

Ответы [ 11 ]

0 голосов
/ 01 января 2009

Кажется, вы хотите использовать пин-код в качестве единственного средства идентификации пользователей. Реальным решением было бы использовать первые пять цифр для идентификации пользователя, и добавьте четыре цифры в качестве PIN-кода.

Если вы не хотите хранить PIN-коды, их можно вычислить, применив криптографически безопасный хеш (SHA1 или выше) на номер пользователя плюс общесистемный секретный код.

...