図面 (/)

技術 ソフトウェアパッケージを提供する方法ならびにその方法を実現するプロバイダステーションおよびユーザステーション、ならびに基本ソフトウェアパッケージ

出願人 アルカテル−ルーセント
発明者 ロラン・ピータージヨアン・ピーターフイリツプ・スイネンバンサン・ゲール
出願日 1998年3月13日 (22年0ヶ月経過) 出願番号 1998-063569
公開日 1998年11月13日 (21年4ヶ月経過) 公開番号 1998-301774
状態 未査定
技術分野 記憶装置の機密保護 ストアードプログラム制御 ストアードプログラム ストアードプログラムにおける機密保護 ストアードプログラム
主要キーワード ソフトウェアパケット 顧客仕様 キー変数 人口知能 オペレータインタフェース ユーザステーション 復号ソフトウェア インタセプト
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(1998年11月13日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (2)

課題

ソフトウェアパッケージの内容を知られずに、ユーザステーション(US)にインストールするソフトウェアパッケージを提供する。

解決手段

定義済符号化アルゴリズムに従って可読ソース版ソフトウェアパッケージ(PACK.SOURCE)を符号化する段階と、それによって、符号化済ソフトウェアパッケージ(PACK.ENC)を生成する段階と、符号化済ソフトウェアパッケージ(PACK.ENC)を、プロバイダステーション(PS)からユーザステーションへ納入する段階を含む。さらに、符号化済ソフトウェアパッケージ(PACK.ENC)の復号コンパイルを組み合わせた処理のための、基本ソフトウェアパッケージ(BASIS)を提供する段階を含む。

概要

背景

このようなソフトウェアパケットは、たとえば、1995年にベルギーのAlcatel Bellから出版された製品説明書、「NM Expert:Integrated and Intelligent Solutions for Network,Systems and Service Management,Alcatel 1303,NM−Expert ProductDescription P−M−E−75005」に記載されている、ソフトウェアパッケージである。同書には、最新ネットワーク管理システムが述べられている。このネットワーク管理システムは、最も厳しいネットワーク要件および最も厳しい顧客仕様のための、統合インテリジェントネットワーク管理システム構築するためのソフトウェアパッケージである。このソフトウェアパッケージは、異なる種類のハードウェアプラットフォーム、たとえば、SUN Microsystems(サンマクロシステムズ)のRISCマシン、Hewlett Packard(ヒューレットパッカード)マシン、またはIBM(アイビーエム)マシン、および異なる種類のソフトウェアプラットフォーム、たとえばSUN Operating System(サンオペレーティングシステム)、Solaris、Hewlett Packard(ヒューレットパッカード)−UXを所有する顧客に納入される。

上記に述べたような種類のソフトウェアパッケージをプロバイダからユーザに提供するための周知の方法は、たとえば、コンパイルされたソフトウェアパッケージを、たとえばテープで、ユーザのユーザステーションへ納入することである。ユーザステーションにインストールするためのソフトウェアパッケージを提供するこのような方法の利点は、コンパイル済版ソフトウェアパッケージは、人間には読み取れないので、ソフトウェアパッケージの内容がユーザに知られないことである。

概要

ソフトウェアパッケージの内容を知られずに、ユーザステーション(US)にインストールするソフトウェアパッケージを提供する。

定義済符号化アルゴリズムに従って可読ソース版ソフトウェアパッケージ(PACK.SOURCE)を符号化する段階と、それによって、符号化済ソフトウェアパッケージ(PACK.ENC)を生成する段階と、符号化済ソフトウェアパッケージ(PACK.ENC)を、プロバイダステーション(PS)からユーザステーションへ納入する段階を含む。さらに、符号化済ソフトウェアパッケージ(PACK.ENC)の復号とコンパイルを組み合わせた処理のための、基本ソフトウェアパッケージ(BASIS)を提供する段階を含む。

目的

本発明の一目的は、ソフトウェアパッケージの内容を知られずに、ただし、ソフトウェアパッケージが、異なるユーザごとに正確なユーザ環境プロバイダ側再構築するという上述の欠点を持たない、ユーザステーションにインストールするためのソフトウェアパケットを提供する方法を提供することである。

効果

実績

技術文献被引用数
0件
牽制数
0件

この技術が所属する分野

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

ソフトウェアパッケージの内容を知られずに、ユーザステーション(US)にインストールする前記ソフトウェアパッケージを提供する方法であって、定義済符号化アルゴリズムに従って可読ソース版前記ソフトウェアパッケージ(PACK.SOURCE)を符号化し、それによって、符号化済ソフトウェアパッケージ(PACK.ENC)を生成する段階と、前記ユーザステーション(US)へ、前記符号化済ソフトウェアパッケージ(PACK.ENC)を納入する段階とを含むことを特徴とする方法。

請求項2

さらに、前記符号化済ソフトウェアパッケージ(PACK.ENC)と一緒にまたは単独で、前記符号化済ソフトウェアパッケージ(PACK.ENC)の復号コンパイルを組み合わせた処理のための基本ソフトウェアパッケージ(BASIS)を提供する段階を含み、前記基本ソフトウェアパッケージ(BASIS)が、前記復号とコンパイルを組み合わせた処理を実行することによってコンパイル済ソフトウェアパッケージ(PACK.COMP)を生成するためのソフトウェアを含むことを特徴とする、請求項1に記載の方法。

請求項3

さらに、前記符号化済ソフトウェアパッケージ(PACK.ENC)の復号とコンパイルを組み合わせた処理のための基本ソフトウェアパッケージ(BASIS)を提供する段階を含み、前記基本ソフトウェアパッケージ(BASIS)が、翻訳モードによって、前記符号化済ソフトウェアパッケージ(PACK.ENC)の復号とコンパイルを組み合わせて実行するためのソフトウェアを含むことを特徴とする、請求項1に記載の方法。

請求項4

前記復号とコンパイルを組み合わせた処理が、前記符号化済ソフトウェアパッケージ(PACK.ENC)の別々の部分の、復号とコンパイルを別々に組み合わせた処理を含むことを特徴とする、請求項2または3に記載の方法。

請求項5

ソフトウェアパッケージの内容を知られずに、ユーザステーション(US)にインストールする前記ソフトウェアパッケージを提供するプロバイダステーション(PS)であって、このプロバイダステーション(PS)が、定義済符号化アルゴリズムに従って前記ソフトウェアパッケージの可読ソース版(PACK.SOURCE)を符号化することによって符号化済ソフトウェアパッケージ(PACK.ENC)を生成し、前記符号化済ソフトウェアパッケージ(PACK.ENC)をプロバイダステーション(PS)の出力に提供することによって、前記符号化済ソフトウェアパッケージ(PACK.ENC)をプロバイダステーション(PS)から前記ユーザステーション(US)へ納入するための復号手段(ENC)を含むことを特徴とする、プロバイダステーション(PS)。

請求項6

プロバイダステーション(PS)がさらに、基本ソフトウェアパッケージ(BASIS)を生成し、前記基本ソフトウェアパッケージ(BASIS)をプロバイダステーション(PS)の出力に提供することによって、前記基本ソフトウェアパッケージ(BASIS)を前記ユーザステーション(US)へ納入するための生成手段(GEN)を含み、前記基本ソフトウェアパッケージ(BASIS)が、前記符号化済ソフトウェアパッケージ(PACK.ENC)の復号とコンパイルを組み合わせて実行し、コンパイル済ソフトウェアパッケージ(PACK.COMP)を生成するためのソフトウェアを含むことを特徴とする、請求項5に記載のプロバイダステーション(PS)。

請求項7

符号化済ソフトウェアパッケージ(PACK.ENC)としてユーザステーション(US)に納入され、プロバイダステーション(PS)で生成され、前記ソフトウェアパッケージの内容が知られないように符号化される、ソフトウェアパッケージをインストールするためのユーザステーション(US)であって、前記符号化済ソフトウェアパッケージ(PACK.ENC)を受け取るための受け取り手段(REC)と、前記符号化済ソフトウェアパッケージ(PACK.ENC)の復号とコンパイルを組み合わせて実行し、コンパイル済ソフトウェアパッケージ(PACK.COMP)を生成するための復号とコンパイルを組み合わせた手段(DEC/COMP)を含み、前記復号とコンパイルを組み合わせた処理が、前記符号化済ソフトウェアパッケージ(PACK.ENC)と一緒にまたは単独で、前記プロバイダステーション(PS)によってユーザステーション(US)へ納入される基本ソフトウェアパッケージ(BASIS)に含まれるソフトウェアによって実行されることを特徴とする、ユーザステーション(US)。

請求項8

基本ソフトウェアパッケージ(BASIS)が、定義済符号化アルゴリズムに従って可読ソース版ソフトウェアパッケージ(PACK.SOURCE)を符号化する間に生成された符号化済ソフトウェアパッケージ(PACK.ENC)の復号とコンパイルを組み合わせて実行するためのソフトウェアを含むことを特徴とする、基本ソフトウェアパッケージ(BASIS)。

請求項9

基本ソフトウェアパッケージ(BASIS)が、この基本ソフトウェアパッケージ(BASIS)を使用中に制御されるために含まれる、一つまたは複数の機密保護条件を含み、それによって、前記一つまたは複数の機密保護条件のうちの一つを検査するとき、前記一つの機密保護条件が満たされない場合には、前記復号とコンパイルを組み合わせた処理がこれ以上実行されず、または前記符号化済ソフトウェアパッケージが破壊されることを特徴とする、請求項8に記載の基本ソフトウェアパッケージ(BASIS)。

請求項10

基本ソフトウェアパッケージ(BASIS)が、基本ソフトウェアパッケージ(BASIS)が使用された回数を記録するために含まれる、ペイパーユーズ方式を含むことを特徴とする、請求項8に記載の基本ソフトウェアパッケージ(BASIS)。

技術分野

0001

本発明は、ソフトウェアパッケージを提供する方法と、その方法を実現するプロバイダステーションおよびユーザステーションとその方法で使用される基本ソフトウェアパッケージに関する。

背景技術

0002

このようなソフトウェアパケットは、たとえば、1995年にベルギーのAlcatel Bellから出版された製品説明書、「NM Expert:Integrated and Intelligent Solutions for Network,Systems and Service Management,Alcatel 1303,NM−Expert ProductDescription P−M−E−75005」に記載されている、ソフトウェアパッケージである。同書には、最新ネットワーク管理システムが述べられている。このネットワーク管理システムは、最も厳しいネットワーク要件および最も厳しい顧客仕様のための、統合インテリジェントネットワーク管理システム構築するためのソフトウェアパッケージである。このソフトウェアパッケージは、異なる種類のハードウェアプラットフォーム、たとえば、SUN Microsystems(サンマクロシステムズ)のRISCマシン、Hewlett Packard(ヒューレットパッカード)マシン、またはIBM(アイビーエム)マシン、および異なる種類のソフトウェアプラットフォーム、たとえばSUN Operating System(サンオペレーティングシステム)、Solaris、Hewlett Packard(ヒューレットパッカード)−UXを所有する顧客に納入される。

0003

上記に述べたような種類のソフトウェアパッケージをプロバイダからユーザに提供するための周知の方法は、たとえば、コンパイルされたソフトウェアパッケージを、たとえばテープで、ユーザのユーザステーションへ納入することである。ユーザステーションにインストールするためのソフトウェアパッケージを提供するこのような方法の利点は、コンパイル済版ソフトウェアパッケージは、人間には読み取れないので、ソフトウェアパッケージの内容がユーザに知られないことである。

発明が解決しようとする課題

0004

しかし、このようなソフトウェアパッケージのコンパイルは、ユーザ環境と同じ環境で、行われなければならない。実際、特殊なハードウェアプラットフォームとソフトウェアプラットフォームを使用しているユーザは、特殊なコンパイラを使用している。コンパイル済ソフトウェアパッケージを納入するためには、正確なユーザ環境をプロバイダ側再構築しなければならず、それによって、コンパイル済ソフトウェアパッケージが、そのソフトウェアパッケージが使用される環境と同じ環境で生成されるようになる。ユーザすべてが、同じハードウェアプラットフォームとソフトウェアプラットフォームで作業しているわけではないので、環境を再構築することは、各ユーザごとに、たとえば、ハードウェアプラットフォーム、オペレーティングシステム、コンパイラの種類と版数、納入されるソフトウェアパッケージの版数、およびソフトウェアパッケージの以前のパッチの納入などを知ることを意味する。

0005

本発明の一目的は、ソフトウェアパッケージの内容を知られずに、ただし、ソフトウェアパッケージが、異なるユーザごとに正確なユーザ環境をプロバイダ側で再構築するという上述の欠点を持たない、ユーザステーションにインストールするためのソフトウェアパケットを提供する方法を提供することである。

課題を解決するための手段

0006

本発明によれば、この目的は、請求項5に記載のプロバイダステーションによって実行される、請求項1に記載の方法によって達成される。

0007

実際、プロバイダステーションでコンパイルする段階を省略することによって、異なる各ユーザごとに、プロバイダ側で正確なユーザ環境を再構築する必要がなくなる。コンパイラの種類とコンパイラの版数を知る問題はもはや起こらないし、さらに、その環境は、常にコンパイルが実行される環境と同じである。しかしながら、ソフトウェアパッケージの内容を知られないという利点を維持するために、符号化済ソフトウェアパッケージを生成し、ユーザステーションへ納入するための定義済符号化アルゴリズムに従って、可読ソース版ソフトウェアパッケージが符号化される。実際、ソース版ソフトウェアパッケージは、多くの場合、たとえば、Bell Telephone Manufacturing Company N.V.の商標である、上記のソフトウェアパッケージ、NM−Expertのように、企業秘密とみなされるので、ソース版ソフトウェアパッケージが、人間が読み取れるものでないことを保証することが重要である。

0008

本発明の方法は、また、後で納入されるパッチにも適用されるということに留意されたい。

0009

本発明による方法を使用することによる重要な利点は、可読ソース版ソフトウェアパッケージを符号化して納入すると、コンパイル済ソフトウェアパッケージの納入より、かなり少ない容量で済むことである。

0010

符号化済ソフトウェアパッケージがユーザステーションに納入された後、納入された符号化済ソフトウェアパッケージを使用する簡単な方法は、符号化済ソフトウェアパッケージを復号し、復号済ソフトウェアパッケージをコンパイルすることである。定義済符号化アルゴリズムによる定義済復号アルゴリズムに従って符号化済ソフトウェアパッケージを復号するために、追加の復号ソフトウェアパッケージをユーザに納入しなければならない。この納入は、最初に納入されるソフトウェアパッケージと一緒に、または単独で行われる。

0011

しかしながら、ユーザ側でのインストレーション時に、ソフトウェアパッケージの内容を知られないようにするという要件を満たすための、追加の特徴的な機能は、追加の復号ソフトウェアパッケージが、符号化済ソフトウェアパッケージの復号とコンパイルを組み合わせて実行するソフトウェアを含み、請求の範囲およびこれ以降で基本ソフトウェアパッケージと呼ぶ、適応型の復号ソフトウェアパッケージであることである。復号とコンパイルの組み合わせに続いて、可読ソース版ソフトウェアパッケージを生成せずに、コンパイル済パッケージが生成される。これは、復号の出力が、継ぎ目なくコンパイラの入力へ渡されることを意味する。ソース版ソフトウェアパッケージが生成されないので、ソース版ソフトウェアパッケージが、インタセプトされることが防止できる。この方法は、請求項2に記載されており、請求項6に記載のプロバイダステーションと、請求項7に記載のユーザステーションを使って、請求項8に記載の基本ソフトウェアパッケージを使用して実行される。

0012

さらに、前段の方法に従って、コンパイル済ソフトウェアパッケージが生成されるが、これによって、このコンパイル済ソフトウェアパッケージをロードし、さらにユーザが使用することができることに留意されたい。コンパイル済ソフトウェアパッケージをロードする段階は、たとえば、復号とコンパイルを組み合わせて実行する段階の後で手動または自動で開始できることに留意されたい。復号とコンパイルを組み合わせた処理の間、プログラマが理解できる言語から、コンピュータが理解できる命令、すなわち機械語への翻訳が実行される。しかしながら、インストール操作代替内部配置が可能で、請求項3に記載されている。符号化済ソフトウェアパッケージは、必ずしも、ロードされる前にコンパイル済版に変換されなくてもよく、納入された符号化済ソフトウェアパッケージの復号、コンパイル、およびロードを組み合わせた形で、翻訳されたモード(interpreted mode)で実行することができる。このようにして、符号化済ソフトウェアパッケージを、組み合わせた形で復号し、コンパイル、すなわち機械語へ翻訳し、望みの操作が可能になった後、直ちに実行することができる。

0013

復号とコンパイルを組み合わせて実行するための可能な方法として、復号とコンパイルを組み合わせた処理が、符号化済ソフトウェアパッケージの別々の部分を、別々に復号してコンパイルする方法が含まれ、これによって、侵入者が、可読ソース版ソフトウェアパッケージ全体にアクセスする可能性はより困難になる。これは、請求項4に記載されている。

0014

符号化済ソフトウェアパッケージの復号とコンパイルを組み合わせて実行するソフトウェアを含む、基本ソフトウェアパケットについては、請求項8に記載されている。復号とコンパイルを組み合わせた処理の間に実行される復号処理の部分は、定義済符号化アルゴリズムによる定義済復号アルゴリズムに従って実行される。多様な復号アルゴリズムを使用できることに留意されたい。アルゴリズムのタイプは、攻撃者が好んで行う可能性のある、予想される投資に応じて、選択しなければならない。

0015

さらに、他のモジュールを、符号化とそれに対応する復号技術に含めることができることに留意されたい。その重要な例は、プロバイダ側とユーザ側、それぞれでの圧縮伸張技術の使用である。実際、たとえばフロッピーディスクなどの物理配付媒体の容量が、ユーザに納入されるソフトウェアパッケージの容量と比較して限られているとき、圧縮興味あるオプションである。本発明の方法の上記の利点を活かして、本発明の方法と圧縮技術を組み合わせれば、納入されるソフトウェアパッケージ、すなわち符号化済ソフトウェアパッケージの容量をかなり削減することができる。さらに、伸張は、復号技術に統合されているので、ユーザにとって透過的に行われる。

0016

最後に、復号とコンパイルを組み合わせた方法に特別の保護を与えるため、すなわち、ソース版ソフトウェアパッケージをインタセプトされるのを防止するため、一つまたは複数の機密保護条件が、納入される符号化済ソフトウェアパッケージをインストールするための基本ソフトウェアパッケージを使用中に制御されるために、基本ソフトウェアパッケージに含まれる。機密保護条件の一つを検査したとき、この機密保護条件が満たされない場合、復号とコンパイルを組み合わせた処理はこれ以上実行されず、あるいは符号化済ソフトウェアパッケージが破壊される。これについては、請求項9に記載されている。実際、機密保護条件と、たとえば、さらに破壊技術を含めることによって、攻撃者の可能性は減少する。たとえ、攻撃者が符号化技術を解読した場合でも、彼が得られるものは限られる。なぜなら、破壊技術がさまざまな方法によって符号化済ソフトウェアパッケージを読み取れなくする、すなわち、符号化済ソフトウェアパッケージの内容または内容の一部を無意味なデータに置き換えることによって、符号化済ソフトウェアパッケージを使用できなくするからである。

0017

さらに、汚染技術を、プロバイダ側の符号化アルゴリズムに含めることができる。汚染技術とは、たとえ、攻撃者が何とか符号化アルゴリズムを解読した場合でも、限られたものしか得られないようにすることによって、攻撃者の可能性をさらに減少させることを目的とした技術である。実際、汚染された符号化済ソフトウェアパッケージを復号したソース版ソフトウェアパッケージを、たとえば次のような多様な手段で、人間に読み取れなくする。

0018

−コンパイル時に、展開しても何も得られないマクロの呼び出し、または
− 意味なく、空白を取り除いたり追加したりする、または
コメントを取り除く。

0019

本発明の方法で使用される復号技術に含めることができるもう一つの例は、納入される符号化済ソフトウェアパッケージの復号とコンパイルの結合段階の前に、復号器ライセンスマネージャ対話することである。このライセンスマネージャとの対話によって、特定のユーザが納入される機能すべてに対して、または納入される機能の定義済部分に対してのみ、アクセスする資格があるか、あるいは、どの機能に対しても全くアクセスする資格がないかを検査することができる。

0020

本発明の方法で使用される復号技術に含めることができるもう一つの例は、復号器が、ペイパーユーズ方式(pay per use scheme)を含むことである。このペイパーユーズ方式は、たとえばゲームなどある種のソフトウェアパッケージにとって、興味深い。これについては、請求項10に記載されている。実際、基本ソフトウェアパッケージにペイパーユーズ方式を含めることによって、たとえば、ソースパッケージがアクセスされる度に定義済変数を増やすことなどによって、基本ソフトウェアパッケージが使用された回数を記録することができる。この追加機能を含む利益が明白になるのは、翻訳モードにおいて、復号、コンパイル、および実行が結合された段階によって符号化済ソフトウェアパッケージがロードされる場合であることに留意されたい。符号化済ソフトウェアパッケージが最初にコンパイル済ソフトウェアパッケージに戻ってから、コンパイル済ソフトウェアパッケージをロードし実行する場合、ソース版ソフトウェアパッケージは、復号とコンパイルの組み合わせた段階の間、コンパイル済ソフトウェアパッケージを提供するときただ1度しかアクセスされない。この場合、請求項10の追加機能、すなわちペイパーユーズ方式は、コンパイル済ソフトウェアパッケージが使用される回数を記録することができる、このただ1度のアクセスの間に、ソース版ソフトウェアパッケージからコンパイル済ソフトウェアパッケージへコピーされる。

0021

前段で既に述べたように、本発明は、上記のネットワーク管理のためのソフトウェアパッケージなどのソフトウェアパッケージに限定されるものではない。他の種類のソフトウェアパッケージも、たとえばソフトウェアゲームなど任意の種類の商用ソフトウェアと同様に、本発明の方法によって納入できることは、当分野の技術者にとって明らかである。

0022

ソフトウェアパッケージという表現の中で、「パッケージ」という用語を使用しているが、このソフトウェアパッケージには、一つまたは複数のソフトウェアファイル、さらにはソフトウェアファイルの一部分も含まれることを理解されたい。

0023

さらに、上記の紹介部分、特許請求の範囲、および好ましい実施形態の今後の記述において、「納入される」(“delivered”)という用語を使用しているが、本発明は、たとえばディスケットなどの物理的媒体上の符号化済ソフトウェアパッケージを納入することに限定されず、たとえば同軸ケーブルまたは光ファイバなどの、物理的リンクを経由するネットワークを通しての符号化済ソフトウェアパッケージの納入、あるいは移動ネットワークなどの無線ネットワークを経由する納入さえも、本発明の範囲を限定することなく、使用できることも、当分野の技術者にとって明らかである。

0024

さらに、特許請求の範囲で使用される「含む」という用語は、以降に列挙される手段に限定するものと解釈されるべきではないことに留意されたい。すなわち、表現「手段Aと手段Bとを含む装置」の範囲は、構成要素AとBのみを含む装置に限定されるべきではない。これは、本発明に関して、その装置の重要な構成要素が、手段Aと手段Bだけであることを意味する。

0025

上記その他の本発明の目的および特徴は、本発明の方法に従って動作するプロバイダステーションとユーザステーションのブロック図を示す、付属の図面に関して示した、好ましい実施形態についての以下の記述を参照することによってより明らかになり、本発明自体を最もよく理解することができるだろう。

発明を実施するための最良の形態

0026

図を参照すると、好ましい実施形態の動作を、そこに示されるブロックの機能説明によって説明する。この記述に基づく機能ブロックの実施は、当分野の技術者にとって明らかであろう。したがって、これ以上詳細には記述しないことにする。さらに、本発明に関する好ましい実施形態の主要な動作についてより詳細に記述する。

0027

本発明による好ましい実施形態の目的は、ソフトウェアパッケージの内容を知られずに、ユーザステーションにインストールするためのソフトウェアパッケージを提供することである。このソフトウェアパッケージは、プロバイダのプロバイダステーションPSからユーザのユーザステーションUSへ、物理的媒体を介して提供される。この物理的媒体は図に示されていないが、ソフトウェアパッケージの納入は実線で表されている。

0028

選択されたソフトウェアパッケージ(図示せず)は、統合インテリジェントネットワーク管理システムを構築するためのソフトウェアパッケージである。このソフトウェアパッケージは、普通、人口知能アプリケーションで使われるプログラム言語LISPで開発されている。ネットワーク装置との通信、たとえばデータベースなどの外部アプリケーションとの相互動作、およびオペレータインタフェースなどの周辺タスクは、CとC++で実施されている。

0029

プロバイダステーションPSは、符号化手段ENCと生成手段GENを含む。

0030

符号化手段ENCは、定義済符号化アルゴリズムに従って符号化手段ENCの入力として提供される可読ソース版ソフトウェアパッケージPACK.SOURCEを符号化し、それによって符号化済ソフトウェアパッケージPACK.ENCを生成するため、および、符号化済ソフトウェアパッケージPACK.ENCをプロバイダステーションの出力に提供するために含まれている。可読版ソフトウェアパッケージPACK.SOURCE、すなわちLISPコードパケージの符号化は、今後、個別部分と呼ばれる、LISPコードパッケージの各最上位の表現を個別に符号化することによって実行される。LISPコードパッケージの各個別部分を符号化する間に使用される暗号システムの詳細については、本発明の範囲を超えるので記述しない。その目的は、ソフトウェアパッケージが符号化されることである。しかし、暗号システムに含まれ、この好ましい実施形態で使用される二つの暗号技術について、次に簡単に述べる。すなわち、個別部分の各文字が、アルファベットシフトによって得られる新しい文字で置き換わる、CeasarCipherと、個別部分の文字の位置が再配置される、順列である。

0031

生成手段GENをプロバイダステーションPSに含めることによって、基本ソフトウェアパッケージBASISを生成し、基本ソフトウェアパッケージBASISをプロバイダステーションPSの出力に提供して、基本ソフトウェアパッケージBASISをユーザステーションUSに納入する。この基本ソフトウェアパッケージBASISは、この好ましい実施形態では、プロバイダステーションPSによってユーザステーションUSへ単独で、しかも前もって納入されるソフトウェアパッケージである。この基本ソフトウェアパッケージBASISの納入全体が、図では点線で示されている。基本ソフトウェアパケットBASISが生成され、ユーザステーションUSへ納入されることによって、ユーザステーションUSが、符号化済ソフトウェアパッケージPACK.ENCの復号とコンパイルを組み合わせて実行できるようになる。復号とコンパイルを組み合わせた処理の復号部分を実行するため、定義済符号化アルゴリズムによる復号アルゴリズムを実行するソフトウェアが基本ソフトウェアパッケージBASISに含まれる。復号とコンパイルを組み合わせた処理のコンパイル部分を実行するために、ユーザステーションUSにインストールされている、コンパイラへアクセスするソフトウェアが、基本ソフトウェアパッケージBASISに含まれる。復号とコンパイルの結合段階のさらに重要な動作については、後で説明する。

0032

ユーザステーションUSのハードウェアプラットフォームとソフトウェアプラットフォームには、SunOSオペレーティングシステムを搭載した、SUNMicrosystems(サンマイクロシステムズ)ワークステーションが選択された。ユーザステーションUSは、受け取り手段RECと復号とコンパイルの結合手段DEC/COMPとを含む。

0033

受け取り手段RECは、符号化済ソフトウェアパッケージPACK.ENCをプロバイダステーションPSから受け取るために含まれる。ソフトウェアパッケージを使用する場合、符号化済ソフトウェアパッケージPACK.ENCを、復号とコンパイルを組み合わせて実行する手段DEC/COMPに提供する。復号とコンパイルを組み合わせて実行する手段DEC/COMPは、符号化済ソフトウェアパッケージPACK.ENCの復号とコンパイルを組み合わせて実行するために含まれる。既に上記で述べたように、この組み合わせ処理を行うには、基本ソフトウェアパッケージBASISが、ユーザステーションUSにインストールされなければならない。この基本ソフトウェアパッケージBASISがコンパイラへのアクセスを提供するので、コンパイラ(図示せず)がユーザステーションUSにインストールされていなければならないことは、当分野の技術者にとって明らかである。ユーザステーションUSにインストールされているコンパイラは、LISPで書かれたプログラムを、SUN Microsystems(サンマイクロシステムズ)ワークステーションが理解できる機械語命令に翻訳することができるコンパイラである。復号とコンパイルを組み合わせて実行する段階を実行中に、復号とコンパイルの結合手段DEC/COMPは、コンパイル済ソフトウェアパッケージPACK.COMPを生成する。

0034

したがって、本発明に関する好ましい実施形態の主要な動作は、次の異なる段階を含む。

0035

−プロバイダステーションPSにおいて、定義済符号化アルゴリズムに従って、可読ソース版ソフトウェアパッケージPACK.SOURCEを符号化し、それによって符号化済ソフトウェアパッケージPACK.ENCを生成する段階。始めに、可読ソース版ソフトウェアパッケージPACK.SOURCEの各個別部分を個別に符号化し、続いて、定義済キー変数スクープを定義する語彙環境を構築する。この語彙環境は、引数として符号化された個別部分を持ち、符号化済ソフトウェアパッケージPACK.ENCを形成するマクロから構成される。

0036

−ユーザステーションUSの受け取り手段RECへ符号化済ソフトウェアパッケージPACK.ENCを納入する段階。

0037

− 受け取る手段RECから、復号とコンパイルを組み合わせて実行する手段DEC/COMPへ符号化済ソフトウェアパッケージPACK.ENCを提供する段階。

0038

− 既に使用可能な基本ソフトウェアパッケージBASISを使用することによって、符号化済ソフトウェアパッケージPACK.ENCの復号とコンパイルを組み合わせて実行する段階。それによって、コンパイル済ソフトウェアパッケージがPACK.COMPとして生成される。各マクロは、コンパイル時に展開され、復号アルゴリズムを呼び出す。すなわち、コンパイル中に、符号化された最上位の表現が解読される。各マクロは、元の最上位の表現へ展開するために、定義済キーが必要であり、検査される。定義済キーが存在しないまたは間違いである場合、実行を中止する。必要とされるキーの存在はまた、コンパイル処理割り込むべきとき、定義済キーが撤回され、復号に失敗することを意味する。したがって、ユーザステーションのユーザが復号段階の出力をインタセプトすることはできず、復号されたコードは、継ぎ目なくコンパイラに渡される。

0039

上記の実施形態で選ばれたプログラム言語はLISPプログラム言語であるが、本発明による方法はLISPプログラム言語に限定されず、かつ本発明の方法が、存在するどのプログラム言語でも使用できることは、当分野の技術者にとって明らかである。ただし、あるプログラム言語は他のプログラム言語より復号とコンパイルの組み合わせた段階を継ぎ目なく実行するのにより適している。

0040

さらに、本発明によるソフトウェアパッケージの提供は、上記で論じたように、プラットフォームに依存しないソフトウェアパッケージを納入することであることに留意されたい。ユーザへソフトウェアパッケージを提供するより広まった方法は、Javaプログラム言語環境、簡単にいうと、すなわち、Sun Microsystems(サンマイクロシステムズ)のJavaである。Javaは、次の方法によって動作する。特定のハードウェアプラットフォームとソフトウェアプラットフォームに専用の、Javaプロセッサエミュレートする仮想マシンが、ユーザステーション上にインストールされ、それによって、このユーザステーションの特定のハードウェアとソフトウェアがシールドされる。こうして、Javaコンパイル済コードが、プロバイダステーションから、Java仮想マシンがインストールされているどんなユーザステーションへも納入され、それによって、Javaコンパイル済コードは、プラットフォームに依存しない。本発明の方法とJavaの方法のどちらの方法でも、提供されるソフトウェアパッケージは、プラットフォームに依存しないソフトウェアパッケージである。しかしながら、本発明では、プロバイダステーション上でコンパイルする段階が省略されるが、Javaでは省略されない。また、Javaには、納入されるソフトウェアパッケージの転送量を少なくする利点がない。なぜなら、この納入されるソフトウェアパッケージは、可読ソース版の符号化版ではなく、依然として可読ソース版のコンパイル済版であるからである。さらに、本発明の方法によって納入される、符号化済ソフトウェアパッケージは、ユーザステーションのハードウェアプラットフォームとソフトウェアプラットフォーム上で直接使用され、仮想マシンの介入を伴ってコンパイルされ納入されたコードを使用する、Javaの方法の場合と異なる。最後に、本発明による方法は、現存のどのプログラム言語に対しても、実行できるので、本発明は、たとえば、コンパイラやデバッガなどの開発に注ぐ努力、ならびに暗号化(encryption)および暗号解読化(decryption)モデルに注ぐ努力から利益を得、各ターゲットのハードウェアプラットフォームおよびソフトウェアプラットフォームに対して、仮想マシンを構築することを必要としない。

0041

以上、本発明の原理を、特定の装置に関して述べたが、例示的に記述したに過ぎず、本発明の範囲を限定するものではないことをはっきり理解されたい。

図面の簡単な説明

0042

図1好ましい実施形態の動作を示すブロック図である。

--

0043

PSプロバイダステーション
USユーザステーション
ENC符号化手段
GEN 生成手段
REC受け取り手段
DEC/COMP復号とコンパイルを組み合わせた手段
PACK.SOURCE 可読ソース版ソフトウェアパッケージ
PACK.ENC符号化済ソフトウェアパッケージ
BASIS基本ソフトウェアパッケージ
PACK.COMPコンパイル済ソフトウェアパッケージ

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

関連する公募課題一覧

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