わいえむねっと

Contents
Categories
Calendar
2010/06
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
Monthly Archives
~2000/01
Recent Entries
RSS1.0
Templates
Information
Processed: 0.050 sec
Chashed: -
2010/06/05 Sat
東芝のBluetoothスタックはプロセスをやたらと常駐させるのが鬱陶しい。

  • TosA2dp.exe
  • TosAVRC.exe
  • TosBtHid.exe
  • TosBtHSP.exe
  • TosBtMng.exe
  • TosBtProc.exe
  • TosBtSrv.exe
  • TosOBEX.exe

ので、ファイルをリネームして起動を阻害してみる。

  • 使用しているプロファイルはA2DPだけなので、TosA2dp.exeを残してリネーム。
  • 接続できなくなった。
  • TosBtMng.exeも残してみる。
  • 接続できるようになった。A2DPも動作。

とりあえずこれで様子見。 ドコモ携帯のFelicaリーダ/ライタ機能メモ。

API仕様


getOfflineFelica(int, int)
http://www.tomico​m.ac.jp/~koba/doja5/jguideford​oja5api/javadoc/com/nttdocomo/device/felica/Felica.htm​l#getOffline​Felica%28i​nt,%20int%29
処理対象カードについて:
[DoJa-5.0 (903i) 以降]
処理対象カードにおいて、外部カードをサポートします。 引数 card に 外部カード(OfflineFelica.CARD_EXTERNAL)を指定可能です。

パーミッションについて:
[DoJa-5.0 (903i) 以降]
以下の場合には、このメソッドを呼び出した時点でセキュリティ違反として強制終了されます。
パーミッションとしてFeliCaオフライン機能の利用、FeliCaリーダ/ライタ機能の利用の、いずれも許可されていない場合
引数 card に 内部カード が指定された場合に、 パーミッションとしてFeliCaオフライン機能の利用が許可されていない場合
引数 card に 外部カード が指定された場合に、 パーミッションとしてFeliCaリーダ/ライタ機能の利用が許可されていない場合

ビルド挙動

  • TrustedAPID設定なし/トラステッド動作設定なし
--- ADFチェック 終了 ---
--- ADF/トラステッド動作設定チェック 開始 ---
【 Felica.getOfflineFelica 】
ADF [TrustedAPID] の設定が必要です。
トラステッド [FeliCaオンライン機能の許可] または [FeliCaオフライン機能の許可] の設定が必要です。
--- ADF/トラステッド動作設定チェック 終了 ---

  • TrustedAPID設定あり/トラステッド動作設定なし
--- ADFチェック 開始 ---
warning: TrustedAPID が設定されています。iアプリDXの機能が利用可能です。
--- ADFチェック 終了 ---
--- ADF/トラステッド動作設定チェック 開始 ---
【 Felica.getOfflineFelica 】
トラステッド [FeliCaオンライン機能の許可] または [FeliCaオフライン機能の許可] の設定が必要です。
--- ADF/トラステッド動作設定チェック 終了 ---

  • TrustedAPID設定あり/トラステッド動作設定あり
  • iappliToolのトラステッド動作設定に該当項目はない。プロジェクトと同名の拡張子なしファイルの53byte目をむりやり。
--- ADFチェック 開始 ---
warning: TrustedAPID が設定されています。iアプリDXの機能が利用可能です。
--- ADFチェック 終了 ---
--- ADF/トラステッド動作設定チェック 開始 ---
--- ADF/トラステッド動作設定チェック 終了 ---

実行挙動

  • TrustedAPID設定なし
  • エミュレータ
getOfflineFelicaでUnsupportedOperationException。
  • 実機
getOfflineFelicaをコールした時点で「エラーが発生しました」と表示されて強制終了。

  • TrustedAPID設定あり
  • エミュレータ
getOfflineFelicaでUnsupportedOperationException。
  • 実機
「ソフトに誤りがあります」と表示されてダウンロード不可。

