JP2014178906A - 認証方法、認証プログラムおよび認証装置 - Google Patents

認証方法、認証プログラムおよび認証装置 Download PDF

Info

Publication number
JP2014178906A
JP2014178906A JP2013052561A JP2013052561A JP2014178906A JP 2014178906 A JP2014178906 A JP 2014178906A JP 2013052561 A JP2013052561 A JP 2013052561A JP 2013052561 A JP2013052561 A JP 2013052561A JP 2014178906 A JP2014178906 A JP 2014178906A
Authority
JP
Japan
Prior art keywords
computer
entry
redundant
program
environment
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.)
Pending
Application number
JP2013052561A
Other languages
English (en)
Inventor
Ryosuke Morita
亮介 森田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Semiconductor Ltd
Original Assignee
Fujitsu Semiconductor Ltd
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 Fujitsu Semiconductor Ltd filed Critical Fujitsu Semiconductor Ltd
Priority to JP2013052561A priority Critical patent/JP2014178906A/ja
Publication of JP2014178906A publication Critical patent/JP2014178906A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】低コストにセキュリティ強度を上げる。
【解決手段】コンピュータ110をPC周辺機器100により認証する。この際、所定のコンピュータを用いて、コンピュータ110を認証するためのコンピュータ110に固有のPC環境情報112を取得するPC環境取得プログラム111を作成する。この際、プログラム実行用の本処理部に冗長部を含めたエントリと、ヘッダ情報を作成し、本処理部から冗長部のエントリを削除したPC環境取得プログラム111と、削除した冗長部のエントリに対応する冗長エントリ情報とを作成してPC周辺機器100の記憶部107に格納させる。PC周辺機器100により、コンピュータ110への接続後、PC環境取得プログラム111を送信する際に、冗長エントリ情報に基づいて、本処理部のエントリに冗長エントリをランダムに挿入して送信する。
【選択図】図4

Description

