2014年12月27日土曜日

コミケ会場での位置共有アプリのプライバシー、セキュリティについて

今回のアプリではTwitter認証とGPSによる位置取得というプライバシーにかかわる情報を取得するため、セキュリティ面で心配になる方も多いでしょうからちょっと解説です。

っとその前にちょっと一言。
そもそも、個別の個人情報の取得にはその運用に責任情報が付きまとうため、当方では余計に取得したいとは思っていません。
特に今回のアプリでは画面を開くだけで認証の取得や位置情報の取得の警告が出て、事前の確認をとることができないため、いらない情報は保持しないよう心がけています。
それをご理解いただいた上で、以降をお読みください。

それと、位置情報を送信しない=自分の位置情報は教えたくないけれどほかの人の場所は知りたい、というご要望には応えない方向での実装となっていますので、位置情報取得許可を出さないとアプリが利用できなくなってしまいます。
なので、利用する場合は位置情報は必ず送信するようにしてください。
ここも併せてご理解いただきますよう、お願いいたします。



まず位置情報についてですが、GPSにより取得した緯度経度の場所と、コミケ会場内でのコスプレ会場のおおよその中心位置からの距離をもとに、どこが一番近いかを割り出して、それをアプリ側に送信してデータベースに入れて利用しています。
実際に送られるのは、このリストの何番目なのか?という番号になります。
具体的には、以下のようなリストをあらかじめ用意しており、このリスト上に書いている各行の緯度経度(数字の部分ですね)ごとに距離を出して、どこが一番近いかを計算します。

Location {
 GARDEN("庭園", 35.6312189,139.7941999),
 RESTRAUNT("レストラン", 35.6306354,139.7953894),
 EAST_TRACKYARD_NORTH("東トラックヤード北",35.6329038,139.7971149),
 EAST_TRACKYARD_SOUTH("東トラックヤード南",35.630524,139.7982021),
 WEST_TRACKYARD_EAST("西トラックヤード東",35.6292106,139.7958388),
 WEST_TRACKYARD_WEST("西トラックヤード西",35.6284019,139.7940266),
 WEST_TRACKYARD_SOUTH("西トラックヤード南",35.6282539,139.795393),
 ARIAKE_WEST_PIER_PARK("有明西ふ頭公園",35.627033,139.7943277),
 ROOFTOP("屋上展示場",35.6284371,139.794094),
 PARKING("駐車場", 35.6269198, 139.7963214),
 ENTRANCE("エントランスプラザ",35.6304227,139.7940026);
}

この計算処理はクライアントプログラム側で行っているため、取得した緯度経度の情報はサーバー側に送信されず、自宅住所などが記録に残ることはありません。
距離の計算自体は中学のころに三角形の辺の長さの求め方などでやっているかと思いますので割愛します。
書く場所については、4隅をとるなどして端末一がその範囲の中にあるかを取得する方法もあるのですが、それは4隅のポイント取得が面倒であったことなどからやってません。
その実装内容さえ信頼性がないと心配な方は、アプリを職業プログラマーの方にでも解析してもらってください。

使用しているAPIであるGeolocation APIについては、以下のURL辺りを参考にしてください。
http://www.htmq.com/geolocation/


次にTwitter認証ですが、正直個人が作っていそうなアプリでとんでもなく多くの人の「書き込みできる、DMだって自由に遅れる権限」を取得しまくっているアプリが多い昨今、こんなに気を使う必要ないんじゃないの?って感じです。
基本、今回のアプリでいただく権限は読み取り属性のみとし、アカウントのIDとプロフ画像URL、およびフレンド(フォローしている人)の一覧を取得しています。
使用しているAPIは以下の二つとなります。

https://api.twitter.com/1.1/account/verify_credentials.json
https://api.twitter.com/1.1/friends/ids.json

この二つ、TwitterAPIの1.0以前はTwitter認証なしで使用できたと思いましたが、今はTwitter認証しなければ使用できなくなってしまったため、仕方なく認証を行っているというところです。
この認証処理はTwitter側で行われるため、アプリ側にパスワードがわたることはありません。

TwitterAPIのアクセスに関する詳細は、以下あたりを参考に。



何か質問があれば、Twitterにて質問してください。
気が向けばご返答します。

2014年3月26日水曜日

「撮影会」について

今日は暫く前に関西で開催されておりました撮影会について。

人気のある方が参加されており、注目もされていたであろうため、気になっていました。



まず、個人的な感想としてなんですが、もちろん無事に開催できたことは喜ばしいのですが、あんまりにも運営側に負荷がかかっていたであろうことから同じ様に開催できる人は少ないと思われるため、妬みなどを考えれば余り良い影響は与えられていないだろうな、と感じています。



開催した発起人のレイヤーさんはその後開催される撮影会にいい影響があればとお考えの様ですが、たぶん逆効果になってしまう気がします。

富の再分配や適材適所、活動の継続のための支援をしたい側の心境、などなど、いろんなことを考えた上で、それでもなおというのであれば色々やり方が違ったものと思われますが、開催方法についてもう少し考慮の余地があったのでは無いかと考えています。

正直、参加した人や周りからみていた人は誰が運営やっていたかわかっているわけですが、じゃあ他のレイヤーさんが同じ様なことしたければ同じ運営さんに頼めばやらせてくれるんだよね?と言えば、そうではないでしょう。

あれは特別、と棚上げしてしまえば、その運営さんが特定の被写体さんをえこひいきしてるだけの話になってしまいます。

同じ形で撮影会を継続して開催できない以上、以後の撮影会のあり方に影響を与えることはなく、かつ、特別に開催したことを特別だと捉えられない方に向けては誤解を招かせることになり、良い影響は与えていると思えません。



また、被写体と撮影者が対等の立場でという事でしたが、なら自分たちはそんな価値のある被写体じゃないよ、ということが主張したかったのでしょうか。

被写体の価値が高いなら価格を上げ、価値が低いなら価格を下げることになるので、スタジオ代頭割での開催ということは、被写体の価値が低かった、ということになります。

以前からレイヤーさんのアイドル視が云々、というお話もありましたのでそういうことだったのかもしれませんが、もし被写体の価値が低かったのであれば撮る事の価値も下がるわけで、きっと、そうじゃないよね、と。

また、撮影会の参加費って難しいもので、単純なものじゃないと、考えています。

参加費は、その高低で参加する人を振るいにかけられる側面を持ち、既存の撮影会の中にはそれによって問題を起こしやすい人を排除するためにあえて参加費を高く見積もっている所もあるでしょう。



空き枠が出た時や万一中止になった時にはそれでもスタジオ費用はかかるし、スタジオ費用以外にもかかる費用がある。



そう言う諸々まで自分たちで考えて、初めて自分たちだけで開催した、と言うことになるかと思います。

まあ、参加されたみなさんは楽しかったみたいですし、やはり開催までにはそれなりに頑張らなきゃならなかったと思いますし。

きっと、色んな形で見て開催されてよかったんだとは思います。

ですが、一社会人として、もう少し色々な事について配慮が出来ていればよかったんじゃないかななんて思います。



ぶっちゃけ、裏で運営やっていた方から相談いただいていたので、大変そうだったなぁと。

次回があるようであれば、もう少し上手に開催していただけると嬉しいです。