質問編集履歴

2

説明を追記しました。

2017/09/12 02:34

投稿

charlie7
charlie7

スコア13

test CHANGED
File without changes
test CHANGED
@@ -44,4 +44,18 @@
44
44
 
45
45
 
46
46
 
47
+ 追記1:
48
+
49
+ ユーザー数は、数万件を想定しています。
50
+
51
+ また、5,6桁としているのは、ユーザが機種変更等でデータの移行時に直接入力するからになります。
52
+
53
+ 会員IDは、別に持っているのでそれを使うこともできるのですが、不正利用を防止するために別のコードを使いたいです。会員IDは、連番です。
54
+
55
+ また、数字だけの連番の場合には、推測されやすくなるので、英字も含めたいと考えていました。
56
+
57
+ 会員ID+ランダムな文字列を移行コードにすることも考えています。
58
+
59
+
60
+
47
61
  以上、よろしくお願いいたします。

1

質問の背景等の説明を詳細に記述しました。

2017/09/12 02:34

投稿

charlie7
charlie7

スコア13

test CHANGED
File without changes
test CHANGED
@@ -2,13 +2,25 @@
2
2
 
3
3
 
4
4
 
5
+ モバイルアプリの開発に際して、アプリの会員IDとは別に、
6
+
7
+ データ引継ぎ用のコードを生成したいと考えております。
8
+
9
+ (端末を変えた場合等を想定。)
10
+
11
+ データは、サーバ側のDB(MySQL)で管理します。
12
+
13
+
14
+
5
- モバイル端末端末IDをキーにして、
15
+ そこで、特定のキーをもとにして、
6
16
 
7
17
  5~6桁のユニークなIDを生成する方法をご教示いただければ幸いです。
8
18
 
9
19
 
10
20
 
11
21
  IDは、英数字混在を想定していますが、英字の大文字/小文字は区別しない想定です。
22
+
23
+ (MySQLでは、大文字と小文字を区別しない設定にしているため)
12
24
 
13
25
  キーは端末IDでなくてもよいのですが、ユニークなキーを使うものとして、仮に端末IDを考えています。
14
26
 
@@ -18,4 +30,18 @@
18
30
 
19
31
 
20
32
 
33
+ PHPでは、uniqid関数などがあることは調べたのですが、
34
+
35
+ 完全にユニークというわけではないですし、桁数が多いので、
36
+
37
+ 移行用のコードとして利用するには適さないと考えております。
38
+
39
+
40
+
41
+ また、コードは、ランダムである必要はないので、
42
+
43
+ キーをもとにして生成されるようにしたいと考えております。
44
+
45
+
46
+
21
47
  以上、よろしくお願いいたします。