モバイル

スマートフォンで公衆無線LANに繋いでインターネットをするのは、セキュリティ上、安全なのか危険なのか。

いわゆるWi-Fiの話。
そもそも、スマートフォンのセキュリティに限った話ではなく、PCにもおんなじ事が言えますが。

昨今、各キャリアともスマートフォンのユーザー数増加により、3G回線が逼迫してきています。
そりゃユーザー数が増えれば増えるほど、比例して全体の通信量も多くなります。

そこで、外出先で3Gではなく、無線LANに繋げて3Gよりも高速でインターネットが出来るように、
au,docomo,softbankのWi-Fiスポットがいろんな所に設置されてます。
レストラン、サ店、駅、ホテル、空港などなど。

Wi-Fiスポットは、au,docomo,softbankが設置したものに限らず、あまたのプロバイダのものが設置されてます。
スマートフォンを持って外出すると、”Wi-Fi設定”にスポット名がじゃんじゃん出てくると思います。
Wi-Fiスポットに接続すると、晴れてネットができる状態になるわけだけど、そのWi-Fiスポットが、
通信をどう暗号化しているかによって、セキュリティ上、安全かどうかがまったく変わってきます。

暗号化方式はおもに以下の4ケース。

・None(またはオープン)
→何も入力せずに接続できるけど、セキュリティ対策ゼロ。

・WEP
→暗号化・復号化の処理が軽いため通信は速いが、
暗号化自体が脆く、10秒で解読されてしまうくらい危険。

・WPA
→WEPのセキュリティ改良版。方式はRC4暗号。
IEEE 802.11i規格に準拠。

・WPA2
→WPAの完全版。方式はAES暗号。
IEEE 802.11i規格に準拠。

Wi-Fiのアクセスポイントとなるワイヤレスルーターは、ファイアーウォールで外部からの通信を防御してますが、同じネットワークに接続している他のユーザーからは守ってくれません。(同じネットワークに繋がっちゃってる状態なので。)

なので、セキュリティ対策ゼロのWi-Fiスポットに接続した場合、通信内容が暗号化されていない且つ、誰でもどの機器でも繋ぎ放題のため、セキュリティ的にかなり危険にさらされちゃいます。

長々となってしまいましたが、

・接続するWi-Fiスポットが、WEP以外で通信を暗号化していること。
・IDとパスワードをやり取りするような通信はしない。
・プライベートなメールの送受信はしない。
・どうしても我慢できない場合は、通信がのぞき見されても良い内容であること。

くらいは意識したうえで、利用すべきじゃないでしょうか。

softbank

SoftbankガラケーのIP帯域がガラッと変わるようです。

11月に発表されてましたが、ネットワーク設備の老朽化対策(?)のため、

2012年3月にSoftbankのYahoo!ケータイにて利用するIPアドレス帯域がガラッと変わるとのこと。
※詳細はSoftbankさんのサイトを参照

各キャリアとも、IP帯域の追加は年に数回実施されてるけど、ここまで大幅に変わるのは珍しい。

変更内容としては、
・現行の複数のIP帯域が、2012年3月末で停止される帯域と6月末で停止される帯域がある
・新しいIP帯域が3月末で幾つか追加になる

IPアドレスでアクセス制限をかけているサイトは、サイトにアクセスできなくなってしまうので、忘れずに対応しておきましょう。

しかも、”2012年3月末以降に使用する送信元IPアドレスは、
それ以前にも試験的に使用する可能性があります。”

とのことなので、早めにやっておいた方が良さげです。

MoveToSD

“空き容量が不足しています”はもう勘弁…Android端末の内蔵メモリの空き領域を増やす!

Android端末を使っているうちに、出てくるのが”空き容量が不足しています”のメッセージ。

最近では、ROMが8GBある端末も登場しているけども、1GBの端末もまだまだ多い。
アプリをゴリゴリとダウンロードしていると、
すぐにいっぱいになって、「空き容量が…」と怒られちゃいます(ToT)/

内部ストレージの容量そのものは増やせないので、どうやって空き容量を増やすか??
について考えてみる。

(1)各アプリのキャッシュをクリアする。
(2)SDカードに移動可能なアプリは、保存先を端末からSDカードに移す。

(1)は以前当ブログでも書いた、”1Tap Cleaner Free”アプリを使えばできる。
(2)をやってくれるアプリが、”MoveToSD”というアプリ。

