JP6343869B2 - 携帯端末装置及び復号処理プログラム - Google Patents
携帯端末装置及び復号処理プログラム Download PDFInfo
- Publication number
- JP6343869B2 JP6343869B2 JP2013030868A JP2013030868A JP6343869B2 JP 6343869 B2 JP6343869 B2 JP 6343869B2 JP 2013030868 A JP2013030868 A JP 2013030868A JP 2013030868 A JP2013030868 A JP 2013030868A JP 6343869 B2 JP6343869 B2 JP 6343869B2
- Authority
- JP
- Japan
- Prior art keywords
- program
- core
- application software
- encrypted
- ram
- Prior art date
- Legal status (The legal status 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 status listed.)
- Expired - Fee Related
Links
Images
Description
があった。
[第1の実施形態]
図1は、第1の実施形態による情報処理システム1の構成を示すブロック図である。情報処理システム1は、アプリ供給装置10と、携帯端末装置20と、通信ネットワーク100を備えている。通信ネットワーク100には認証局200が接続している。図2に、情報処理システム1におけるアプリ供給装置10と携帯端末装置20の構成を示す。
図2(a)に、アプリ供給装置10の構成を示す。アプリ供給装置10は、CPU(Central Processing Unit)で構成した制御手段11、ROM12(Read Only Memory)、RAM(Ramdom Access Memory)13、バス14、インターフェイス(I/F)15、通信部16、入出力部17、ディスプレイ18、磁気ディスク19を備えている。
相互に接続する。通信部16、入出力部17、ディスプレイ18及び磁気ディスク19は、インターフェイス15によってバス14に接続する。ROM12は、不揮発性の読み出し専用メモリである。ROM12には、オペレーティングシステム(以下、「OS」という。)などの基本ソフトウェアが記憶されている。
図2(b)に、携帯端末装置20の構成を示す。携帯端末装置20は、制御手段21とRAM22とROM23と不揮発性メモリ24とインターフェイス25をバス26に接続して備え、インターフェイス25に通信部27と無線LAN通信部28とUSB入出力部29を接続して備える。不揮発性メモリ24は、フラッシュメモリで構成することができ
る。また、不揮発性メモリ24には、その他に、携帯端末装置20に内蔵されるハードディスクや、可搬媒体の形態のROM、ハードディスク、フレキシブルディスク、光磁気ディスク、CD−ROM等の記憶媒体を用いることもできる。
図3に、アプリ供給装置10が作成して携帯端末装置20にインストールするアプリケーションソフトウェアD10のデータ構造を示す。このアプリケーションソフトウェアD10は、アプリ供給装置10から携帯端末装置20に送付され、携帯端末装置20の不揮発性メモリ24に記憶させる。
以下に、本実施形態の情報処理システム1全体の動作の概要を説明する。
(電子署名の公開鍵の登録)
先ず、アプリ供給装置10が予め、鍵生成アルゴリズムを実行して電子署名の公開鍵Koおよび秘密鍵Kgを生成する。そして、その公開鍵Koを第三者機関を介して公開する。
アプリ供給装置10は、アプリケーションソフトウェアD10のプログラムを、図3の
ブロック図のように、そのプログラムのコア部分と、残りのプログラム部分の、アプリの非コアプログラムD15に分割する。次に、そのプログラムのコア部分は、複数のコアモジュールに分割し、その各々のコアの分割プログラム部分Cを、秘密鍵Kgを用いて暗号化して暗号化データE(C,Ko)を作成する。各コアの分割プログラム部分Cの暗号化データE(C,Ko)をコアモジュールD11、D12、D13、D14とする。
図4に、携帯端末装置20において、アプリケーションソフトウェアD10を不揮発性メモリ24に格納した後に、そのプログラムをRAM22上へ展開して実行する動作を行うデータの流れを示す。特に、コアモジュールD1、D2、D3、D4は、それらを復号化処理して、RAM22の同じ記憶領域のアプリのコア領域に順次に上書きして実行する。
図5に、アプリ供給装置10において、制御手段11がアプリケーションソフトウェア
D10のプログラムのコア部分を複数のモジュールに分解して、それぞれを暗号化する暗号化処理ルーチンのフローチャートを示す。
暗号化処理ルーチンは、アプリケーションソフトウェアD10のプログラムのコア部分を分解した複数のモジュールの1つであるコアの分割プログラム部分Cを暗号化する。図5には、更に、携帯端末装置20の制御手段21が暗号化データE(C,Ko)を復号化処理する復号処理ルーチンのフローチャートも示す。
アプリ供給装置10の制御手段11は、アプリケーションソフトウェアD10のプログラムを、図3のブロック図のように、プログラムのコア部分と、残りのプログラム部分とに分割し、更に、そのコア部分を複数のコアの分割プログラム部分Cに分割する。
次に、制御手段11が、コア部分を複数に分割した各コアの分割プログラム部分C毎に、以下の暗号化処理を行う。すなわち、制御手段11が、署名生成アルゴリズムの最初のプログラムで、例えばSHA−1関数などの一方向ハッシュ関数で、コアの分割プログラム部分Cの不可逆変換処理を行いハッシュ値H1を計算する。次に、制御手段11が、署名生成アルゴリズムの次のプログラムで、秘密鍵Kgを用いてコアの分割プログラム部分Cとそのハッシュ値を暗号化して暗号化データE(C,Ko)を作成する。
制御手段11は、公開鍵Koを含む復号処理プログラムD16と、アプリケーションソフトウェアのコア部分の暗号化されたコアモジュールD11、D12、D13、D14と、アプリの非コアプログラムD15とで構成したアプリケーションソフトウェアD10のデータを作成し、携帯端末装置20に送付する。
図5に、携帯端末装置20において、制御手段21が暗号化されたアプリケーションソフトウェアD10を復号化してRAM22上に展開してプログラムを実行する手順のフローチャートを示す。
携帯端末装置20の制御手段21は、認証局200から、アプリ供給装置10のID番号に対して発行された公開鍵証明書を受信し、公開鍵証明書に収められた公開鍵KoをR
AM22に記憶する。この動作は、次のステップS32の、アプリケーションソフトウェアD10の取り込みの後に行っても良い。
次に、制御手段21は、アプリ供給装置10から送信されたアプリケーションソフトウェアD10を不揮発性メモリ24に記憶する。すなわち、アプリケーションソフトウェアD10の、公開鍵Koを含む復号処理プログラムD16と、アプリケーションソフトウェアのコア部分の暗号化されたコアモジュールD11、D12、D13、D14と、アプリの非コアプログラムD15のデータを不揮発性メモリ24に記憶する。
次に、制御手段21は、復号処理プログラムD16が含む公開鍵Koの正当性を、認証局200から受け取った公開鍵証明書から読み出してRAM22に記憶した公開鍵Koと照合して検証する。その認証ができない場合、そのアプリケーションソフトウェアD10の実行を中止する。認証が正常に行えた場合は、ステップS34へ進む。
制御手段21は、ユーザからの、アプリケーションソフトウェアD10の動作開始指令を受けて、以下のようにして、アプリケーションソフトウェアD10のプログラムを動作させる。先ず、制御手段21は、不揮発性メモリ24から、実行すべきアプリケーションソフトウェアD10の、アプリの非コアプログラムD15を読み出して、RAM22上のアプリの非コア領域22bに動的に展開する。
次に、制御手段21が、アプリの非コアプログラムD15のプログラムを実行する。そのプログラムの実行中にコアモジュールを実行する必要が生じた際に、ステップS36以降の復号化処理ルーチンを実行する。
制御手段21は、コアモジュールの実行要求が生じた際に、復号処理プログラムD16のプログラムをRAM22上のアプリの非コア領域22bに動的に展開して動作させる。
次に、制御手段21は、アプリのコア領域22aに展開したコアの分割プログラム部分Cにハッシュ関数を作用させてハッシュ値H2を計算する。そして、そのハッシュ値H2
を、先に復号化したハッシュ値H1と照合する。ハッシュ値H1とH2が一致すれば、コアの分割プログラム部分Cの改ざんが無いと判定し、ステップS38に進む。ハッシュ値H1とH2が一致しなければ、そのアプリケーションソフトウェアD10の実行を中止してステップS31に戻る。
次に、制御手段21は、RAM22上のアプリのコア領域22aに展開しておいたコアの分割プログラム部分Cのプログラムを実行する。そのプログラムの実行後に、ステップS36に戻り、復号処理プログラムD16を実行して、次に実行すべき、コアモジュールD11、D12、D13、D14のいずれかを不揮発性メモリ24から読出す。
本発明の第2の実施形態として、復号処理プログラムD16は外部ライブラリソフトウェアとして、アプリケーションソフトウェアD10とは別にして携帯端末装置20に送付し、復号処理プログラムD16を含まないアプリケーションソフトウェアD10を、復号処理プログラムD16とは別に携帯端末装置20に送付することができる。そうして、外部ライブラリソフトウェアとした復号処理プログラムD16を複数のアプリケーションソフトウェアD10に共有させて実行させる。それ以外は、第1の実施形態と同様に構成する。
第2の実施形態の変形例1として、公開鍵Koは、外部ライブラリソフトウェアとした復号処理プログラムD16に含ませず、携帯端末装置20は、公開鍵Koを、各アプリ供給装置10が暗号化したアプリケーションソフトウェアD10毎に、認証局200から取得してRAM22に記憶して用いるようにしても良い。
10・・・アプリ供給装置
11・・・制御手段
12・・・ROM
13・・・RAM
14・・・バス
15・・・インターフェイス
16・・・通信部
17・・・入出力部
18・・・ディスプレイ
19・・・磁気ディスク
20・・・携帯端末装置
21・・・制御手段
22・・・RAM
22a・・・アプリのコア領域
22b・・・アプリの非コア領域
23・・・ROM
24・・・不揮発性メモリ
25・・・インターフェイス
26・・・バス
27・・・通信部
28・・・無線LAN通信部
29・・・USB入出力部
100・・・通信ネットワーク
200・・・認証局
C・・・コアの分割プログラム部分
D10・・・アプリケーションソフトウェア
D11、D12、D13、D14・・・暗号化されたコアモジュール
D15・・・アプリの非コアプログラム
D16・・・復号処理プログラム
E(C,Ko)・・・暗号化データ
Kg・・・秘密鍵
Ko・・・公開鍵
Claims (3)
- アプリケーションソフトウェアを不揮発性メモリに記憶しRAMにプログラムを展開して実行する携帯端末装置であって、コア部分が複数のプログラムに分割されて公開鍵と対になる秘密鍵によって暗号化されたアプリケーションソフトウェアを受け取り、復号処理プログラムを実行することによって前記アプリケーションソフトウェアの前記コア部分の複数のプログラムを前記公開鍵を用いて順次に復号化して、前記RAMの同じ記憶領域に以前のプログラムに上書きして書き込んで実行する処理を繰り返すことで前記アプリケーションソフトウェアのコア部分を実行し、不揮発性メモリはフラッシュメモリであり、かつ、前記公開鍵を通信ネットワークを介して認証局から受信する通信手段を備え、前記コア部分が複数のプログラムに分割されて、該分割された部分のハッシュ値と合わせて暗号化され、前記復号処理プログラムが、該暗号化された部分をプログラムとハッシュ値とに復号化し、次に前記復号化されたプログラムのハッシュ値を計算し該ハッシュ値を前記復号化されたハッシュ値と照合し、前記復号処理プログラムが、前記RAMの同じ記憶領域に以前のプログラムに上書きして書き込んで実行する処理を繰り返す、動的リンク機能を有し、前記動的リンク機能は、暗号化した各コア部分のプログラムに組み込んだことを特徴とする携帯端末装置。
- 請求項1に記載の携帯端末装置であって、前記アプリケーションソフトウェアが、前記復号処理プログラムと前記公開鍵を含むアプリケーションソフトウェアであることを特徴とする携帯端末装置。
- 携帯端末装置において不揮発性メモリに記憶したアプリケーションソフトウェアのプログラムをRAMに展開して実行する復号処理プログラムであって、前記アプリケーションソフトウェアのコア部分が複数のプログラムに分割されて公開鍵と対になる秘密鍵によって暗号化されており、コア部分の暗号化された前記複数のプログラムを前記公開鍵を用いて順次に復号化して、前記RAMの同じ記憶領域に以前のプログラムに上書きして書き込んで実行する処理を繰り返し、前記不揮発性メモリはフラッシュメモリであり、かつ、前記公開鍵を通信ネットワークを介して認証局から受信する通信手段を備え、前記コア部分が複数のプログラムに分割されて、該分割された部分のハッシュ値と合わせて暗号化され、前記復号処理プログラムが、該暗号化された部分をプログラムとハッシュ値とに復号化し、次に前記復号化されたプログラムのハッシュ値を計算し該ハッシュ値を前記復号化されたハッシュ値と照合し、前記復号処理プログラムが、前記RAMの同じ記憶領域に以前のプログラムに上書きして書き込んで実行する処理を繰り返す、動的リンク機能を有し、前記動的リンク機能は、暗号化した各コア部分のプログラムに組み込んだことを特徴とする復号処理プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013030868A JP6343869B2 (ja) | 2013-02-20 | 2013-02-20 | 携帯端末装置及び復号処理プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013030868A JP6343869B2 (ja) | 2013-02-20 | 2013-02-20 | 携帯端末装置及び復号処理プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014160383A JP2014160383A (ja) | 2014-09-04 |
JP6343869B2 true JP6343869B2 (ja) | 2018-06-20 |
Family
ID=51612030
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013030868A Expired - Fee Related JP6343869B2 (ja) | 2013-02-20 | 2013-02-20 | 携帯端末装置及び復号処理プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6343869B2 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101566142B1 (ko) * | 2014-10-21 | 2015-11-06 | 숭실대학교산학협력단 | 사용자 단말기 및 그것을 이용한 응용 프로그램의 핵심코드 보호 방법 |
KR101823226B1 (ko) * | 2016-02-11 | 2018-01-29 | 라인 가부시키가이샤 | 코드 보호 방법 및 시스템 |
US10257189B2 (en) * | 2016-05-24 | 2019-04-09 | Microsoft Technology Licensing, Llc | Using hardware based secure isolated region to prevent piracy and cheating on electronic devices |
CN106055937B (zh) * | 2016-05-25 | 2018-11-09 | 深圳创维数字技术有限公司 | 一种软件静态数据的加密方法及系统 |
JP6810334B2 (ja) * | 2016-06-17 | 2021-01-06 | 富士通株式会社 | プロファイルデータ配信制御装置、プロファイルデータ配信制御方法およびプロファイルデータ配信制御プログラム |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4475894B2 (ja) * | 2002-08-01 | 2010-06-09 | パナソニック株式会社 | 暗号化データを復号して実行用メモリ空間に配置する装置、およびその方法 |
JP4147472B2 (ja) * | 2003-02-28 | 2008-09-10 | 日本電気株式会社 | コンピュータプログラムの編集システム及びその方法 |
JP2006221629A (ja) * | 2005-02-07 | 2006-08-24 | Sony Computer Entertainment Inc | プロセッサのリソース管理によるコンテンツ制御方法および装置 |
JP2009271884A (ja) * | 2008-05-12 | 2009-11-19 | Fuji Xerox Co Ltd | 情報処理装置及び情報処理プログラム |
JP2010205116A (ja) * | 2009-03-05 | 2010-09-16 | Fujitsu Semiconductor Ltd | 情報処理装置、情報処理方法および情報処理システム |
JP2010217975A (ja) * | 2009-03-13 | 2010-09-30 | Nec System Technologies Ltd | 情報処理装置、アプリケーションプログラム、及びアプリケーションプログラムの実行方法 |
JP4897066B2 (ja) * | 2010-03-29 | 2012-03-14 | 株式会社ハイパーテック | 暗号化プログラム復号方法及び暗号化プログラム復号プログラム |
-
2013
- 2013-02-20 JP JP2013030868A patent/JP6343869B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2014160383A (ja) | 2014-09-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101802833B (zh) | 向在应用执行环境中运行的应用提供本地存储服务 | |
US20040039932A1 (en) | Apparatus, system and method for securing digital documents in a digital appliance | |
US20080025503A1 (en) | Security method using self-generated encryption key, and security apparatus using the same | |
JP2006080636A (ja) | 情報処理装置 | |
WO2005031580A1 (ja) | 情報処理装置、情報処理システム及びプログラム | |
JPWO2004109972A1 (ja) | ライセンス受信用ユーザ端末 | |
JP6343869B2 (ja) | 携帯端末装置及び復号処理プログラム | |
JP2002251326A (ja) | 耐タンパ計算機システム | |
JP2002229861A (ja) | 著作権保護機能つき記録装置 | |
JP2005316284A (ja) | 携帯端末とデータ保護システム | |
JP5354001B2 (ja) | 情報処理装置、情報処理システム及びプログラム | |
JP6146476B2 (ja) | 情報処理装置及び情報処理方法 | |
US8438112B2 (en) | Host device, portable storage device, and method for updating meta information regarding right objects stored in portable storage device | |
JP3597704B2 (ja) | Icカードおよび記録媒体 | |
JPH09282155A (ja) | 暗号認証機能の装備方法 | |
JP6357091B2 (ja) | 情報処理装置、及びコンピュータプログラム | |
JP2002244989A (ja) | デバイスドライバ作動方法 | |
JP2008287488A (ja) | データ分散保存装置 | |
CN116594567A (zh) | 信息管理方法、装置和电子设备 | |
JP2007199978A (ja) | 情報処理装置、携帯端末装置及び情報処理実行制御方法 | |
JP2002368735A (ja) | マスタ用ic装置、マスタ用ic装置のためのバックアップ用ic装置、マスタ用ic装置にダミー鍵を与えるダミー鍵格納装置、マスタ用ic装置とバックアップ用ic装置とのための補助装置、及び二つ以上の補助装置を用いた鍵バックアップシステム | |
JP2006172351A (ja) | リムーバブルメディア利用によるコンテンツの使用期限管理方法及びシステム | |
JP2007011643A (ja) | デジタルコンテンツ配信システムおよびトークンデバイス | |
JP2009284231A (ja) | 鍵生成装置、鍵生成方法及び鍵生成プログラム、並びに、電子機器 | |
JP4109805B2 (ja) | コンテンツ管理方法及び記憶媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160120 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170221 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170412 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20171003 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20171129 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20180424 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180507 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6343869 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |