WO2012020612A1 - アプリケーション配布システム、アプリケーション配布方法、端末及びプログラム - Google Patents

アプリケーション配布システム、アプリケーション配布方法、端末及びプログラム Download PDF

Info

Publication number
WO2012020612A1
WO2012020612A1 PCT/JP2011/065198 JP2011065198W WO2012020612A1 WO 2012020612 A1 WO2012020612 A1 WO 2012020612A1 JP 2011065198 W JP2011065198 W JP 2011065198W WO 2012020612 A1 WO2012020612 A1 WO 2012020612A1
Authority
WO
WIPO (PCT)
Prior art keywords
file
application
storage area
certificate
terminal
Prior art date
Application number
PCT/JP2011/065198
Other languages
English (en)
French (fr)
Inventor
榎本 敦之
康平 芳賀
洋平 田岡
隆憲 廣嶋
Original Assignee
Necビッグローブ株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Necビッグローブ株式会社 filed Critical Necビッグローブ株式会社
Priority to CN2011800394775A priority Critical patent/CN103052958A/zh
Priority to KR1020137003973A priority patent/KR101453225B1/ko
Priority to US13/813,524 priority patent/US20130132528A1/en
Publication of WO2012020612A1 publication Critical patent/WO2012020612A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Stored Programmes (AREA)
  • Storage Device Security (AREA)

Abstract

 実行ファイル内の証明書データを、アクセス制限がかかった保護データ記憶領域14に証明書ファイルとして格納しておき、その後、アプリ配布サーバ40から、証明書データが内蔵されていない実行ファイルが更新用実行ファイルとして配布された場合、その更新用実行ファイルを実行することによってアプリケーションを利用する際に、保護データ記憶領域14に格納された証明書ファイルを用いる。

Description

アプリケーション配布システム、アプリケーション配布方法、端末及びプログラム
 本発明は、サーバと通信するためのアプリケーションを配布するアプリケーション配布システム、アプリケーション配布方法、端末及びプログラムに関し、特に、アプリケーションを利用する際に必要となる証明書の保護技術に関する。
 近年、スマートフォンやインターネット端末、あるいはタブレット端末等向けに、オープンソースオペレーティングシステム、ミドルウェア及び主要なアプリケーションからなるソフトウェアスタックパッケージを基にしたプラットフォームが発表されている(例えば、非特許文献1参照。)。
 また、上述したプラットフォームにおいては、端末のユーザにはroot権(特権)を渡さず、端末にインストールされたパッケージの各々に一意のLinuxユーザIDが割り当てられ、このLinuxユーザIDにおいてアプリケーションが実行され、アプリケーションが実行されることによって生成されたファイルが、保護されたデータ記憶領域に格納され、他のアプリケーションや端末のユーザにより読み書きできないようにする機構が設けられている(例えば、非特許文献2参照。)。
 また、上述したプラットフォームにおいては、アプリケーションのコピープロテクトを行う機構が設けられており、保護指定を付加してインストールしたアプリケーションは、一般ユーザが読み書きできない保護されたアプリケーション記憶領域にインストールされる(例えば、非特許文献3参照。)。
 ところが、アプリケーションに保護指定を付加してインストールした場合においても、パッケージ(.apk)に含まれるファイルのうち、アプリケーション実行ファイル(.dex)以外のファイルは、一般ユーザが読み書きできない保護領域にはインストールされず、どのユーザでも読み出せる領域に配置されるため、パッケージファイル内にアプリ実行ファイルとクライアント証明書ファイルとを同梱してインストールした場合、クライアント証明書ファイルは保護領域にはインストールされず、それにより、アプリケーションが利用するクライアント証明書がユーザに抜き取られてしまう虞れがある(例えば、非特許文献4参照。)。
 ここで、アプリケーションプログラムの実行ファイル内に証明書を内蔵し、実行ファイルと証明書とを容易にインストールすることを可能とする技術が考えられている(例えば、特許文献1参照。)。この技術を用いれば、証明書も実行ファイルとともに保護領域にインストールされることとなり、アプリケーションが利用するクライアント証明書がユーザに抜き取られることを回避することができる。
 また、上述したプラットフォームにおいては、アップデートを可能とすることが好ましい。そのため、アプリケーションの新規インストール並びにアップデートに必要なパッケージをユーザ端末に配布する機構として、マーケットと呼ばれるサーバがインターネット上に用意されている。そして、アプリケーションをアップデートする場合、パッケージファイル内にアプリ実行ファイルとクライアント証明書ファイルや証明書データとを同梱してマーケットと呼ばれるサーバにアップロードし、それにより、アプリケーションをアップデート可能としている(例えば、非特許文献5参照。)
特開2007-272610号公報
Android-Wikipedia http://ja.wikipedia.org/wiki/Android Android Developers Security and Permissions http://developer.android.com/guide/topics/security/security.html#userid Forward-Locked Applications http://developer.android.com/guide/appendix/market-filters.html#other-filters App Install Location http://developer.android.com/guide/appendix/install-location.html Publishing Your Applications http://developer.android.com/guide/publishing/publishing.html
 しかしながら、上述したようなアプリケーションのアップデートを行う場合、パッケージファイル内にアプリ実行ファイルとクライアント証明書ファイルや証明書データとを同梱してサーバにアップロードすることとなるため、アプリケーションを配布するサーバの管理者に悪意があった場合、管理者によりパッケージファイルからクライアント証明書ファイルや証明書データが抜き取られてしまう虞れがある。アプリケーションを配布するサーバは、アプリケーションを配布する端末の開発メーカーが設置するとは限らないため、上記のように悪意のある管理者が管理する可能性も否定できない。
 本発明は、上述したような技術が有する問題点に鑑みてなされたものであって、更新用のアプリケーションを配布するサーバの管理者にクライアント証明書を触れられないようにしたままアプリケーションのアップデートを行うことができる、アプリケーション配布システム、アプリケーション配布方法、端末及びプログラムを提供することを目的とする。
 上記目的を達成するために本発明は、
 インストールされた実行ファイルを実行することによってアプリケーションを利用する端末と、前記アプリケーションの更新用実行ファイルを前記端末に配布するアプリ配布サーバとを有し、前記アプリ配布サーバから前記端末に配布された前記更新用実行ファイルによって、当該端末にインストールされた実行ファイルをアップデートするアプリケーション配布システムにおいて、
 前記端末にインストールされた実行ファイルには、前記アプリケーションの利用に必要となる証明書データが内蔵されており、
 前記端末は、前記実行ファイル内の証明書データを、アクセス制限がかかった第1の記憶領域に証明書ファイルとして格納しておき、その後、前記証明書データが内蔵されていない実行ファイルが前記アプリ配布サーバから前記更新用実行ファイルとして配布された場合、当該更新用実行ファイルを実行することによってアプリケーションを利用する際に、前記第1の記憶領域に格納された証明書ファイルを用いることを特徴とする。
 また、インストールされた実行ファイルを実行することによってアプリケーションを利用する端末と、前記アプリケーションの更新用実行ファイルを前記端末に配布するアプリ配布サーバとを有してなるアプリケーション配布システムにおいて、前記アプリ配布サーバから前記端末に配布された前記更新用実行ファイルによって、当該端末にインストールされた実行ファイルをアップデートするアプリケーション配布方法であって、
 前記端末にインストールされた実行ファイルには、前記アプリケーションの利用に必要となる証明書データが内蔵されており、
 前記端末が、前記実行ファイル内の証明書データを、アクセス制限がかかった第1の記憶領域に証明書ファイルとして格納しておく処理と、
 前記アプリ配布サーバが、前記証明書データを内蔵していない実行ファイルを前記更新用実行ファイルとして前記端末に配布する処理と、
 前記端末が、前記アプリ配布サーバから配布された更新用実行ファイルを実行することによってアプリケーションを利用する際に、前記第1の記憶領域に格納された証明書ファイルを用いる処理とを有する。
 また、インストールされた実行ファイルを実行することによってアプリケーションを利用し、前記アプリ配布サーバから前記アプリケーションの更新用実行ファイルが配布された場合に、インストールされた実行ファイルを前記更新用ファイルによってアップデートする端末において、
 前記端末にインストールされた実行ファイルには、前記アプリケーションの利用に必要となる証明書データが内蔵されており、
 前記実行ファイル内の証明書データを、アクセス制限がかかった第1の記憶領域に証明書ファイルとして格納しておき、その後、前記証明書データを内蔵していない実行ファイルが前記アプリ配布サーバから前記更新用実行ファイルとして配布された場合、当該更新用実行ファイルを実行することによってアプリケーションを利用する際に、前記第1の記憶領域に格納された証明書ファイルを用いることを特徴とする。
 また、インストールされた実行ファイルを実行することによってアプリケーションを利用し、前記アプリ配布サーバから前記アプリケーションの更新用実行ファイルが配布された場合に、インストールされた実行ファイルを前記更新用ファイルによってアップデートする端末に実行させるためのプログラムであって、
 提供される実行ファイルに内蔵され、アプリケーションの利用に必要となる証明書データを、アクセス制限がかかった第1の記憶領域に証明書ファイルとして格納しておく手順と、
 前記証明書データを内蔵していない実行ファイルが前記更新用実行ファイルとして前記アプリ配布サーバから配布された場合に、当該更新用実行ファイルを実行することによってアプリケーションを利用する際に、前記第1の記憶領域に格納された証明書ファイルを用いる手順とを実行させるものである。
 本発明は、実行ファイル内の証明書データを、アクセス制限がかかった第1の記憶領域に証明書ファイルとして格納しておき、その後、証明書データが内蔵されていない実行ファイルが更新用実行ファイルとして配布された場合、その更新用実行ファイルを実行することによってアプリケーションを利用する際に、第1の記憶領域に格納された証明書ファイルを用いる構成としたため、更新用のアプリケーションを配布するサーバの管理者にクライアント証明書を触れられないようにしたままアプリケーションのアップデートを行うことができる。
本発明のアプリケーション配布システムの実施の一形態を示すブロック図である。
図1に示したアプリケーションの基本的な動作を説明するためのフローチャートである。
図1に示した保護アプリ記憶領域に格納されたインストールパッケージファイルの構成を示す図である。
図1に示したアプリケーション配布システムにおいて図2に示したインストールパッケージファイルをプリインストールする際の動作を説明するためのタイミングチャートである。
図1に示したアプリケーション配布システムにおいてアプリケーションが通常起動する際の動作を説明するためのタイミングチャートである。
図1に示したアプリケーション配布システムにおいてユーザがユーザ端末をフルリセット操作した場合の動作を説明するためのタイミングチャートである。
図1に示したアプリケーション配布システムにおいてアプリケーションをアップデートする際の動作を説明するためのタイミングチャートである。
図1に示した開発者端末内の出荷製品記憶領域内に置かれたアップデート版のインストールパッケージファイルの構成を示す図である。
 以下に、本発明の実施の形態について図面を参照して説明する。
 図1は、本発明のアプリケーション配布システムの実施の一形態を示すブロック図である。
 本形態は図1に示すように、ユーザ端末10と、開発者端末20と、サーバ30と、アプリ配布サーバ40とから構成されている。
 ユーザ端末10は、インストールされた実行ファイルを実行することによってサーバ30にアクセスしてアプリケーションを利用するものであり、保護一部記憶領域11と、アプリ記憶領域12と、保護アプリ記憶領域13と、保護データ記憶領域14と、デバッグブリッジ15と、インストーラ16と、アプリケーション17と、ダウンローダ18とから構成されている。このユーザ端末10としては、例えば、Android等のOSが搭載された携帯情報端末(PDA)や携帯電話端末が考えられる。ユーザ端末10では、ユーザ端末の利用者にはroot権(すなわち特権)を渡さず、また、ユーザ端末10にインストールされたパッケージの各々に一意のLinuxユーザIDが割り当てられ、アプリケーションはこのLinuxユーザIDにおいて実行されるようにする。また、root権(すなわち特権)は、ユーザ端末10の端末メーカーの権限のある人物にのみ与えられている。
 開発者端末20は、ユーザ端末10に搭載するアプリケーションを開発するためのパーソナルコンピュータ等の端末であり、ユーザ端末10の製造メーカーの技術者が利用するものである。開発者端末20は、データ書込ツール21と、出荷製品記憶領域22と、ブラウザ23とから構成されている。
 サーバ30は、SSLの双方向認証を必要とするWEBサーバである。
 アプリ配布サーバ40は、ユーザ端末10にアプリケーションを配布するためにインターネット上に設置されたサーバであり、コンテンツ記憶領域41と、WEBサーバ42とから構成されている。アプリ配布サーバ40は、一般的にはマーケットと呼ばれるサーバである。
 まず、ユーザ端末10の構成要素について説明する。
 保護一時記憶領域11は、本発明における第2の記憶領域となるものであって、開発者端末20から提供されるファイルを、デバッグブリッジ15を介して受け取って格納し、デバッグブリッジ15からの指示もしくはユーザ端末11の起動時のスクリプトによってインストーラ16が動作した場合に、ユーザ端末10のメモリ(不図示)上で動作しているインストーラ16にそのファイルを渡す。保護一時記憶領域11は、予め決められたユーザとなるroot権のあるユーザしかファイルの格納及び読み出しを行うことができない。従って、ユーザ端末10の端末メーカーの権限のある人物しか、保護一時記憶領域11に対してファイルを格納して読み出すことができず、ユーザ端末10の購入者を含む利用者は、保護一時記憶領域11に格納されているファイルを読み出すことはできない。また、保護一時記憶領域11に格納されたファイルは、ユーザ端末10のフルリセット(工場出荷状態に戻すことを指す)を行っても消去されずにそのまま残る。
 アプリ記憶領域12は、インストーラ16からアプリケーションの実行ファイル及び付属ファイルを受け取って保存し、アプリケーション17の実行時やアプリケーション17が要求した場合に、ユーザ端末10のメモリに保存されているファイルをアプリケーション17に渡す。アプリ記憶領域12は、root権のないユーザでもファイルの格納や読み出しが可能である。また、ユーザ端末10をフルリセットすると、アプリ記憶領域12に格納されたファイルは消去される。Androidにおいては、/data/appがこのアプリ記憶領域12にあたる。
 保護アプリ記憶領域13は、本発明の第3の記憶領域となるものであって、インストーラ16からアプリケーションの実行ファイルを受け取って格納し、そのアプリケーションの実行時にユーザ端末10のメモリに、格納しているファイルを渡す。保護アプリ記憶領域13は、root権のあるユーザしかファイルの格納及び読み出しを行うことができない。従って、ユーザ端末10の端末メーカーの権限のある人物しか、保護アプリ記憶領域13に対してファイルを格納して読み出すことができず、ユーザ端末10の購入者を含む利用者は、保護アプリ記憶領域13に格納されているファイルを読み出すことはできない。また、ユーザ端末10をフルリセットすると、保護アプリ記憶領域13に格納されたファイルは消去される。Androidにおいては、/data/app-privateがこの保護アプリ記憶領域13にあたる。
 保護データ記憶領域14は、本発明の第1の記憶領域となるものであって、アプリーケーション17からファイルを受け取って格納し、また、アプリケーション17からの要求により、格納しているファイルを渡す。保護データ記憶領域14は、root権のあるユーザもしくは、ファイルを生成したアプリケーション、または、ファイルを生成したアプリケーションと同一のコードサイニング証明書で署名されたアプリケーションからの空アクセスによってしかファイルを格納したり読み出したりすることができない。従って、例えば、Android OS搭載端末においては、ユーザ端末10の端末メーカーの権限のある人物か、もしくはアプリケーション17しかファイルを格納して読み出すことができず、ユーザ端末10の購入者を含む利用者は、保護データ記憶領域14に格納されているファイルを読み出すことはできない。また、ユーザ端末10をフルリセットすると、保護データ記憶領域14に格納されたファイルは消去される。Androidにおいては、/data/data/アプリケーション名(例:jp.ne.biglobe.applicationname)がこの保護データ記憶領域14にあたる。
 デバッグブリッジ15は、開発者端末20内のデータ書き込みツール23から指示を受け、インストール、アプリ起動、ファイル操作等のコマンドを実行し、また、データ書込ツール23から受け取ったファイルを保護一時記憶領域11に渡して格納する。なお、データ書込ツール21とデバッグブリッジ15との間は、USBケーブル等で接続される。例えば、Andoridでは、adbがデバッグブリッジ15にあたる。
 インストーラ16は、本発明の第1の処理手段となるものであって、デバッグブリッジ15からの指示、もしくは起動時スクリプトからの指示により、保護一時記憶領域11に格納されているインストールパッケージファイルを読み込み、インストールに必要な設定(メニューへの登録等)を行った上で、このインストールパッケージファイルをアプリ記憶領域12若しくは保護アプリ記憶領域13に格納する。また、インストーラ16は、ダウンローダ18からの指示があった場合は、ダウンローダ18から受け取ったインストールパッケージファイルを読み込み、インストールに必要な設定(メニューへの登録等)を行った上で、このインストールパッケージファイルをアプリ記憶領域12若しくは保護アプリ記憶領域13に格納する。なお、インストーラ16によるアプリケーションのインストール時に、保護指定(一般的にForward Lockという)がされている場合には、実行ファイルのみが保護アプリ記憶領域13に格納され、実行ファイル以外のファイルはアプリ記憶領域12に格納される。保護指定がされていない場合は、全てのファイルがアプリ記憶領域12に格納される。本形態では、全ての場合において保護指定があるものとする。
 アプリケーション17は、本発明の第2の処理手段となるものであって、デバッグブリッジ15からの指示、起動時スクリプトからの指示、もしくはメニューからの指示により起動する。起動時は、保護アプリ記憶領域13に格納されたインストールパッケージファイルに含まれるアプリ実行ファイルをユーザ端末10内のメモリにロードすることで起動する。また、初回起動時には、そのアプリ実行ファイルに含まれる証明書データを証明書ファイルとして展開して保護データ記憶領域14に格納する。また、アプリケーション17は、サーバ30と通信を行う。この際、保護データ記憶領域14内に証明書ファイル92が存在する場合は、このファイルを読み出してサーバ30に対してクライアント証明書として提示し、サーバ30にアクセスできる端末であることを示す。
 ダウンローダ18は、定期的にアプリ配布サーバ40内のWEBサーバ42と通信し、ユーザ端末10内にインストールされているアプリケーションの更新用実行ファイルが存在するか否かを問い合わせる。もし更新用実行ファイルが存在する場合は、アプリ配布サーバ40内のWEBサーバ42からインターネット経由で、更新用実行ファイルを含むインストールパッケージファイルを受信し、インストーラ16に渡す。
 次に、開発者端末20の構成要素について説明する。
 データ書き込みツール21は、ユーザ端末10にroot権のあるユーザとしてログインし、開発者端末20の操作者による指示に従い、出荷製品記憶領域22内に記憶されているファイルを、デバッグブリッジ15経由で保護一時記憶領域11に転送する。また、デバッグブリッジ15を介して、ユーザ端末10に対して、インストール、アプリ起動、ファイル操作等のコマンドを送信する。データ書込ツール21とデバッグブリッジ15との間は、USBケーブル等で接続される。
 出荷製品記憶領域22は、データ書込ツール21を経由してユーザ端末10内の保護一時記憶領域11に格納するファイルを格納するための領域である。
 ブラウザ23は、アプリ配布サーバ40内のWEBサーバ42にアクセスし、出荷製品記憶領域22内のファイルをアプリ配布サーバ40にアップロードする。ブラウザ23とWEBサーバ42との間は、インターネットで接続されている。
 次に、サーバ30について詳細に説明する。
 サーバ30は、アプリケーション17から接続要求を受けると、自身のサーバ証明書をアプリケーション17に提示するとともに、アプリケーション17に対してクライアント証明書の提示を要求し、正しいクライアント証明書が提示された場合のみ接続を受け付けるサーバである。サーバ30とユーザ端末10内のアプリケーション17との間は、インターネットで接続されている。
 次に、アプリ配布サーバ40の構成要素について説明する。
 コンテンツ記憶領域41は、WEBサーバ42から受け取ったファイルを格納し、また、WEBサーバ42からの要求に応じてファイルをWEBサーバ42に送る。
 WEBサーバ42は、ブラウザ23からインターネット経由でアップロードされたファイルを受け付けてコンテンツ記憶領域41に格納し、また、ダウンローダ18からインターネット経由で要求されたファイルをコンテンツ記憶領域41から読み出してダウンローダ18に転送する。
 以下に、上記のように構成されたアプリケーション配布システムにおけるアプリケーション配布方法について説明する。
 まず、図1に示したアプリケーション17の基本的な動作について説明する。
 図2は、図1に示したアプリケーション17の基本的な動作を説明するためのフローチャートである。
 アプリケーション17は、デバッグブリッジ15からの指示、起動時スクリプトからの指示、もしくはメニューからの指示により起動する。起動時は、保護アプリ記憶領域13に格納されたアプリ実行ファイルをユーザ端末10内のメモリにロードすることで起動する(ステップ1)。
 図3は、図1に示した保護アプリ記憶領域13に格納されたインストールパッケージファイルの構成を示す図である。
 図1に示した保護アプリ記憶領域13には、保護一時記憶領域11から読み出されたインストールパッケージファイル90がインストーラ16によって格納されている。このインストーラパッケージ90は、ユーザ端末10にアプリケーションをプリインストールする場合に利用するインストールパッケージであり、そのため、図3に示すようにアプリ実行ファイル91を有しており、アプリ実行ファイル91のインストール時にインストーラ16によって保護アプリ記憶領域13に格納される。インストールパッケージファイル90は、アプリケーションのインストールに必要なファイル類をひとまとめにしたアーカイブであり、Androidの場合は一般的にapkという拡張子が付くファイルである。アプリ実行ファイル91は、ユーザ端末10上で動作するアプリケーション17の実行ファイルであり、内部にクライアント証明書として使用できる証明書データ92が格納されている。Androidの場合は、一般的にdexという拡張子が付くファイルである。証明書データ92は、アプリ実行ファイル91内に格納されたクライアント証明書データである。
 アプリケーション17が初めて起動された場合で、かつ、アプリ実行ファイル91に証明書データ92が内蔵されている場合(つまり、アプリ実行ファイル91をロードすることで実行されているアプリケーション17)は(ステップ2)、アプリケーション17が、保護アプリ記憶領域13に格納されたインストールパッケージファイル90に含まれる証明書データ92を証明書ファイルとして展開して保護データ記憶領域14に格納する(ステップ3)。なお、証明書ファイルは、サーバ30との通信時に必要なクライアント証明書データで構成されるファイルであり、開発者端末20におけるアプリ実行ファイル91の作成時に証明書データ91としてアプリ実行ファイル91内に取り込まれる。
 次に、アプリケーション17は、保護データ記憶領域14に格納された証明書ファイルを読み出す(ステップ4)。
 その後、アプリケーション17は、サーバ30との間にて、保護データ記憶領域14から読み出した証明書ファイルをクライアント証明書として用いて双方向認証つきSSL通信を行う(ステップ5)。
 そして、通信終了後、終了する(ステップ6)。
 次に、図1に示したアプリケーション配布システムにおいて図2に示したインストールパッケージファイル90をプリインストールする際の動作について説明する。
 図4は、図1に示したアプリケーション配布システムにおいて図2に示したインストールパッケージファイルをプリインストールする際の動作を説明するためのタイミングチャートである。
 ここで、ユーザ端末10は、製造メーカーの工場等に置かれており、開発者端末20内のデバッグブリッジ15とユーザ端末10内のデータ書き込みツール21とはUSBケーブルで接続されているものとする。また、開発者端末20からユーザ端末10には、root権のあるユーザとしてログインするものとする。
 ユーザ端末10の製造メーカーの技術者(以下、技術者と称する)が、開発者端末20内の出荷製品記憶領域22内に、インストールパッケージファイル90を置く。このインストールパッケージファイル90内には、図3に示したように、アプリ実行ファイル91が含まれており、このアプリ実行ファイル91内には、証明書データ92が含まれている。
 技術者が、データ書込ツール21を用いて、出荷製品記憶領域22内に格納されているインストールパッケージファイル90を、デバッグブリッジ15を経由して保護一時記憶領域11に書き込む。この際、ユーザがユーザ端末10を初めて起動したときに、インストーラ16が起動してインストールパッケージファイル90が保護指定つきでインストールされるよう設定する(ステップ11)。
 以上の作業が完了すると、ユーザ端末10は工場からユーザのもとに発送される。
 ユーザは、工場から送付されたユーザ端末10を受け取り、ユーザ端末10を起動する。
 ユーザ端末1は、初回起動時にインストーラ16が起動してインストールパッケージファイル90を保護指定つきでインストールするように設定されているため、インストーラ16が起動する。インストーラ16は、保護一時記憶領域11に格納されたインストールパッケージファイル90を読み出し、インストールに必要な設定(メニューへの登録等)を行った上で、インストールパッケージファイル90からアプリ実行ファイル91を取り出し、保護アプリ記憶領域13に書き込む(ステップ12)。なお、このアプリ実行ファイル91内には、証明書データ92が含まれている。
 以上の動作により、インストールパッケージファイル90がユーザ端末10にインストールされた。
 次に、ユーザが、ユーザ端末10のメニューからアプリケーション17の起動を指示すると、保護アプリ記憶領域13に格納されているアプリ実行ファイル91が証明書データ92ごとメモリ上にロードされ、アプリケーション17として起動する(ステップ13)。
 アプリケーション17は、初回起動であり、かつ、アプリ実行ファイル91が証明書データ92を内蔵しているため、証明書データ92を証明書ファイルとして展開して保護データ記憶領域14に格納する(ステップ14)。
 次に、アプリケーション17は、保護データ記憶領域14に格納されている証明書ファイルを読み込み(ステップ15)、保護アプリ記憶領域13に格納されているアプリ実行ファイル91を実行することによってサーバ30と双方向SSLによる通信を開始する際に、保護データ記憶領域14から読み込んだ証明書ファイルのデータをクライアント証明書としてサーバ30に提示する(ステップ16)。
 アプリケーション17は、サーバ30との通信を終了すると、アプリケーションとしての動作を終了する。
 以上の動作により、証明書ファイルが保護データ記憶領域14に書き込まれるとともに、サーバ30との通信が完了する。
 次に、図1に示したアプリケーション配布システムにおいてアプリケーション17が通常起動(すなわち初回起動ではない)する際の動作について説明する。
 図5は、図1に示したアプリケーション配布システムにおいてアプリケーション17が通常起動する際の動作を説明するためのタイミングチャートである。
 ユーザが、ユーザ端末10のメニューからアプリケーション17の起動を指示すると、保護アプリ記憶領域13に格納されているアプリ実行ファイル91が証明書データ92ごとメモリ上にロードされ、アプリケーション17として起動する(ステップ21)。
 アプリケーション17は、初回起動ではないため、保護データ記憶領域14に格納されている証明書ファイルを読み込み(ステップ22)、保護アプリ記憶領域13に格納されているアプリ実行ファイル91を実行することによってサーバ30と双方向SSLによる通信を開始する際に、保護データ記憶領域14から読み込んだ証明書ファイルのデータをクライアント証明書としてサーバ30に提示する(ステップ23)。
 アプリケーション17は、サーバ30との通信を終了すると、アプリケーションとしての動作を終了する。
 以上の動作により、アプリケーション17はサーバ30と正常に通信できた。
 次に、図1に示したアプリケーション配布システムにおいてユーザがユーザ端末1をフルリセット操作した場合の動作について説明する。
 図6は、図1に示したアプリケーション配布システムにおいてユーザがユーザ端末10をフルリセット操作した場合の動作を説明するためのタイミングチャートである。
 なお、ユーザは既にユーザ端末10の初回起動を終え、さらにアプリケーション17の初回起動も終えているものとする。つまり、図4に示したステップ11~16の動作を完了しているものとする。
 ユーザが、ユーザ端末10のフルリセット操作を行うと、アプリ記憶領域12、保護アプリ記憶領域13及び保護データ記憶領域14に格納されている全てのファイルが消去される。従って、保護アプリ記憶領域13に格納されているアプリ実行ファイル91と、保護データ記憶領域14に格納されている証明書ファイルが消去されるが、保護一時記憶領域11内のインストールパッケージファイル90は消去されずに残る。
 ユーザがフルリセット操作の実行後に、初めてユーザ端末10を起動すると、ユーザ端末10は、初回起動時にインストールパッケージファイル90を保護指定つきでインストールするよう設定されているため、インストーラ16が起動する。インストーラ16は、保護一時記憶領域11に格納されているインストールパッケージファイル90を読み出し、インストールに必要な設定(メニューへの登録等)を行った上で、インストールパッケージファイル90からアプリ実行ファイル91を取り出し、保護アプリ記憶領域13に格納する(ステップ31)。なお、このアプリ実行ファイル91内には証明書データ92が含まれている。
 以上の動作により、インストールパッケージファイル90がユーザ端末10にインストールされた。
 次に、ユーザが、ユーザ端末10のメニューからアプリケーション17の起動を指示すると、保護アプリ記憶領域13に格納されているアプリ実行ファイル91が証明書データ92ごとメモリ上にロードされ、アプリケーション17として起動する(ステップ32)。
 アプリケーション17は、初回起動であり、かつ、アプリ実行ファイル91が証明書データ92を内蔵しているため、証明書データ92を証明書ファイルとして展開して保護データ記憶領域14に格納する(ステップ33)。
 次に、アプリケーション17は、保護データ記憶領域14に格納されている証明書ファイルを読み込み(ステップ34)、保護アプリ記憶領域13に格納されているアプリ実行ファイル91を実行することによってサーバ30と双方向SSLによる通信を開始する際に、保護データ記憶領域14から読み込んだ証明書ファイルのデータをクライアント証明書としてサーバ30に提示する(ステップ35)。
 アプリケーション17は、サーバ30との通信を終了すると、アプリケーションとしての動作を終了する。
 以上の動作により、証明書データ92が証明書ファイルとして展開されて保護データ記憶領域14に格納されるとともに、サーバ30との通信が完了する。
 次に、図1に示したアプリケーション配布システムにおいてアプリケーション17をアップデートする際の動作について説明する。
 図7は、図1に示したアプリケーション配布システムにおいてアプリケーション17をアップデートする際の動作を説明するためのタイミングチャートである。
 なお、ユーザ端末10はユーザの手元に渡っており、ユーザは、既にユーザ端末10の初回起動を終え、さらにアプリケーション17の初回起動も終えているものとする。つまり、図4に示したステップ11~16の動作を完了しているものとする。また、開発者端末20内のデバッグブリッジ15とユーザ端末10内のデータ書き込みツール21とはUSBケーブルで接続されておらず、代わりに開発者端末20内のブラウザ23とアプリ配布サーバ40内のWEBサーバ42との間、またアプリ配布サーバ40内のWEBサーバ42とユーザ端末10内のダウンローダ18との間が、インターネットでそれぞれ接続されているものとする。
 ユーザ端末10の製造メーカーの技術者(以下、技術者と称する)が、開発者端末20内の出荷製品記憶領域22内に、インストールパッケージファイル90のアップデート版を置く。この際、アップデート版のインストールパッケージファイルが保護指定つきでインストールされるよう設定する。
 図8は、図1に示した開発者端末20内の出荷製品記憶領域22内に置かれたアップデート版のインストールパッケージファイルの構成を示す図である。
 開発者端末20内の出荷製品記憶領域22内に置かれたアップデート版のインストールパッケージファイル90Aは、特にユーザ端末10に既にインストール済みのアプリケーションをアップデートする場合に利用するインストールパッケージであり、そのため、図8に示すように、インストールパッケージファイル90A内には、更新用のアプリ実行ファイル91Aが格納されている。インストールパッケージファイル90Aは、アプリケーションのインストールに必要なファイル類をひとまとめにしたアーカイブであり、Androidの場合は一般的にapkという拡張子が付くファイルである。アプリ実行ファイル91Aは、ユーザ端末10上で動作するアプリケーション17の実行ファイルであり、図3に示したアプリ実行ファイル91とは異なり、内部にクライアント証明書として使用できる証明書データ92を格納していない。
 技術者が、ブラウザ23を用いて、出荷製品記憶領域22内に格納されているインストールパッケージファイル90Aを、WEBサーバ42を経由してコンテンツ記憶領域41に書き込む(ステップ41)。
 ダウンローダ18は、定期的にアプリ配布サーバ40内のWEBサーバ42と通信し、ユーザ端末10内にインストールされているアプリケーション17の更新版が存在するか否かを問い合わせる。このとき、ダウンローダ18はアプリ配布サーバ40のコンテンツ記憶領域41内に、アプリケーション17の更新版のインストールパッケージファイルであるインストールパッケージファイル90Aが存在することを知り、WEBサーバ42からインターネット経由で更新されたインストールパッケージファイル90Aを受信し、保護指定つきでインストーラ16に渡す。
 インストーラ16は、ダウンローダ18からインストールパッケージファイル90Aを受け取ると、インストールに必要な設定(メニューへの登録等)を行った上で、インストールパッケージファイル90Aからアプリ実行ファイル91Aを取り出し、保護アプリ記憶領域13に格納する。このとき、既に保護アプリ記憶領域13に格納されているアプリ実行ファイル91を削除することにより、保護アプリ記憶領域13に格納されているアプリ実行ファイル91をアプリ実行ファイル91Aに書き換える(ステップ42)。
 以上の動作により、保護アプリ記憶領域13に格納されているアプリ実行ファイル91がアプリ実行ファイル91Aに更新された。
 次に、上記のようにして更新されたアプリケーション17が通常起動する際の動作について説明する。
 ユーザが、ユーザ端末10のメニューからアプリケーション17の起動を指示すると、保護アプリ記憶領域13内に格納されているアプリ実行ファイル91Aがメモリ上にロードされ、アプリケーション17として起動する(ステップ43)。
 アプリケーション17は、アプリ実行ファイル91Aに証明書データが内蔵されていないため、保護データ記憶領域14内に格納されている証明書ファイルを読み込み(ステップ44)、保護アプリ記憶領域13に格納されているアプリ実行ファイル91Aを実行することによってサーバ30と双方向SSLによる通信を開始する際に、保護データ記憶領域14から読み込んだ証明書ファイルのデータをクライアント証明書としてサーバ30に提示する(ステップ45)。
 アプリケーション17は、サーバ30との通信を終了すると、アプリケーションとしての動作を終了する。
 以上の動作により、更新されたアプリケーション17は、サーバ30と正常に通信できた。
 以下に、本形態の効果について説明する。
 本形態においては、開発者端末20からユーザ端末10に提供されるインストールパッケージ90のアプリ実行ファイル91内に証明書データ92を埋め込んでいるため、アプリケーションが利用するクライアント証明書をユーザによって触れられないようにしたまま、アプリケーションと証明書のインストールおよびアップデートを行うことができる。
 また、上記のように証明書データ92を埋め込んだアプリ実行ファイル91を保護一時領域11に格納して出荷し、ユーザ端末10の初回起動時にこのアプリ実行ファイル91を保護アプリ記憶領域13にインストールし、アプリケーションの初回起動時に、アプリ実行ファイル91に埋め込まれた証明書データ92を証明書ファイルとして展開して保護データ記憶領域14に格納し、アップデート版の配布時には証明書データを抜いた更新用のアプリ実行ファイル91Aを配布し、このアプリ実行ファイル91Aの実行時には、既に保護データ記憶領域14に格納されている証明書ファイルを用いるため、アプリケーションが利用するクライアント証明書をアプリ配布サーバの管理者に触れられないようにしたまま、更新版アプリケーションの配布とアップデートを行うことができる。
 なお、本発明においては、ユーザ端末10内の処理は上述の専用のハードウェアにより実現されるもの以外に、その機能を実現するためのプログラムをユーザ端末10にて読取可能な記録媒体に記録し、この記録媒体に記録されたプログラムをユーザ端末10に読み込ませ、実行するものであっても良い。ユーザ端末10にて読取可能な記録媒体とは、ICカードやメモリカード、あるいは、フロッピーディスク(登録商標)、光磁気ディスク、DVD、CD等の移設可能な記録媒体の他、ユーザ端末10に内蔵されたHDD等を指す。この記録媒体に記録されたプログラムは、例えば、制御ブロックにて読み込まれ、制御ブロックの制御によって、上述したものと同様の処理が行われる。
 以上、好ましい実施の形態を挙げて本発明を説明したが、本発明は必ずしも上記実施の形態に限定されるものではなく、その技術的思想の範囲内において様々に変形して実施することができる。当然ながら、以上に述べた実施の形態を、相互に組み合わせて実施することもできる。
 本発明は、ユーザごとのアクセス権を管理できるOSを搭載した携帯情報端末(PDA)や携帯電話端末(スマートフォン)等に適用できる。
 この出願は、2010年8月10日に出願された日本出願特願2010-179404を基礎とする優先権を主張し、その開示の全てをここに取り込む。