本発明は、半導体装置の認証方法、認証プログラムおよび認証装置に関する。
ソフトウェア保護の分野では、コスト、性能、利便性等の各技術水準を損なうことなく、ソフトウェアの不正利用を防ぎセキュリティ強度を上げることが求められており、一般に下記A)〜C)の方法が用いられている。
A)保護対象ソフトウェアを実行不可能な形態でユーザPCに保存し、ネットワーク上のライセンスサーバとの認証結果によって、保護対象ソフトウェアの実行を可能にする。
B)保護対象ソフトウェアを実行不可能な形態でユーザPCに保存し、PCに接続可能な可搬型のPC周辺機器の接続有無によって、ソフトウェアの実行を可能にする。
C)保護対象ソフトウェアをPC周辺機器に格納し、PC周辺機器内でソフトウェアを実行する。PC周辺機器とは、マイコン内蔵の小型機器、例えばドングルとして流通している。
ここで上記A)の方法では、サーバ構築のコストが高くなり、B)の方法では、ソフトウェアが攻撃しやすいPC上にあるため、認証コードの書き直しなどソフトウェアが改竄されやすい。C)の方法では、PC周辺機器のマイコンの処理性能が低く、処理に時間がかかる。
このため、上記方法A)〜C)について、PC周辺機器からPCへソフトウェアをロードして実行する方法が提案されている(例えば、下記特許文献1,2参照。)。
特開2006−146748号公報 特開2006−106998号公報
しかしながら、上記特許文献1,2の技術を用いても、PC周辺機器が盗まれると、ソフトウェアの不正使用が可能になるとともに、ソフトウェアをロードしてソフトウェア本体の複製が可能になる、という問題があった。
以上のように、サーバ構築のコスト高、ソフトウェア改竄のおそれ、PC周辺機器の低処理性能のそれぞれの問題、およびPC周辺機器の盗難時のソフトウェアの不正使用およびソフトウェア本体の複製の防止、をいずれも図ることができる技術の提供が求められる。
一つの側面では、本発明は、低コストにセキュリティ強度を上げることを目的とする。
一つの案では、コンピュータを周辺コンピュータにより認証するにあたり、所定のコンピュータを用いて、前記コンピュータを認証するための前記コンピュータに固有の環境情報を取得するPC環境取得プログラムの作成時に、プログラム実行用の本処理部に冗長部を含めたエントリと、ヘッダ情報を作成し、前記本処理部から前記冗長部のエントリを削除した前記PC環境取得プログラムと、当該削除した冗長部のエントリに対応する冗長エントリ情報とを作成して前記周辺コンピュータの記憶部に格納させ、前記周辺コンピュータにより、前記コンピュータへの接続後、前記PC環境取得プログラムを送信する際に、前記冗長エントリ情報に基づいて、前記本処理部のエントリに冗長エントリをランダムに挿入して送信する。
一つの実施形態によれば、低コストにセキュリティ強度を上げることができる。
図1は、実施の形態にかかる認証装置の構成を示すブロック図である。 図2は、暗号鍵生成の各方法と鍵生成タイミングを示す図表である。 図3は、実施の形態にかかるPC認証の全体処理を示す説明図である。 図4は、PC周辺機器によるPC認証処理を示す動作説明図である。 図5は、PC周辺機器によるPC認証処理を示すシーケンス図である。 図6は、実施の形態にかかるPC周辺機器に格納するPC環境取得プログラムのデータ形式を示す図である。 図7は、実施の形態にかかるPC環境取得プログラムの作成手順を示すフローチャートである。 図8は、PC周辺機器からPCへのPC環境取得プログラムの送信時のプログラム内容を示す図である。 図9は、PC周辺機器がおこなうPC環境取得プログラムの送信の処理手順を示すフローチャートである。
(実施の形態)
以下に添付図面を参照して、開示技術の好適な実施の形態を詳細に説明する。
(認証装置:PC周辺機器の構成)
図1は、実施の形態にかかる認証装置の構成を示すブロック図である。実施の形態の認証装置は、PCに接続可能であり、CPU等の演算部、および通信路108を介して通信をおこなう通信部、ROMやRAM等の記憶部等を備えたPC周辺機器100を用いる。このPC周辺機器100は、通信路108を介して接続されるコンピュータ(PC)110を認証し、認証後にPC110にソフトウェア等の保護対象データ120を送信する。
図1に示すPC周辺機器100は、プログラム生成部101と、暗号鍵生成部102と、送受信部103と、保護対象データ送信部104と、取得情報復号部105と、PC環境検証部106と、記憶部107と、を含む。プログラム生成部101、暗号鍵生成部102、取得情報復号部105、PC環境検証部106は、PC周辺機器100のCPUがROM等に格納された制御プログラム実行により、各機能が実行される。送受信部103は、通信I/F等を用いて機能実行される。記憶部107は、ROM,RAM等を用いて機能実行される。
プログラム生成部101は、PC環境取得プログラム111を生成する演算部である。PC110への接続毎に異なる形のPC環境取得プログラム111を生成する。暗号鍵生成部102は、PC110への接続毎に異なる暗号鍵115を生成する演算部である。暗号鍵115の生成方法は、下記図2に示すように、複数の方法が可能である。
送受信部103は、PC110との通信I/F部である。例えば、PC110に対してPC環境取得プログラム111を送信し、PC110からこのPC110に固有のPC環境情報112を受信する。
取得情報復号部105は、暗号化されたPC環境情報を復号する演算部である。PC環境検証部106は、PC110から取得したPC環境情報を、予め格納しておいた正規の検証用PC環境情報116と照合し、PC110を検証(認証処理)する。この検証用PC環境情報116は、PC周辺機器100の出荷時等に、接続されるPC110の情報として記憶部107に記憶させておく。検証用PC環境情報116が検証に用いる内容(パラメータ)は、PC110から取得するPC環境情報の内容(パラメータ)と同じである。
保護対象データ送信部104は、PC環境情報の検証により認証されたPC110に対して保護対象ソフトウェア等の保護対象データ120を送信する。
記憶部107は、不揮発性領域、例えば、ROMやFlashROM、記憶装置(HDD)、各演算時に用いる揮発性領域(RAM等)を有する。不揮発領域には、検証用PC環境情報116、保護対象データ(保護対象ソフトウェア)120を保持する。
PC110は、一般的な汎用PCであり、CPU121やROM、RAM(不図示)、およびPC110に固有の環境情報(PC環境情報112)を有する。このPC110には、PC周辺機器100からPC環境取得プログラム111がロードされる。また、PC周辺機器100によるPC110の認証後に、保護対象データ(保護対象プログラム)120がPC周辺機器100からPC110にロードされる。
PC環境取得プログラム111は、PC110に固有のPC環境情報112を取得するプログラムである。このPC環境取得プログラム111は、PC110上で実行され、PC環境情報112を取得する。PC環境情報112は、PC環境取得プログラム111内の暗号鍵115で暗号化され、PC周辺機器100に送信(返送)される。
PC環境情報112は、PC110に固有の環境情報であり、その内容(パラメータ)としては、例えば下記が挙げられる。
1)ATAデバイス機器(HDD/SSD)等のシリアル番号。
2)ネットワーク機器のMACアドレス。
3)TPM(Trusted Platform Module)のプラットフォーム測定情報。PC110毎に一意なセキュリティチップ。PC110の起動時にシステムソフトウェアのプログラム領域を測定し、プラットフォーム測定情報をチップに一意な鍵を用いた署名をおこない出力する。
図2は、暗号鍵生成の各方法と鍵生成タイミングを示す図表である。上述した暗号鍵生成部102が生成する暗号鍵115について説明する。図2の(a)に示すように、例えば、暗号化方法は、1)共通鍵暗号、2)公開鍵暗号、3)ハイブリッド方式があり、各暗号化方法別のアルゴリズム、セキュリティ強度、PC110への接続後に新しい鍵が利用可能になるまでの時間、PC110での暗号化、PC周辺機器100での復号処理時間をそれぞれ示した。セキュリティ強度は、2)公開鍵暗号、3)ハイブリッド方式が非常に高い。PC110への接続後に新しい鍵が利用可能になるまでの時間は、1)共通鍵暗号が非常に短く、2)公開鍵暗号、3)ハイブリッド方式については、鍵生成のタイミングに依存する。PC110での暗号化、PC周辺機器100での復号処理時間は、1)共通鍵暗号が短い。
図2の(b)に示す鍵生成タイミングは、A)PC周辺機器100をPC110に接続後に鍵生成する場合と、B)PC110にPC周辺機器100を以前の接続時に鍵生成し、記憶部107に保存しておく場合がある。A)によれば、PC周辺機器100をPC110に接続後に新しい鍵が利用可能になるまでの時間は長い。これに対し、B)によれば、非常に短くすることができる。
(実施の形態による複数段階のPC認証処理について)
図3は、実施の形態にかかるPC認証の全体処理を示す説明図である。この図3は、処理順序を示したものではなく、実施の形態の各処理と作用を説明するものである。
上述したように、実施の形態では、PC周辺機器100からPC110に対し保護対象データ(保護対象ソフトウェア)120をロードし、PC110にて実行する(ステップS301)。
これにより、ライセンスサーバ等によるPC110の認証をおこなう必要がなく、サーバ構築にかかるコストを削減できる。また、保護対象データ(保護対象ソフトウェア)120がPC110上にないため、ソフトウェア改竄を防止できる。さらに、保護対象ソフトウェアは、低い性能のPC周辺機器100が実行するのではなく、高性能なPC110が実行するため、ソフトウェア実行にかかる性能低下は生じない。但し、PC周辺機器100の盗難によりソフトウェアが不正使用される点、およびソフトウェア本体の複製が可能になる問題を含む。
この問題については、実施の形態では、PC環境取得プログラム111をPC110にロードし、PC周辺機器100内で認証済みPCの情報を用いて、接続したPC110を認証した上で保護対象データ(保護対象ソフトウェア)120をPC110にロードする(ステップS302)。
これにより、認証されていないPC110にPC周辺機器100を接続しても、PC110から取得するPC環境情報112が異なり検証失敗となるため、不正な使い方では保護対象データ(保護対象ソフトウェア)120の使用を防ぐことが可能となる。さらに、保護対象ソフトウェア本体の複製についても、PC110の認証前に保護対象データ(保護対象ソフトウェア)120をPC110にロードしないため、認証されていないPC110以外にて保護対象データ(保護対象ソフトウェア)120の複製を防止することが可能となる。
上記構成においても、さらには、PC110においてPC周辺機器100に返すPC環境情報112が偽装される可能性を有している。例えば、正規のPC110にて検証成功した際の取得情報を保存し、別のPC110で実行する際にその取得情報を用いた偽装(リプレイ攻撃)が考えられる。
この問題については、実施の形態では、PC環境情報112を暗号化する暗号鍵115をPC接続毎に毎回異ならせている(ステップS303)。これにより、PC110の検証時にPC偽装等の不正を検知することが可能となる。
上記構成においても、さらには、PC環境取得プログラム111が改竄される可能性を有する。この問題については、実施の形態では、PC周辺機器100をPC110に接続毎に、異なるコード(プログラムコード)のPC環境取得プログラム111を生成し、実行コードを毎回異ならせている(ステップS304)。
この点の詳細については後述するが、改竄にかかる情報はPC周辺機器100内で保護されており、PC周辺機器100外から読み取ることは不可能にしている。また、PC環境情報112の暗号鍵115はPC110への接続毎に毎回異なるため、リプレイ攻撃が無効となり、推測も困難にできる。さらに、PC環境取得プログラム111のプログラム部分(コード)はPC110への接続毎に毎回異なるため、リプレイ攻撃が無効となり、推測も困難にできる。
上述したように、各処理(ステップS301〜ステップS304)を組み合わせることにより、性能が低いPC周辺機器100を用いてもセキュリティ強度を上げてPC110を認証することができるようになる。
(PC認証処理)
図4は、PC周辺機器によるPC認証処理を示す動作説明図、図5は、PC周辺機器によるPC認証処理を示すシーケンス図である。これら図4に示す構成図と、図5に示すシーケンス図とには動作順の共通の符号を付してある。以下、PC認証処理を動作順に説明する。
1.PC110に通信路108を介してPC周辺機器100を接続する。この接続によりPC周辺機器100が起動する(ステップS501)。
2.PC周辺機器100の暗号鍵生成部102は、PC110への接続毎に毎回異なる暗号鍵115を生成する(ステップS502)。
3.PC周辺機器100のプログラム生成部101は、接続毎に毎回異なるプログラムコードを生成し、上記2.により生成した暗号鍵115と結合し、PC環境取得プログラム111を新規生成する(ステップS503)。
4.PC周辺機器100の送受信部103は、上記3.により生成したPC環境取得プログラム111をPC110に送信する(ステップS504)。
5.PC110のCPU121は、PC環境取得プログラム111を実行し、PC環境情報112を取得する(ステップS505)。
6.PC110のCPU121は、PC環境取得プログラム111の実行により取得したPC環境情報112を暗号鍵115を用いて暗号化する(ステップS506)。
7.PC110のCPU121は、PC環境取得プログラム111を実行し、暗号化されたPC環境情報112をPC周辺機器100に通信路108を介して送信する(ステップS507)。
8.PC周辺機器100の送受信部103は、PC110が送信した、暗号化されたPC環境情報112を受信する(ステップS508)。
9.PC周辺機器100の取得情報復号部105は、暗号鍵生成部102の暗号鍵115を用いて、暗号化されたPC環境情報112を復号する(ステップS509)。
10.PC周辺機器100のPC環境検証部106は、記憶部107に格納されている検証用PC環境情報116と、復号したPC環境情報112とを比較検証する(ステップS510)。
11.上記10.の検証が成功であれば、PC周辺機器100の保護対象データ送信部104は、PC110に保護対象データ(保護対象ソフトウェア)120を送信する(ステップS511)。
上記認証処理例において、暗号鍵115の生成に伴うPC接続後の処理時間を短くする場合には、上記11.以降の時期等、PC110にPC周辺機器100が接続されており、PC周辺機器100により処理が特にない処理待ちの間に、暗号鍵生成部102が暗号鍵115の新規生成をおこなっておき、記憶部107に保存しておく。そして、PC110にPC周辺機器100が接続されたときには、上記処理2.において、暗号鍵生成部102は、記憶部107に格納されていた暗号鍵115を読み出すだけでよい。これにより、PC110にPC周辺機器100が接続されたときに暗号鍵115を生成する必要がなく、処理時間を短くすることができる。
(PC環境取得プログラムをPC接続毎に異ならせる処理の詳細)
次に、上述したPC周辺機器100を用いながらPC環境取得プログラム111のセキュリティ強度を上げる処理の詳細について説明する。一般に、プログラム難読化のセキュリティ強度は、解析をし難くするための難読化プログラムをサイズ増大により得ている。一方、PC周辺機器100では使用可能なリソースが少ないという制約があり、プログラムのサイズ増大により難読化してセキュリティ強度を上げることは難しい。リソース制約について、現在のPC周辺機器(汎用のドングル)100は、CPU=32MHz,RAM=32KB程度である。これに対し、PC側リソースは、CPU=2GHz,メモリ=4GBを有する。
このため、実施の形態の難読化方法では、PC周辺機器100のメモリリソースによらずにPC110に出力する難読化プログラムのサイズを無制限に増大でき、出力プログラムのセキュリティ強度を大幅に上げるようにする。
図6は、実施の形態にかかるPC周辺機器に格納するPC環境取得プログラムのデータ形式を示す図である。プログラム自体は、一般的なヘッダ601と、複数のエントリ602の形式を用いている。図6の右側に示すように、プログラム作成時には、ヘッダ601は、複数の各エントリ602への相対アドレスを格納する。各エントリ(1〜n)602は、エントリの種類(コード/データ等)と、実体を格納する。そして、図6の左側に示すように、作成したプログラムは、PC周辺機器100に対して、「圧縮したプログラム(本処理部だけからなるエントリ)」610と、「冗長エントリ情報」611とを格納する。
図7は、実施の形態にかかるPC環境取得プログラムの作成手順を示すフローチャートである。図6の図表と併せて作成手順を説明する。
1)PC環境取得プログラム111の作成(ビルド時)
この1)の処理は、PC周辺機器100外部の所定のPC等を用いて作成する。はじめに、大量の冗長部(冗長ソースコード)602bを含めた冗長プログラムを生成する。冗長部602bは、図6のエントリ1,3,…,n−2,nである。作成の処理順に説明すると、
1.本処理部(PC環境取得プログラム111のプログラムがPC110により実行される処理部)602aのソースコードを作成する(ステップS701)。本処理部602aは、図6のエントリ2,4,…,n−1である。
2.冗長部(難読化領域を確保するための領域)602bのソースコードを作成する(ステップS702)。この際、ソースコードに冗長部602bであることを示す識別子を埋め込む。
3.コンパイラにて本処理部602aと冗長部602bのソースコードをコンパイルし、それぞれの再配置可能なオブジェクトを生成する(ステップS703)。
4.各オブジェクトのプログラム上の位置をリンカにランダムに設定する(ステップS704)。
5.リンカを実行し、冗長部602bを含むプログラムを生成する(ステップS705)。以上のPC環境取得プログラム111の作成時に、PC環境取得プログラム111は、サイズ指定により、対応して冗長部602bの挿入数および各サイズを設定し、全体を所定のサイズ(容量、例えば10MByte)に増大させて難読化することができる。
2)PC環境取得プログラム111のPC周辺機器100への格納
次に、プログラムから冗長部602bのエントリ領域を削除し、本処理部602aのみとなりサイズ圧縮したプログラム610と、削除した冗長部602bの情報(相対アドレス、エントリ種別など)を記載した冗長エントリ情報611を生成する。具体的には、
6.プログラムを解析して冗長部602bの識別子のあるエントリを削除し、プログラムを圧縮する(ステップS706)。その際、冗長部602bの冗長エントリ情報611を生成する。
7.圧縮したプログラム610と、冗長エントリ情報611をPC周辺機器100に格納する(ステップS707)。
(PC周辺機器からPCへのPC環境取得プログラム111の送信とプログラム難読化)
次に、PC周辺機器100からPC110に対するPC環境取得プログラム111の送信とプログラムの難読化について説明する。
図8は、PC周辺機器からPCへのPC環境取得プログラムの送信時のプログラム内容を示す図である。PC周辺機器100は、PC110にPC環境取得プログラム111を送信する際、PC110への接続毎に変化する(異なる)ランダムなエントリを挿入する。
具体的には、PC周辺機器100のプログラム生成部101は、PC環境取得プログラム111の冗長エントリ情報611を参照し、次に送信するエントリの種別毎にA),B)の異なる処理をおこなう。
A)次に送信するエントリが冗長エントリであれば、ランダムなエントリを生成する。このエントリの実体は、プログラムとして意味のない大きなサイズのデータ列である。このデータ列は、例えば、プログラム生成部101が冗長エントリとして用意(定義)した各種処理命令(例えば、コピー命令、空命令、ライト命令等)であり、プログラム生成部101がこれら各種命令を乱数に基づきランダムに選択して冗長エントリとする。冗長エントリに用いる各種命令は、記憶部107等に記憶しておく。
B)次に送信するエントリが冗長エントリでなければ、元々のエントリ(本処理部)とする。そして、A)またはB)のエントリをPC110の対応アドレスに送信する。
これにより、PC110上には、冗長エントリ情報611に記載された冗長エントリの数に対応する実体のないエントリ(図8のエントリ1,3,…,n−2,n)が配置される。これにより、PC110上に配置されるPC環境取得プログラム111がサイズ増大されて難読化できる。同時に、PC周辺機器100側では、冗長エントリ情報611分のサイズだけが増えるため、冗長部602bのエントリの実体データ分の容量を取らず、メモリ容量の増大を防ぐことができる。
そして、PC周辺機器100は、PC環境取得プログラム111の送信時に、ランダムに冗長エントリ(冗長部602b)が送信される。これにより、PC周辺機器100をPC110に接続する毎に、PC環境取得プログラム111は、異なるプログラムコードを有することになり、PC環境取得プログラム111の改竄を防止でき、リプレイ攻撃を無効にできる。
図9は、PC周辺機器がおこなうPC環境取得プログラムの送信の処理手順を示すフローチャートである。図8を用いて説明したように、PC周辺機器100のプログラム生成部101がおこなう処理について説明する。
はじめに、プログラム生成部101は、冗長エントリ情報611を参照し、次のエントリが存在するか判断する(ステップS901)。そして、エントリがあれば(ステップS901:Yes)、ステップS902に移行し、エントリがなければ(ステップS901:No)、処理を終了する。
ステップS902では、エントリの種類が冗長エントリであるか否かを判断する(ステップS902)。冗長エントリであれば(ステップS902:Yes)、ランダムなエントリを生成し、PC110に送信する(ステップS903)。冗長エントリでなければ(ステップS902:No)、元々のエントリ(本処理部)をPC110に送信する(ステップS904)。ステップS903およびステップS904の実行後は、いずれもステップS901に戻り、処理を継続する。
以上説明した実施の形態によれば、PC認証のためのPC認証サーバ等の設置が不要であり、PC周辺機器を用いてPC認証をおこなうことができ、低コストに認証できる。また、認証されていないPCには、保護対象データ(保護対象ソフトウェア)に関連する情報を一切送らないため、保護対象データの改竄を防止できる。また、保護対象データは、高性能なリソースを有するPC上で実行処理されるため、処理実行時の性能低下が生じない。
さらに、認証されていないPCのPC周辺機器を接続しても、取得するPC環境情報が正規と異なり検証失敗となるため、PC周辺機器を他のPCに接続して保護対象データ(保護対象ソフトウェア)を実行することを防ぐことができる。また、PCからPC周辺機器に送信するPC環境情報は、接続毎に異なる暗号鍵を用いて暗号化されるため、改竄を無効化でき、検証時に不正を検出できるようになる。また、PC環境取得プログラムについても、PCへの接続毎に変化するランダムなエントリを挿入するため、改竄やリプレイ攻撃を無効化でき、検証時に不正を検出できるようになる。
以上のように、PC周辺機器によるPC認証をおこなうことにより、PC側では、特別な構成や処理をおこなうことなく、汎用のPCを用いて保護対象データ(保護対象ソフトウェア)を保護状態で受け取ることができ、安全に処理実行できるようになる。
上述した各実施の形態に関し、さらに以下の付記を開示する。
(付記1)コンピュータを周辺コンピュータにより認証する認証方法において、
所定のコンピュータを用いて、前記コンピュータを認証するための前記コンピュータに固有の環境情報を取得するPC環境取得プログラムの作成時に、プログラム実行用の本処理部に冗長部を含めたエントリと、ヘッダ情報を作成し、
前記本処理部から前記冗長部のエントリを削除した前記PC環境取得プログラムと、当該削除した冗長部のエントリに対応する冗長エントリ情報とを作成して前記周辺コンピュータの記憶部に格納させ、
前記周辺コンピュータにより、
前記コンピュータへの接続後、前記PC環境取得プログラムを送信する際に、前記冗長エントリ情報に基づいて、前記本処理部のエントリに冗長エントリをランダムに挿入して送信する、
処理を実行することを特徴とする認証方法。
(付記2)前記冗長エントリは、予め用意された無効なデータ列、あるいは各種処理命令をランダムに選択して前記本処理部のエントリに挿入することを特徴とする付記1に記載の認証方法。
(付記3)前記コンピュータに対して前記PC環境取得プログラムを送信する際に、前記コンピュータへの接続毎に異なる暗号鍵を送信し、
前記コンピュータから前記暗号鍵により暗号化された前記環境情報を取得することを特徴とする付記1または2に記載の認証方法。
(付記4)前記コンピュータに対する前記PC環境取得プログラムの送信後、前記コンピュータから受信した前記環境情報を正規の検証用環境情報と照合して前記コンピュータを認証し、
認証された前記コンピュータに対して、保護対象データを送信する、
ことを特徴とする付記1〜3のいずれか一つに記載の認証方法。
(付記5)前記コンピュータに接続された後の所定期間に新たな暗号鍵を生成しておき、次回前記コンピュータに接続された際に新たな暗号鍵として用いることを特徴とする付記3に記載の認証方法。
(付記6)前記PC環境取得プログラムは、前記コンピュータに固有の環境情報として、前記コンピュータが有するデバイス機器番号、ネットワーク機器のアドレス、またはセキュリティチップのデジタル署名を取得することを特徴とする付記1〜5のいずれか一つに記載の認証方法。
(付記7)前記保護対象データは、所定のプログラムであり、前記コンピュータが当該プログラムを実行することを特徴とする付記1〜6のいずれか一つに記載の認証方法。
(付記8)コンピュータを認証する周辺コンピュータに、
プログラム実行用の本処理部に冗長部を含めて作成したエントリとヘッダ情報のうち、前記本処理部から前記冗長部のエントリを削除して、当該削除した冗長部のエントリに対応する冗長エントリ情報を含み、前記コンピュータに固有の環境情報を取得するPC環境取得プログラムを記憶部に格納させ、
前記コンピュータに対して前記PC環境取得プログラムを送信する際に、前記冗長エントリ情報に基づいて、前記本処理部のエントリに冗長エントリをランダムに挿入して送信させる、
処理を実行することを特徴とする認証プログラム。
(付記9)コンピュータを認証する認証装置において、
プログラム実行用の本処理部に冗長部を含めて作成したエントリとヘッダ情報のうち、前記本処理部から前記冗長部のエントリを削除して、当該削除した冗長部のエントリに対応する冗長エントリ情報を含み、前記コンピュータに固有の環境情報を取得するPC環境取得プログラムを格納する記憶部と、
前記コンピュータに対して前記PC環境取得プログラムを送信する際に、前記冗長エントリ情報に基づいて、前記本処理部のエントリに冗長エントリをランダムに挿入するプログラム生成部と、
生成された前記PC環境取得プログラムを前記コンピュータに送信し、前記コンピュータから前記環境情報を受信する送受信部と、
受信した前記環境情報を正規の検証用環境情報と照合して前記コンピュータを認証する検証部と、
を有することを特徴とする認証装置。
(付記10)前記コンピュータに対して前記PC環境取得プログラムを送信する際に、前記コンピュータへの接続毎に異なる暗号鍵を生成する暗号鍵生成部と、
前記コンピュータから前記暗号鍵により暗号化された前記環境情報を復号する復号部と、
を有することを特徴とする付記9に記載の認証装置。
(付記11)前記検証部により認証された前記コンピュータに対して、保護対象データを送信する保護対象データ送信部を有することを特徴とする付記9または10に記載の認証装置。
(付記12)可搬可能であり、前記コンピュータに接続可能な周辺コンピュータであることを特徴とする付記9〜11のいずれか一つに記載の認証装置。
100 PC周辺機器(認証装置)
101 プログラム生成部
102 暗号鍵生成部
103 送受信部
104 保護対象データ送信部
105 取得情報復号部
106 PC環境検証部
107 記憶部
108 通信路
110 PC
111 PC環境取得プログラム
112 PC環境情報
115 暗号鍵
116 検証用PC環境情報
120 保護対象データ(保護対象プログラム)
601 ヘッダ
602 エントリ
602a 本処理部
602b 冗長部
610 プログラム
611 冗長エントリ情報