使い方はちょー簡単。画面の仕様としては、
“On Phone”タブは、SDカードへ移動可能な内蔵メモリにインストールされているアプリ一覧で、
“On SD Card”タブは、SDカードに保存されているアプリ一覧。
“On Phone”タブをタップすると、SDカードに移動可能なアプリ一覧が出るので、
MoveToSD

そのアプリをタップしてアプリの詳細画面を開き、”SDカードに移動”をタップすればおk。
MoveToSD

そうすると、”On Phone”タブから移動したアプリが消えるので、
SDカードに移動されたことが解ります。
MoveToSD

”MoveToSD”は、一覧で見れて移動もできるんで便利なんだけど、
気になるのが、”SDカードに移動できるアプリとそうでないアプリは何が違うのか”っていう点。

Androidアプリは、”AndroidManifest.xml”というマニフェストファイルを必ず持っていて、
一意な名前のJava パッケージ名だったり、アクティビティなどのコンポーネント、起動方法など、
アプリの設定が記述されています。

そのxml内で、”installLocation”が指定できて、指定がなかったり、
下記の中で”internalOnly”が指定されていると、そのアプリはSDカードへは移動できないみたい。

internalOnly : 内蔵メモリへのインストールのみ許可
auto : 内蔵メモリ優先でインストール。しかし内蔵メモリの容量が一杯だった場合はSDカードへ保存
preferExternal : SDカードを優先してインストールするが、SDカードの容量が一杯だった場合は内蔵メモリへインストール

うーん、”MoveToSD”を使ってみると解るけど、SDカードに移せないアプリが数多く存在する。

ウィジェットアプリなんかだと、内蔵メモリに保存しないと起動できないアプリがありそうだけど、
アプリを開発/公開する際は、ユーザーの任意で内蔵メモリでもSDカードでも
保存できるようにして欲しいなぁー

spmode

スマートフォンのユーザー管理方法について考えてみる。

先日起こったドコモのSPモードメール障害。ネットでもだいぶ大きく取り上げられてました。

はてぶされてた、とあるブログを見ると、
伝送路のトラブルでIPアドレスとユーザー管理の紐付けが不整合を起こし、
加入者はIPアドレスで識別されているため、
結果、メールクライアントのアカウント情報が他人のものになってしまったという話。

スマートフォンは、3G回線に繋がるたびにIPアドレスが変わるんで、
IPアドレス取得→ユーザー管理サーバでユーザーと紐付け→セッション管理サーバに保存
→(切断後)IPアドレス解放 が繰り返し行われており、
今回は最も肝となる、ユーザー管理サーバで障害が発生して大変な事に。

spmode

ブログにもある通り、IPで識別しちゃっていいの?!とか、IP偽造されたらどうすんの?!とか、
いろんな課題はありそうだけど、根本的なインフラの基本設計は簡単には変えられないと思う。

で、スマートフォンのネイティブアプリやWebアプリはどのようなユーザー管理があるか。

ネイティブアプリ:SQLiteでデータベースにユニークなユーザー識別情報を保存する。
データベースはネイティブアプリと一緒に端末にダウンロードされる。

Webアプリ:アプリ同様、SQLiteでデータベースにユニークなユーザー識別情報を保存する。
アプリと違うのは、ブラウザのローカルストレージに保存される。
なお、ドメインごとにデータベースが割り当てられる。httpとhttpsでも保存領域は別。

Webだからcookieでも管理できますね。

しかしSPモードのシステム構成って煩雑だなぁ…

ブラウザアプリよりもネイティブアプリの方が売れる!?世界ではどんなiPhoneアプリが売れているか?

ソーシャルゲーム情報サイトで、日・米・独・英・仏・中のApp Storeセールスランキングが載ってました。

ちなみに、App Storeの”トップセールス”ランキングは売上順で、
“有料”、”無料”のランキングは、ダウンロード数に加えて、
ユーザーのアプリ利用頻度がアルゴリズムとして加味されているらしい。
(スタンドアローンの利用頻度って解るんだろうか。。)

日本はブラウザゲームが繁盛しているので、ネイティブアプリを展開していないケースも多々あると思うけど、特徴というか、傾向みたいなものを挙げてみた。

(1)欧米人は格闘ゲームが大好き。
→これが一番特色が出てるかなと。グラフィックが奇麗な格闘モノがアジアよりも強い。

(2)「Infinity Blade II」、「Batman Arkham City Lockdown」など、アメリカで売上の高いアプリは、ヨーロッパでも売上は高い。
→アジアでも高いものもあるが、ヨーロッパほど顕著ではない。