Claims (10)

  1.  インストールされた実行ファイルを実行することによってアプリケーションを利用する端末と、前記アプリケーションの更新用実行ファイルを前記端末に配布するアプリ配布サーバとを有し、前記アプリ配布サーバから前記端末に配布された前記更新用実行ファイルによって、当該端末にインストールされた実行ファイルをアップデートするアプリケーション配布システムにおいて、
     前記端末にインストールされた実行ファイルには、前記アプリケーションの利用に必要となる証明書データが内蔵されており、
     前記端末は、前記実行ファイル内の証明書データを、アクセス制限がかかった第1の記憶領域に証明書ファイルとして格納しておき、その後、前記証明書データが内蔵されていない実行ファイルが前記アプリ配布サーバから前記更新用実行ファイルとして配布された場合、当該更新用実行ファイルを実行することによってアプリケーションを利用する際に、前記第1の記憶領域に格納された証明書ファイルを用いることを特徴とするアプリケーション配布システム。
  2.  請求項1に記載のアプリケーション配布システムにおいて、
     前記端末は、
     提供される実行ファイルが格納される第2の記憶領域と、
     前記第2の記憶領域に格納された実行ファイルのインストール時に、前記第2の記憶領域に格納された実行ファイルを第3の記憶領域に格納する第1の処理手段と、
     前記実行ファイルのインストール後におけるアプリケーションの初回起動時に、前記第3の記憶領域に格納された実行ファイル内の証明書データを前記証明書ファイルとして前記第1の記憶領域に格納し、その後、前記第1の記憶領域に格納された証明書ファイルを用いてアプリケーションを利用する第2の処理手段とを有し、
     前記第1の処理手段は、前記アプリ配布サーバから前記更新用実行プログラムが配布された場合、前記第3の記憶領域に格納された実行ファイルを当該更新用実行ファイルに書き換え、
     前記第2の処理手段は、前記第3の記憶領域に格納された前記更新用実行ファイルを実行することによってアプリケーションを利用する際に、前記第1の記憶領域に格納された証明書ファイルを用いるアプリケーション配布システム。
  3.  請求項2に記載のアプリケーション配布システムにおいて、
     前記第1の記憶領域は、前記実行ファイルによるアプリケーションからのアクセスによってのみ前記証明書ファイルの格納及び読み出しが可能であり、
     前記第2及び第3の記憶領域は、予め決められたユーザからのアクセスによってのみ前記実行ファイルの格納及び読み出しが可能であるアプリケーション配布システム。
  4.  インストールされた実行ファイルを実行することによってアプリケーションを利用する端末と、前記アプリケーションの更新用実行ファイルを前記端末に配布するアプリ配布サーバとを有してなるアプリケーション配布システムにおいて、前記アプリ配布サーバから前記端末に配布された前記更新用実行ファイルによって、当該端末にインストールされた実行ファイルをアップデートするアプリケーション配布方法であって、
     前記端末にインストールされた実行ファイルには、前記アプリケーションの利用に必要となる証明書データが内蔵されており、
     前記端末が、前記実行ファイル内の証明書データを、アクセス制限がかかった第1の記憶領域に証明書ファイルとして格納しておく処理と、
     前記アプリ配布サーバが、前記証明書データを内蔵していない実行ファイルを前記更新用実行ファイルとして前記端末に配布する処理と、
     前記端末が、前記アプリ配布サーバから配布された更新用実行ファイルを実行することによってアプリケーションを利用する際に、前記第1の記憶領域に格納された証明書ファイルを用いる処理とを有するアプリケーション配布方法。
  5.  請求項4に記載のアプリケーション配布方法において、
     前記端末が、提供された実行ファイルを第2の記憶領域に格納しておく処理と、
     前記端末が、前記第2の記憶領域に格納された実行ファイルのインストール時に、前記第2の記憶領域に格納された実行ファイルを第3の記憶領域に格納する処理と、
     前記端末が、前記実行ファイルのインストール後におけるアプリケーションの初回起動時に、前記第3の記憶領域に格納された実行ファイル内の証明書データを前記証明書ファイルとして前記第1の記憶領域に格納する処理と、
     前記端末が、前記アプリ配布サーバから更新用実行ファイルが配布された場合に、前記第3の記憶領域に格納された実行ファイルを当該更新用実行ファイルに書き換える処理と、
     前記端末が、前記第3の記憶領域に格納された前記更新用実行ファイルを実行することによってアプリケーションを利用する際に、前記第1の記憶領域に格納された証明書ファイルを用いる処理とを有するアプリケーション配布方法。
  6.  インストールされた実行ファイルを実行することによってアプリケーションを利用し、前記アプリ配布サーバから前記アプリケーションの更新用実行ファイルが配布された場合に、インストールされた実行ファイルを前記更新用ファイルによってアップデートする端末であって、
     前記端末にインストールされた実行ファイルには、前記アプリケーションの利用に必要となる証明書データが内蔵されており、
     前記実行ファイル内の証明書データを、アクセス制限がかかった第1の記憶領域に証明書ファイルとして格納しておき、その後、前記証明書データを内蔵していない実行ファイルが前記アプリ配布サーバから前記更新用実行ファイルとして配布された場合、当該更新用実行ファイルを実行することによってアプリケーションを利用する際に、前記第1の記憶領域に格納された証明書ファイルを用いる端末。
  7.  請求項6に記載の端末において、
     提供される実行ファイルが格納される第2の記憶領域と、
     前記第2の記憶領域に格納された実行ファイルのインストール時に、前記第2の記憶領域に格納された実行ファイルを第3の記憶領域に格納する第1の処理手段と、
     前記実行ファイルのインストール後におけるアプリケーションの初回起動時に、前記第3の記憶領域に格納された実行ファイル内の証明書データを前記証明書ファイルとして前記第1の記憶領域に格納し、その後、前記第1の記憶領域に格納された証明書ファイルを用いてアプリケーションを利用する第2の処理手段とを有し、
     前記第1の処理手段は、前記アプリ配布サーバから前記更新用実行プログラムが配布された場合、前記第3の記憶領域に格納された実行ファイルを当該更新用実行ファイルに書き換え、
     前記第2の処理手段は、前記第3の記憶領域に格納された前記更新用実行ファイルを実行することによってアプリケーションを利用する際に、前記第1の記憶領域に格納された証明書ファイルを用いる端末。
  8.  請求項7に記載の端末において、
     前記第1の記憶領域は、前記実行ファイルによるアプリケーションからのアクセスによってのみ前記証明書ファイルの格納及び読み出しが可能であり、
     前記第2及び第3の記憶領域は、予め決められたユーザからのアクセスによってのみ前記実行ファイルの格納及び読み出しが可能である端末。
  9.  インストールされた実行ファイルを実行することによってアプリケーションを利用し、前記アプリ配布サーバから前記アプリケーションの更新用実行ファイルが配布された場合に、インストールされた実行ファイルを前記更新用ファイルによってアップデートする端末に、
     提供される実行ファイルに内蔵され、アプリケーションの利用に必要となる証明書データを、アクセス制限がかかった第1の記憶領域に証明書ファイルとして格納しておく手順と、
     前記証明書データを内蔵していない実行ファイルが前記更新用実行ファイルとして前記アプリ配布サーバから配布された場合に、当該更新用実行ファイルを実行することによってアプリケーションを利用する際に、前記第1の記憶領域に格納された証明書ファイルを用いる手順とを実行させるためのプログラム。
  10.  請求項9に記載のプログラムにおいて、
     前記端末に、
     提供された実行ファイルを第2の記憶領域に格納しておく手順と、
     前記第2の記憶領域に格納された実行ファイルのインストール時に、前記第2の記憶領域に格納された実行ファイルを第3の記憶領域に格納する手順と、
     前記実行ファイルのインストール後におけるアプリケーションの初回起動時に、前記第3の記憶領域に格納された実行ファイル内の証明書データを前記証明書ファイルとして前記第1の記憶領域に格納する手順と、
     前記アプリ配布サーバから更新用実行ファイルが配布された場合に、前記第3の記憶領域に格納された実行ファイルを当該更新用実行ファイルに書き換える手順と、
     前記第3の記憶領域に格納された前記更新用実行ファイルを実行することによってアプリケーションを利用する際に、前記第1の記憶領域に格納された証明書ファイルを用いる手順とを実行させるためのプログラム。