Claims (9)

  1. コンピュータを周辺コンピュータにより認証する認証方法において、
    所定のコンピュータを用いて、前記コンピュータを認証するための前記コンピュータに固有の環境情報を取得するPC環境取得プログラムの作成時に、プログラム実行用の本処理部に冗長部を含めたエントリと、ヘッダ情報を作成し、
    前記本処理部から前記冗長部のエントリを削除した前記PC環境取得プログラムと、当該削除した冗長部のエントリに対応する冗長エントリ情報とを作成して前記周辺コンピュータの記憶部に格納させ、
    前記周辺コンピュータにより、
    前記コンピュータへの接続後、前記PC環境取得プログラムを送信する際に、前記冗長エントリ情報に基づいて、前記本処理部のエントリに冗長エントリをランダムに挿入して送信する、
    処理を実行することを特徴とする認証方法。
  2. 前記冗長エントリは、予め用意された無効なデータ列、あるいは各種処理命令をランダムに選択して前記本処理部のエントリに挿入することを特徴とする請求項1に記載の認証方法。
  3. 前記コンピュータに対して前記PC環境取得プログラムを送信する際に、前記コンピュータへの接続毎に異なる暗号鍵を送信し、
    前記コンピュータから前記暗号鍵により暗号化された前記環境情報を取得することを特徴とする請求項1または2に記載の認証方法。
  4. 前記コンピュータに対する前記PC環境取得プログラムの送信後、前記コンピュータから受信した前記環境情報を正規の検証用環境情報と照合して前記コンピュータを認証し、
    認証された前記コンピュータに対して、保護対象データを送信する、
    ことを特徴とする請求項1〜3のいずれか一つに記載の認証方法。
  5. コンピュータを認証する周辺コンピュータに、
    プログラム実行用の本処理部に冗長部を含めて作成したエントリとヘッダ情報のうち、前記本処理部から前記冗長部のエントリを削除して、当該削除した冗長部のエントリに対応する冗長エントリ情報を含み、前記コンピュータに固有の環境情報を取得するPC環境取得プログラムを記憶部に格納させ、
    前記コンピュータに対して前記PC環境取得プログラムを送信する際に、前記冗長エントリ情報に基づいて、前記本処理部のエントリに冗長エントリをランダムに挿入して送信させる、
    処理を実行することを特徴とする認証プログラム。
  6. コンピュータを認証する認証装置において、
    プログラム実行用の本処理部に冗長部を含めて作成したエントリとヘッダ情報のうち、前記本処理部から前記冗長部のエントリを削除して、当該削除した冗長部のエントリに対応する冗長エントリ情報を含み、前記コンピュータに固有の環境情報を取得するPC環境取得プログラムを格納する記憶部と、
    前記コンピュータに対して前記PC環境取得プログラムを送信する際に、前記冗長エントリ情報に基づいて、前記本処理部のエントリに冗長エントリをランダムに挿入するプログラム生成部と、
    生成された前記PC環境取得プログラムを前記コンピュータに送信し、前記コンピュータから前記環境情報を受信する送受信部と、
    受信した前記環境情報を正規の検証用環境情報と照合して前記コンピュータを認証する検証部と、
    を有することを特徴とする認証装置。
  7. 前記コンピュータに対して前記PC環境取得プログラムを送信する際に、前記コンピュータへの接続毎に異なる暗号鍵を生成する暗号鍵生成部と、
    前記コンピュータから前記暗号鍵により暗号化された前記環境情報を復号する復号部と、
    を有することを特徴とする請求項6に記載の認証装置。
  8. 前記検証部により認証された前記コンピュータに対して、保護対象データを送信する保護対象データ送信部を有することを特徴とする請求項6または7に記載の認証装置。
  9. 可搬可能であり、前記コンピュータに接続可能な周辺コンピュータであることを特徴とする請求項6〜8のいずれか一つに記載の認証装置。
JP2013052561A 2013-03-14 2013-03-14 認証方法、認証プログラムおよび認証装置 Pending JP2014178906A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013052561A JP2014178906A (ja) 2013-03-14 2013-03-14 認証方法、認証プログラムおよび認証装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013052561A JP2014178906A (ja) 2013-03-14 2013-03-14 認証方法、認証プログラムおよび認証装置

Publications (1)

Publication Number Publication Date
JP2014178906A true JP2014178906A (ja) 2014-09-25

Family

ID=51698781

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013052561A Pending JP2014178906A (ja) 2013-03-14 2013-03-14 認証方法、認証プログラムおよび認証装置

Country Status (1)

Country Link
JP (1) JP2014178906A (ja)

Similar Documents

Publication Publication Date Title
US11876791B2 (en) Message authentication with secure code verification
US10547604B2 (en) Information recording apparatus with shadow boot program for authentication with a server
US10474823B2 (en) Controlled secure code authentication
CN102271042B (zh) 数字证书认证方法、系统、USB Key设备和服务器
KR100670005B1 (ko) 모바일 플랫폼을 위한 메모리의 무결성을 원격으로 확인하는 확인장치 및 그 시스템 그리고 무결성 확인 방법
JP5314016B2 (ja) 情報処理装置、暗号鍵の管理方法、コンピュータプログラム及び集積回路
KR20210131438A (ko) 비밀 키를 이용한 아이덴티티 검증
WO2016019790A1 (zh) 一种安装包的校验方法、客户端、服务器及系统
US9288054B2 (en) Method and apparatus for authenticating and managing application using trusted platform module
US20180204004A1 (en) Authentication method and apparatus for reinforced software
TW201502855A (zh) 使用安全加強晶片之用於資料之安全儲存之系統、方法及裝置
TW201735578A (zh) 受控的安全碼認證
CN107534551B (zh) 提供加密数据的方法、计算设备和计算机可读介质
CN111177693B (zh) 一种验证终端根证书的方法、装置、设备和介质
JP6387908B2 (ja) 認証システム
US11838282B2 (en) Information recording apparatus with server-based user authentication for accessing a locked operating system storage
US8667278B2 (en) Information processing apparatus and data transmission method of information processing apparatus
JP6888122B2 (ja) 半導体装置、更新データ提供方法、更新データ受取方法およびプログラム
CN113545021B (zh) 预先授权设备的注册
US9177123B1 (en) Detecting illegitimate code generators
KR101711024B1 (ko) 부정조작방지 장치 접근 방법 및 그 방법을 채용한 단말 장치
US20220209946A1 (en) Key revocation for edge devices
CN113316915B (zh) 解锁数据存储设备
CN114329522A (zh) 一种私钥保护方法、装置、系统及存储介质
Zaharis et al. Live forensics framework for wireless sensor nodes using sandboxing

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20150611