(3)日本や中国で売上が高いアプリがガラパゴス化している。
→まぁ日本だとパチスロ系とか上位に入ってるし。

(4)サッカー系は、主にヨーロッパで人気がある。
→「FIFA 12 by EA SPORTS」なんて、アメリカじゃ20位に入ってこない。

(5)テーブルゲーム系の人気は、欧米>アジア
→フランスでは「Texas Poker」が1位だし、アメリカでは「Poker by Zynga」が3位。
ダウンロード数ではなく、売上って考えるとスゴイ。

(6)「Smurfs’ Village」など、ソーシャルゲームはアジア、欧米でも人気タイトルは売上が高い。

(7)「クロノトリガー」はスゴイw!
→アプリ自体、そこそこ高額なのに5ヵ国でランキングに入っている。

日本の情勢は、ブラウザアプリ>ネイティブアプリ、海外は逆で、ブラウザアプリ<ネイティブアプリになっていると思いますが、今後は海外が日本みたいになるんでしょうか。

sslimage

サイト運営者もセキュリティ対策を。Android端末とHTTP通信とSSL証明書の関係

Googleが発表している、世界のスマートフォン ユーザーの利用動向調査によると、
日本のスマートフォンユーザーの45%が、スマートフォンで商品を購入したことがあるとか。

もちろん、購入ページや会員登録ページなど、個人情報を入力/表示する通信にはSSL通信が必須。
通信の仕組みは↓な風に行われる。

sslimage