パーミッションなんとかならないの?

iモード携帯電話用Java(iアプリ) Part19
386 :デフォルトの名無しさん :2009/05/23(土) 23:34:51
iアプリDXについてはびっくりしたんだけど特許庁のサイトにドコモ提出のドキュメントがあった。
JAM->SDF(Secure Descriptor File)->JARの流れ。

TrustedAPIDからSDFファイルの場所を特定。
SDFってのはドコモサーバー内に存在するJAMファイルみたいなものらしい。
SDFとJAMファイルの内容(PackageURL等)が一致していればダウンロード実行。

つまりTrustedAPIDをどう解析しようがSDFを設置するサーバーがドコモ網内なのでむりぽってことみたい。

387 :デフォルトの名無しさん :2009/05/23(土) 23:50:46
脱獄は不可能

388 : :2009/05/24(日) 02:34:43
>>386
ちょっと興味がわいたので調べてみた。
多分コレかな。長いので後でゆっくり読もう…。
・特許公開2003-202929
ttp://www.j-tokkyo.com/2003/G06F/JP2003-202929.shtml

「ドコモ ADF」や「ドコモ アプリ」で検索すると、
iアプリ関連の特許で実装済みのものが出てきて面白いかも。

・特許公開2002-163111
  ADFによってJAMのDLを制御
・特許公開2005-354529
  FeliCa領域の扱い
・特許公開2004-302963
  CPがトラステッドではなくなったときのアプリ起動?
・特許公開2008-204175
  フォルダでアイコン表示の時の挙動?

390 : :2009/05/24(日) 18:40:39
何とかごまかせないかと全部読んでみたけど無理みたい……。
DLの流れはSDF→ADF→JARで、普段はADFのURLを書くところにSDFを書く模様。
SDFはドコモ網内にある&ADFに未公開の情報を設定する必要があるから、
TrustedAPIDをどう頑張っていじっても無駄orz

SDFにはAPID、ADFのURL、公開鍵、APIごとの使用可否が載っている。
ADFにはAPID、JARのURL、JARのハッシュ、秘密鍵が載っている。
1. リンクのクリックを契機にSDFをDLして、APID、ADFのURL、公開鍵を取り出す。
(SDFはドコモ網内にあり、携帯との経路は専用線なので改竄は無いものとし検証しない)
2. ADFのURLからADFをDLして、APID、JARのハッシュ、秘密鍵を取り出す。
3. 公開鍵と秘密鍵、それぞれのAPIDの一致でADFを検証し、NGならADF異常で終了。
4, JARのURLからJARをDLする。
5. DLしたJARとADFのJARのハッシュでJARを検証し、NGならJAR異常で終了。
6. JARのインストールを完了する。
7. トラステッドAPIの実行可否は、SDFのAPI使用可否を参照して決定する。

この方式だと、SDFを経由してセキュリティを確保しながらも、
コンテンツ提供側はADFとJARを自由に更新できて便利な訳か。
検証の部分は省略したり別の方法を使ってもいいみたいだけど。

391 :386 :2009/05/24(日) 19:05:47
>>390
ミスリードやで坊や。

最初にADF->TrustedAPIDと紐付けされているSDJ->ADFとSDF比較->JAR
ADFのPackageURLには普通にJARを指定する。

上記は実際にデラックスのアプリを見たから間違いない。

392 : :2009/05/24(日) 20:19:31
>>391
実物は見たことが無いので助かります。

あれは↓をベタに解釈したものだとでも思ってください。
ttp://www.j-tokkyo.com/2003/G06F/JP2003-202929.shtml

ただ、【0033】を見る限り、トラステッドは最初にSDFをDL、
非トラステッドは最初にSDF以外(たぶんADF)をDLしていると書いてあるような。
別の特許なんだろうか……。

これはなんともならないな。

GPSとかBluetoothとかFelicaとか保護されすぎ。