PCT/JP2011/065198 2010-08-10 2011-07-01 アプリケーション配布システム、アプリケーション配布方法、端末及びプログラム WO2012020612A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN2011800394775A CN103052958A (zh) 2010-08-10 2011-07-01 应用分发系统、应用分发方法、终端和程序
KR1020137003973A KR101453225B1 (ko) 2010-08-10 2011-07-01 애플리케이션 배포 시스템, 애플리케이션 배포 방법, 단말 및 프로그램
US13/813,524 US20130132528A1 (en) 2010-08-10 2011-07-01 Application distribution system, application distribution method, terminal, and program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2010-179404 2010-08-10
JP2010179404A JP5429880B2 (ja) 2010-08-10 2010-08-10 アプリケーション配布システム、アプリケーション配布方法、端末及びプログラム

Publications (1)

Publication Number Publication Date
WO2012020612A1 true WO2012020612A1 (ja) 2012-02-16

Family

ID=45567582

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2011/065198 WO2012020612A1 (ja) 2010-08-10 2011-07-01 アプリケーション配布システム、アプリケーション配布方法、端末及びプログラム

Country Status (6)

Country Link
US (1) US20130132528A1 (ja)
JP (1) JP5429880B2 (ja)
KR (1) KR101453225B1 (ja)
CN (1) CN103052958A (ja)
TW (1) TWI494786B (ja)
WO (1) WO2012020612A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104537022A (zh) * 2014-12-18 2015-04-22 北京奇虎科技有限公司 浏览器信息分享的方法、浏览器客户端和装置

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014091728A1 (ja) 2012-12-13 2014-06-19 パナソニック株式会社 コンテンツ共有システム、コンテンツ共有方法及び情報通信装置
US20140331209A1 (en) * 2013-05-02 2014-11-06 Amazon Technologies, Inc. Program Testing Service
JP5805144B2 (ja) * 2013-06-19 2015-11-04 ビッグローブ株式会社 携帯端末、ファイル配信システム、ファイル配信方法、およびファイル配信プログラム
CN103412708B (zh) * 2013-07-31 2016-12-28 华为技术有限公司 终端设备上的任务管理方法和终端设备
KR102125923B1 (ko) * 2013-10-24 2020-06-24 삼성전자 주식회사 전자 장치의 운영체제 업그레이드 방법 및 장치
JP6424441B2 (ja) * 2014-03-14 2018-11-21 株式会社リコー 複合機、情報処理方法、情報処理プログラム、および情報処理システム
JP5899384B1 (ja) 2014-06-13 2016-04-06 アーティス株式会社 アプリケーションプログラム
CN106547578B (zh) 2015-09-21 2020-09-15 阿里巴巴集团控股有限公司 终端应用app的加载方法及装置
JP6780316B2 (ja) * 2016-06-23 2020-11-04 株式会社リコー 情報処理装置、プログラム、Webアプリケーション管理方法及び情報処理システム
TWI705373B (zh) * 2017-01-19 2020-09-21 香港商阿里巴巴集團服務有限公司 終端應用程式(app)的加載方法及裝置
KR102563897B1 (ko) * 2017-02-21 2023-08-07 삼성전자주식회사 식별 정보 관리 방법 및 이를 지원하는 전자 장치
KR102122968B1 (ko) * 2019-01-28 2020-06-15 숭실대학교산학협력단 애플리케이션 설치 정보 분석 시스템 및 방법

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1083310A (ja) * 1996-06-11 1998-03-31 Internatl Business Mach Corp <Ibm> プログラム・コードの配布方法及びシステム
JP2003022140A (ja) * 2001-07-05 2003-01-24 Yafoo Japan Corp ソフトウェア使用認証方法、ソフトウェア使用認証プログラム、ソフトウェア使用認証プログラムを記録した記録媒体、ソフトウェア使用認証方法で用いられるデータ、このデータを記録した記録媒体
JP2004234591A (ja) * 2003-02-03 2004-08-19 Nec Corp アップデートシステム、公開サーバ、端末、ライセンス発行サーバ及びプログラム

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0880840A4 (en) * 1996-01-11 2002-10-23 Mrj Inc DEVICE FOR CONTROLLING ACCESS AND DISTRIBUTION OF DIGITAL PROPERTY
DE69941142D1 (de) * 1998-05-06 2009-09-03 Sun Microsystems Inc Verarbeitungsmaschine und verarbeitungsverfahren
US6345347B1 (en) * 1999-09-27 2002-02-05 International Business Machines Corporation Address protection using a hardware-defined application key
JP2001243079A (ja) * 2000-03-02 2001-09-07 Omron Corp 情報処理システム
TW495675B (en) * 2000-09-14 2002-07-21 Acer Ipull Inc System for updating program executable being running and the method thereof
NZ533176A (en) * 2001-12-25 2005-10-28 Ntt Docomo Inc Device and method for restricting content access and storage
CA2479619C (en) * 2002-03-20 2008-05-20 Research In Motion Limited Certificate information storage system and method
KR20050000445A (ko) * 2003-06-24 2005-01-05 (주)엠타이드 터미널 서비스 기반 컴퓨팅 환경에서의 어플리케이션 배포시스템 및 방법
JP2005044201A (ja) 2003-07-24 2005-02-17 Nippon Telegr & Teleph Corp <Ntt> ネットワーク接続機器の自動設定方法、アプリケーション端末の自動設定方法、ネットワーク接続機器の自動設定システム、アプリケーション端末の自動設定システム、自動設定プログラム
US20050076198A1 (en) * 2003-10-02 2005-04-07 Apacheta Corporation Authentication system
JP4463815B2 (ja) * 2004-05-05 2010-05-19 リサーチ イン モーション リミテッド 安全なメッセージを送信するシステムおよび方法
US7886144B2 (en) * 2004-10-29 2011-02-08 Research In Motion Limited System and method for retrieving certificates associated with senders of digitally signed messages
US8356295B2 (en) * 2005-02-17 2013-01-15 Symantec Corporation Post-signing modification of software
US20090271875A1 (en) * 2005-03-31 2009-10-29 Pioneer Corporation Upgrade Module, Application Program, Server, and Upgrade Module Distribution System
JP2007164377A (ja) * 2005-12-12 2007-06-28 Toshiba Corp データ処理装置およびデータ処理方法
US7818395B2 (en) * 2006-10-13 2010-10-19 Ceelox, Inc. Method and apparatus for interfacing with a restricted access computer system
EP2074544A2 (en) * 2006-10-09 2009-07-01 SanDisk IL Ltd. Application dependent storage control
US20080147530A1 (en) * 2006-12-19 2008-06-19 Kwan Shu-Leung Programmatically transferring applications between handsets based on license information
US10069924B2 (en) * 2007-07-25 2018-09-04 Oath Inc. Application programming interfaces for communication systems
US8560864B2 (en) * 2008-03-26 2013-10-15 Fego Precision Industrial Co., Ltd. Firewall for removable mass storage devices
JP2009290508A (ja) 2008-05-29 2009-12-10 Panasonic Corp 電子化情報配布システム、クライアント装置、サーバ装置および電子化情報配布方法
US7877461B1 (en) * 2008-06-30 2011-01-25 Google Inc. System and method for adding dynamic information to digitally signed mobile applications
US8555089B2 (en) * 2009-01-08 2013-10-08 Panasonic Corporation Program execution apparatus, control method, control program, and integrated circuit
US8103847B2 (en) * 2009-04-08 2012-01-24 Microsoft Corporation Storage virtual containers

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1083310A (ja) * 1996-06-11 1998-03-31 Internatl Business Mach Corp <Ibm> プログラム・コードの配布方法及びシステム
JP2003022140A (ja) * 2001-07-05 2003-01-24 Yafoo Japan Corp ソフトウェア使用認証方法、ソフトウェア使用認証プログラム、ソフトウェア使用認証プログラムを記録した記録媒体、ソフトウェア使用認証方法で用いられるデータ、このデータを記録した記録媒体
JP2004234591A (ja) * 2003-02-03 2004-08-19 Nec Corp アップデートシステム、公開サーバ、端末、ライセンス発行サーバ及びプログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104537022A (zh) * 2014-12-18 2015-04-22 北京奇虎科技有限公司 浏览器信息分享的方法、浏览器客户端和装置

