この日記を書き始めてからもう6年になろうとしている。書き始めたきっかけは、RFIDタグのプライバシー問題が理解されないことに焦りを感じたからだった。当時の空気では、RFIDタグは5年後くらいに普及し、しだいにRFIDの埋め込まれた日用品で溢れかえるようになり、10年後くらいにプライバシー問題が顕在化すると目されていた。しかし、6年経った現在、私の靴にRFIDタグは埋め込まれていない。
当時の議論で描かれていたRFIDタグの問題は、無線LANやBluetoothにも共通することであり(MACアドレスがユニークIDとなる)、それらの方が先に普及するかもしれないという予感はあったが、現時点でも、無線LAN機器を持ち歩いている人はごく一部の人に限られている。しかし、Bluetoothはどうだろうか。これまでにも何度か、最近のBluetooth事情について書こうとしたことがあったが、他のネタで精一杯で先送りにしていた。
図1は、2008年6月に電車内でBluetooth機器を設定をしようとしたときの様子である。
かなりの数の携帯電話がBluetooth機器として検出されている。走行中の列車内で5人前後が検出され、駅に到着すると20人前後がドカドカっと検出される(ホームに立っている人の携帯電話が次々に検出される)という感じだった。一昨年あたりから急速にBluetooth対応携帯電話が普及しているようだ。
Bluetoothの機器探査(device inquiry)では、最初に周辺機器からMACアドレスを得て、次に各MACアドレスの機器に名前の問い合わせをするプロトコルになっている。図1にも一部見えているように、Mac OS XのBluetooth機器設定の画面では、名前解決前のMACアドレスがそのまま表示される。
Bluetoothでは、Bluetooth機能をオンにしていても、探査可能(検出可能)に設定していなければ、このように見つけられてしまうことはないのだが、意外にも、探査可能設定でBluetoothをオンにしたままの人がかなりの割合でいるようだ。これは、RFIDタグよりも先にBluetoothによって、IDのプライバシー問題が顕在化しそうな勢いである。
そこで、実際にいかほどのことが可能なのかを調べるため、Bluetooth機器探査の応答をログに記録するプログラムを作成して、山手線を4周してきた。
2009年3月1日の日曜日、池袋駅18:12発の外回り列車に乗り、真ん中あたりの車両の中央の座席に腰掛け、観測を開始。4周廻って池袋駅22:18着まで*1を観測した。その間に1154個のMACアドレスを検出した。
観測データは以下のように記録した(MACアドレスの下位24ビットは伏せている*2)。約21秒ごとの時間スロットに区切って機器探査を繰り返し行い、新たに見つかったMACアドレスを「+」のマークで示している(「#」は私の鞄の中のスマートフォンのアドレス)。
最初の時間スロットは池袋駅停車中であり、2つ目のスロットは駅から動き出した時、3つ目のスロットは、駅を離れて走行中の時である。3つ目から5つ目までのスロットで、7つのMACアドレスを継続して検出していることから、大塚駅までの区間で、私以外に6人の人がBluetooth機器を(検出可能設定のままオンにして)持っていたことを意味している。それに対して、1つ目のスロットや2つ目のスロットで検出されたのに3つ目以降で現れていない(ごく短い時間だけ現れた)MACアドレスが多数あるが、これは、駅のホームを歩いている人のMACアドレスを検出したものと考えられる。
2009-03-01.18:12:03 001CEEXXXXXX + 2009-03-01.18:12:04 001987XXXXXX + 2009-03-01.18:12:05 00175CXXXXXX + 2009-03-01.18:12:06 001783XXXXXX # + 2009-03-01.18:12:07 00175CXXXXXX + 2009-03-01.18:12:08 001A16XXXXXX + 2009-03-01.18:12:09 001CEEXXXXXX + 2009-03-01.18:12:10 001C43XXXXXX + 2009-03-01.18:12:11 00175CXXXXXX + 2009-03-01.18:12:12 001C43XXXXXX + 2009-03-01.18:12:13 00175CXXXXXX + 2009-03-01.18:12:14 00175CXXXXXX + 2009-03-01.18:12:15 001CEEXXXXXX + 2009-03-01.18:12:16 001CEEXXXXXX + 2009-03-01.18:12:16 0018AFXXXXXX + 2009-03-01.18:12:16 0015B7XXXXXX + 2009-03-01.18:12:16 00175CXXXXXX + 2009-03-01.18:12:16 00175CXXXXXX + 2009-03-01.18:12:16 0000EBXXXXXX + 2009-03-01.18:12:16 0000EBXXXXXX + 2009-03-01.18:12:16 00175CXXXXXX + #### 21 2009-03-01.18:12:16 2009-03-01.18:12:24 00175CXXXXXX 2009-03-01.18:12:25 00175CXXXXXX 2009-03-01.18:12:26 001C43XXXXXX 2009-03-01.18:12:27 001CEEXXXXXX 2009-03-01.18:12:28 00175CXXXXXX + 2009-03-01.18:12:29 0015B7XXXXXX 2009-03-01.18:12:30 001987XXXXXX 2009-03-01.18:12:31 001783XXXXXX # 2009-03-01.18:12:32 001CEEXXXXXX + 2009-03-01.18:12:33 00175CXXXXXX + 2009-03-01.18:12:34 0021D1XXXXXX + 2009-03-01.18:12:35 00175CXXXXXX + 2009-03-01.18:12:36 00175CXXXXXX + 2009-03-01.18:12:37 00175CXXXXXX + 2009-03-01.18:12:37 00175CXXXXXX + 2009-03-01.18:12:37 001987XXXXXX + 2009-03-01.18:12:37 00175CXXXXXX + 2009-03-01.18:12:37 002265XXXXXX + #### 18 2009-03-01.18:12:37 2009-03-01.18:12:45 001C43XXXXXX 2009-03-01.18:12:46 001CEEXXXXXX 2009-03-01.18:12:47 00175CXXXXXX 2009-03-01.18:12:48 001783XXXXXX # 2009-03-01.18:12:49 001987XXXXXX 2009-03-01.18:12:50 00175CXXXXXX 2009-03-01.18:12:51 0015B7XXXXXX #### 7 2009-03-01.18:12:58 2009-03-01.18:13:06 00175CXXXXXX 2009-03-01.18:13:07 001CEEXXXXXX 2009-03-01.18:13:08 001C43XXXXXX 2009-03-01.18:13:09 0015B7XXXXXX 2009-03-01.18:13:10 001987XXXXXX 2009-03-01.18:13:11 001783XXXXXX # 2009-03-01.18:13:12 00175CXXXXXX 2009-03-01.18:13:13 00175CXXXXXX #### 8 2009-03-01.18:13:19 2009-03-01.18:13:27 001CEEXXXXXX 2009-03-01.18:13:28 0015B7XXXXXX 2009-03-01.18:13:29 001C43XXXXXX 2009-03-01.18:13:30 00175CXXXXXX 2009-03-01.18:13:31 001783XXXXXX # 2009-03-01.18:13:32 001987XXXXXX 2009-03-01.18:13:35 00175CXXXXXX #### 7 2009-03-01.18:13:41 2009-03-01.18:13:48 00175CXXXXXX 2009-03-01.18:13:49 001CEEXXXXXX 2009-03-01.18:13:50 001C43XXXXXX 2009-03-01.18:13:51 001CEEXXXXXX + 2009-03-01.18:13:52 0015B7XXXXXX 2009-03-01.18:13:53 001987XXXXXX 2009-03-01.18:13:54 001783XXXXXX # 2009-03-01.18:13:55 00175CXXXXXX + 2009-03-01.18:13:56 00175CXXXXXX 2009-03-01.18:14:01 00175CXXXXXX #### 10 2009-03-01.18:14:02 2009-03-01.18:14:10 001C43XXXXXX 2009-03-01.18:14:11 001CEEXXXXXX 2009-03-01.18:14:12 0015B7XXXXXX 2009-03-01.18:14:13 00175CXXXXXX 2009-03-01.18:14:14 001CEEXXXXXX + 2009-03-01.18:14:15 00175CXXXXXX 2009-03-01.18:14:16 001987XXXXXX 2009-03-01.18:14:17 001CEEXXXXXX + 2009-03-01.18:14:18 001783XXXXXX # #### 9 2009-03-01.18:14:23
6つ目と7つ目のスロットでは、大塚駅に到着して、「+」マークの新しいMACアドレスが現れている。
ログを眺めながら乗車していると、対向列車とすれ違ったときにも「+」が現れることがあった。また、京浜東北線と並走するときにも「+」が出ることがあった。
Bluetoothの通信距離は10メートルの規格と100メートルの規格があるが、おそらく携帯電話側が10メートルのものであろう。山手線の車両の長さが20メートルなので、ちょうど1両分の範囲で観測したことになる。
ただし、乗車人数に比例して増えるわけではなかった。以下は、ほぼ満員になったピーク時(渋谷駅22:03発、原宿までの区間)の様子である。私以外に13人ほどが継続して検出されている。このとき、駅に停車中でもホームの人をあまり捉えていないことから、着席していると人体で遮られて遠くの機器を検出できなくなるのではないかと思われる。
2009-03-01.22:03:15 00175CXXXXXX 2009-03-01.22:03:16 00175CXXXXXX 2009-03-01.22:03:17 00175CXXXXXX 2009-03-01.22:03:18 001783XXXXXX # 2009-03-01.22:03:19 00175CXXXXXX 2009-03-01.22:03:20 001CEEXXXXXX 2009-03-01.22:03:21 001CEEXXXXXX 2009-03-01.22:03:22 00175CXXXXXX 2009-03-01.22:03:23 001CEEXXXXXX 2009-03-01.22:03:24 00175CXXXXXX 2009-03-01.22:03:25 001CEEXXXXXX 2009-03-01.22:03:26 00175CXXXXXX 2009-03-01.22:03:27 0000EBXXXXXX 2009-03-01.22:03:28 080074XXXXXX #### 14 2009-03-01.22:03:29 2009-03-01.22:03:37 0000EBXXXXXX 2009-03-01.22:03:38 00175CXXXXXX 2009-03-01.22:03:39 00175CXXXXXX 2009-03-01.22:03:40 00175CXXXXXX 2009-03-01.22:03:41 001CEEXXXXXX 2009-03-01.22:03:42 00175CXXXXXX 2009-03-01.22:03:43 001CEEXXXXXX 2009-03-01.22:03:44 00175CXXXXXX 2009-03-01.22:03:45 00175CXXXXXX 2009-03-01.22:03:46 00175CXXXXXX + 2009-03-01.22:03:47 00175CXXXXXX 2009-03-01.22:03:48 080074XXXXXX 2009-03-01.22:03:49 001CEEXXXXXX 2009-03-01.22:03:50 001CEEXXXXXX 2009-03-01.22:03:50 001783XXXXXX # #### 15 2009-03-01.22:03:50 2009-03-01.22:03:58 001783XXXXXX # 2009-03-01.22:03:59 001CEEXXXXXX 2009-03-01.22:04:00 001CEEXXXXXX 2009-03-01.22:04:01 00175CXXXXXX 2009-03-01.22:04:02 001CEEXXXXXX 2009-03-01.22:04:03 00175CXXXXXX 2009-03-01.22:04:04 00175CXXXXXX 2009-03-01.22:04:05 00175CXXXXXX 2009-03-01.22:04:06 00175CXXXXXX 2009-03-01.22:04:07 00175CXXXXXX 2009-03-01.22:04:08 080074XXXXXX 2009-03-01.22:04:09 001CEEXXXXXX 2009-03-01.22:04:10 0000EBXXXXXX 2009-03-01.22:04:11 00175CXXXXXX #### 14 2009-03-01.22:04:11 2009-03-01.22:04:19 00175CXXXXXX 2009-03-01.22:04:20 080074XXXXXX 2009-03-01.22:04:21 00175CXXXXXX 2009-03-01.22:04:22 00175CXXXXXX 2009-03-01.22:04:23 001CEEXXXXXX 2009-03-01.22:04:24 001CEEXXXXXX 2009-03-01.22:04:25 00175CXXXXXX 2009-03-01.22:04:26 0000EBXXXXXX 2009-03-01.22:04:27 00175CXXXXXX 2009-03-01.22:04:28 00175CXXXXXX 2009-03-01.22:04:29 001CEEXXXXXX 2009-03-01.22:04:30 001CEEXXXXXX 2009-03-01.22:04:31 00175CXXXXXX 2009-03-01.22:04:32 001783XXXXXX # #### 14 2009-03-01.22:04:32 2009-03-01.22:04:40 001CEEXXXXXX 2009-03-01.22:04:41 001CEEXXXXXX 2009-03-01.22:04:42 00175CXXXXXX 2009-03-01.22:04:43 00175CXXXXXX 2009-03-01.22:04:44 00175CXXXXXX 2009-03-01.22:04:45 00175CXXXXXX 2009-03-01.22:04:46 0000EBXXXXXX 2009-03-01.22:04:47 080074XXXXXX 2009-03-01.22:04:48 001CEEXXXXXX 2009-03-01.22:04:49 00175CXXXXXX 2009-03-01.22:04:50 00175CXXXXXX 2009-03-01.22:04:51 00175CXXXXXX 2009-03-01.22:04:52 001783XXXXXX # 2009-03-01.22:04:53 001CEEXXXXXX 2009-03-01.22:04:53 001CEEXXXXXX + 2009-03-01.22:04:53 001C7EXXXXXX + #### 16 2009-03-01.22:04:53
さて、こうして検出した機器を、時刻に沿って同心円上に描いてみた。
短い線分は1回だけ検出されたことを表している。黒と赤があるのは、(同じライン上に描いているけれども)別のMACアドレスであることを示している。(同じライン上に色が変わらずに飛び飛びに描かれているのは、同じMACアドレスのものである。)
短い線分がたくさん重なっているのは、駅のホームを歩く人などを通りすがりに続々と検出したもので、これの多いところのほとんどは駅である。
以下のJavaアプレットで、4周分を見ることができる。(クリックで開始。)
ログを分析してみると、約1時間間隔で繰り返し点として現れたMACアドレスが何個かあった。山手線は一周が1時間と数分なので、これは、駅に設置されている何らかの情報機器か、もしくは近接した住宅や事務所の情報機器なのかもしれない。以下にそれを示す。
00037AXXXXXX 187:12 | 42,43,216,217,402,573 001CEEXXXXXX 185:06 | 110,111,112,113,285,286,469,635 00037AXXXXXX 125:11 | 224,579 00175CXXXXXX 125:10 | 231,232,233,419,420,586 00175CXXXXXX 124:49 | 236,590 001C7EXXXXXX 66:00 | 138,309,323,324,325 00037AXXXXXX 63:07 | 93,94,95,96,268,269,270,271,272 00037AXXXXXX 61:24 | 149,150,151,322,323
左から2列目は、最初に検出されてから最後に検出されるまでの時間で、「|」の右側のコンマで区切られた数値は、時間スロットの番号(約21秒で区切られたスロットなので、1時間が約171スロット)で、検出された時間スロットのリストである。
約30分間隔で現れたものもあった。これは何だろうか。対向列車に乗車して半周した人、あるいは、対向列車の運転士や車掌さんなのだろうか。
001CD6XXXXXX 29:35 | 563,568,646,647 00175CXXXXXX 28:33 | 425,506
一方、不規則な間隔で現れたものもあった。以下の2つ目の事例の、50分後に現れたケースは、同じ人が対向列車か別ルートで駅に移動していたのを捕らえたものだろうか。1つ目の、90分後、8分後、20分後というのは解せない。3つ目以下の20分後に現れるというのも解せないが、これらは、同じ列車に継続して乗車していたものの距離が遠くて飛び飛びにしか検出されなかったケースなのかもしれない。
00236CXXXXXX 128:21 | 202,480,505,566 0023D6XXXXXX 50:02 | 84,85,226 001CEEXXXXXX 24:41 | 461,531 001CEEXXXXXX 24:19 | 461,530 001CEEXXXXXX 22:35 | 222,285,286 001CEEXXXXXX 19:45 | 619,621,675 00175CXXXXXX 16:13 | 461,507 00175CXXXXXX 15:49 | 129,174 001CEEXXXXXX 14:26 | 44,80,85
これらの例外的なケースを除き、継続して検出され、継続時間の長いものを列挙してみると次のようになる。半周以上する人はいないことがわかる。
001987XXXXXX 27:30 | 429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,505,506,507 001CEEXXXXXX 24:20 | 619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676,677,678,679,680,681,682,683,684,685,686,687,688 00175CXXXXXX 20:06 | 653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676,677,678,679,680,681,682,683,686,687,688,689,690,691,692,693,694,695,696,697,698,699,700,701,702,703,704,705,706,707,708,709,710 001EA4XXXXXX 20:04 | 564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,611,612,613,614,615,616,619,620,621 001CEEXXXXXX 19:25 | 182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237 00175CXXXXXX 19:20 | 94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149 00175CXXXXXX 19:02 | 619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673 001CEEXXXXXX 19:02 | 506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560 001FC4XXXXXX 19:02 | 452,453,454,455,456,457,458,459,460,461,462,463,465,466,467,468,469,474,475,476,477,478,479,480,481,482,483,486,488,496,497,501,506 0022F3XXXXXX 18:40 | 530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583 00175CXXXXXX 18:40 | 529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582 00175CXXXXXX 18:40 | 473,489,495,506,524,525,526 00175CXXXXXX 18:17 | 123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175 00175CXXXXXX 18:04 | 176,177,178,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227 00175CXXXXXX 17:58 | 383,388,392,397,413,424,425,427,429,434 0000EBXXXXXX 17:16 | 551,558,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,590,591,592,593,594,595,596,597,598,599,600 00175CXXXXXX 16:53 | 0,3,5,10,12,15,16,18,19,20,22,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,48 001CEEXXXXXX 16:32 | 545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592 001CEEXXXXXX 16:13 | 627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673 00175CXXXXXX 15:52 | 653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676,677,678,679,680,681,682,683,684,685,686,687,688,689,690,691,692,693,694,695,696,697,698 0000EBXXXXXX 15:30 | 487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531 00175CXXXXXX 15:11 | 242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285 001CD6XXXXXX 15:09 | 596,597,598,599,600,601,602,603,606,607,611,612,613,614,615,617,618,619,620,621,622,623,624,626,627,628,629,630,631,632,633,634,635,636,637,638,639 00175CXXXXXX 15:09 | 591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634 001C43XXXXXX 14:46 | 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42 0015B7XXXXXX 14:46 | 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42 00175CXXXXXX 14:04 | 123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163
継続して検出されたものから乗車時間の分布をグラフにしてみたところ、図4のようになった。
この実験を決行する前に、予備テストとして、勤務先から帰宅する電車内で何回かこのプログラムを稼働させていた。具体的には、2月18日の24時04分からと、2月20日の23時16分から、2月24日の23時08分からで、ほぼ同じ車両に乗っていたと思う。
もしかすると同じ人を複数回検出しているかもしれないと思うわけだが、確率的にありそうもないと思ったのだが、実際に集計してみて驚いた。なんと、該当者を捕らえていたのだ。
2009-02-20.23:22:55 001CEEXXXXXX + 2009-02-20.23:25:25 001CEEXXXXXX 2009-02-20.23:25:51 001CEEXXXXXX 2009-02-20.23:26:04 001CEEXXXXXX 2009-02-20.23:27:27 001CEEXXXXXX 2009-02-20.23:29:02 001CEEXXXXXX 2009-02-20.23:31:03 001CEEXXXXXX 2009-02-20.23:31:20 001CEEXXXXXX 2009-02-20.23:32:45 001CEEXXXXXX 2009-02-24.22:59:58 001CEEXXXXXX + 2009-02-24.23:00:20 001CEEXXXXXX 2009-02-24.23:00:36 001CEEXXXXXX 2009-02-24.23:01:00 001CEEXXXXXX 2009-02-24.23:01:23 001CEEXXXXXX 2009-02-24.23:01:44 001CEEXXXXXX 2009-02-24.23:02:05 001CEEXXXXXX 2009-02-24.23:02:22 001CEEXXXXXX 2009-02-24.23:02:46 001CEEXXXXXX 2009-02-24.23:03:00 001CEEXXXXXX 2009-02-24.23:03:27 001CEEXXXXXX 2009-02-24.23:03:50 001CEEXXXXXX 2009-02-24.23:04:07 001CEEXXXXXX 2009-02-24.23:05:14 001CEEXXXXXX 2009-02-24.23:05:24 001CEEXXXXXX 2009-02-24.23:06:12 001CEEXXXXXX 2009-02-24.23:06:35 001CEEXXXXXX 2009-02-24.23:06:50 001CEEXXXXXX 2009-02-24.23:07:13 001CEEXXXXXX 2009-02-24.23:07:54 001CEEXXXXXX 2009-02-24.23:08:13 001CEEXXXXXX
たった3回計測しただけで、しかも時刻は同じではないのに、同じ車両に乗り合わせた人がいたことが判明してしまった。今まで、東京の電車に乗っていて、同じ人がいるなんて思ったことは一度もなかったのに……。
もうひとつある。出勤時にもテストしていたことがあり、具体的には、2月20日の13時06分からなのだが、18日の24時過ぎに継続して検出されていた人が、20日の昼間に1回だけ検出されている。これはいったい何だろうか。
2009-02-19.00:05:40 00175CXXXXXX 2009-02-19.00:06:01 00175CXXXXXX 2009-02-19.00:06:23 00175CXXXXXX 2009-02-19.00:06:48 00175CXXXXXX 2009-02-19.00:07:09 00175CXXXXXX 2009-02-19.00:07:29 00175CXXXXXX 2009-02-19.00:07:57 00175CXXXXXX 2009-02-19.00:08:13 00175CXXXXXX 2009-02-19.00:08:33 00175CXXXXXX 2009-02-19.00:08:56 00175CXXXXXX 2009-02-19.00:09:11 00175CXXXXXX 2009-02-19.00:09:40 00175CXXXXXX 2009-02-19.00:10:00 00175CXXXXXX (略) 2009-02-20.13:07:16 00175CXXXXXX
このような他人のBluetooth機器を探査する行為に違法性はないのか、検討しておく必要がある。
類似の話として、一昨年、家庭の無線LANアクセスポイントのMACアドレスを収集して利用する「PlaceEngine」について、電波法59条違反のおそれがあるのではないかと書いたことがある。
勝手に他人の電波を傍受して利用するのは、電波法59条の趣旨にに照らしてどうか。PlaceEngineが合法であるとすれば、無線LANのビーコン信号はそれがブロードキャスト信号である(皆に向けて送信される「放送」である)という理由で、電波法59条の「特定の相手方に対して行われる無線通信」に当たらないと解釈できた場合であろう。その理屈が通るなら、無線LANクライアントのprobe request信号も、ブロードキャストであるから、それを傍受して勝手に利用するのは合法ということになってしまう。本当にそれでよいのだろうか?
ネットワークの低レイヤーにおいて技術上はブロードキャストになっていても、それによって実現する高レイヤーのネットワークは特定の相手との通信であるし、またそれを使用するユーザの意図としても、特定の相手と通信するためのものであることから、ビーコンやprobe request信号は「特定の相手方に対して行われる無線通信」の一部であるとする解釈もあり得よう。
PlaceEngineの場合に、違法性があるかもしれないと感じられたのは、PlaceEngineが観測するのは、他人が通信するために発信している電波信号(家庭の無線LANアクセスポイントが、その家庭内の無線LANクライアントと通信するために発信している信号)を、第三者として傍受したもので、それを他人に利用できる形で提供しているからだった。
それに比べて、Bluetoothの機器探査(device inquiry)はどうか。まず、これは「傍受」にあたらない。当該機器からの応答信号は、こちらから呼びかけたのに対して返ってくるものであるから、常に1対1の通信であり、機器探査をしている者はその通信の当事者である*3*4。
Bluetooth対応携帯電話を、検出可能設定のままオンにして電車に乗っている人が、はたして他人から探知されることを予定しているかといえば、いないだろう。しかし、それを現行法で抑制できるかというときに、電波法59条は(その趣旨からして)筋が違うように思う。
Bluetoothは低消費電力を利点とした通信規格であり、できるだけ電波を出さないようになっているところ、device inquiryを繰り返し受けて、応答の電波を何度も出すというのは、無用な電力消費を強いられている(僅かであろうが)と言うことができるかもしれない。これが迷惑行為とみなされるようになる可能性はあるかもしれない。
私は、このような行為が何ら規制されないのは、プライバシー保護の観点からまずいと思っている。だからこそこのような実演を今している。
これだけ多くの携帯電話が、Bluetooth機器探査に応じる設定のままで持ち歩かれているとなると、マーケティング目的での活用がまず発想されるところだろう。
店内の客がどの棚の前に長く滞在したかを調べるとか、過去に何回訪れたことのある客かを判別するためなどの目的で、商業施設が人々のBluetoothのMACアドレスを記録し、蓄積し、共有するようになるかもしれない。
それはどこまで許されることなのか。これはまさに、2003年にRFIDタグの未来が一大ブームになったときに、さんざん様々なシナリオを示して、問題点を訴えていた話そのものである。
個人情報保護法が守ってくれるかというとそうでもない。こうしたユニークIDは、携帯電話の契約者固有IDと同様で、住所氏名と紐付けない限り「個人情報」に該当しないというのが、日本の個人情報保護法の解釈の通説らしい。
RFIDタグはまだ広く出回っていないが、Bluetooth対応携帯電話の広がりは、今まさに広がりつつあり、止められそうにない。これを商業的に活用するのはアリなのか、ナシなのか。
私としてはナシということになるべきだと思うが、その根拠はどこに求めればよいのだろうか。「無用な電力消費を強いられることが迷惑」という路線でくい止めることができるだろうか。
商業的な活用はそのような倫理でくい止めることができるかもしれないが、個人が勝手に探査してMACアドレスを公開したり、CGM的に多数の人で情報を寄せ集めて共有する行為はくい止められないかもしれない。
2003年のRFIDの議論で、私は、「自動車ナンバープレートだって、個人が自宅前で撮影して番号読み取りをしたものを、インターネットで共有するような行為が横行するようになるかもしれない。同様にRFIDだって……」ということをどこかに書いた記憶がある。Bluetoothでも同じことが懸念される。
日本は、欧州と違って、Googleのストリートビューの自動車ナンバープレートさえ、自動ぼかし処理なしに開始されている。政府がそれをくい止めないような国である。
今回、思い出したかのようにBluetoothの件を書いたのは、2月16日に「RFID A GoGo!」というブログの「MACアドレスによるユニークIDトラッキング」というエントリで次のように書いて頂いたのがきっかけだった。
我々の身の回りにユニークIDを持つRFID機器が既に入り込んできている。それもアクティブ型で、平文のIDをビーコン送信するという凶悪な奴だ。なのに、せいぜい数cmの読み取り距離しかないe-パスポートには悲鳴を上げる連中もそのタグの利用については僕の知る限りの欧米のメディアでは全く口を閉ざしている。
…ともったいぶって書いてはみたが、何のことは無いWiFi機器の話だ。(略)なぜプライバシー論者はこの問題について沈黙を保っているんだろう。
幾つか思いつくキーワードを組み合わせてGoogleで検索するというやり方だったので網羅性は保障できないが、英語ではMACアドレスによるユニーク IDトラッキング問題に関する記事はまったく引っかかってこなかった。まさかこれを思いついたのは俺が初めてじゃないよな、と思いながら、ふと日本語で検索してみると高木浩光氏のサイトで取り上げられているのを見つけた(高木浩光@自宅の日記: 最終回: PlaceEngineの次に来るもの そしてRFIDタグの普及する未来)。さすがの慧眼に感服するほかはない。が、個人的にはRFIDのユニークIDトラッキング問題が話題になった頃の舌鋒の鋭さが無いのが気になった。
MACアドレスによるユニークIDトラッキング, RFID A GoGo!, 2009年2月16日
「英語ではMACアドレスによるユニークIDトラッキング問題に関する記事はまったく引っかかってこなかった」とのことだが、そんなことはない。Bluetoothに関する同様の指摘は以前から出ていて、たとえば、最近でも以下が話題になっている。
実験事例の報告はいくつも出ているし、研究論文での指摘や対策方法の提案もある。
根本的には、無断でトラッキングされることがないよう、Bluetoothのプロトコルを改善するべきところと思うが、変えようとしても普及の勢いからして当面はこのままだろう。少なくとも、今後出てくる新しい通信方式においては、同じ轍を踏まないようにしてもらいたいものだ。そのためにも、すべての技術者にこの問題への理解を深めて欲しいと願う。
続編を3月7日の日記に書いた。
上記の通りのリスクがあるので、Bluetoothの「検出可能にする」は、必要なとき以外、オフにしておいたほうがよい。*5
機器によってこの設定の名称が異なるようで困ったことだが、手元にあるソフトバンクモバイルの携帯電話では、「Bluetooth」の「マイデバイス設定」のところにある「デバイスの公開」という設定を「Off」にする。
Bluetoothの「On/Off設定」のことは知っていても、この「デバイスの公開」のことを知らない人が多いのではないだろうか。ここはデフォルトで「On」になっている。
Bluetoothヘッドホンで音楽を聴くなど、ときどきBluetoothを使う際に、煩わしくないよう、常時Bluetoothをオンにしておくということがあるかもしれないが、そういう目的でなら、「デバイスの公開」までオンにしておく必要はない。
「デバイスの公開」は、新しい接続機器とペアリングする際にだけ、一時的にオンにすれば十分なのだが、そのことがあまり知られていないのではないだろうか。
注記:この日記は、3月1日に書き始めたものの翌朝までに完成しなかったため、3月3日の朝に掲載した。
*1 途中、3周目の巣鴨で4分停車して遅れが生じ、4分の遅れは目黒まで継続。その後徐々に回復して、4周目の目黒でダイヤ通りの運行に戻った。
*2 上位24ビットはベンダーアドレスであるので伏せていない。
*3 無線LANの場合でも、SSIDが空のprobe requestに対してアクセスポイントがprobe responseを返すようになっている場合には、Bluetoothのdevice inquiryと同様に、1対1の通信当事者ということになるが、PlaceEngineはそのような通信をしているわけではない。
*4 去年、イギリスの「携帯電話の電波を受信し、公共施設等での行動を把握するシステム」という事例が話題になっていた。携帯電話の音声通信用の電波を傍受して目的外使用するとなると、日本では電波法どころか電気通信事業法違反にも問われるところと思うが、Bluetoothの通信ならその心配はないことになる。
*5 この設定をオフにしていても、Bluetooth通信中に電波を傍受されれば、MACアドレスは知られてしまうと思われるが、通常の機器だけではできないのではないか(確認できていないので不確かではあるが)と推測するのと、追跡される頻度は下がるので、そこまでして追跡する輩が出てくるのか、その可能性は小さくなるのではないかと思う。
リンク: 高木浩光@自宅の日記 - Bluetoothで山手線の乗降パターンを追
私は法律の専門家ではないが「住所氏名と紐付けない限り『個人情報』に該当しないというのが、日本の個人情報保護法の解釈の通説」が本当だとすると、これはおかしな解釈であるし、...
Your story was featured in The Very Times 日本版! Here is the link to vote it up and promote it: http://jp.verytimes.com/node/247
●腕が 今日は人身事故の影響でどたばたしたため、電車に立って乗車した。 横のおっさんが思いっきり体重掛けてもたれ掛かってくるので、腕がぱんぱんでございます。 体をずらそうにも満員で無理。力を抜くと自分が倒れそう。まったくガッテムでございますわ。 ■4Ga...
これは面白いなぁ
http://takagi-hiromitsu.jp/diary/20090301.html
本来は、セキュリティ啓発が目的の記事だけど
前々からの高木先生の連載エントリを読んで気になったので、丁度東京へ出向く機会があったので試しに実験してみた。 高木浩光@自宅の日記 - Bluetoothで山手線の乗降パターンを追跡してみた , ユビキタス社会の歩き方(6) Bluetoothの「デバイスの公開」「検出可能にする」.
先のエントリを書いた後、ぼーっと自分の携帯を見てて気がついた。原因は恐らく「ちかチャット」だわ。 他社キャリアは最近使ってないのでソフトバンクだけのサービスなのか判らないが、公式ページを見てもらえばわかるとおり、 Bluetooth®を使って、近く(半径約10m