(1)Android端末は、Webサーバにアクセス(https://~)し、暗号化の仕様を伝える。
(2)Webサーバは、暗号化仕様をAndroid端末へ返す。
(3)Webサーバは、SSLサーバ証明書をAndroid端末へ送る。
(4)Android端末は、端末に登録されているルート証明書を用いて、
SSLサーバ証明書の署名検証を行い、Webサーバの公開鍵を取得する。
(5)Android端末は、公開鍵を用いて暗号化した共通鍵をWebサーバに送る。
(6)Webサーバは、共通鍵を複合し、以降のやりとりは共通鍵を用いて行う。

ポイントは(4)のところで、
Android端末に登録されている「ルート証明書」をもとに、
Webサーバの「SSLサーバ証明書」を署名検証する際に、証明書エラーとなるケースがありえます。

“この証明書は信頼できる認証機関のものではありません。”
と、端末の画面に出るらしい。

そんなメッセージが出るWebサイトでは、
いっさい個人情報を入力したくなくなるし、ましてや物を買うなどできないと思うので、
SSLサーバ証明書は、Android端末の各OSに対応したものをインストールしましょう。

実はスマホアプリとの連携に適しているのは、Twitter>Facebookだった?

techdoll.jpさんの記事から。

モバイルアプリ解析ツールのLocalyticsが行った調査(日本限定ではない)によると、

Twitter連携のアプリがFacebook連携アプリの3倍の共有量があったとのこと。

共有量とは、アプリから”Tweet”、”いいね!”された後に、どれだか拡散されたかだと思う
(たぶん。)

Localytics

ただ、ソーシャルネットワーク連携としてはFacebookの方が人気が高く、

Facebook,Twitterいずれかと連携→20%

Facebookのみ連携→10%

Twitterのみ連携→1%

両方とも連携→9%

という結果が。

Facebook,TwitterともにAPIが公開されているので、アプリにSNS連携機能を埋め込む場合は、

「いいね!」ボタンだけじゃなくて、「Tweet」ボタンも忘れずに付けましょう。

続・セキュリティは大丈夫?Webサイトは要改修?Ezweb新ブラウザ対応

iPhone4Sが発売3日で300万台突破ーとかニュースになっていますが、
まだほったらかしにできないガラケーについて。(その2)


前回の記事
の中で、”EZブラウザ、PCサイトビューアのIPアドレス帯域の統一化”が
影響大きそうと書きましたが、その対応方法に関して。
情報を整理すると、

(1)新Ezブラウザは、2011年秋冬モデルから順次、搭載される。
(2)現時点(2011/10/18)で対象機種は、「F001」「URBANO AFFARE」の2機種。
(3)新EzブラウザのIP帯域は、2011/2に公開済み。
(4)PCサイトビューアでのアクセス時、EZ番号は送出されない。
で、新Ezブラウザか、現行ブラウザかの判定方法は以下の2点。
①User-Agentで判別する。
②IPアドレス帯域で判別する。

①のUA判定については、
以下のように、HTTP リクエストヘッダフィールドのHTTP_USER_AGENTに、
ブラウザバージョン”6.2_7.2.7.1.K.8″を含むかどうかで判別が可能。

現ブラウザ:KDDI-TS3H UP.Browser/6.2_7.2.7.1.K.1.400 (GUI) MMP/2.0
新ブラウザ:KDDI-FJ31 UP.Browser/6.2_7.2.7.1.K.8.400 (GUI) MMP/2.0

で、PCサイトビューアか携帯ブラウザかの判定方法は以下の方法。
HTTP リクエストヘッダフィールドのHTTP_X_UP_SUBNOに、
EZ番号が含まれているかどうか。

そんな感じで対応可能かと思われます。

スマートフォン最適化サイトを開発して思ったこと。

相変わらずバタバタ開発してたけど、気づいた点を覚書き。

■端末選定や端末のクセを押さえる

・iPadやAndroidの古いOSver、タブレット端末は含めるか等、スコープとする端末をまず明確に。
・Androidで、画面サイズを正しく取得できない機種があるので、画面サイズで処理を振り分ける場合は要注意。
・Androidで、凝ったJavascriptのアニメーションが端末によって動かなかったりする。

■他デバイスと差別化をする

・PCサイト、Android/iPhoneアプリなどから横展開をする場合、まったく同じ機能、構成にする必要は無い。
・スマホ最適化サイトを誰が使うのか、利用シーン、どういったサイトにするのかをしっかり整理してから作るべき。
・画像は少なめでシンプルに。PCサイトのような感じで、画像をガツガツ使った
ページデザインにすると、3G回線だとページ読み込みが遅くなってしまい、使い勝手が損なわれる。

■セキュリティはPCサイトと同様に

・ガラケーとは違い、アクセスしてくるIPアドレスは無数にあり、ブラウザでCookieも使えるので、
普通のPCサイトと同じ考えでセキュリティを考慮する必要がある。

■SEO(クローラー)対策

・Googleでは、今のところスマートフォンやタブレット端末用のインデックス(検索エンジン)は
提供されていない。(ただ、UAをiPhoneに偽造したGooglebot-Mobileは巡回しているみたい。)

■プログラムソースに関して

・Android/iPhoneで同一ソースが可能。
ただし、Android/iPhonいずれかだけ手を入れる可能性があったり、今後どんな端末が出てくるか解らないので、Android/iPhoneで分離しておいた方が良い。
また何か出てきたら追記しようと思います。

セキュリティは大丈夫?Webサイトは要改修?Ezweb新ブラウザ対応

iPhoneだーauだーって盛り上がりを見せておりますが、
まだほったらかしにできないガラケーについて。

auの2011年秋冬モデルにてEZブラウザの仕様変更が告知されてまして、
変更点は以下4点。

(1)EZブラウザ、PCサイトビューアーのIPアドレス帯域の統一化
(2)HDML 非サポート
(3)HTTP リクエストヘッダフィールドの一部削除
(4)EZ サーバの機能縮小

(1)が影響が大きそうで、ガラケーとPCサイトビューアのIP帯域が同じになるらしい。しかも、現行のPCサイトビューアでは、JavascriptでUA、EZ番号の変更が可能。

かんたんログイン機能などでユーザー認証にEZ番号を用いている場合、
PCサイトビューア且つ偽造したEZ番号でなりすましが可能になり、
ユーザー認証が通ってしまう可能性が。

ガラケーだけならそもそもUAやEZ番号の変更ができないし、FireFoxのアドオンFireMobileSimulatorなどで偽造しても、アクセス元のIPアドレスで制限をかけておけば問題ありません。
(ちなみに、スマートフォンに関しては、ガラケーとはIP帯域が異なる)

つまりその、2011年秋冬モデルに搭載されている「PCサイトビューア」が、
これまで同様に”UA”,”EZ番号”の変更が可能な仕様であれば、
セキュリティ上、改修しなくちゃいけないサイトがいっぱいありそう。

ってなんだかんだ言ってたら、auさんが出している資料が更新されており、
「2011年秋冬モデルでは、PCサイトビューアにおいて、UAの変更、EZ番号の追加はできません。」だそうです。

とはいえ、以下サイトに載っているように、かんたんログイン機能をやめて、
cookieでセッション管理した方が良いというご指摘もあるので、スマホ全盛とはいえ、今後ガラケーに関する問題・課題もまだまだ出てきそうな感じです。

http://d.hatena.ne.jp/ockeghem/20110615/p1