私は、ユーザーが自分のチケットを自分で印刷し、スキャン (バーコード) され、理想的にはその人が入場するイベントに参加できるオンライン イベント チケット システムに取り組んでいます。私の問題は、以下の条件を満たす「チケットコード」
- 各「チケットコード」は互いに十分に異なっている必要があります (つまり、連続番号が付けられていません)。
- 理想的には、チケットは再利用を防ぐために中央データベースに対してチェックされますが、オフラインでも作業できるようにする必要があります。ゲート。
- 「チケットコード」は、必要に応じて簡単に入力できるように十分に小さくする必要があります
- チケット所有者は、入場するためにチケットのみを必要とします (つまり、ID チェックは必要ありません)。
データの範囲は非常に小さく、イベントごとに約 5,000 チケット (約 100,000 の異なるチケット コード) で、4 日間にわたって約 20 のイベントしかありません。
現在、チケットに印刷されておらず、「チケットコード」の一部をエンコードするために使用できるユーザーには知られていないフィールドがいくつかあるため、EventId、OrderId、EventDate、およびいくつかのソルトを使用して小さな「コードの一部(アイデア?)のハッシュ」ですが、まだシーケンシャルまたはGUIDのチケットIDにこだわっています(長すぎるでしょう)
これを行う方法についてのアイデアや指針はありますか?