JPH08166879A - 提供用ソフトウェアの安全性強化方法及び装置 - Google Patents
提供用ソフトウェアの安全性強化方法及び装置Info
- Publication number
- JPH08166879A JPH08166879A JP7144507A JP14450795A JPH08166879A JP H08166879 A JPH08166879 A JP H08166879A JP 7144507 A JP7144507 A JP 7144507A JP 14450795 A JP14450795 A JP 14450795A JP H08166879 A JPH08166879 A JP H08166879A
- Authority
- JP
- Japan
- Prior art keywords
- software
- computer
- passport
- application creator
- license
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
- G06F21/125—Restricting unauthorised execution of programs by manipulating the program code, e.g. source code, compiled code, interpreted code, machine code
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2211/00—Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
- G06F2211/007—Encryption, En-/decode, En-/decipher, En-/decypher, Scramble, (De-)compress
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2211/00—Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
- G06F2211/007—Encryption, En-/decode, En-/decipher, En-/decypher, Scramble, (De-)compress
- G06F2211/008—Public Key, Asymmetric Key, Asymmetric Encryption
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
用ソフトの正規のコピーであるかどうか、また、そのソ
フトは改竄されていないかどうかを識別すると共に暗号
化方法を用いて著作権保護の対象であるコンピュータコ
ードなどの知的財産を保護する。 【構成】 第1のコンピュータが実行するコンパイラー
26へ、秘密キー22と、公的キー32が含まれている
アプリケーション作成者のライセンス24と、ソフトウ
ェアを与えると、コンパイラー26はソフトウェアをバ
イナリーコードへ翻訳してバイナリーコード用のメッセ
ージダイジェストを算出し、第1のコンピュータは秘密
キー22を用いてメッセージダイジェストを暗号化して
アプリケーション作成者のデジタル署名が含まれた暗号
化メッセージダイジェストを作成し、第1のコンピュー
タはアプリケーション作成者のデジタル署名とアプリケ
ーション作成者のライセンスからなるソフトウェアパス
ポート38を生成し、ソフトウェアパスポート38と前
記バイナリーコードをユーザーへ提供する。
Description
関するものであり、特に、ソフトウェア提供時における
安全性と製品の固有識別を向上させる公的キー暗号の使
用に関するものである。 【0002】 【従来の技術】公的キー暗号は、2つのキーを用いる暗
号アルゴリズムに基づいている。一方のキーは暗号用
で、他方のキーは暗号解読用である。第1のキーを用い
て第2のキーを演算するアルゴリズムは知られている
が、すべての変数を知らずに第2のキーで第1のキーを
演算することはできない。この第1のキーを秘密キー(p
rivate key) 、そして第2のキーを公的キー(public ke
y)と呼ぶ。実際には、秘密キーまたは公的キーのいずれ
か一方を使用してメッセージを暗号化し、その反対のキ
ーを用いてそのメッセージを解読する。一般に秘密キー
は秘密にしておかなくてはならないが公的キーの方は誰
かに与えても構わない。メッセージやデータを保護する
ため様々な公的キー暗号方式が開発されている(Whitfi
eld Diffieの「公的キー暗号法の最初の10年間」(IE
EE会報、76巻、No.5,1988)やFahnの「今日の暗号法に
関して頻繁にたずねられる質問への回答(RSA研究所19
92を参照)。 【0003】公的キー暗号法は侵入者(以下、ハッカー
等と称す)が傍聴する危険のある公衆回線でのメッセー
ジの送信を安全に行うために使用されており、暗号パス
ワードを相手に安全に送信するといった課題を解決する
ものである。 【0004】公的キー方式はメッセージを暗号にする時
や効果的にメッセージを記す際にも使用することがで
き、受信側でメッセージの送信者を識別できるようにな
っている。また、公的キー暗号法を使用すればデータの
一部を封印したり改竄できないようにすることもでき
る。このような場合、送信者側ではデータからメッセー
ジのダイジェストを算出するが、使用するダイジェスト
はこのような目的のために暗号強化されたものである。
次に、送信者は公的キーを使用してこのメッセージのダ
イジェストを暗号化するが、この暗号化されたメッセー
ジのダイジェストのことをデジタル「署名」と呼ぶ。そ
して、データ、メッセージのダイジェスト、公的キーを
ひとまとめにする。受信側ではこのメッセージのダイジ
ェストを演算しなおして改竄されていないかどうかをチ
ェックし、前記公的キーを用いて受信したメッセージダ
イジェストを解読する。再演算して解読されたメッセー
ジのダイジェストが同一の場合は、データの改竄がなか
ったことになる。 【0005】コンピュータで順次実行する正当なプログ
ラムに「ウイルス」や「ウォーム」といったコンピュー
タコードがこっそりと挿入されることがある。この場
合、プログラムを実行するたびにこのウイルスまたはウ
ォームが貴重な情報を破壊してシステムにダメージを与
えたり、および/またはネットワーク上の他のコンピュ
ータへ感染することがある。ウイルスとウォームとは微
妙に違ったものではあるが、通常両者に共通するのは、
疑念を抱いていないコンピュータユーザーの協力なしで
はコンピュータや企業のネットワークを感染させること
はできないという点である。 【0006】今日のコンピュータ業界ではウイルスやウ
ォームによるコンピュータの感染は一般的な問題であ
る。また、企業のネットワークはこれらのウイルスやウ
ォームによる攻撃の対象になりやすく、ネットワークに
侵入したハッカー等によって情報が盗まれたり破壊され
たりする。大企業のネットワークの秘密保全が破られる
ということは、大きな損害や経済的損失が発生する可能
性があるため特にやっかいな問題である。また、企業の
ネットワークがインターネットなどの公衆回線に接続さ
れているような場合には、もっと簡単に秘密保全を破る
ことができる。世界的なネットワークに接続することで
得られる利点を損なうことなく、ハッカー等による襲撃
や感染などによるネットワークのセキュリティーへの侵
入を防ぐため企業では様々な手段を講じている。 【0007】インターネットへ接続する利点を確保しな
がらも保全性を維持するためほとんどの企業で防火壁の
設置が行われている。この防火壁とは、インターネット
でのファイル送信やテルネットへの接続を制限するもの
である。このような送信や接続を開始することができる
のは企業内回線の内部からだけであるため、外部から行
われたファイル送信やテルネット接続はこの防火壁によ
って拒否されてしまう。防火壁が設けられているため、
防火壁内の企業内回線では電子メールやネットワークニ
ュースを自由に回覧させることができる。企業が防火壁
を設けることにより、極端な機密保全手段を講じなくと
も従業員は企業内では簡単に情報を交換することができ
る。優れた防火壁を導入すれば、通常システムセキュリ
ティーに対して行われているような攻撃はほとんど防御
することが可能である。 【0008】ウイルスやウォームが企業内ネットワーク
を感染しないようにする方法の1つは、ウイルスに犯さ
れている可能性のあるプログラムを絶対に実行しないこ
とである。通常、企業内ネットワークを通じて正当に配
置されたプログラムにはウイルスは存在しないと考えら
れる。バイナリー実行ファイル、無評価シェルスクリプ
ト、ソースコードなど防火壁の外から取り込まれたもの
は全てウイルスやウォームに犯されている可能性があ
る。 【0009】しかし、このようなバイナリー実行ファイ
ル、シェルスクリプト、ソースコードなどは電子メール
の付属物として外部から企業の防火壁を通過してくる場
合がある。例えば、電子メールを用いてマルチファイル
を作成及び送信する時に使用するシェルスクリプトや、
電子メールの付属物を起動させてスタートする検査ツー
ルなどがウイルスの侵入を許す可能性がある。実行ファ
イルは、iftpプログラムや、Mosaicなど世界中に蜘蛛巣
状に張り巡らされた検索システム(browser) や、被害に
あったことのあるネットワークを有した外部契約者など
から直接取り込むことができる。 【0010】 【発明が解決しようとする課題】また、商業ソフトウェ
ア配給や提供過程でも安全性や識別の問題が発生するこ
とがある。例えば、制作会社や著者などといったソフト
ウェアに関する情報、制限付き権利の表示などはコード
そのものには付与されていないものもあり、そのかわり
に印刷物の形で供給されてる。従って、いったんパッケ
ージを開封してコードをインストールするとコードとこ
れらの情報は別々になってしまう。起動時に自己証明を
行うアプリケーションの場合でも、偽あるいは偽造の証
明が行われやすい。 【0011】販売されているソフトウェアがラベルに記
載されている製造業者から本当に提供されたものである
ことをユーザーが識別する機構はないのが実状である。
ソフトウェアの不当なコピーや販売は重大な問題であ
り、製造業者の保証付きソフトを購入していると信じて
いるユーザーが、実は保証もソフトウェアサポートもな
い海賊版ソフトウェアを購入させられていることがあ
る。ソフトウェアをネットワーク経由で配給しようとす
る時はソフトウェアの供給元を識別する問題がとくに重
要になる。ユーザーのソフトの供給元がソフトの本当の
著者とは全く関係のない者である可能性もある。さら
に、購入したソフトに本当の制作者のコードだけが記入
されているかどうかを判別する能力はユーザー側にはな
い。また、望ましくない影響を及ぼす可能性のあるウイ
ルスなど植え付ける改竄がなされていなかどうかを識別
することもユーザー側にはできない。 【0012】上記の問題は全て業者からユーザーへ、ま
た、ユーザーからユーザーへソフトを送る際に起こるも
のである。また、送信問題は送信媒体とは関係がない。
つまり、このような送信問題はフロッピーディスク、磁
気テープ、CD-ROM、回線など全ての通信媒体にあてはま
るものなのである。 【0013】本願発明は上記従来技術の有する課題に鑑
みてなされたものであり、その目的は業者から提供され
たソフトが認可された発売用ソフトの正規のコピーであ
るかどうか、また、そのソフトは改竄されておらず本来
の製造業者のコードしか含まれていないかどうかを識別
する方法及び装置を提供することにある。 【0014】また、本願発明の他の目的は、アプリケー
ション制作者と業者のデジタル署名が書き込まれた「ソ
フトウェアパスポート」を使用することで上記従来技術
の問題を解決することにある。 【0015】さらに本願発明のその他の目的は、本明細
書で公的キー暗号法と呼んでいる暗号方式を用いること
で著作権保護の対象であるコンピュータコードの形で知
的財産を保護するできるようにすることにある。 【0016】 【課題を解決するための手段】上記目的を達成するた
め、本願発明の好適な態様に係る提供用ソフトウェアの
安全性強化方法は、第1のコンピュータが実行するコン
パイラーへ、秘密キーおよび公的キーが含まれているア
プリケーション作成者のライセンスと、ソフトウェアと
を与えると、当該コンパイラーは前記ソフトウェアをバ
イナリーコードへ翻訳して当該バイナリーコード用のメ
ッセージダイジェストを算出する段階と、前記第1のコ
ンピュータが前記秘密キーを用いて前記メッセージダイ
ジェストを暗号化してアプリケーション作成者のデジタ
ル署名が含まれた暗号化メッセージダイジェストを作成
する段階と、前記第1のコンピュータが、前記アプリケ
ーション作成者のデジタル署名と前記アプリケーション
作成者のライセンスからなるソフトウェアパスポートを
生成する段階と、前記ソフトウェアパスポートおよび前
記バイナリーコードをユーザーへ提供する段階とからな
ることを特徴とする。 【0017】また、本願発明の他の好適な態様に係る提
供用ソフトウェアの安全性強化方法は、第1のコンピュ
ータが実行するコンパイラーへ、アプリケーション作成
者の秘密キーと、アプリケーション作成者の公的キーお
よびハードウェア製造業者のデジタル署名からなるアプ
リケーション作成者のライセンスと、ソフトウェアとを
与え、当該コンパイラーが前記ソフトウェアをバイナリ
ーコードへ翻訳し、かつ、当該バイナリーコード用の第
1メッセージダイジェストを算出する段階と、前記第1
のコンピュータが前記アプリケーション作成者の秘密キ
ーを用いて前記第1メッセージダイジェストを暗号化し
て、アプリケーション作成者の署名からなる暗号化第1
メッセージダイジェストを生成する段階と、前記第1コ
ンピュータが、前記アプリケーション作成者のデジタル
署名、前記アプリケーション作成者のライセンスおよび
前記バイナリーコードからなるソフトウェアパスポート
を生成する段階と、前記ソフトウェアパスポートを第2
のコンピュータへ提供する段階とからなることを特徴と
する。 【0018】本願発明のさらに他の好適な態様に係る提
供用ソフトウェアの安全性強化装置は、第1のコンピュ
ータと、秘密キーと、アプリケーション作成者のライセ
ンスと、ソフトウェアと、前記第1のコンピュータで実
行するコンパイラーであって、前記ソフトウェアをバイ
ナリーコードへ翻訳し、当該バイナリーコード用にメッ
セージダイジェストを算出するコンパイラーとから構成
されており、前記第1のコンピュータが前記秘密キーを
用いて前記メッセージダイジェストを暗号化してアプリ
ケーション作成者のデジタル署名が含まれた暗号化メッ
セージダイジェストが作成すると共に前記アプリケーシ
ョン作成者のデジタル署名と前記アプリケーション作成
者のライセンスからなるソフトウェアパスポートを生成
するものであって、前記ソフトウェアパスポートと前記
バイナリーコードをユーザーへ提供するエレメントも備
えられていることを特徴とする。 【0019】また、本願発明の他の好適な態様に係る提
供用ソフトウェアの安全性強化装置は、第1のコンピュ
ータと、アプリケーション作成者の秘密キーと、アプリ
ケーション作成者の公的キーとハードウェア製造業者の
デジタル署名からなるアプリケーション作成者のライセ
ンスと、ソフトウェアと、第1のコンピュータで実行す
るコンパイラーであって、前記ソフトウェアをバイナリ
ーコードへ翻訳し、当該バイナリーコード用に第1のメ
ッセージダイジェストを算出するコンパイラーとから構
成されており、前記コンパイラーが前記アプリケーショ
ン作成者の秘密キーを用いて前記第1メッセージダイジ
ェストの暗号化を行って前記アプリケーション作成者の
デジタル署名からなる暗号化第1メッセージダイジェス
トを作成するものであり、前記第1のコンピュータが、
前記アプリケーション作成者のデジタル署名、前記アプ
リケーション作成者のライセンス、前記バイナリーコー
ドからなるソフトウェアパスポートを生成するものであ
って、前記ソフトウェアパスポートを第2のコンピュー
タへ提供するエレメントも備えられていることを特徴と
する。 【0020】 【作用及び発明の効果】上記のように、本願発明のソフ
トウェア安全性強化及びソフトウェア提供用方法及び装
置には、本願発明の方法で保護するソースコードを備え
た第1コンピュータが設けられている。この第1コンピ
ュータにはソフト制作者の公的キーとライセンスも付与
されている。ここで、アプリケーション制作者とは一般
的には、マイクロソフト株式会社、アドーブまたはアッ
プルコンピュータ株式会社などのソフト会社を意味す
る。アプリケーション制作者のライセンスにはアプリケ
ーション制作者の名称及び公的キーなどの識別情報が含
まれている。第1コンピュータで実行するコンパイラー
プログラムはソースコードをバイナリーコードに翻訳
し、翻訳されたバイナリーコード用のメッセージダイジ
ェストを算出する。第1コンピュータではアプリケーシ
ョン制作者の公的キーを利用してメッセージダイジェス
トが暗号化されるため、暗号化されたメッセージダイジ
ェストをアプリケーション制作者のデジタル「署名」と
定義する。次に、アプリケーション制作者のデジタル署
名、アプリケーション制作者のライセンス、バイナリー
コードからなるソフトウェアパスポートが作成される。
次に、業界で周知のソフトウェア配給モデルの番号を用
いてこのソフトウェアパスポートをユーザーに提供す
る。 【0021】ソフトウェアパスポートを受領すると、ユ
ーザー側ではこのパスポートをコンピュータにロード
し、コンピュータでソフトウェアパスポートにアプリケ
ーション制作者のライセンスとデジタル署名が書き込ま
れているかどうかを判断する。ソフトウェアパスポート
にアプリケーション制作者のライセンスまたはアプリケ
ーション制作者のデジタル署名が書き込まれていない場
合には、ユーザーのコンピュータがそのソフトウェアパ
スポートを破棄してバイナリーコードは実行されない。
さらに第2の保全段階として、ユーザーのコンピュータ
でソフトウェアパスポート用第2メッセージダイジェス
トを算出してその第2メッセージダイジェストと第1メ
ッセージダイジェストを比較する。これらのメッセージ
が同じでない場合には、ユーザーのコンピュータはこの
ソフトウェアパスポートを拒否してそのコードは実行し
ない。第1メッセージと第2メッセージが同じ場合に
は、ユーザーのコンピュータはアプリケーション制作者
の公的キーをアプリケーション制作者の確認用ライセン
スから抽出する。そして、アプリケーション制作者の公
的キーを用いてアプリケーション制作者のデジタル署名
を解読する。その後、実行するバイナリーコードのメッ
セージコードと解読したアプリケーション制作者のデジ
タル署名をユーザーのコンピュータが比較し、両者が同
じ場合には、ユーザーのコンピュータはそのバイナリー
コードを実行する。このように、本願発明のソフトウェ
アパスポートを用いて配給したソフトウェア製品では、
有効なアプリケーション制作者ライセンスを発行された
正当なアプリケーション制作が作成したソフトをユーザ
ーのコンピュータで識別することができる。配給された
ソフトウェアで構成されたバイナリーコードに何らかの
不当な変更を加えても算出及び暗号化されたメッセージ
ダイジェストを比較すればそのような変更は明かになる
といった利点がある。 【0022】正規のソフトだけを実行するよう設計され
たハードウェア(computing platform)を使用した実施例
を参照しながら本願発明を説明する。ハードウェア業者
はアプリケーション作成者に対してハードウェア業者の
デジタル署名を付与するが、このデジタル署名はアプリ
ケーションライセンスの中に含まれる。第1のコンピュ
ータではソフトウェアをバイナリーコードに翻訳し、こ
のバイナリーコード用の第1メッセージダイジェストを
算出する。次に、アプリケーション制作者の公的キーを
用いて第1コンピュータでは前記第1メッセージダイジ
ェストを暗号化する。従って、暗号化された第1メッセ
ージダイジェストをアプリケーション制作者のデジタル
署名と定義する。次にアプリケーション作成者のデジタ
ル署名、アプリケーション作成者のライセンス、バイナ
リーコードが書き込まれたソフトウェアパスポートを生
成する。このソフトウェアパスポートは既存のソフトウ
ェア配給経路を経由してユーザーへ提供される。ユーザ
ーのハードウェア、すなわち、コンピュータ、ビデオゲ
ームボックス、ホームターミナルボックスなどには装置
製造業者の公的キーが与えられている。ソフトウェアパ
スポートを受け取ると、ハードウェアではそのソフトウ
ェアパスポートにアプリケーション作成者のライセンス
が書き込まれているかどうかを判断する。もし書き込ま
れていない場合には、ハードウェアはそのコードの実行
を拒絶する。これに対して、ソフトウェアパスポートが
記載されている場合には、ハードウェアはパスポートか
らアプリケーション作成者のライセンスを取り出してパ
スポートにハードウェア製造業者の署名が記載されてい
るかどうかを判断する。このハードウェア製造業者の署
名は、ハードウェアに組み込まれている公的キーを用い
て解読する。ハードウェアでは、アプリケーション作成
者のライセンスのメッセージダイジェストを再度演算し
て再演算されたメッセージダイジェストと受領したメッ
セージダイジェストを比較する。これらが同一のもので
ない場合には、このソフトウェアパスポートは正当なも
のではないと見なされて拒否される。しかし、もしこれ
らのメッセージダイジェストが同一であれば、ハードウ
ェアはアプリケーション作成者のライセンスからアプリ
ケーション作成者の公的キーを抽出し、また、アプリケ
ーション作成者のデジタル署名の抽出も行う。ハードウ
ェアでは実行するアプリケーションソフトからなるバイ
ナリーコードのメッセージダイジェストを再度演算し、
その後、アプリケーション作成者の公的キーを用いてア
プリケーション作成者のデジタル署名を解読する。さら
に、ハードウェアは、再演算したバイナリーコード用メ
ッセージコードと解読されたアプリケーション作成者の
署名を比較する。これらが同一の場合には、ハードウェ
アはバイナリーコードを実行する。しかしながら、再演
算したメッセージダイジェストと解読したアプリケーシ
ョン作成者の署名が同一でない場合には、そのソフトウ
ェアパスポートは拒否され、バイナリーコードは実行さ
れない。これにより、ウイルスやウォームなどに汚染さ
れている可能性のあるプログラムの実行を防止すること
が可能になる。 【0023】 【実施例】本願明細書で使用するアルゴリズムとは一貫
性のある一連の工程であって所望の結果を導くものであ
る。この工程では物理量を物理的に操作しなくてはなら
ない。必ずという訳ではないが、一般にこれらの物理量
は記憶、送信、結合、比較、表示あるいは操作が可能な
電気または磁気信号の形をとることができる。多くの場
合、これらの信号はビット、値、メッセージ、名称、エ
レメント、符号、操作、項、数字などで表現すると共通
して利用できて都合がよい。しかしながら、これに類似
する用語は全て適当な物理量に関連するものであって、
物理量に付与した簡便なラベルにしかすぎないというこ
とは留意しなくてはならない。 【0024】本願発明で説明する作業とは機械的な作業
である。本願発明の作業を実行する装置としては、汎用
デジタルコンピュータなどの装置がある。本願明細書に
おいては、コンピュータを操作する操作方法と演算自体
の方法とを区別する必要がある。本出願は、一連のネッ
トワークに接続されたコンピュータを操作する段階と、
電気またはその他の物理的な信号を処理して所望の物理
的信号を生成する段階からなる方法に関するものであ
る。 【0025】また、本出願はこれらの作業を実行する装
置に関するものでもある。当該装置は目的に応じて特別
に構成することが可能であるし、あるいは、コンピュー
タに記憶されているコンピュータプログラムで選択的に
起動させたり再構築される汎用コンピュータで構成する
ことも可能である。本願明細書に開示されている方法は
特定のコンピュータや装置とは本質的には無関係であ
る。本願発明によれば様々な汎用機器でプログラムを使
用でき、また、必要な方法を実行させるために特別に装
置を構成すれば一層便利である。これの装置に必要な構
成はこれから述べる詳細な説明で明らかにする。 【0026】また、詳細な説明では本願発明が十分に理
解できるよう装置構成、代表的なデータ、コンピュータ
コードの構成、暗号方法、デバイスなどについて具体的
かつ詳細に説明する。しかしながら、当業者には自明で
あるがこれらの具体的な説明によらなくとも本願発明は
実施することができる。また、本願発明の内容が不明確
にならないよう周知の回路や構成は詳細な説明を省略す
る。さらに、「認識」、「識別」、「比較」、「調
査」、「利用」、「発見」、「判断」、「説明要求」、
「認証」などの特定の用語を本願明細書では使用してい
るが、これらの用語は当該技術分野で使用される用語で
ある。これらの用語を使用すると、コンピュータや電子
装置の擬人化しているようにとらえることができるが、
人のように装置の機能を簡単に説明するためのものであ
る。例えば、本願明細書において電子装置が何かを「判
断する」というのは、本願発明に従って電子装置が変更
またはプログラムされていることを簡単に述べているの
である。従って、明細書に記載されている機能と日常的
な人間の属性を混同しないように注意する必要がある。
これらの機能はあくまで機械的な機能である。 【0027】ハードウェアの具体例 図1は本願発明のデータ処理装置の構成を示したもので
ある。コンピュータ10は3つの主要部から構成されて
いる。すなわち、第1の部品は、入出力(I/O)回路
12であって、コンピュータ10の他の部分との間にお
いて所定の形式で情報を送受信する時に使用される。コ
ンピュータ10のもう一つの主要部品は中央演算処理装
置(CPU)13であって、このCPUはI/O回路1
2とメモリー14に接続されている。これらのエレメン
トはほとんどの汎用コンピュータに通常備えられたもの
であり、実際、このコンピュータ10は広い範囲のデー
タ処理装置を代表するものと考えて良い。また、本願発
明においてこのコンピュータ10はネットワークに接続
されている。さらに、コンピュータ10には後から説明
する本願発明の方法を用いた暗号化・解読回路も備えて
おり、本願発明はコンピュータ10が実行するソフトウ
ェアで実現することができる。図に示すようにラスタ型
表示モニター16はI/O回路12に接続されており、
本願発明によってCPU13が生成する画像が表示され
る。当然のことであるが、他の周知な装置、例えば、陰
極線管(CRT)などの表示装置もモニター16として
使用することができる。 【0028】本願発明のソフトウェアパスポートは、本
当のパスポートで人物を識別するのと同じようにソフト
ウェアまたは何らかの機械コード(以下、コードと称
す)の一部を識別する。本願発明の思想は、様々な国家
との間で信頼の基礎を形成している実際のパスポート制
度と同じものである。実際のパスポートは国境警備の役
人が入国する者を1人づつ確認するためのもので、その
判断は入国する者のパスポートを基にして行われる。後
で説明するように、ソフトウェアパスポートはソフトウ
ェア製品を提供する近代的な販売プロセスである。ソフ
トウェアパスポートはソフトウェア製品に身元と製品名
を与えるものである。このソフトウェアパスポートは信
頼モデルの基礎を築くためのもので、ソフトウェアのパ
スポートに記載されている情報を基にしてソフトウェア
製品が本物であるかどうかの判断及び識別をユーザーの
コンピュータで行うことができる。 【0029】図2にはコンピュータコード(ソフトウェ
アの一部を含む)とソフトウェアパスポートを別々のフ
ァイルに納めた本願発明のソフトウェアパスポートの概
念図であり、図3はソフトウェアの一部を含むコンピュ
ータコードとソフトウェアパスポートを同一のファイル
に納めた本願発明のソフトウェアパスポートを使用する
様子を示した図である。 【0030】図2及び図3に示すように、本願発明のソ
フトウェアパスポートに記載されている情報とは、具体
的なソフトウェア製品の名称やその他の関連情報といっ
た製品の情報と、製品を製造した会社またはソフトウェ
アアプリケーション作成者の名前からなる会社情報と、
ソフトウェアパスポートの発行日とそのパスポートの期
限からなる有効日と、著作権注意書きやその他の説明文
からなる制限付き権利の説明文と、ユーザーへ提供され
た実行可能なアプリケーションコードからなるソフトウ
ェアコード本体と、アプリケーション作成者のライセン
スと、ソフトウェアアプリケーション作成者のデジタル
署名とからなる。 【0031】アプリケーション作成者のライセンスとデ
ジタル署名をさらに詳細に説明すれば、ソフトウェアパ
スポートの構成が自明なものであることが明らかになる
であろう。 【0032】ソフトウェア製造業者のデジタル署名 デジタル「署名」は特定の暗号化技術を用いて作成する
が、具体的には、ソフトウェアコード(以下、コードと
称す)の一部であるメッセージダイジェストを算出し、
署名者の秘密キーを用いてそのメッセージダイジェスト
を暗号化して作成する。メッセージダイジェストアルゴ
リズムとしてはMD2、MD4、MD5アルゴリズムの
ようにRSA 社からすでに多数のアルゴリズムが提供され
ている。署名した者は秘密キーを知られないようにして
いるため秘密暗号化技術を用いれば署名の偽造は極めて
困難になる。Diffie-Helman 証明方法(Diffie-Helman c
ertificates)と公的キー暗号法の詳しい操作説明につい
ては、Whitefield Diffie「公的キー暗号法の最初の1
0年」(Vo. 76, No. 5, IEEE会報、1988年5月)
と、Whitefield Diffie et al,「認証用キーと認証キー
の交換(Autenticationand Authenticated Key Exchange
s )」に記載されている。 【0033】コードの一部をメッセージダイジェストに
算出するというのは、ある意味ではソフトウェアのスナ
ップ写真を撮ることに例えることができるであろう。コ
ードが変わると、そのコードのメッセージダイジェスト
にも同じ変化が現れる。本願発明の装置では、この「デ
ジタル署名」を発売前に製品に捺印するのである。この
デジタル署名によって製品とその製造業者の関係が明確
になるため、消費者は製造業者の評判を元にして製品の
品質を評価することができる。また、この署名があれば
製品が本物かどうかを消費者が区別できる。 【0034】ソフトウェア製造業者のライセンス 本願発明のソフトウェア製造業者のライセンス(以下、
アプリケーション制作者のライセンスと称する場合もあ
る)は、米国において州から発行されている家屋修繕請
負業者ライセンス(home repair contractor's license)
に似た証明書のようなものである。ソフトウェア製造業
者のライセンスは、特定のソフトウェア製造業務を行う
許可をその業者が得ていることを証明及び確認するため
のものである。ソフトウェア業者のライセンスはコンピ
ュータソフトウェア業界が設立した信頼のおける機関か
ら発行される。請負業者のライセンスを発行する前に州
政府が行うのと同じように、ソフトウェア製造業者にラ
イセンスを発行する前に、この機関は決められた処理を
行って業者が人物か企業かを判別し、次にこの業者の業
務上の技量を確かめる。便宜上、当該明細書では、信頼
のおける機関のことをソフトウェア出版局(Software Pu
blishing Authority: SPA)と呼ぶ。 【0035】ソフトウェア製造業者のライセンスには次
のような情報が含まれている。すなわち、製造業者の氏
名、ライセンスの発行日、ライセンスの期限、製造業者
の公的キー、出版局の名称すなわちSPA 、SPA のデジタ
ル署名である。 【0036】ソフトウェア製造業者のライセンスによっ
て、アプリケーション制作者とその氏名及び公的キーが
関連づけられる。ソフトウェア製造業者は製造した複数
の製品すべてに署名することができる。ライセンスに隠
されている公的キーはライセンスを所有している人物に
所属する。この公的キーを用いれば、後で第三者が製造
業者のデジタル署名を確認するができる。製品を購入し
たユーザーは、製造業者のIDに隠されている公的キーを
用いてデジタル署名を確認することで製品が本物である
かどうかを判断できる。 【0037】SPA のデジタル署名は、製造業者のIDのメ
ッセージダイジェストを演算し、次に、SPA の秘密キー
を用いてそのメッセージダイジェストを暗号化して作成
する。SPA の秘密キーはSPA が機密にしているため、SP
A の署名を第三者が偽造して偽のIDを作成することは簡
単にはできない。 【0038】本願発明においては、コードを翻訳する前
にソフトウェアアプリケーション作成者(SW)からコ
ンパイラーへ3つの主要な情報が供給される。 【0039】すなわち、アプリケーション作成者が作成
したソースコードと、アプリケーション作成者の秘密キ
ーと、アプリケーション作成者のライセンスである。 【0040】パスポートに書き込まれているコードの中
には、様々なコンピュータ言語、アセンブリコード、バ
イナリー機械コード、またはデータの形をしたソースコ
ードを含めることができる。このソースコードの記憶形
式には様々なものがある。例えば、ソースコードの一部
をパスポートにクリアなテキスト状態で記憶させたり、
あるいは、Huffman 符号法などの特定の周知な圧縮アル
ゴリズムを用いて、実行可能なバイナリー機械コードの
一部をパスポートに圧縮して記憶させることもできる。
特定のインプリメンテーションで使用する形式は、パス
ポートの中ではフラグで表示される。 【0041】実行可能なバイナリーコードを印刷可能な
文字セット形式で記憶させてパスポートを印刷できるよ
うにすることも可能である。ユーザー側ではこの印刷可
能な形式を逆にしてソフトウェアを再生するであろう。
また、著作権や特許のような形で知的財産として保護さ
れているコードを暗号の形でパスポートに記憶させるこ
とができる。この場合、ソフトにアクセスする前にユー
ザーはライセンス費用を支払わなくてはならないだろ
う。 【0042】図4において、本願発明のソフトウェアパ
スポートを作成するには、オリジナルソースコード2
0、アプリケーション作成者の秘密キー22、およびア
プリケーション作成者のライセンス24をコンパイラー
26へ送る。図示されているように、アプリケーション
作成者のライセンス24には作成者の氏名30、作成者
の公的キー32、有効日34が含まれている。 【0043】次に、コンパイラー26はソースコード2
0をバイナリーコードへ翻訳する。さらに、コンパイラ
ー26はバイナリーコードのメッセージダイジェストを
演算し、さらに、アプリケーション作成者から与えられ
た秘密キー22を用いてこのメッセージダイジェストを
暗号にする。このようにして暗号化されたメッセージダ
イジェスがアプリケーション作成者の署名を形成する。 【0044】アプリケーション作成者のデジタル署名が
作成されてパスポートに書き込まれる。また、アプリケ
ーション作成者のライセンス24もコンパイラー26に
よってパスポートに書き込まれる。アプリケーション作
成者のライセンス24があれば製品を購入したユーザー
は誰でも製品のメーカーを確認することができる。パス
ポートにアプリケーション作成者のデジタル署名が記載
されていれば、ユーザーは誰でも製品が本物であるかど
うかを確かめることができる。アプリケーション作成者
のライセンス24に隠されているSPA のデジタル署名が
あれば、アプリケーション作成者が許可を受けたアプリ
ケーション作成者であってSPA の公的キーを使用して署
名を暗号化していることをユーザーは確認できる。 【0045】図4に示すように、アプリケーションコー
ドが記されたソフトウェアパスポート38は所望のソフ
トウェア提供モデルを介して提供される。ユーザーはこ
のパスポート38を受領し、図1の装置のようなコンピ
ュータ装置(プラットフォームとも言う)で動くオペレ
ーティングシステム(OS)を用いてこのパスポートを実行
させる。 【0046】図5を参照しながら、ハードウェア製造業
者が本願発明を利用する場合について説明する。電子ゲ
ームの業界や対話型ケーブルテレビ用ホームターミナル
の業界では、ハードウェア製造業者は彼らが製造する特
定のハードウェアでは正当なコードだけを実行させたい
と思うことが多い。ハードウェアのアクセス性を制御す
るには、入力コードは判別可能でなくてはならず、ま
た、入力された時にハードウェアでソフトウェアを判別
できなくてはならない。図5に示すように、本願発明
は、ホームターミナルやビデオゲーム用の特定アプリケ
ーションにハードウェア製造業者がライセンスを与える
場合に適用できる。 【0047】図6と図7において、特定のハードウェア
用のアプリケーションコードを作成することを認められ
たアプリケーション作成者(「ソフトウェア作成者」と
も称す)に対してハードウェア製造業者が「プログラマ
ーライセンス」を発行する場合がある。ハードウェア製
造業者から発行されたプログラマーライセンスは、SPA
の代わりにハードウェア製造業者がデジタル的に署名し
たものである点を除けばSPA から発行されるプログラマ
ーのIDと同様のものである。プログラマーのライセンス
には次のような情報が含まれている。 【0048】すなわち、製造業者の氏名、ライセンス発
行日、ライセンスの期限、製造業者の公的キー、出版局
(ハードウェア製造業者)、ハードウェア製造業者のデ
ジタル署名なである。 【0049】ハードウェア製造業者のデジタル署名は、
ライセンスのメッセージダイジェストを演算し、次に、
ハードウェア製造業者の秘密キーを用いてこのメッセー
ジダイジェストを暗号化して作成する。 【0050】有資格のアプリケーション作成者が作成し
たソフトウェアには、作成者の本物のデジタル署名が記
された有効パスポート50(図5及び図6)と、ハード
ウェア製造業者が発行した有効アプリケーションライセ
ンス52が含まれている。ハードウェア製造業者から許
可を受けていないアプリケーション作成者には有効ライ
センスがないため、不当な人物が作成したソフトウェア
パスポートには有効なライセンスも有効な署名も記され
ていないことになる。 【0051】ハードウェア製造業者の公的キー54は、
確認のためハードウェア(例えば、ビデオゲーム)に組
み込まれている。実行時には、装置に組み込まれている
公的キー54をハードウェアが取り出して、パスポート
にアプリケーション作成者の有効なライセンスが記載さ
れているかどうかをハードウェアが確認する。ライセン
ス52のメッセージダイジェストを演算し、次に、ハー
ドウェア製造業者の秘密キーを用いてそのメッセージダ
イジェストを暗号化すると、アプリケーション作成者の
ライセンスの中にデジタル署名が書き込まれる。このよ
うに、本願発明の装置は、ハードウェア製造業者の公的
キー54を用いて署名を解読して本来のメッセージダイ
ジェストを再生することができる。アプリケーション作
成者のライセンスの確認は、1.パスポート50に記さ
れているアプリケーションライセンス52のメッセージ
ダイジェストを再演算し、2.オリジナルメッセージダ
イジェストを再生し、3.古いメッセージダイジェスト
と新しく算出されたメッセージダイジェストを比較して
行う。 【0052】これら2つのメッセージダイジェストが同
じ場合は署名は有効である。そうでない場合は、パスポ
ートは無効であるためハードウェアはソフトウェアの実
行を拒否する。図7のフローチャートは、アプリケーシ
ョン作成者のデジタル署名を確認するために本願発明の
方法で実行される工程を示している。 【0053】本願発明のセキュリティー機構を用いれば
版権や特許などの知的財産で保護されている発明や著作
の保護を図ることが可能である。知的財産を保護するた
めにさらに追加された処理手続きとしては、コンパイラ
ー(例えば、図5のコンパイラー68)で暗号化された
バイトコードを生成する手続きがある。オペレーティン
グシステム(OS)でユーザーがこのコードを実行しようと
すると、図6と図7で説明したように確認手続きが行わ
れる。しかしながら、コードが暗号化された状態では、
オペレーティングシステムはコードを実行する前にさら
に許可を求めてくる。この場合暗号キーが必要になる
が、このキーを用いるとコードを実行するためのIPライ
センスが得られる。コードの確認の後、オペレーティン
グシステムはIPライセンスを要求する。オペレーティン
グシステムでは、コードを作成した人物がIPライセンス
を署名したかどうかを確認し、次に暗号解読とコードの
実行を行う。本願発明のその他の特徴としては、コード
が暗号化されているため第三者はコードを調べることが
できない。
ートを別々のファイルに書き込んだ本発明のソフトウェ
アパスポートの具体的使用例を示す概念図 【図3】アプリケーションコードとソフトウェアパスポ
ートを同じファイルに書き込んだ本発明のソフトウェア
パスポートの具体的使用例を示す概念図 【図4】本発明におけるソフトウェアパスポートの生成
工程を示す概略図 【図5】本願発明を利用してハードウェア製造業者が権
利を付与する様子を示した概略図 【図6】コンピュータプログラムの実行を許可する前に
有効なソフトウェアライセンスが存在するか、また、ソ
フトウェア作成者(SW)の署名が有効であるかを確認する
ため本願発明で実行する工程を示したフローチャート 【図7】図6に示す工程の続きを示すフローチャート 【符号の説明】 10 コンピュータ 12 I/O 回路 13 CPU 14 メモリー 15 キーボード 16 CRT 20 ソースコード 22、58 アプリケーション作成者の秘密キー 24、52 アプリケーション作成者のライセンス 26、68 コンパイラー 30 アプリケーション作成者の氏名 32、62 アプリケーション作成者の公的キー 34 有効日 38、50 アプリケーションパスポート 54 ハードウェア製造業者の公的キー 60 アプリケーション作成者
Claims (1)
- 【特許請求の範囲】 【請求項1】 提供用ソフトウェアの安全性強化方法に
おいて、 第1のコンピュータが実行するコンパイラーへ、秘密キ
ーと、公的キーが含まれているアプリケーション作成者
のライセンスと、ソフトウェアとを与え、当該コンパイ
ラーが前記ソフトウェアをバイナリーコードへ翻訳する
とともに、当該バイナリーコード用のメッセージダイジ
ェストを算出する段階と、 前記第1のコンピュータが前記秘密キーを用いて前記メ
ッセージダイジェストを暗号化してアプリケーション作
成者のデジタル署名が含まれた暗号化メッセージダイジ
ェストを作成する段階と、 前記第1のコンピュータが、前記アプリケーション作成
者のデジタル署名と前記アプリケーション作成者のライ
センスとからなるソフトウェアパスポートを生成する段
階と、 前記ソフトウェアパスポートおよび前記バイナリーコー
ドをユーザーへ提供する段階とからなることを特徴とす
る提供用ソフトウェアの安全性強化方法。 【請求項2】 前記ユーザーが前記ソフトウェアパスポ
ートを受け取って、第2コンピュータのオペレーティン
グシステムで前記バイナリーコードを実行する段階をさ
らに有していることを特徴とする請求項1記載の提供用
ソフトウェアの安全性強化方法。 【請求項3】 前記ライセンスには、前記ソフトウェア
の著者の氏名が記載されていることを特徴とする請求項
2記載の提供用ソフトウェアの安全性強化方法。 【請求項4】 前記ライセンスには、前記著者の公的キ
ーも含まれていることを特徴とする請求項3記載の提供
用ソフトウェアの安全性強化方法。 【請求項5】 前記ライセンスには、前記ソフトウェア
の有効日が記載されていることを特徴とする請求項4記
載の提供用ソフトウェアの安全性強化方法。 【請求項6】 前記ライセンスには、ソフトウェア出版
局(SPA) のデジタル署名も記載されていることを特徴と
する請求項3記載の提供用ソフトウェアの安全性強化方
法。 【請求項7】 提供用ソフトウェアの安全性強化方法に
おいて、 第1のコンピュータが実行するコンパイラーへ、アプリ
ケーション作成者の秘密キーと、アプリケーション作成
者の公的キーおよびハードウェア製造業者のデジタル署
名からなるアプリケーション作成者のライセンスと、ソ
フトウェアとを与え、当該コンパイラーが前記ソフトウ
ェアをバイナリーコードへ翻訳し、かつ、当該バイナリ
ーコード用の第1メッセージダイジェストを算出する段
階と、 前記第1のコンピュータが前記アプリケーション作成者
の秘密キーを用いて前記第1メッセージダイジェストを
暗号化して、アプリケーション作成者の署名からなる暗
号化第1メッセージダイジェストを生成する段階と、 前記第1コンピュータが、前記アプリケーション作成者
のデジタル署名、前記アプリケーション作成者のライセ
ンスおよび前記バイナリーコードからなるソフトウェア
パスポートを生成する段階と、 前記ソフトウェアパスポートを第2のコンピュータへ提
供する段階とからなることを特徴とする提供用ソフトウ
ェアの安全性強化方法。 【請求項8】 前記第2のコンピュータが前記ソフトウ
ェアパスポートを受信する段階と、 前記第2のコンピュータが前記ソフトウェアパスポート
に前記アプリケーション作成者のライセンスが含まれて
いるかどうかを判断し、前記ソフトウェアパスポートに
前記アプリケーション作成者のライセンスが書き込まれ
ていない場合には前記第2のコンピュータが前記ソフト
ウェアパスポートを拒否する段階とをさらに備えている
ことを特徴とする請求項7記載の提供用ソフトウェアの
安全性強化方法。 【請求項9】 前記ソフトウェアパスポートから前記ア
プリケーション作成者のライセンスを取り出す段階をさ
らに備えていることを特徴とする請求項8記載の提供用
ソフトウェアの安全性強化方法。 【請求項10】 前記アプリケーション作成者のライセ
ンスに前記ハードウェア製造業者のデジタル署名が書き
込まれているかどうかを判断して、前記ハードウェア製
造業者のデジタル署名が書き込まれていない場合には前
記ソフトウェアパスポートを前記第2のコンピュータが
拒否する段階をさらに備えていることを特徴とする請求
項9記載の提供用ソフトウェアの安全性強化方法。 【請求項11】 前記第2のコンピュータに付与されて
いるハードウェア製造業者の公的キーを用いて前記ハー
ドウェア製造業者のデジタル署名を解読する段階をさら
に備えていることを特徴とする提供用ソフトウェアの安
全性強化方法。 【請求項12】 前記第2のコンピュータが、前記ソフ
トウェアパスポートの第2メッセージダイジェストを演
算し、さらに、前記第1メッセージダイジェストと前記
第2メッセージダイジェストとを比較して、これら第1
及び第2メッセージダイジェストが同じでない場合には
前記ソフトウェアパスポートを拒否する段階をさらに備
えていることを特徴とする請求項11記載の提供用ソフ
トウェアの安全性強化方法。 【請求項13】 前記第1と第2のメッセージダイジェ
ストが同じ場合には、前記第2のコンピュータが前記ア
プリケーション作成者のライセンスから前記アプリケー
ション作成者の公的キーを取り出す段階をさらに備えて
いることを特徴とする請求項12記載の提供用ソフトウ
ェアの安全性強化方法。 【請求項14】 前記第2のコンピュータが、前記ソフ
トウェアパスポートから前記バイナリーコードを取り出
す段階をさらに備えていることを特徴とする請求項13
記載の提供用ソフトウェアの安全性強化方法。 【請求項15】 前記ソフトウェアパスポートから前記
アプリケーション作成者のデジタル署名を前記第2のコ
ンピュータが取り出す段階をさらに備えていることを特
徴とする請求項14記載の提供用ソフトウェアの安全性
強化方法。 【請求項16】 前記第2のコンピュータが前記バイナ
リーコードのメッセージダイジェストを算出する段階を
さらに備えていることを特徴とする請求項15記載の提
供用ソフトウェアの安全性強化方法。 【請求項17】 前記第2のコンピュータが、前記アプ
リケーション作成者の公的キーを用いて前記アプリケー
ション作成者のデジタル署名を解読する段階をさらに備
えていることを特徴とする請求項16記載の提供用ソフ
トウェアの安全性強化方法。 【請求項18】 前記第2のコンピュータが前記バイナ
リーコードの前記メッセージダイジェストと、解読され
た前記アプリケーション作成者のデジタル署名とを比較
して、前記バイナリーコードの前記メッセージダイジェ
ストと、解読された前記アプリケーション作成者の署名
とが同じ場合には、前記第2のコンピュータが前記バイ
ナリーコードを実行する段階をさらに備えていることを
特徴とする請求項17記載の提供用ソフトウェアの安全
性強化方法。 【請求項19】 提供用ソフトウェアの安全性強化装置
において、 第1のコンピュータと、 秘密キーと、 アプリケーション作成者のライセンスと、 ソフトウェアと、 前記第1のコンピュータで実行するコンパイラーであっ
て、前記ソフトウェアをバイナリーコードへ翻訳し、当
該バイナリーコード用にメッセージダイジェストを算出
するコンパイラーとから構成されており、 前記第1のコンピュータが前記秘密キーを用いて前記メ
ッセージダイジェストを暗号化してアプリケーション作
成者のデジタル署名が含まれた暗号化メッセージダイジ
ェストが作成すると共に前記アプリケーション作成者の
デジタル署名と前記アプリケーション作成者のライセン
スからなるソフトウェアパスポートを生成するものであ
って、 前記ソフトウェアパスポートと前記バイナリーコードを
ユーザーへ提供するエレメントも備えられていることを
特徴とする提供用ソフトウェアの安全性強化装置。 【請求項20】 前記ユーザーが前記ソフトウェアパス
ポートを受け取って、第2コンピュータのオペレーティ
ングシステムで前記バイナリーコードを実行することを
特徴とする請求項19記載の提供用ソフトウェアの安全
性強化装置。 【請求項21】 前記ライセンスには、前記ソフトウェ
アの著者の氏名が記載されていることを特徴とする請求
項20記載の提供用ソフトウェアの安全性強化装置。 【請求項22】 前記ライセンスには、前記著者の公的
キーも含まれていることを特徴とする請求項21記載の
提供用ソフトウェアの安全性強化装置。 【請求項23】 提供用ソフトウェアの安全性強化装置
において、 第1のコンピュータと、 アプリケーション作成者の秘密キーと、 アプリケーション作成者の公的キーとハードウェア製造
業者のデジタル署名からなるアプリケーション作成者の
ライセンスと、 ソフトウェアと、 第1のコンピュータで実行するコンパイラーであって、
前記ソフトウェアをバイナリーコードへ翻訳し、当該バ
イナリーコード用に第1のメッセージダイジェストを算
出するコンパイラーとから構成されており、 前記コンパイラーが前記アプリケーション作成者の秘密
キーを用いて前記第1メッセージダイジェストの暗号化
を行って前記アプリケーション作成者のデジタル署名か
らなる暗号化第1メッセージダイジェストを作成するも
のであり、 前記第1のコンピュータが、前記アプリケーション作成
者のデジタル署名、前記アプリケーション作成者のライ
センス、前記バイナリーコードからなるソフトウェアパ
スポートを生成するものであって、 前記ソフトウェアパスポートを第2のコンピュータへ提
供するエレメントも備えられていることを特徴とする提
供用ソフトウェアの安全性強化装置。 【請求項24】 前記第2のコンピュータが前記ソフト
ウェアパスポートを受信し、前記ソフトウェアパスポー
トに前記アプリケーション作成者のライセンスが含まれ
ているかどうかを判断し、前記ソフトウェアパスポート
に前記アプリケーション作成者のライセンスが書き込ま
れていない場合には前記第2のコンピュータが前記ソフ
トウェアパスポートを拒否することを特徴とする請求項
23記載の提供用ソフトウェアの安全性強化装置。 【請求項25】 前記ソフトウェアパスポートから前記
アプリケーション作成者のライセンスを取り出すことを
特徴とする請求項24記載の提供用ソフトウェアの安全
性強化装置。 【請求項26】 前記第2のコンピュータが、前記アプ
リケーション作成者のライセンスに前記ハードウェア製
造業者のデジタル署名が書き込まれているかどうかを判
断して、前記ハードウェア製造業者のデジタル署名が書
き込まれていない場合には前記ソフトウェアパスポート
を拒否するものであることを特徴とする請求項25記載
の提供用ソフトウェアの安全性強化装置。 【請求項27】 前記第2のコンピュータに付与されて
いるハードウェア製造業者の公的キーを用いて前記ハー
ドウェア製造業者のデジタル署名を解読することを特徴
とする提供用ソフトウェアの安全性強化装置。 【請求項28】 前記第2のコンピュータが前記ソフト
ウェアパスポートの第2メッセージダイジェストを演算
し、さらに、前記第1メッセージダイジェストと前記第
2メッセージダイジェストとを比較して、これら第1及
び第2メッセージダイジェストが同じでない場合には前
記ソフトウェアパスポートを拒否するものであることを
特徴とする請求項27記載の提供用ソフトウェアの安全
性強化装置。 【請求項30】 前記第2のコンピュータが、前記ソフ
トウェアパスポートから前記バイナリーコードを取り出
すものであることを特徴とする請求項29記載の提供用
ソフトウェアの安全性強化装置。 【請求項31】 前記ソフトウェアパスポートから前記
アプリケーション作成者のデジタル署名を前記第2のコ
ンピュータが取り出すことを特徴とする請求項30記載
の提供用ソフトウェアの安全性強化装置。 【請求項32】 前記第2のコンピュータが前記バイナ
リーコードのメッセージダイジェストを算出するもので
あることを特徴とする請求項31記載の提供用ソフトウ
ェアの安全性強化装置。 【請求項33】 前記第2のコンピュータが、前記アプ
リケーション作成者の公的キーを用いて前記アプリケー
ション作成者のデジタル署名を解読するものであること
を特徴とする請求項32記載の提供用ソフトウェアの安
全性強化装置。 【請求項34】 前記第2のコンピュータが、前記バイ
ナリーコードの前記メッセージダイジェストと、解読さ
れた前記アプリケーション作成者のデジタル署名とを比
較して、前記バイナリーコードの前記メッセージダイジ
ェストと、解読された前記アプリケーション作成者の署
名とが同じ場合には、前記バイナリーコードを実行する
ものであることを特徴とする請求項33記載の提供用ソ
フトウェアの安全性強化装置。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US08/258,244 US5724425A (en) | 1994-06-10 | 1994-06-10 | Method and apparatus for enhancing software security and distributing software |
| US258244 | 1994-06-10 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH08166879A true JPH08166879A (ja) | 1996-06-25 |
Family
ID=22979711
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP7144507A Pending JPH08166879A (ja) | 1994-06-10 | 1995-06-12 | 提供用ソフトウェアの安全性強化方法及び装置 |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US5724425A (ja) |
| EP (1) | EP0686906B1 (ja) |
| JP (1) | JPH08166879A (ja) |
| DE (1) | DE69534212T8 (ja) |
Cited By (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH1124919A (ja) * | 1997-06-20 | 1999-01-29 | Internatl Business Mach Corp <Ibm> | 安全な記憶領域でアプリケーション・データを保護する方法及び装置 |
| JP2000148469A (ja) * | 1998-06-29 | 2000-05-30 | Sun Microsyst Inc | モジュラ―アプリケ―ション間のサ―ビスへのアクセス制御 |
| JP2000347846A (ja) * | 1999-03-03 | 2000-12-15 | Nokia Mobile Phones Ltd | サーバから端末にソフトウェアをダウンロードするための方法および電話システム |
| JP2001517822A (ja) * | 1997-09-19 | 2001-10-09 | パク,ヒョ,ジョーン | 独立的ソフトウェア登録サーバを利用したソフトウェア使用権管理システム |
| JP2003526965A (ja) * | 1999-05-17 | 2003-09-09 | ウェイヴ システムズ コーポレイション | 公開暗号制御ユニット及びそのシステム |
| JP2005182592A (ja) * | 2003-12-22 | 2005-07-07 | Yokogawa Electric Corp | 実行ライセンス管理装置とそれを内蔵したコントローラ |
| US6948072B2 (en) | 2000-03-03 | 2005-09-20 | Sony Computer Entertainment Inc. | Information processing device and record medium |
| JP2007508613A (ja) * | 2003-10-13 | 2007-04-05 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | アプリケーション毎の記憶領域割当て |
| JP2009199236A (ja) * | 2008-02-20 | 2009-09-03 | Ricoh Co Ltd | 画像処理装置、認証パッケージインストール方法、認証パッケージインストールプログラム、及び記録媒体 |
| JP2012137963A (ja) * | 2010-12-27 | 2012-07-19 | Nec Corp | コンテンツ管理システム、管理サーバ、コンテンツ管理方法、及びプログラム |
Families Citing this family (333)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| USRE48056E1 (en) * | 1991-12-23 | 2020-06-16 | Blanding Hovenweep, Llc | Ergonomic man-machine interface incorporating adaptive pattern recognition based control system |
| US8352400B2 (en) | 1991-12-23 | 2013-01-08 | Hoffberg Steven M | Adaptive pattern recognition based controller apparatus and method and human-factored interface therefore |
| USRE47908E1 (en) * | 1991-12-23 | 2020-03-17 | Blanding Hovenweep, Llc | Ergonomic man-machine interface incorporating adaptive pattern recognition based control system |
| US6564321B2 (en) | 1995-04-28 | 2003-05-13 | Bobo Ii Charles R | Systems and methods for storing, delivering, and managing messages |
| US5864683A (en) * | 1994-10-12 | 1999-01-26 | Secure Computing Corporartion | System for providing secure internetwork by connecting type enforcing secure computers to external network for limiting access to data based on user and process access rights |
| JPH08263438A (ja) * | 1994-11-23 | 1996-10-11 | Xerox Corp | ディジタルワークの配給及び使用制御システム並びにディジタルワークへのアクセス制御方法 |
| US6963859B2 (en) * | 1994-11-23 | 2005-11-08 | Contentguard Holdings, Inc. | Content rendering repository |
| US7505945B2 (en) * | 1995-02-08 | 2009-03-17 | Cryptomathic A/S | Electronic negotiable documents |
| US7095854B1 (en) | 1995-02-13 | 2006-08-22 | Intertrust Technologies Corp. | Systems and methods for secure transaction management and electronic rights protection |
| EP2110732A3 (en) * | 1995-02-13 | 2009-12-09 | Intertrust Technologies Corporation | Systems and methods for secure transaction management and electronic rights protection |
| US5943422A (en) | 1996-08-12 | 1999-08-24 | Intertrust Technologies Corp. | Steganographic techniques for securely delivering electronic digital rights management control information over insecure communication channels |
| US6157721A (en) * | 1996-08-12 | 2000-12-05 | Intertrust Technologies Corp. | Systems and methods using cryptography to protect secure computing environments |
| US7124302B2 (en) * | 1995-02-13 | 2006-10-17 | Intertrust Technologies Corp. | Systems and methods for secure transaction management and electronic rights protection |
| US6658568B1 (en) * | 1995-02-13 | 2003-12-02 | Intertrust Technologies Corporation | Trusted infrastructure support system, methods and techniques for secure electronic commerce transaction and rights management |
| US5892900A (en) | 1996-08-30 | 1999-04-06 | Intertrust Technologies Corp. | Systems and methods for secure transaction management and electronic rights protection |
| US7143290B1 (en) * | 1995-02-13 | 2006-11-28 | Intertrust Technologies Corporation | Trusted and secure techniques, systems and methods for item delivery and execution |
| US6948070B1 (en) | 1995-02-13 | 2005-09-20 | Intertrust Technologies Corporation | Systems and methods for secure transaction management and electronic rights protection |
| US7165174B1 (en) | 1995-02-13 | 2007-01-16 | Intertrust Technologies Corp. | Trusted infrastructure support systems, methods and techniques for secure electronic commerce transaction and rights management |
| US7133846B1 (en) | 1995-02-13 | 2006-11-07 | Intertrust Technologies Corp. | Digital certificate support system, methods and techniques for secure electronic commerce transaction and rights management |
| US7133845B1 (en) | 1995-02-13 | 2006-11-07 | Intertrust Technologies Corp. | System and methods for secure transaction management and electronic rights protection |
| US7069451B1 (en) | 1995-02-13 | 2006-06-27 | Intertrust Technologies Corp. | Systems and methods for secure transaction management and electronic rights protection |
| DE19510626A1 (de) * | 1995-03-23 | 1996-09-26 | Giesecke & Devrient Gmbh | Verfahren zur Prüfung der Unversehrtheit von gespeicherten Daten auf einer Verarbeitungsanlage für Blattgut, wie z. B. Banknoten oder Wertpapiere |
| EP0826181A4 (en) * | 1995-04-11 | 2005-02-09 | Kinetech Inc | IDENTIFYING DATA IN A DATA PROCESSING SYSTEM |
| US6590996B1 (en) * | 2000-02-14 | 2003-07-08 | Digimarc Corporation | Color adaptive watermarking |
| GB9510035D0 (en) * | 1995-05-18 | 1995-08-02 | Cryptech Systems Inc | Strengthened public key protocols |
| JP4162099B2 (ja) | 1995-06-02 | 2008-10-08 | 富士通株式会社 | ウィルス感染に対処する機能を持つ装置及びその記憶装置 |
| EP0766472A3 (de) * | 1995-09-26 | 2000-05-31 | Siemens Aktiengesellschaft | Verfahren zur Nutzung von elektronischen Informationsdiensten unter Sicherstellung der Anonymität von Benutzern gegenüber den Betreibern solcher Dienste |
| FR2739469B1 (fr) * | 1995-10-03 | 1997-12-26 | Gemplus Card Int | Procede de cryptographie a cle publique base sur le logarithme discret |
| US6067575A (en) * | 1995-12-08 | 2000-05-23 | Sun Microsystems, Inc. | System and method for generating trusted, architecture specific, compiled versions of architecture neutral programs |
| US5943423A (en) * | 1995-12-15 | 1999-08-24 | Entegrity Solutions Corporation | Smart token system for secure electronic transactions and identification |
| US6219423B1 (en) | 1995-12-29 | 2001-04-17 | Intel Corporation | System and method for digitally signing a digital agreement between remotely located nodes |
| US9530150B2 (en) * | 1996-01-19 | 2016-12-27 | Adcension, Llc | Compensation model for network services |
| US20090012864A1 (en) * | 2007-07-02 | 2009-01-08 | Goldberg Sheldon F | Compensation model for network services |
| US6264560B1 (en) | 1996-01-19 | 2001-07-24 | Sheldon F. Goldberg | Method and system for playing games on a network |
| US5823879A (en) | 1996-01-19 | 1998-10-20 | Sheldon F. Goldberg | Network gaming system |
| US5913024A (en) | 1996-02-09 | 1999-06-15 | Secure Computing Corporation | Secure server utilizing separate protocol stacks |
| JP3848684B2 (ja) * | 1996-03-22 | 2006-11-22 | 株式会社日立製作所 | コンピュータネットワークシステムの管理方法,および,コンピュータネットワークシステムに用いるコンピュータ |
| US6226383B1 (en) * | 1996-04-17 | 2001-05-01 | Integrity Sciences, Inc. | Cryptographic methods for remote authentication |
| GB9608696D0 (en) * | 1996-04-26 | 1996-07-03 | Europ Computer Ind Res | Electronic copy protection mechanism |
| US7567669B2 (en) * | 1996-05-17 | 2009-07-28 | Certicom Corp. | Strengthened public key protocol |
| US6317878B1 (en) * | 1996-05-22 | 2001-11-13 | Fujitsu Limited | Information processing system and recording media |
| US6263442B1 (en) * | 1996-05-30 | 2001-07-17 | Sun Microsystems, Inc. | System and method for securing a program's execution in a network environment |
| TW313642B (en) * | 1996-06-11 | 1997-08-21 | Ibm | A uniform mechanism for using signed content |
| US6324525B1 (en) | 1996-06-17 | 2001-11-27 | Hewlett-Packard Company | Settlement of aggregated electronic transactions over a network |
| US5796830A (en) * | 1996-07-29 | 1998-08-18 | International Business Machines Corporation | Interoperable cryptographic key recovery system |
| US5950195A (en) * | 1996-09-18 | 1999-09-07 | Secure Computing Corporation | Generalized security policy management system and method |
| US6181803B1 (en) | 1996-09-30 | 2001-01-30 | Intel Corporation | Apparatus and method for securely processing biometric information to control access to a node |
| US5946396A (en) * | 1996-10-25 | 1999-08-31 | Intel Corporation | System and method for ensuring integrity of audio |
| US6154844A (en) * | 1996-11-08 | 2000-11-28 | Finjan Software, Ltd. | System and method for attaching a downloadable security profile to a downloadable |
| US8079086B1 (en) | 1997-11-06 | 2011-12-13 | Finjan, Inc. | Malicious mobile code runtime monitoring system and methods |
| US7613926B2 (en) * | 1997-11-06 | 2009-11-03 | Finjan Software, Ltd | Method and system for protecting a computer and a network from hostile downloadables |
| US9219755B2 (en) | 1996-11-08 | 2015-12-22 | Finjan, Inc. | Malicious mobile code runtime monitoring system and methods |
| US7058822B2 (en) | 2000-03-30 | 2006-06-06 | Finjan Software, Ltd. | Malicious mobile code runtime monitoring system and methods |
| US6167520A (en) * | 1996-11-08 | 2000-12-26 | Finjan Software, Inc. | System and method for protecting a client during runtime from hostile downloadables |
| US5878417A (en) * | 1996-11-20 | 1999-03-02 | International Business Machines Corporation | Method and apparatus for network security in browser based interfaces |
| AUPO474997A0 (en) * | 1997-01-23 | 1997-02-20 | Commonwealth Bank Of Australia | Distribution system with authentication |
| EP0856968A3 (en) * | 1997-01-24 | 2000-12-06 | Nec Corporation | Encryption key processing system to be incorporated into data recovery system or key setting system for generating encryption key |
| US20050021477A1 (en) * | 1997-01-29 | 2005-01-27 | Ganapathy Krishnan | Method and system for securely incorporating electronic information into an online purchasing application |
| US5949877A (en) * | 1997-01-30 | 1999-09-07 | Intel Corporation | Content protection for transmission systems |
| US6148401A (en) * | 1997-02-05 | 2000-11-14 | At&T Corp. | System and method for providing assurance to a host that a piece of software possesses a particular property |
| US7062500B1 (en) * | 1997-02-25 | 2006-06-13 | Intertrust Technologies Corp. | Techniques for defining, using and manipulating rights management data structures |
| US5920861A (en) | 1997-02-25 | 1999-07-06 | Intertrust Technologies Corp. | Techniques for defining using and manipulating rights management data structures |
| US8914410B2 (en) * | 1999-02-16 | 2014-12-16 | Sonicwall, Inc. | Query interface to policy server |
| US6408336B1 (en) | 1997-03-10 | 2002-06-18 | David S. Schneider | Distributed administration of access to information |
| US6108420A (en) * | 1997-04-10 | 2000-08-22 | Channelware Inc. | Method and system for networked installation of uniquely customized, authenticable, and traceable software application |
| US5999921A (en) * | 1997-04-30 | 1999-12-07 | Pitney Bowes Inc. | Electronic postage meter system having plural clock system providing enhanced security |
| JPH10301772A (ja) | 1997-04-30 | 1998-11-13 | Sony Corp | 情報処理装置および情報処理方法、並びに記録媒体 |
| JPH10301773A (ja) * | 1997-04-30 | 1998-11-13 | Sony Corp | 情報処理装置および情報処理方法、並びに記録媒体 |
| US6381698B1 (en) | 1997-05-21 | 2002-04-30 | At&T Corp | System and method for providing assurance to a host that a piece of software possesses a particular property |
| JPH10327147A (ja) * | 1997-05-21 | 1998-12-08 | Hitachi Ltd | 電子認証公証方法およびシステム |
| EP0881557B1 (en) * | 1997-05-28 | 2003-04-16 | Siemens Aktiengesellschaft | Computer system for protecting software and a method for protecting software |
| JP3595109B2 (ja) * | 1997-05-28 | 2004-12-02 | 日本ユニシス株式会社 | 認証装置、端末装置、および、それら装置における認証方法、並びに、記憶媒体 |
| US5958073A (en) * | 1997-05-30 | 1999-09-28 | Motorola, Inc. | Reliability enhanced processing system and method for optimizing |
| US6122372A (en) * | 1997-06-04 | 2000-09-19 | Signet Assurance Company Llc | System and method for encapsulating transaction messages with verifiable data generated identifiers |
| US5968136A (en) * | 1997-06-05 | 1999-10-19 | Sun Microsystems, Inc. | Apparatus and method for secure device addressing |
| CA2293650C (en) | 1997-06-09 | 2012-09-25 | Christian Sven Collberg | Obfuscation techniques for enhancing software security |
| US6108425A (en) * | 1997-06-30 | 2000-08-22 | International Business Machines Corporation | Method and apparatus for controlling the configuration of a cryptographic processor |
| DE69724946T2 (de) * | 1997-07-31 | 2004-08-12 | Siemens Ag | Programmvermietungssystem und Verfahren zur Vermietung von Programmen |
| US6233567B1 (en) * | 1997-08-29 | 2001-05-15 | Intel Corporation | Method and apparatus for software licensing electronically distributed programs |
| ATE213575T1 (de) * | 1997-10-28 | 2002-03-15 | Brokat Infosystems Ag | Verfahren zum digitalen signieren einer nachricht |
| US6292897B1 (en) * | 1997-11-03 | 2001-09-18 | International Business Machines Corporation | Undeniable certificates for digital signature verification |
| US7975305B2 (en) * | 1997-11-06 | 2011-07-05 | Finjan, Inc. | Method and system for adaptive rule-based content scanners for desktop computers |
| US8225408B2 (en) * | 1997-11-06 | 2012-07-17 | Finjan, Inc. | Method and system for adaptive rule-based content scanners |
| US7418731B2 (en) * | 1997-11-06 | 2008-08-26 | Finjan Software, Ltd. | Method and system for caching at secure gateways |
| US7092914B1 (en) | 1997-11-06 | 2006-08-15 | Intertrust Technologies Corporation | Methods for matching, selecting, narrowcasting, and/or classifying based on rights management and/or other information |
| US6567793B1 (en) | 1997-12-22 | 2003-05-20 | Christian Bielefeldt Hicks | Remote authorization for unlocking electronic data system and method |
| US6298153B1 (en) * | 1998-01-16 | 2001-10-02 | Canon Kabushiki Kaisha | Digital signature method and information communication system and apparatus using such method |
| US6308270B1 (en) | 1998-02-13 | 2001-10-23 | Schlumberger Technologies, Inc. | Validating and certifying execution of a software program with a smart card |
| CN100452787C (zh) | 1998-03-16 | 2009-01-14 | 杰佐公司 | 检测进入信号从一种已知的先前逻辑状态转变的方法 |
| US6160423A (en) * | 1998-03-16 | 2000-12-12 | Jazio, Inc. | High speed source synchronous signaling for interfacing VLSI CMOS circuits to transmission lines |
| US7233948B1 (en) | 1998-03-16 | 2007-06-19 | Intertrust Technologies Corp. | Methods and apparatus for persistent control and protection of content |
| US7171662B1 (en) * | 1998-03-18 | 2007-01-30 | Microsoft Corporation | System and method for software licensing |
| US6189146B1 (en) * | 1998-03-18 | 2001-02-13 | Microsoft Corporation | System and method for software licensing |
| BE1012292A3 (nl) * | 1998-03-26 | 2000-09-05 | Int Management Services Afgeko | Werkwijze voor het identificeren van computergegevens, eenheden om deze werkwijze te realiseren, alsmede netwerk dat van deze werkwijze gebruik maakt. |
| US6725378B1 (en) | 1998-04-15 | 2004-04-20 | Purdue Research Foundation | Network protection for denial of service attacks |
| US6199113B1 (en) * | 1998-04-15 | 2001-03-06 | Sun Microsystems, Inc. | Apparatus and method for providing trusted network security |
| DE19820605A1 (de) * | 1998-05-08 | 1999-11-11 | Giesecke & Devrient Gmbh | Verfahren zur sicheren Verteilung von Software |
| US6724895B1 (en) | 1998-06-18 | 2004-04-20 | Supersensor (Proprietary) Limited | Electronic identification system and method with source authenticity verification |
| US6256393B1 (en) * | 1998-06-23 | 2001-07-03 | General Instrument Corporation | Authorization and access control of software object residing in set-top terminals |
| US7711714B2 (en) * | 1998-09-22 | 2010-05-04 | Hitachi, Ltd. | Method and a device for sterilizing downloaded files |
| US6463535B1 (en) * | 1998-10-05 | 2002-10-08 | Intel Corporation | System and method for verifying the integrity and authorization of software before execution in a local platform |
| US7215773B1 (en) * | 1998-10-14 | 2007-05-08 | Certicom.Corp. | Key validation scheme |
| CA2346924A1 (en) * | 1998-10-16 | 2000-04-27 | Computer Associates Think, Inc. | Apparatus and method for building modeling tools |
| US7386727B1 (en) | 1998-10-24 | 2008-06-10 | Encorus Holdings Limited | Method for digital signing of a message |
| US20050060549A1 (en) * | 1998-10-26 | 2005-03-17 | Microsoft Corporation | Controlling access to content based on certificates and access predicates |
| US7174457B1 (en) * | 1999-03-10 | 2007-02-06 | Microsoft Corporation | System and method for authenticating an operating system to a central processing unit, providing the CPU/OS with secure storage, and authenticating the CPU/OS to a third party |
| US7194092B1 (en) * | 1998-10-26 | 2007-03-20 | Microsoft Corporation | Key-based secure storage |
| US6272469B1 (en) | 1998-11-25 | 2001-08-07 | Ge Medical Systems Global Technology Company, Llc | Imaging system protocol handling method and apparatus |
| US6408075B1 (en) * | 1998-11-30 | 2002-06-18 | Hitachi, Ltd. | Information processing equipment and IC card |
| DE19902722A1 (de) * | 1999-01-25 | 2000-07-27 | Giesecke & Devrient Gmbh | Verfahren zum Austauschen von mindestens einem geheimen Anfangswert zwischen einer Bearbeitungsstation und einer Chipkarte |
| US7904187B2 (en) | 1999-02-01 | 2011-03-08 | Hoffberg Steven M | Internet appliance system and method |
| US6763467B1 (en) | 1999-02-03 | 2004-07-13 | Cybersoft, Inc. | Network traffic intercepting method and system |
| US7197639B1 (en) * | 1999-02-05 | 2007-03-27 | Rsa Security Inc. | Cryptographic countermeasures against connection depletion attacks |
| JP3779837B2 (ja) * | 1999-02-22 | 2006-05-31 | 松下電器産業株式会社 | コンピュータ及びプログラム記録媒体 |
| US6766305B1 (en) * | 1999-03-12 | 2004-07-20 | Curl Corporation | Licensing system and method for freely distributed information |
| US20020019814A1 (en) * | 2001-03-01 | 2002-02-14 | Krishnamurthy Ganesan | Specifying rights in a digital rights license according to events |
| US6973444B1 (en) * | 1999-03-27 | 2005-12-06 | Microsoft Corporation | Method for interdependently validating a digital content package and a corresponding digital license |
| CA2365245C (en) * | 1999-03-31 | 2008-12-09 | British Telecommunications Public Limited Company | Server computer for guaranteeing files integrity |
| US6557105B1 (en) * | 1999-04-14 | 2003-04-29 | Tut Systems, Inc. | Apparatus and method for cryptographic-based license management |
| US6389537B1 (en) | 1999-04-23 | 2002-05-14 | Intel Corporation | Platform and method for assuring integrity of trusted agent communications |
| US6697948B1 (en) * | 1999-05-05 | 2004-02-24 | Michael O. Rabin | Methods and apparatus for protecting information |
| US6442559B1 (en) * | 1999-06-22 | 2002-08-27 | Microsoft Corporation | Dynamic SKU management |
| US6658567B1 (en) * | 1999-06-25 | 2003-12-02 | Geomechanics International, Inc. | Method and logic for locking geological data and an analyzer program that analyzes the geological data |
| US6578145B1 (en) * | 1999-06-29 | 2003-06-10 | Gilbarco Inc. | Methods and systems for securely communicating personal identification number information between a security module and a plurality of secure keypad devices |
| US7243236B1 (en) | 1999-07-29 | 2007-07-10 | Intertrust Technologies Corp. | Systems and methods for using cryptography to protect secure and insecure computing environments |
| US7430670B1 (en) | 1999-07-29 | 2008-09-30 | Intertrust Technologies Corp. | Software self-defense systems and methods |
| US6684389B1 (en) * | 1999-08-05 | 2004-01-27 | Canon Kabushiki Kaisha | Compiler that decrypts encrypted source code |
| EP1076279A1 (en) * | 1999-08-13 | 2001-02-14 | Hewlett-Packard Company | Computer platforms and their methods of operation |
| US6757831B1 (en) * | 1999-08-18 | 2004-06-29 | Sun Microsystems, Inc. | Logic block used to check instruction buffer configuration |
| US6675298B1 (en) * | 1999-08-18 | 2004-01-06 | Sun Microsystems, Inc. | Execution of instructions using op code lengths longer than standard op code lengths to encode data |
| US7181014B1 (en) | 1999-09-10 | 2007-02-20 | Cisco Technology, Inc. | Processing method for key exchange among broadcast or multicast groups that provides a more efficient substitute for Diffie-Hellman key exchange |
| US7260716B1 (en) | 1999-09-29 | 2007-08-21 | Cisco Technology, Inc. | Method for overcoming the single point of failure of the central group controller in a binary tree group key exchange approach |
| US7103185B1 (en) | 1999-12-22 | 2006-09-05 | Cisco Technology, Inc. | Method and apparatus for distributing and updating private keys of multicast group managers using directory replication |
| US7434046B1 (en) | 1999-09-10 | 2008-10-07 | Cisco Technology, Inc. | Method and apparatus providing secure multicast group communication |
| US6987855B1 (en) * | 1999-09-10 | 2006-01-17 | Cisco Technology, Inc. | Operational optimization of a shared secret Diffie-Hellman key exchange among broadcast or multicast groups |
| US6684331B1 (en) | 1999-12-22 | 2004-01-27 | Cisco Technology, Inc. | Method and apparatus for distributing and updating group controllers over a wide area network using a tree structure |
| US7013389B1 (en) | 1999-09-29 | 2006-03-14 | Cisco Technology, Inc. | Method and apparatus for creating a secure communication channel among multiple event service nodes |
| US20080082446A1 (en) * | 1999-10-01 | 2008-04-03 | Hicks Christian B | Remote Authorization for Unlocking Electronic Data System and Method |
| US7734457B2 (en) * | 1999-10-16 | 2010-06-08 | Computer Associates Think, Inc. | Method and system for generating dynamic comparison models |
| DE19950249C1 (de) * | 1999-10-18 | 2001-02-01 | Siemens Ag | Elektronisches Gerät mit Softwareschutz |
| AU7895900A (en) * | 1999-10-20 | 2001-04-30 | George J Tomko | System and method for secure data handling over a network |
| US7039713B1 (en) * | 1999-11-09 | 2006-05-02 | Microsoft Corporation | System and method of user authentication for network communication through a policy agent |
| US7047411B1 (en) | 1999-12-17 | 2006-05-16 | Microsoft Corporation | Server for an electronic distribution system and method of operating same |
| US6970849B1 (en) | 1999-12-17 | 2005-11-29 | Microsoft Corporation | Inter-server communication using request with encrypted parameter |
| US6996720B1 (en) * | 1999-12-17 | 2006-02-07 | Microsoft Corporation | System and method for accessing protected content in a rights-management architecture |
| US6944765B1 (en) * | 1999-12-21 | 2005-09-13 | Qualcomm, Inc. | Method of authentication anonymous users while reducing potential for “middleman” fraud |
| US7055175B1 (en) * | 2000-01-06 | 2006-05-30 | International Business Machines Corporation | Method and system for generating and using a virus free file certificate integrated within a file |
| US7089211B1 (en) * | 2000-01-12 | 2006-08-08 | Cisco Technology, Inc. | Directory enabled secure multicast group communications |
| US6895501B1 (en) | 2000-03-13 | 2005-05-17 | Wrq, Inc. | Method and apparatus for distributing, interpreting, and storing heterogeneous certificates in a homogenous public key infrastructure |
| US6687825B1 (en) | 2000-03-17 | 2004-02-03 | International Business Machines Corporation | Data processing system and method for protecting data in a hard drive utilizing a signature device |
| US20010044820A1 (en) * | 2000-04-06 | 2001-11-22 | Scott Adam Marc | Method and system for website content integrity assurance |
| SG103257A1 (en) * | 2000-04-13 | 2004-04-29 | Kent Ridge Digital Labs | Private retrieval of digital objects |
| AU5350101A (en) * | 2000-04-14 | 2001-10-30 | Next Level Comm | Method and apparatus for test and verification of field and terminal equipment |
| US6993149B2 (en) * | 2001-09-25 | 2006-01-31 | Digimarc Corporation | Embedding digital watermarks in spot colors |
| US7493486B1 (en) * | 2000-06-09 | 2009-02-17 | Verizon Laboratories, Inc. | Method and apparatus for supporting cryptographic-related activities in a public key infrastructure |
| US7020776B2 (en) * | 2000-06-22 | 2006-03-28 | Microsoft Corporation | Cryptosystem based on a Jacobian of a curve |
| US7539875B1 (en) | 2000-06-27 | 2009-05-26 | Microsoft Corporation | Secure repository with layers of tamper resistance and system and method for providing same |
| US7017189B1 (en) | 2000-06-27 | 2006-03-21 | Microsoft Corporation | System and method for activating a rendering device in a multi-level rights-management architecture |
| US6981262B1 (en) | 2000-06-27 | 2005-12-27 | Microsoft Corporation | System and method for client interaction in a multi-level rights-management architecture |
| US7051200B1 (en) | 2000-06-27 | 2006-05-23 | Microsoft Corporation | System and method for interfacing a software process to secure repositories |
| US7158953B1 (en) | 2000-06-27 | 2007-01-02 | Microsoft Corporation | Method and system for limiting the use of user-specific software features |
| US6891953B1 (en) | 2000-06-27 | 2005-05-10 | Microsoft Corporation | Method and system for binding enhanced software features to a persona |
| US7171692B1 (en) | 2000-06-27 | 2007-01-30 | Microsoft Corporation | Asynchronous communication within a server arrangement |
| US7225159B2 (en) * | 2000-06-30 | 2007-05-29 | Microsoft Corporation | Method for authenticating and securing integrated bookstore entries |
| US20020046045A1 (en) * | 2000-06-30 | 2002-04-18 | Attila Narin | Architecture for an electronic shopping service integratable with a software application |
| US6941457B1 (en) | 2000-06-30 | 2005-09-06 | Cisco Technology, Inc. | Establishing a new shared secret key over a broadcast channel for a multicast group based on an old shared secret key |
| EP2278429B1 (en) | 2000-09-21 | 2014-03-12 | BlackBerry Limited | Software code signing system and method |
| US7024554B1 (en) * | 2000-09-29 | 2006-04-04 | Mindspeed Technologies, Inc. | Systems and methods that authorize target devices utilizing proprietary software and/or hardware |
| US6971023B1 (en) * | 2000-10-03 | 2005-11-29 | Mcafee, Inc. | Authorizing an additional computer program module for use with a core computer program |
| US7395549B1 (en) | 2000-10-17 | 2008-07-01 | Sun Microsystems, Inc. | Method and apparatus for providing a key distribution center without storing long-term server secrets |
| US9251647B2 (en) * | 2000-10-19 | 2016-02-02 | Igt | Remote configuration of gaming terminals |
| US20040180721A1 (en) * | 2000-12-21 | 2004-09-16 | Igt | Gaming terminal data repository and information distribution system |
| US8636596B2 (en) | 2000-11-04 | 2014-01-28 | Igt | Dynamic player notices for operational changes in gaming machines |
| US8556698B2 (en) | 2000-10-19 | 2013-10-15 | Igt | Executing multiple applications and their variations in computing environments |
| US6645077B2 (en) * | 2000-10-19 | 2003-11-11 | Igt | Gaming terminal data repository and information distribution system |
| US6850161B1 (en) * | 2000-10-23 | 2005-02-01 | Verizon Corporate Services Group Inc. | Systems and methods for identifying and mapping conduit location |
| US6889209B1 (en) * | 2000-11-03 | 2005-05-03 | Shieldip, Inc. | Method and apparatus for protecting information and privacy |
| US7224806B2 (en) * | 2000-11-13 | 2007-05-29 | Thomson Licensing | Threshold cryptography scheme for conditional access systems |
| US7100045B2 (en) * | 2000-11-22 | 2006-08-29 | Kabushiki Kaisha Toshiba | System, method, and program for ensuring originality |
| US6948065B2 (en) | 2000-12-27 | 2005-09-20 | Intel Corporation | Platform and method for securely transmitting an authorization secret |
| US7186181B2 (en) * | 2001-02-02 | 2007-03-06 | Igt | Wide area program distribution and game information communication system |
| US20020112162A1 (en) * | 2001-02-13 | 2002-08-15 | Cocotis Thomas Andrew | Authentication and verification of Web page content |
| US20020144121A1 (en) * | 2001-03-30 | 2002-10-03 | Ellison Carl M. | Checking file integrity using signature generated in isolated execution |
| US7096497B2 (en) | 2001-03-30 | 2006-08-22 | Intel Corporation | File checking using remote signing authority via a network |
| US7580988B2 (en) * | 2001-04-05 | 2009-08-25 | Intertrust Technologies Corporation | System and methods for managing the distribution of electronic content |
| US7188342B2 (en) * | 2001-04-20 | 2007-03-06 | Microsoft Corporation | Server controlled branding of client software deployed over computer networks |
| US7099663B2 (en) * | 2001-05-31 | 2006-08-29 | Qualcomm Inc. | Safe application distribution and execution in a wireless environment |
| GB2376389A (en) * | 2001-06-04 | 2002-12-11 | Hewlett Packard Co | Packaging evidence for long term validation |
| US20020191785A1 (en) * | 2001-06-14 | 2002-12-19 | International Business Machines Corporation | Apparatus and method for encrypting and decrypting data with incremental data validation |
| US7343297B2 (en) * | 2001-06-15 | 2008-03-11 | Microsoft Corporation | System and related methods for managing and enforcing software licenses |
| US7000115B2 (en) * | 2001-06-19 | 2006-02-14 | International Business Machines Corporation | Method and apparatus for uniquely and authoritatively identifying tangible objects |
| US7287156B2 (en) * | 2001-06-29 | 2007-10-23 | International Business Machines Corporation | Methods, systems and computer program products for authentication between clients and servers using differing authentication protocols |
| US20030005327A1 (en) * | 2001-06-29 | 2003-01-02 | Julian Durand | System for protecting copyrighted materials |
| US7137000B2 (en) * | 2001-08-24 | 2006-11-14 | Zih Corp. | Method and apparatus for article authentication |
| US20030061947A1 (en) * | 2001-10-01 | 2003-04-03 | Hohberger Clive P. | Method and apparatus for associating on demand certain selected media and value-adding elements |
| JPWO2003036866A1 (ja) * | 2001-10-23 | 2005-02-17 | 松下電器産業株式会社 | 情報処理装置 |
| JP2003141267A (ja) * | 2001-11-05 | 2003-05-16 | Sony Corp | 通信教育システム及び通信教育方法 |
| US7334125B1 (en) | 2001-11-27 | 2008-02-19 | Cisco Technology, Inc. | Facilitating secure communications among multicast nodes in a telecommunications network |
| US7346781B2 (en) * | 2001-12-06 | 2008-03-18 | Mcafee, Inc. | Initiating execution of a computer program from an encrypted version of a computer program |
| US20030120923A1 (en) * | 2001-12-21 | 2003-06-26 | Avaya Technology Corp. | Secure data authentication apparatus |
| US7400729B2 (en) * | 2001-12-28 | 2008-07-15 | Intel Corporation | Secure delivery of encrypted digital content |
| JP2003244138A (ja) * | 2002-02-18 | 2003-08-29 | Fujitsu Ltd | 原本作成装置及び原本性保証装置 |
| SG115453A1 (en) * | 2002-02-27 | 2005-10-28 | Oneempower Pte Ltd | Activity management method |
| US20030167407A1 (en) * | 2002-03-01 | 2003-09-04 | Brett Howard | Authenticated file loader |
| US7487365B2 (en) * | 2002-04-17 | 2009-02-03 | Microsoft Corporation | Saving and retrieving data based on symmetric key encryption |
| US7890771B2 (en) | 2002-04-17 | 2011-02-15 | Microsoft Corporation | Saving and retrieving data based on public key encryption |
| CA2483605A1 (en) * | 2002-05-02 | 2003-11-13 | David Molnar | Method and apparatus for protecting information and privacy |
| US8438392B2 (en) * | 2002-06-20 | 2013-05-07 | Krimmeni Technologies, Inc. | Method and system for control of code execution on a general purpose computing device and control of code execution in a recursive security protocol |
| US7203844B1 (en) | 2002-06-20 | 2007-04-10 | Oxford William V | Method and system for a recursive security protocol for digital copyright control |
| US7803052B2 (en) * | 2002-06-28 | 2010-09-28 | Microsoft Corporation | Discovery and distribution of game session information |
| US7979712B2 (en) * | 2002-07-01 | 2011-07-12 | International Business Machines Corporation | Network system, server and information terminal for list matching |
| US7093119B2 (en) | 2002-07-16 | 2006-08-15 | International Business Machines Corporation | Methods and computer program products for protecting source code of an interpreted programming language |
| US8393001B1 (en) | 2002-07-26 | 2013-03-05 | Mcafee, Inc. | Secure signature server system and associated method |
| JP4200067B2 (ja) * | 2002-08-30 | 2008-12-24 | 株式会社リコー | 画像処理装置、画像処理方法、及び画像処理プログラム |
| US20040059922A1 (en) * | 2002-09-20 | 2004-03-25 | Harris Rodney C. | Continuous voice recognition for user authentication by a digital transmitting device |
| US20040260947A1 (en) * | 2002-10-21 | 2004-12-23 | Brady Gerard Anthony | Methods and systems for analyzing security events |
| WO2004053666A1 (ja) * | 2002-12-11 | 2004-06-24 | Interlex Inc. | ソフトウェア実行制御システム及びソフトウェアの実行制御プログラム |
| US7305564B2 (en) * | 2002-12-19 | 2007-12-04 | International Business Machines Corporation | System and method to proactively detect software tampering |
| US7069245B2 (en) * | 2003-02-06 | 2006-06-27 | Business Wire | Simultaneous network news distribution |
| US7370212B2 (en) | 2003-02-25 | 2008-05-06 | Microsoft Corporation | Issuing a publisher use license off-line in a digital rights management (DRM) system |
| US20040235563A1 (en) * | 2003-02-26 | 2004-11-25 | Blackburn Christopher W. | Game update service in a service-oriented gaming network environment |
| US6965968B1 (en) | 2003-02-27 | 2005-11-15 | Finjan Software Ltd. | Policy-based caching |
| US8308567B2 (en) * | 2003-03-05 | 2012-11-13 | Wms Gaming Inc. | Discovery service in a service-oriented gaming network environment |
| US20040242328A1 (en) * | 2003-03-05 | 2004-12-02 | Blackburn Christopher W. | Boot service in a service-oriented gaming network environment |
| US20040243849A1 (en) * | 2003-03-06 | 2004-12-02 | Blackburn Christopher W. | Authorization service in a service-oriented gaming network environment |
| US20040243848A1 (en) * | 2003-03-06 | 2004-12-02 | Blackburn Christopher W. | Authentication service in a service-oriented gaming network environment |
| US20030177051A1 (en) * | 2003-03-13 | 2003-09-18 | Robin Driscoll | Method and system for managing worker resources |
| US20040242331A1 (en) * | 2003-03-17 | 2004-12-02 | Blackburn Christopher W. | Time service in a service-oriented gaming network environment |
| US20040266532A1 (en) * | 2003-03-27 | 2004-12-30 | Blackburn Christopher W. | Event management service in a service-oriented gaming network environment |
| US7352878B2 (en) * | 2003-04-15 | 2008-04-01 | Digimarc Corporation | Human perceptual model applied to rendering of watermarked signals |
| US20040266523A1 (en) * | 2003-04-16 | 2004-12-30 | Gentles Thomas A | Secured networks in a gaming system environment |
| CA2464788A1 (en) * | 2003-04-16 | 2004-10-16 | Wms Gaming Inc. | A gaming software distribution network in a gaming system environment |
| US20040259640A1 (en) * | 2003-04-16 | 2004-12-23 | Gentles Thomas A. | Layered security methods and apparatus in a gaming system environment |
| CA2464797A1 (en) * | 2003-04-16 | 2004-10-16 | Wms Gaming Inc. | Remote authentication of gaming software in a gaming system environment |
| US20050227768A1 (en) * | 2003-05-27 | 2005-10-13 | Blackburn Christopher W | Gaming network environment having a language translation service |
| US7012520B2 (en) | 2003-06-17 | 2006-03-14 | Infraegis, Inc. | Global intelligent remote detection system |
| CA2546409C (en) * | 2003-06-17 | 2016-02-02 | Intelagents, Inc. | System and method for monitoring and detecting a security threat |
| US20050002533A1 (en) * | 2003-07-01 | 2005-01-06 | Langin-Hooper Jerry Joe | Fully secure message transmission over non-secure channels without cryptographic key exchange |
| EP1647021A2 (en) * | 2003-07-11 | 2006-04-19 | Koninklijke Philips Electronics N.V. | Watermark embedding and detection |
| EP1652074A4 (en) * | 2003-07-11 | 2008-08-13 | Computer Ass Think Inc | ADJUNCTION TO A TOOL FOR MODELING OBJECTS DEFINED BY A USER |
| US20050038751A1 (en) * | 2003-08-15 | 2005-02-17 | Gaetano Arthur Louis | System and method for software site licensing |
| US8738535B2 (en) * | 2003-08-15 | 2014-05-27 | Inter-Tel (DE) Inc | System and method for software site licensing |
| US20050071656A1 (en) * | 2003-09-25 | 2005-03-31 | Klein Dean A. | Secure processor-based system and method |
| EP1671201B1 (de) * | 2003-09-30 | 2008-08-06 | Siemens Aktiengesellschaft | Einräumung eines zugriffs auf ein computerbasiertes objekt |
| US7516147B2 (en) * | 2003-10-23 | 2009-04-07 | Sumisho Computer Systems Corporation | URL system and method for licensing content |
| JP2005167977A (ja) * | 2003-11-14 | 2005-06-23 | Ricoh Co Ltd | 製品正当性検証システム、正当性検証対象の装置、製品正当性検証方法及び固有情報提供方法 |
| US7802085B2 (en) | 2004-02-18 | 2010-09-21 | Intel Corporation | Apparatus and method for distributing private keys to an entity with minimal secret, unique information |
| FR2866451B1 (fr) * | 2004-02-18 | 2008-02-29 | Cit Alcatel | Procede et dispositif de transformation d'un systeme d'exploitation en vue de la protection d'un programme informatique contre des intrusions exterieures |
| JP2005293109A (ja) * | 2004-03-31 | 2005-10-20 | Canon Inc | ソフトウェア実行管理装置、ソフトウェア実行管理方法、及び制御プログラム |
| US7287159B2 (en) * | 2004-04-01 | 2007-10-23 | Shieldip, Inc. | Detection and identification methods for software |
| US20060242406A1 (en) | 2005-04-22 | 2006-10-26 | Microsoft Corporation | Protected computing environment |
| US7693286B2 (en) * | 2004-07-14 | 2010-04-06 | Intel Corporation | Method of delivering direct proof private keys in signed groups to devices using a distribution CD |
| US8347078B2 (en) | 2004-10-18 | 2013-01-01 | Microsoft Corporation | Device certificate individualization |
| US8200476B2 (en) * | 2004-11-04 | 2012-06-12 | Avaya Inc. | Message file editing process |
| US7694153B2 (en) * | 2004-11-15 | 2010-04-06 | Microsoft Corporation | Changing product behavior in accordance with license |
| US8336085B2 (en) | 2004-11-15 | 2012-12-18 | Microsoft Corporation | Tuning product policy using observed evidence of customer behavior |
| US8176564B2 (en) | 2004-11-15 | 2012-05-08 | Microsoft Corporation | Special PC mode entered upon detection of undesired state |
| US8924728B2 (en) * | 2004-11-30 | 2014-12-30 | Intel Corporation | Apparatus and method for establishing a secure session with a device without exposing privacy-sensitive information |
| US20080288786A1 (en) * | 2004-12-20 | 2008-11-20 | Michael Stephen Fiske | System with access keys |
| US8438645B2 (en) | 2005-04-27 | 2013-05-07 | Microsoft Corporation | Secure clock with grace periods |
| JP4727278B2 (ja) * | 2005-04-05 | 2011-07-20 | 株式会社エヌ・ティ・ティ・ドコモ | アプリケーションプログラム検証システム、アプリケーションプログラム検証方法およびコンピュータプログラム |
| US8725646B2 (en) | 2005-04-15 | 2014-05-13 | Microsoft Corporation | Output protection levels |
| US9436804B2 (en) | 2005-04-22 | 2016-09-06 | Microsoft Technology Licensing, Llc | Establishing a unique session key using a hardware functionality scan |
| US8151112B2 (en) * | 2005-04-22 | 2012-04-03 | Gerard Lin | Deliver-upon-request secure electronic message system |
| US9363481B2 (en) | 2005-04-22 | 2016-06-07 | Microsoft Technology Licensing, Llc | Protected media pipeline |
| US20060265758A1 (en) | 2005-05-20 | 2006-11-23 | Microsoft Corporation | Extensible media rights |
| US20060271493A1 (en) * | 2005-05-24 | 2006-11-30 | Contentguard Holdings, Inc. | Method and apparatus for executing code in accordance with usage rights |
| AU2006254715B2 (en) * | 2005-05-31 | 2010-05-13 | Aristocrat Technologies Australia Pty Ltd | Password entry system |
| US8353046B2 (en) * | 2005-06-08 | 2013-01-08 | Microsoft Corporation | System and method for delivery of a modular operating system |
| US8132005B2 (en) * | 2005-07-07 | 2012-03-06 | Nokia Corporation | Establishment of a trusted relationship between unknown communication parties |
| US7698227B1 (en) * | 2005-07-14 | 2010-04-13 | Sun Microsystems, Inc. | System and method for providing traceable acknowledgement of a digital data distribution license |
| US20070016770A1 (en) * | 2005-07-18 | 2007-01-18 | Dell Products L.P. | System and method for managing the initiation of software programs in an information handling system |
| US20100203960A1 (en) * | 2005-07-20 | 2010-08-12 | Wms Gaming Inc. | Wagering game with encryption and authentication |
| GB0516471D0 (en) * | 2005-08-10 | 2005-09-14 | Symbian Software Ltd | Protected software identifiers for improving security in a computing device |
| US20070056035A1 (en) * | 2005-08-16 | 2007-03-08 | Drew Copley | Methods and systems for detection of forged computer files |
| WO2007020566A1 (en) * | 2005-08-19 | 2007-02-22 | Nxp B.V. | Circuit arrangement for and method of performing an inversion operation in a cryptographic calculation |
| CN101243389A (zh) * | 2005-08-19 | 2008-08-13 | Nxp股份有限公司 | 用于rsa密钥产生的电路装置和方法 |
| US8682795B2 (en) * | 2005-09-16 | 2014-03-25 | Oracle International Corporation | Trusted information exchange based on trust agreements |
| US8340289B2 (en) | 2005-09-29 | 2012-12-25 | Research In Motion Limited | System and method for providing an indication of randomness quality of random number data generated by a random data service |
| US7797545B2 (en) * | 2005-09-29 | 2010-09-14 | Research In Motion Limited | System and method for registering entities for code signing services |
| US8874477B2 (en) | 2005-10-04 | 2014-10-28 | Steven Mark Hoffberg | Multifactorial optimization system and method |
| US7953225B2 (en) * | 2005-10-21 | 2011-05-31 | Harris Corporation | Mobile wireless communications device with software installation and verification features and related methods |
| JP4556857B2 (ja) * | 2005-12-07 | 2010-10-06 | セイコーエプソン株式会社 | 情報配信装置、情報配信装置の制御方法および制御プログラム |
| US8818897B1 (en) * | 2005-12-15 | 2014-08-26 | Rockstar Consortium Us Lp | System and method for validation and enforcement of application security |
| US20070152854A1 (en) * | 2005-12-29 | 2007-07-05 | Drew Copley | Forgery detection using entropy modeling |
| US7499552B2 (en) * | 2006-01-11 | 2009-03-03 | International Business Machines Corporation | Cipher method and system for verifying a decryption of an encrypted user data key |
| US8185576B2 (en) | 2006-03-14 | 2012-05-22 | Altnet, Inc. | Filter for a distributed network |
| US8014530B2 (en) | 2006-03-22 | 2011-09-06 | Intel Corporation | Method and apparatus for authenticated, recoverable key distribution with no database secrets |
| US20070294181A1 (en) * | 2006-05-22 | 2007-12-20 | Saurabh Chheda | Flexible digital rights management with secure snippets |
| EP1879122A1 (en) * | 2006-07-10 | 2008-01-16 | ABB Research Ltd | Method and devices for verifying authenticity of a called code module |
| US8311650B2 (en) * | 2006-07-13 | 2012-11-13 | Mitsubishi Electric Corporation | Equipment management system, programmable controller and centralized controller |
| US8172686B2 (en) | 2006-08-08 | 2012-05-08 | Wms Gaming Inc. | Configurable wagering game manager |
| GB2443863B (en) * | 2006-10-30 | 2011-05-11 | Hewlett Packard Development Co | Method and system for generating data transaction id |
| CN101226569A (zh) * | 2007-01-19 | 2008-07-23 | 国际商业机器公司 | 在虚拟机中验证代码模块的方法及装置 |
| US8682800B2 (en) * | 2007-01-30 | 2014-03-25 | Microsoft Corporation | Controlling access to technology based upon authorization |
| US8422674B2 (en) | 2007-05-29 | 2013-04-16 | International Business Machines Corporation | Application-specific secret generation |
| US8433927B2 (en) | 2007-05-29 | 2013-04-30 | International Business Machines Corporation | Cryptographically-enabled privileged mode execution |
| US8332635B2 (en) | 2007-05-29 | 2012-12-11 | International Business Machines Corporation | Updateable secure kernel extensions |
| CA2591280A1 (en) * | 2007-06-12 | 2008-12-12 | Nikolajs Volkova | A new digital signature scheme |
| US7974409B2 (en) * | 2007-06-28 | 2011-07-05 | Samsung Electronics Co., Ltd. | Changing the order of public key cryptographic computations |
| US8332636B2 (en) * | 2007-10-02 | 2012-12-11 | International Business Machines Corporation | Secure policy differentiation by secure kernel design |
| FR2922702B1 (fr) | 2007-10-17 | 2010-02-26 | Airbus France | Securisation de fichiers informatiques telechargeables sur un aeronef basee sur l'identite d'entites, procede d'authenfication, systeme et aeronef associes |
| US10013536B2 (en) * | 2007-11-06 | 2018-07-03 | The Mathworks, Inc. | License activation and management |
| CN101593257B (zh) * | 2008-05-27 | 2011-02-16 | 北京飞天诚信科技有限公司 | 基于.Net虚拟机的软件保护系统和方法 |
| US20090313171A1 (en) * | 2008-06-17 | 2009-12-17 | Microsoft Corporation | Electronic transaction verification |
| CN101436141B (zh) * | 2008-11-21 | 2012-07-18 | 深圳创维数字技术股份有限公司 | 基于数字签名的固件升级、固件封装方法与装置 |
| TWI412941B (zh) * | 2008-11-25 | 2013-10-21 | Inst Information Industry | 產生及驗證一訊息之一語音簽章之裝置、方法及其電腦程式產品 |
| US9135434B2 (en) * | 2010-04-19 | 2015-09-15 | Appcentral, Inc. | System and method for third party creation of applications for mobile appliances |
| JP2012088765A (ja) * | 2010-10-15 | 2012-05-10 | Hitachi Solutions Ltd | プログラム起動制御方法、プログラム起動制御プログラム、携帯端末、ネットワークシステム |
| US9152779B2 (en) | 2011-01-16 | 2015-10-06 | Michael Stephen Fiske | Protecting codes, keys and user credentials with identity and patterns |
| US8732831B2 (en) | 2011-07-14 | 2014-05-20 | AVG Netherlands B.V. | Detection of rogue software applications |
| US9098678B2 (en) * | 2011-09-15 | 2015-08-04 | Verizon Patent And Licensing Inc. | Streaming video authentication |
| US9098696B2 (en) * | 2011-10-25 | 2015-08-04 | Raytheon Company | Appliqué providing a secure deployment environment (SDE) for a wireless communications device |
| WO2013142517A1 (en) | 2012-03-20 | 2013-09-26 | Krimmeni Technologies, Inc. | Method and system for process working set isolation |
| US9256765B2 (en) * | 2012-06-29 | 2016-02-09 | Kip Sign P1 Lp | System and method for identifying software changes |
| US9323951B2 (en) | 2013-03-13 | 2016-04-26 | International Business Machines Corporation | Encrypted warranty verification and diagnostic tool |
| EP3197089B1 (en) * | 2014-11-06 | 2019-08-07 | Huawei Technologies Co., Ltd. | Secure information configuration method, secure authentication method and related chip |
| US11403685B2 (en) * | 2016-10-17 | 2022-08-02 | Blackberry Limited | Automatic distribution of licenses for a third-party service operating in association with a licensed first-party service |
| US10262127B2 (en) | 2017-04-05 | 2019-04-16 | General Electric Company | Systems and method for securely sharing and executing data and models |
| US10706164B2 (en) * | 2017-09-29 | 2020-07-07 | Intel Corporation | Crypto-enforced capabilities for isolation |
| US10574451B2 (en) * | 2017-10-19 | 2020-02-25 | Bank Of America Corporation | Method and apparatus for perfect forward secrecy using deterministic hierarchy |
| TWI643160B (zh) * | 2017-11-16 | 2018-12-01 | 國立臺北科技大學 | 利用權重參數與餘數定義隱寫資料於區塊截斷編碼影像的方法、影像壓縮裝置及電腦可讀取的記錄媒體 |
| KR101979323B1 (ko) * | 2017-12-18 | 2019-05-15 | 주식회사 캐드서브 | 소프트웨어 저작권 인증 관리 방법 |
| US20190236269A1 (en) * | 2018-01-31 | 2019-08-01 | International Business Machines Corporation | Detecting third party software elements |
| US11050735B2 (en) | 2018-08-23 | 2021-06-29 | International Business Machines Corporation | Customizable authentication system |
| US11562073B2 (en) | 2018-11-28 | 2023-01-24 | The Boeing Company | Systems and methods of software load verification |
| US10951404B1 (en) * | 2020-06-09 | 2021-03-16 | Quantropi Inc. | Methods and systems for digital message encoding and signing |
| FR3113963B1 (fr) | 2020-09-10 | 2023-06-30 | Thales Sa | Chaine de confiance avancee en aeronautique domaine de l'invention |
| WO2022187959A1 (en) | 2021-03-10 | 2022-09-15 | Quantropi Inc. | Quantum-safe cryptographic methods and systems |
| US12192318B2 (en) | 2021-03-10 | 2025-01-07 | Quantropi Inc. | Quantum-safe cryptographic method and system |
| US20230403147A1 (en) | 2021-08-03 | 2023-12-14 | Mohammed Alawi E GEOFFREY | Methods and systems for verification method to validate documents |
| CN116668507A (zh) * | 2022-02-21 | 2023-08-29 | 腾讯科技(深圳)有限公司 | 网络连接方法、装置、设备及存储介质 |
| CN119004409B (zh) * | 2024-10-23 | 2025-03-04 | 北京中恒利华石油技术研究所 | 一种基于有限随机加密的离线软件许可加解密方法及系统 |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4670857A (en) * | 1981-10-26 | 1987-06-02 | Rackman Michael I | Cartridge-controlled system whose use is limited to authorized cartridges |
| US4558176A (en) * | 1982-09-20 | 1985-12-10 | Arnold Mark G | Computer systems to inhibit unauthorized copying, unauthorized usage, and automated cracking of protected software |
| EP0175487A3 (en) * | 1984-08-23 | 1989-03-08 | Btg International Limited | Software protection device |
| US4868877A (en) * | 1988-02-12 | 1989-09-19 | Fischer Addison M | Public key/signature cryptosystem with enhanced digital signature certification |
| US5343527A (en) * | 1993-10-27 | 1994-08-30 | International Business Machines Corporation | Hybrid encryption method and system for protecting reusable software components |
-
1994
- 1994-06-10 US US08/258,244 patent/US5724425A/en not_active Expired - Lifetime
-
1995
- 1995-05-31 EP EP95303720A patent/EP0686906B1/en not_active Expired - Lifetime
- 1995-05-31 DE DE69534212T patent/DE69534212T8/de not_active Expired - Fee Related
- 1995-06-12 JP JP7144507A patent/JPH08166879A/ja active Pending
Cited By (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH1124919A (ja) * | 1997-06-20 | 1999-01-29 | Internatl Business Mach Corp <Ibm> | 安全な記憶領域でアプリケーション・データを保護する方法及び装置 |
| US6175924B1 (en) | 1997-06-20 | 2001-01-16 | International Business Machines Corp. | Method and apparatus for protecting application data in secure storage areas |
| KR100309535B1 (ko) * | 1997-06-20 | 2001-11-15 | 포만 제프리 엘 | 보안저장영역에서애플리케이션데이터의보호방법및장치 |
| JP2001517822A (ja) * | 1997-09-19 | 2001-10-09 | パク,ヒョ,ジョーン | 独立的ソフトウェア登録サーバを利用したソフトウェア使用権管理システム |
| JP2000148469A (ja) * | 1998-06-29 | 2000-05-30 | Sun Microsyst Inc | モジュラ―アプリケ―ション間のサ―ビスへのアクセス制御 |
| JP2000347846A (ja) * | 1999-03-03 | 2000-12-15 | Nokia Mobile Phones Ltd | サーバから端末にソフトウェアをダウンロードするための方法および電話システム |
| JP2003526965A (ja) * | 1999-05-17 | 2003-09-09 | ウェイヴ システムズ コーポレイション | 公開暗号制御ユニット及びそのシステム |
| US6948072B2 (en) | 2000-03-03 | 2005-09-20 | Sony Computer Entertainment Inc. | Information processing device and record medium |
| JP2007508613A (ja) * | 2003-10-13 | 2007-04-05 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | アプリケーション毎の記憶領域割当て |
| JP2005182592A (ja) * | 2003-12-22 | 2005-07-07 | Yokogawa Electric Corp | 実行ライセンス管理装置とそれを内蔵したコントローラ |
| JP2009199236A (ja) * | 2008-02-20 | 2009-09-03 | Ricoh Co Ltd | 画像処理装置、認証パッケージインストール方法、認証パッケージインストールプログラム、及び記録媒体 |
| JP2012137963A (ja) * | 2010-12-27 | 2012-07-19 | Nec Corp | コンテンツ管理システム、管理サーバ、コンテンツ管理方法、及びプログラム |
Also Published As
| Publication number | Publication date |
|---|---|
| EP0686906B1 (en) | 2005-05-18 |
| DE69534212T2 (de) | 2006-01-12 |
| DE69534212T8 (de) | 2006-04-27 |
| EP0686906A3 (en) | 1997-08-06 |
| EP0686906A2 (en) | 1995-12-13 |
| US5724425A (en) | 1998-03-03 |
| DE69534212D1 (de) | 2005-06-23 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH08166879A (ja) | 提供用ソフトウェアの安全性強化方法及び装置 | |
| US5935246A (en) | Electronic copy protection mechanism using challenge and response to prevent unauthorized execution of software | |
| JP4746233B2 (ja) | データの使用を制限するトラステッドコンピューティングプラットフォーム | |
| US5991399A (en) | Method for securely distributing a conditional use private key to a trusted entity on a remote system | |
| CN1842757B (zh) | 用于增量代码签署的方法和装置 | |
| US7302585B1 (en) | System for providing a trustworthy user interface | |
| JP4860856B2 (ja) | コンピュータ装置 | |
| US6973570B1 (en) | Integrated circuit comprising encryption circuitry selectively enabled by verifying a device | |
| US20050060568A1 (en) | Controlling access to data | |
| US20040003248A1 (en) | Protection of web pages using digital signatures | |
| CN113268715A (zh) | 软件加密方法、装置、设备及存储介质 | |
| US20060064488A1 (en) | Electronic software distribution method and system using a digital rights management method based on hardware identification | |
| JP2005522802A (ja) | 改竄防止ハードウェアを使用してコピー保護およびオンラインセキュリティを提供するための方法ならびにシステム | |
| JP2007511810A (ja) | 乱数関数を利用した実行証明 | |
| JP2008536560A (ja) | ハードディスク認証 | |
| Mladenov et al. | 1 trillion dollar refund: How to spoof pdf signatures | |
| KR100561497B1 (ko) | 소프트웨어 보안 인증 경로 | |
| US6651169B1 (en) | Protection of software using a challenge-response protocol embedded in the software | |
| KR101247044B1 (ko) | 디바이스 인증을 위한 하드웨어 기능 스캔 | |
| US7739505B2 (en) | Linking Diffie Hellman with HFS authentication by using a seed | |
| JPH1124916A (ja) | ソフトウェアライセンス管理装置および方法 | |
| WO2025139169A1 (zh) | 基于智能密码钥匙的软件身份校验方法、装置及存储介质 | |
| CN101167299B (zh) | 通过使用一种子链接diffie hellman与hfs认证 | |
| Gallery et al. | Conditional Access in Mobile Systems: Securing the Application. | |
| CN114817956A (zh) | 一种usb通信对象验证方法、系统、装置及存储介质 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20010710 |
|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20010710 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20041005 |
|
| A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20050105 |
|
| A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20050111 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050405 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050405 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20050726 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051024 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051124 |
|
| A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20060207 |
|
| A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20060303 |