Здравствуйте, Аноним, Вы писали:
А>Добрый день. А>Возникла надобность создания системы платежей на основа карточек с пин-кодами.
А>Отсюда поэтапные проблемы: А>1) Формирование пинкодов... Скорее всего это случайные величины, выбранной длины. Однако, А>поскольку карточки будут печататься партиями (допустим, по 1000 шт.) как отследить уникальность пинов. А>Думаю, либо хранить их всех в базе (по -моему не очень удобно), либо при формировании завязать первые n-байт на текущем времени (относительно какой-то исходной точки), остальные — случайные.
Ни в коем случае не хранить пин-коды в базе. Это громадная брешь в безопасности. Просто используй какой-нить псевдослучайный алгоритм генерации пин-кодов. К тому же, зачем тебе уникальность пинов?
Упрощенно: в таблице хранишь пару (id-карточки, id-карточки закриптованное пином). Этого будет достаточно, чтобы аутентифицировать пользователя. Если злоумышленник получит доступ к этой базе, то ничего полезного он там для себя не найдет.