Also Published As

Publication number Publication date
TWI494786B (zh) 2015-08-01
JP2012038193A (ja) 2012-02-23
TW201224837A (en) 2012-06-16
JP5429880B2 (ja) 2014-02-26
KR101453225B1 (ko) 2014-10-22
KR20130027056A (ko) 2013-03-14
US20130132528A1 (en) 2013-05-23
CN103052958A (zh) 2013-04-17

Similar Documents

Publication Publication Date Title
JP5429880B2 (ja) アプリケーション配布システム、アプリケーション配布方法、端末及びプログラム
JP5061908B2 (ja) プログラム実行制御方法および装置ならびに実行制御プログラム
KR101280048B1 (ko) 운영체계들과 다른 소프트웨어의 인스톨을 제한하는 해킹방지 방법
JP5027807B2 (ja) 信頼される環境をサポートするコンピュータ可読コンポーネントの自動更新
JP5565040B2 (ja) 記憶装置、データ処理装置、登録方法、及びコンピュータプログラム
US9342470B2 (en) System for enabling software in storage-capable devices
JP5346608B2 (ja) 情報処理装置およびファイル検証システム
WO2012032326A1 (en) Virtualisation system
WO2007005082B1 (en) Universal peer-to-peer game download
KR102277238B1 (ko) 업데이트가능한 집적 회로 무선장치
GB2527569A (en) Booting a computer from a user trusted device with an operating system loader stored thereon
JP5112924B2 (ja) アプリケーション移動システム、アプリケーションの移動方法、プログラムおよび携帯端末
US9940461B2 (en) Enabling an external operating system to access encrypted data units of a data storage system
KR101056423B1 (ko) 로그인된 계정권한 제어를 이용한 프로그램 실행관리 방법 및 기록매체
US10223509B2 (en) Device of licensing program, program transaction device and method of licensing program
JP4728343B2 (ja) 情報更新方法、プログラム、情報処理装置
US20090187898A1 (en) Method for securely updating an autorun program and portable electronic entity executing it
WO2015087444A1 (ja) ライセンス管理システムおよびライセンス管理方法
JP2001350534A (ja) 有償ソフトウェアのダウンロード方法及びシステム
US11550880B2 (en) Method for controlling execution of an application
CN103870302A (zh) 可网络更新的用户信任装置
JP2011053966A (ja) 情報処理装置、ソフトウェア管理システム、及びソフトウェア管理方法
Asokan et al. Mobile Platforms
JP2011028694A (ja) セキュア媒体を用いたアプリケーションインストール方法、アプリケーションアンインストール方法およびアプリケーションアップデート方法

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201180039477.5

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11816278

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 13813524

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 20137003973

Country of ref document: KR

Kind code of ref document: A

122 Ep: pct application non-entry in european phase

Ref document number: 11816278

Country of ref document: EP

Kind code of ref document: A1