<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
		xmlns:xhtml="http://www.w3.org/1999/xhtml"
>

<channel>
	<title>ke-tai.org &#187; 個体識別番号</title>
	<atom:link href="http://ke-tai.org/blog/tag/%e5%80%8b%e4%bd%93%e8%ad%98%e5%88%a5%e7%95%aa%e5%8f%b7/feed/" rel="self" type="application/rss+xml" />
	<link>http://ke-tai.org/blog</link>
	<description>ke-tai.org　ケータイプログラマのためのコミュニティサイト。携帯電話向けWeb開発の技術情報を扱っています。</description>
	<lastBuildDate>Tue, 15 May 2012 05:32:22 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://ke-tai.org/blog/tag/%e5%80%8b%e4%bd%93%e8%ad%98%e5%88%a5%e7%95%aa%e5%8f%b7/feed/" />
		<item>
		<title>ケータイの端末ID・ユーザIDの取得についてまとめてみました</title>
		<link>http://ke-tai.org/blog/2008/09/08/phoneid/</link>
		<comments>http://ke-tai.org/blog/2008/09/08/phoneid/#comments</comments>
		<pubDate>Mon, 08 Sep 2008 05:18:43 +0000</pubDate>
		<dc:creator>matsui</dc:creator>
				<category><![CDATA[DoCoMo]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[SoftBank]]></category>
		<category><![CDATA[au]]></category>
		<category><![CDATA[uid]]></category>
		<category><![CDATA[まとめ]]></category>
		<category><![CDATA[ユーザID]]></category>
		<category><![CDATA[個体識別番号]]></category>
		<category><![CDATA[端末ID]]></category>
		<category><![CDATA[認証]]></category>

		<guid isPermaLink="false">http://ke-tai.org/blog/?p=453</guid>
		<description><![CDATA[ケータイサイトでは、端末ID・ユーザIDを取得する、という処理をよく行うことがあります。 ログインの度に、ユーザ名とパスワードを入力するというのは、ケータイの操作性の面からも現実的ではないためです。 今回はそんな各種ID [...]]]></description>
			<content:encoded><![CDATA[<p>ケータイサイトでは、端末ID・ユーザIDを取得する、という処理をよく行うことがあります。<br />
ログインの度に、ユーザ名とパスワードを入力するというのは、ケータイの操作性の面からも現実的ではないためです。</p>
<p>今回はそんな各種IDの取得方法について、PHPを使った場合を例にとりまとめてみました。</p>
<p><small>※ここでは端末IDを「ケータイに振られた個体識別情報（製造番号など）」、ユーザIDを「契約に紐付くID」として解説しています。</small></p>
<p class="spacer-small">&nbsp;</p>
<h3 class="section">ドコモ端末での取得方法</h3>
<p><strong>1. utnを使う</strong></p>
<p>ドコモ端末ではutn属性を使うことによって、フォームやリンクから個体識別情報を取得することができます。<br />
対応機種は、iモード対応HTML 3.0以降の機種（但しSO210i,SH251i,SH251iSを除く）で、現在使われているほとんどの端末に対応していると言ってよいでしょう。</p>
<pre class="super-pre-small"><code>&lt;form action="sample.php" method="post" utn&gt;
&lt;input type="submit" name="submit"&gt;
&lt;/form&gt;</code></pre>
<pre class="super-pre-small"><code>&lt;a href="sample.php" utn&gt;</code></pre>
<p>utnを使う場合、ケータイ端末側では、「携帯電話情報を送信しますか？」といった確認のダイアログが表示されます。</p>
<p><img src="http://ke-tai.org/blog/wp-content/uploads/2008/09/20080908-152653.jpg" alt="" title="20080908-152653" width="150" height="236" class="alignnone size-full wp-image-454" /><br />
<small>utn使用時に表示されるダイアログ</small></p>
<p>送信された端末ＩＤは、ユーザエージェントから取得できます。</p>
<pre class="super-pre-small"><code>$agent = $_SERVER['HTTP_USER_AGENT'];</code></pre>
<p>取得できるフォーマットの例は次の通りです。</p>
<p><small><strong>FOMA</strong></small></p>
<pre class="super-pre-small"><code>DoCoMo/2.0 P902i(c100;TB;W24H12;serXXXXXXXXXXXXXXX;iccxxxxxxxxxxxxxxxxxxxx)</code></pre>
<p><small>・FOMA端末製造番号フォーマット<br />
　→　serXXXXXXXXXXXXXXX　（ser + 15桁の英数字）<br />
・FOMAカード個体識別子<br />
　→　iccxxxxxxxxxxxxxxxxxxxx　(icc + 20桁の英数字)</small></p>
<p><small><strong>mova</strong></small></p>
<pre class="super-pre-small"><code>DoCoMo/1.0/P504i/c10/TB/ser***********</code></pre>
<p><small>・製造番号<br />
　→　ser***********　(ser + 11桁の英数字)</small></p>
<p>FOMA端末製造番号と製造番号は、ケータイ端末にふられた（機種変更で変わる）番号であることに注意してください。</p>
<p><small>参考：</small><br />
→　<a href="http://www.nttdocomo.co.jp/service/imode/make/content/html/tag/utn.html" target="_blank">NTT docomo　iモード対応HTMLタグ一覧　utn属性</a> <small>[nttdocomo.co.jp]</small></p>
<p class="spacer-small">&nbsp;</p>
<p><strong>2. iモードIDを使う</strong></p>
<p>iモードIDは2008年3月31日から提供された、ドコモの新しいユーザ識別方法です。<br />
契約ユーザごとに一意となる番号のため、機種変更があってもiモードIDは変わりません。<br />
全てのiモード端末で利用でき、utnのように確認用のダイアログがでないことも特徴です。</p>
<p>URLに「<strong>guid=ON</strong>」というパラメータを付けると、拡張ヘッダにiモードIDが付く、という仕様です。<br />
サーバ側からは次のように取得できます。</p>
<pre class="super-pre-small"><code>$imode_id = $_SERVER['HTTP_X_DCMGUID'];</code></pre>
<p>ただし、この機能を利用するには、次のメニューから利用者が通知を許可している必要があります。（デフォルトは通知するとなっています）<br />
<strong><small>iモードメニュー　→　お客様サポート　→　各種設定　→　iモードID通知設定</small></strong></p>
<p>また仕様上、SSL通信時は利用できないことに注意してください。</p>
<p><small>参考：</small><br />
→　<a href="http://ke-tai.org/blog/2008/03/31/imodeid_start/" target="_blank">ke-tai.org　本日提供が開始された「iモードID」機能を早速試してみました</a> <small>[ke-tai.org]</small><br />
→　<a href="http://www.nttdocomo.co.jp/service/imode/make/content/ip/" target="_blank">NTT docomo　iモードセンタの各種情報　iモードIDについて</a> <small>[nttdocomo.co.jp]</small></p>
<p class="spacer-small">&nbsp;</p>
<p>他にも公式サイトで使われる<a href="http://itpro.nikkeibp.co.jp/word/page/10008402/" target="_blank">NULLGWDOCOMO</a> <small>[itpro.nikkeibp.co.jp]</small>方式もありますが、禁則事項に触れるのであまり詳しくは書けません。<br />
公式サイト以外のいわゆる勝手サイトからは利用できないため、一般の開発者にはあまり関係がないでしょう。</p>
<p class="spacer-small">&nbsp;</p>
<h3 class="section">au端末での取得方法</h3>
<p>EZwebの場合はごくシンプルで、EZ番号（旧称サブスクライバID）を利用します。<br />
こちらは契約ごとに振られる番号のため、機種変更があっても変わりません。<br />
取得方法は次の通りです。</p>
<pre class="super-pre-small"><code>$ez_no = $_SERVER['HTTP_X_UP_SUBNO'];</code></pre>
<p><small>EZ番号の形式：<br />
01234567890123_xx.ezweb.ne.jp<br />
（[14桁の数値]_[2桁の英字].ezweb.ne.jp）</small></p>
<p>こちらもユーザ側で通知設定の可否を設定することができます。<br />
<strong><small>au oneトップ　→　auお客様サポート　→　申し込む/変更する　→　EZ番号通知設定</small></strong></p>
<p><small>参考：</small><br />
→　<a href="http://www.au.kddi.com/ezfactory/tec/spec/4_4.html" target="_blank">au　EZfactory　ユーザエージェント</a> <small>[au.kddi.com]</small></p>
<p class="spacer-small">&nbsp;</p>
<h3 class="section">ソフトバンク端末での取得方法</h3>
<p><strong>1. 端末のシリアルを使う</strong></p>
<p>ソフトバンク端末は、ユーザエージェントに端末ID（シリアル）が付加されています。<br />
ただし、端末側のブラウザ設定メニュー（ソフトバンクのサイト内ではないことに注意）で、製造番号通知のON/OFFを切り替えることができます。<br />
このIDは端末に振られた番号のため、機種変更に伴い変更になります。</p>
<p><small>例：</small></p>
<p class="super-pre-small"><small>SoftBank/1.0/824T/TJ001/SNxxxxxxxxxxxxxxx Browser/NetFront/3.3 Profile/MIDP-2.0 Configuration/CLDC-1.1</small></p>
<p><small>形式：<br />
SN012345678901234 (SN + 15桁の数字)</small></p>
<p class="spacer-small">&nbsp;</p>
<p><strong>2. x-jphone-uidを使う</strong></p>
<p>P型以降の端末では「x-jphone-uid」を使ってユーザIDを取得できます。<br />
こちらは契約ごとのIDのため、機種変更があっても変わりません。</p>
<pre class="super-pre-small"><code>$uid = $_SERVER['HTTP_X_JPHONE_UID'];</code></pre>
<p><small>形式：<br />
16桁の英数字（大文字・小文字混在）</small></p>
<p>こちらは、ソフトバンクのメニューからID通知の可否を設定できます。<br />
<strong><small>メニューリスト　→　MySoftBank　→　各種変更手続き　→　ユーザID通知設定</small></strong></p>
<p><small>参考：</small><br />
→　<a href="http://creation.mb.softbank.jp/terminal/index.html" target="_blank">ソフトバンク　Mobile Creation　ユーザエージェント一覧</a> <small>[creation.mb.softbank.jp]</small></p>
<p><small><strong>※追記</strong></small><br />
SSL利用時には上記IDが取得できないケースがあるようです。<br />
詳しくはコメント欄をご覧ください。</p>
<p class="spacer-small">&nbsp;</p>
<p class="spacer-small">&nbsp;</p>
<p>なお、端末IDを利用したログインでは、端末が中古として流通し持ち主が変わった場合でも、ログインできてしまうという問題がありますので、注意が必要になります。</p>
<p>また、PCからアクセスできる環境では、IDの詐称もごく簡単に行えます。<br />
IPアドレスから接続元を検証するなどの対応が必要になることにご注意ください。</p>
<p class="spacer-small">&nbsp;</p>
<p>この辺りのID取得処理は、「<a href="http://pear.php.net/package/Net_UserAgent_Mobile" target="_blank">PEAR::Net_UserAgent_Mobile</a>」などのライブラリを使うことで、より簡単に実装可能です。</p>
<p>すっかり長文になってしまったので、サンプルプログラムなどはまた後日掲載したいと思います。</p>
<p>※続きの記事を書きました　→　<a href="http://ke-tai.org/blog/2008/09/09/phoneid2/" target="_blank">こちら</a></p>
<p class="spacer">&nbsp;</p>
<p><strong><em>関連：</em></strong></p>
<ul>
<li><em><a href="http://ke-tai.org/blog/2008/03/31/imodeid_start/">本日提供が開始された「iモードID」機能を早速試してみました</a></em> <img style="border:0px" src="http://b.hatena.ne.jp/entry/image/small/http://ke-tai.org/blog/2008/03/31/imodeid_start/" /></li>
<li><em><a href="http://ke-tai.org/blog/2008/04/30/safariua/">Safariで携帯のユーザエージェントを名乗る方法</a></em> <img style="border:0px" src="http://b.hatena.ne.jp/entry/image/small/http://ke-tai.org/blog/2008/04/30/safariua/" /></li>
<li><em><a href="http://ke-tai.org/blog/2007/11/02/useragent_switcher/">PCからケータイのユーザエージェントを詐称するには(Firefox編)</a></em> <img style="border:0px" src="http://b.hatena.ne.jp/entry/image/small/http://ke-tai.org/blog/2007/11/02/useragent_switcher/" /></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://ke-tai.org/blog/2008/09/08/phoneid/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://ke-tai.org/blog/2008/09/08/phoneid/" />
	</item>
	</channel>
</rss>

