JP2003512667A - 電子装置 - Google Patents

電子装置

Info

Publication number
JP2003512667A
JP2003512667A JP2001532368A JP2001532368A JP2003512667A JP 2003512667 A JP2003512667 A JP 2003512667A JP 2001532368 A JP2001532368 A JP 2001532368A JP 2001532368 A JP2001532368 A JP 2001532368A JP 2003512667 A JP2003512667 A JP 2003512667A
Authority
JP
Japan
Prior art keywords
weight
software
electronic device
module
stored
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.)
Withdrawn
Application number
JP2001532368A
Other languages
English (en)
Inventor
グリープ、ヘルベルト
ミュラー、ペーター
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Siemens AG
Original Assignee
Siemens AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Siemens AG filed Critical Siemens AG
Publication of JP2003512667A publication Critical patent/JP2003512667A/ja
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • G06F21/123Restricting unauthorised execution of programs by using dedicated hardware, e.g. dongles, smart cards, cryptographic processors, global positioning systems [GPS] devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Technology Law (AREA)
  • Multimedia (AREA)
  • Remote Sensing (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Storage Device Security (AREA)

Abstract

(57)【要約】 実行時間ソフトウェアに対するソフトウェア保護を有する電子装置に関する。実行時間ソフトウェアの少なくとも1つの機能モジュール(4…11)に重みを付ける。装置(12)内に実行時間ソフトウェアに対する最大許容可能な重みを格納しておく。計算ユニット(1)により実行時間ソフトウェアの機能モジュールの合計重みを決定し、かつ、合計重みが最大許容可能な重みを超過すると指示信号(14)を発する。システムメーカとOEMが互いに無関係にソフトウェア保護を行えるように、機能モジュールと重みモジュールにOEM IDを設ける。

Description

【発明の詳細な説明】
【0001】 本発明は、ソフトウェア保護を有する電子装置に関する。該装置は、プログラ
ムを実行するための計算ユニットと、計算ユニットに対するオペレーティングシ
ステムソフトウェアがロードされたメモリとを有する。
【0002】 ソフトウェアの利益をもたらす販売のための前提は、たとえ相応の利用権が取
得されたとしても、ソフトウェアの使用者による多重使用を防止する相応の保護
が存在することである。従って、未許可の利用からソフトウェアを保護する技術
的な手段が必要である。特に、種々の機能モジュールの相互接続により制御プロ
グラムを形成する自動化装置では、不許可の多重使用を防止する保護が不可欠で
ある。それはパーソナルコンピュータ用の多くのソフトウェア製品で通常である
ようなコピー保護ではない。不許可の多重使用に対する保護は、ソフトウェアが
自動化装置上で、使用者がそのための権利を取得しており、少なくとも1つのメ
ーカからライセンスが与えられたときにのみ、進行することを意味する。
【0003】 ソフトウェアの無許可の多重使用に対する保護は、電子装置の一義的なID、例
えば通し番号に結び付けられる。ソフトウェアは、それが許可された目的システ
ム上でのみ進行可能であるように構成される。しかしそれは、現在全ての目的シ
ステムに通し番号が存在していないためどこでも保護が可能ではなく、かつ個別
の目的システムへの結び付きの故に、元々の目的システムの故障時に他の同一構
成の目的システムへの交換が容易でないという欠点を有する。
【0004】 ソフトウェアの許容されない多重使用に対する保護のための別の可能性は、エ
ンジニアリングシステム内で目的システムへの保護されたソフトウェアのロード
を目的システムの一義的なID、例えば通し番号を手がかりにして監視することで
あろうが、その可能性も乏しい。なぜなら、目的システムに通常通し番号を付け
ておらず、かつ目的システムの故障時に、他の同一構成の目的システムに容易に
交換可能ではないからである。保護機構の有効性は、この場合、エンジニアリン
グシステムにのみ制限される。従ってエンジニアリングシステムにおいて、ソフ
トウェアコピー保護のための追加的な措置が必要である。
【0005】 代替的に、保護されたソフトウェアは名称表記、例えばプロジェクト表記と結
び付けられよう。その場合エンジニアリングシステムは、保護されたソフトウェ
アを異なるプロジェクトに使用してよいか、又はこれを場合により阻止するか否
かを検査せねばならない。しかしこの措置は、別の補足なしでは不十分である。
なぜなら、ソフトウェアが原理的にエンジニアリングシステムの外側でも複製可
能だからである。その結果、安全な保護機能が満足されない。
【0006】 別の可能性は、保護された実行時間ソフトウェアの複製をプログラム“Stop
Copy”等のコピー保護プログラムにより阻止することにある。このコピー保護は
エンジニアリングシステムの範囲内でも目的システムの範囲内でも作用せねばな
らない。しかし、このようなコピー保護に関しては、特に利用権が失われている
とき、取扱いが困難であるために、システムメーカおよび使用者における容認に
問題がある。更に、保護機構がエンジニアリングシステムのハードウェア内およ
び目的システムの全ての構成要素上で実現されなければならない。
【0007】 本発明の課題は、ソフトウェアの許容されない多重使用に対する有効な保護が
可能で、かつメーカおよび使用者におけるソフトウェアの取扱い易さの点で優れ
た電子装置を提供することにある。
【0008】 この課題を解決するため、冒頭にあげた形式の新しい電子装置は請求項1に挙
げた特徴を有する。請求項6および7には、新しい電子装置内で使用するのに適
した装置又は機能モジュールを記載してある。本発明の有利な実施例は、従属請
求項に挙げてある。
【0009】 本発明により、目的システム上にロードされ、かつその目的システム上で進行
する実行時間ソフトウェアの保護が可能になる利点がある。“実行時間ソフトウ
ェアの機能モジュール”という語は、システム機能モジュール、標準機能モジュ
ール、使用者機能モジュール、連続機能チャートとも呼ばれるグラフィックなプ
ロジェクト計画ツールを用いて発生される機能モジュール、ロード可能なドライ
バー、オペレーティングシステムアドオン又は他の計算ユニット上でロード可能
なオプションによるソフトウェアモジュールを意味する。
【0010】 一般にソフトウェア保護の際には2つのカテゴリーが区別される。それは一方
では技術的な保護であり、かつ他方では許容されない多重使用に対する保護であ
る。技術的な保護により、使用者がソフトウェアの原始コードを読み、かつまれ
にアクセスすることを防止できる。この処置により、メーカの技術的又はソフト
ウェア技術的なノウハウが保護される。技術的な保護は、例えば本出願人の販売
に係る“SIMATIC S7”自動化システムでは、属性ノウハウプロテクトにより保
証されている。それに伴い、ソフトウェア機能モジュールにより実現される技術
的な機能に、使用者は接近不能である。用語“実行時間ソフトウェア”は、この
関連でロード可能な、かつ目的システム上で進行可能なあらゆる形式のプログラ
ムを意味する。これらは例えばシステム機能モジュール、技術的機能のための機
能モジュールおよびオペレーティングシステム機能モジュールであってよい。
【0011】 利用権は使用者に目的システム、例えば自動化装置へのソフトウェアの利用を
許可する。目的システム内では、ソフトウェアはしばしば任意に使用される。利
用権はこうしてモジュール形式の使用に関するものであり、このモジュールによ
り各々実現される実行時間ソフトウェアの内部の モジュールエンティティに関
するものではない。ソフトウェアはそれに対して決められている重みに相応して
保護される。目的システム上で使用され、保護されるソフトウェアが合計して装
置内に格納されている最大の重みによりカバーされるかどうかが検査される。実
行時間ソフトウェアは、許容される利用権の枠内でのみ目的システム上で使用さ
れる。利用は、保護されるソフトウェアに対して相応のカウンタバリューが装置
内に格納されているときのみ可能である。保護されるソフトウェアの取扱いのた
めのシステムメーカにおける追加費用は、保護されないソフトウェアの価値に比
べ、販売とサポートに関して最小である。その際に、保護されるソフトウェアは
、例えばディスケット、CD、メーカ又はインターネットのような種々の経路を経
て販売される。使用者に対しては、保護されないソフトウェアの価値に比べての
、保護されるソフトウェア取扱い時の変更は僅かである。加えて、保護されるお
よび保護されないソフトウェアの取扱いと共通の動作が可能である。ソフトウェ
アメーカによるサポート費用に、使用者とメーカ間のホットラインを介しての相
互作用が不要であることが好ましい影響を生ずる。例えばソフトウェアを動作さ
せるための登録や権利付与番号は要求しなくてよい。電子装置内に格納された重
みが実行時間ソフトウェアの動作に不十分なら、使用者へのシステムによる明確
な指摘が可能である。例えば更新やグレードアップ時の、電子装置のオペレーテ
ィングシステムの異なるバージョンは、保護されるソフトウェアの使用に影響し
ない。新バージョンの取扱い時に、新しい保護機構を付け加える必要はない。
【0012】 保護は個々のソフトウェア構成要素にではなく、その重みに結び付いている。
その結果、使用者のように、システムメーカにおいても、本質的に簡単かつ柔軟
な取扱いが可能になる。例えば、利用権の価値が十分であるなら、保護されるソ
フトウェア構成要素の交換又は補足が容易に可能である。
【0013】 ソフトウェア保護は、しばしばドングルと呼ばれるハードウェア構成要素と特
定の保護されたソフトウェアとの間の固定的な対応付けを必要としない利点があ
る。このことは使用者の取扱いを顕著に簡単化する。なぜなら、種々のソフトウ
ェア構成要素に対し異なったドングルを使用しなくてよく、かつ保護されたソフ
トウェアが単一の目的システム上に限られることなく進行するからである。
【0014】 更に保護機構が、保護されたソフトウェアの実行時間に対してのみ働く。従っ
て、目的のシステム上での使用前、それは保護されないソフトウェアの如く取り
扱われ、かつ例えば任意にしばしばコピーされる。コピー保護プログラムと結び
付いた問題がこうして回避される。重みに直接かつ柔軟に価格が対応する。
【0015】 実行時間ソフトウェアに対する最大許容可能な重みが読出し可能に格納されて
おり、電子装置内に使用可能又は電子装置に接続可能なハードウェアモジュール
として構成された装置は、ソフトウェア変更時の重みの容易な適合が可能という
利点を有する。加えて、ソフトウェアの保護が電子装置のハードウェア内への費
用のかかる介入なしに実現できる。使用者が保護されたソフトウェアを使用する
場合、使用者は、容易に交換可能なハードウェアモジュールは別として、既存の
システム構成要素に対して追加的な構成要素を必要としない。電子装置の個々の
モジュールの交換に関して、保護されたソフトウェアの挙動と保護されないソフ
トウェアの挙動との間の相違はない。従来のソフトウェアを変更なしに個々のモ
ジュールの交換時に引き続いて使用できる。
【0016】 ハードウェアモジュールとしてのメモリカードの使用は、特に自動化装置の場
合、いずれにせよ通常メモリカードを使用するので、追加的なハードウェア構成
要素が不要であるという利点を有する。メモリカードは簡単な方法でそのために
設けたシャフト内に挿入されるので、複雑なハードウェアの介入は不要である。
メモリカードの安全性は、保護機能のために十分である。同じく有効な重みを持
つコピーの作成は容易に可能ではない。
【0017】 実行時間ソフトウェアに対する最大許容可能な重みを読出し可能に格納する装
置を、一義的なID、特に通し番号を有し、かつ格納される重みが各IDを有する装
置に対してのみ有効性を持ち、ロード可能な重みモジュールとして構成するとよ
い。それにより、必要とされる価値を有する他の重みモジュールを装置内にロー
ドすることで、利用権の価値を容易に高められる。重みモジュールの販売は、例
えばインターネットを介して自動化可能である。ハードウェア構成要素の取扱い
はそのために不要である。その結果、所謂“重みの墓場(Wertigkeitsleiche)
”を回避できる。“重みの墓場”と呼ばれる装置は、例えば応用がその間に別の
保護されるソフトウェア構成要素により補足されたので、具体的な用途に対して
もはや十分でない最大許容可能な重みが固定的に格納された装置である。後ロー
ド可能な重みモジュールなしに重みを高めることは全く不可能か、又は装置のメ
ーカによってのみ可能だったため、このような装置は使用者にとって無価値とさ
れた。重みモジュールは、原理的に機能モジュールであるから、自動化装置の既
存のソフトウェアエリア内に渾然一体に集積される。
【0018】 機能モジュールを群、特にメーカ毎に分類し、各群に重みモジュールを対応付
けるならば、種々のメーカの機能モジュールを、各々最大許容可能な重みが格納
された単一の装置を介して保護できるという利点が生ずる。後ロード可能な重み
モジュールでは、所謂OEM (Original Equipment Manufacturer)、即ち自らソ
フトウェアを作成しかつ販売する使用者がそのソフトウェアを独自にかつ電子装
置のメーカによる直接的なサポートなしに保護することができる。使用者におけ
る重み付与又はその引き上げは直接的に、ローカルに、又はハードウェアと無関
係にシステムメーカ又はOEMにより可能である。例えば新しい最大許容可能な重
みを格納した新しいメモリカードの発送は不要である。なぜならば、データ技術
的な結合が、新しい重みの格納のために十分だからである。
【0019】 本発明の実施例を示す図面により、以下に本発明ならびにその実施態様と、利
点とを一層詳細に説明する。
【0020】 図1によれば、電子装置は、メモリ2内のオペレーティングシステムソフトウ
ェアを用いてメモリ3内の、アプリケーション特有に構成され、かつ例えば自動
化装置において各制御課題に適合された実行時間ソフトウェアを処理する計算ユ
ニット1を有するものとして構成されている。図示の実施例では、実行時間ソフ
トウェアは全体で8つの機能モジュール4…11を含む。機能モジュール4、5
および6は保護されておらず、従って重みを有していない。それに対し機能モジ
ュール7…11は各々原理的に利用権の価値を表す重みを付けられている。こう
して、保護される各機能モジュールに重みが対応している。保護される機能モジ
ュールを利用したい使用者は、特定の価値を持つ利用権を入手する。この利用権
は、装置12内に読出し可能に格納された、実行時間ソフトウェアに対する最大
許容可能な重みにより表される。使用者は、保護されるソフトウェアの合計重み
が利用権の価値によりカバーされている限り、保護されるソフトウェアを使用で
きる。最大許容可能な重みは、実行時間ソフトウェアと共通にメモリカード13
の上に記憶されている。図示の実施例と代替的に、オペレーティングシステムソ
フトウェアのためのメモリも、同一のメモリ媒体上に配置される。計算ユニット
1はメモリ2内のオペレーティングシステムソフトウェアを手がかりに、全ての
保護される機能モジュール、即ち機能モジュール7…11の合計重みが、装置1
2内に格納されている最大許容可能な重みを超過するかどうかを検査する。検査
の結果が超過しているなら、保護侵害が生じており、予め定めた反応を生じさせ
る指示信号が発せられる。
【0021】 図2は後ロード可能な重みモジュールを有する装置12を実現するためのメモ
リカード13を示す。メモリカード13のIDビットメモリ20内に通し番号21
が、メモリカード13のメーカによってのみ書込み可能であり、かつ使用者によ
っては書込み不可能なメモリセル内に格納されている。この通し番号21はメモ
リカード13の一義的な識別を可能にする。重みモジュール22、23および2
4はメーカ特有であり、かつメモリカード13の自由なメモリ範囲25内に格納
されている。重みモジュール22は電子装置のメーカ用に、重みモジュール23
および24は第1のOEM又は第2のOEM用に設けられている。メーカおよびOEMは
、こうしてそれらの固有の重みモジュールを製作し、かつ固有の利用権を使用者
に与えることができる。メモリカード13の自由な範囲25内には、更に図2中
には図面を見易くするために図示しない実行時間ソフトウェアが格納されている
。重みモジュールは、ソフトウェア構造に関しては機能モジュールと同一であり
、かつこうして機能モジュールと同様に取扱い可能である。しかしながらそれら
は進行可能なプログラムコードを有していない。重みモジュール22、23およ
び24は、特定の通し番号と結び付けてのみ有効性を有する。
【0022】 通し番号、重みモジュールおよび保護される機能モジュール間の関係を図3に
示す。例えば保護される機能モジュール30は、読取り可能なメーカ名称と使用
者に対し秘密の暗証とから成るメーカID31を有する。同一のメーカIDが、一
義的に機能モジュール30のメーカに対応するように、重みモジュール32内の
メーカID38としても存在せねばならない。重みモジュール32内に通し番号3
3と最大許容可能な重み34が、使用者にとっては接近不可能に格納されている
。通し番号33により重みモジュール32が一度限りであることが保障され、か
つそれが、IDビットメモリ35内に格納された通し番号37が重みモジュール3
2の通し番号33と合致する装置に対してのみ有効であることを保証する。通し
番号33と37の合致の検査で、重みモジュールの多重使用が防止できる。更に
機能モジュール30内に重み36、即ち機能モジュール30の価値が使用者にと
って書込み不能な状態で格納されている。十分な利用権が存在するためには、メ
ーカの保護すべき全機能モジュールの合計重みは、相応のメーカの重みモジュー
ル32上の重み34によりカバーされねばならない。
【0023】 重みモジュールおよび保護される機能モジュールの内容を使用者が読出せない
なら、データの暗号化は不要である。“SIMATIC S7”では、これを属性ノウハ
ウプロテクトをセットすることで十分な安全性をもって保証する。不許可のアク
セスに対する保護が十分でないなら、データを暗号化せねばならない。
【0024】 図4は重みモジュールを作成するためのツールの、オペレータインタフェース
を示す。図4中でOEMIDと呼ばれるメーカIDをOEMは自由に選択できる。それは2
つの部分から成る。見える部分は、どのメーカに重みモジュール又は保護される
ソフトウェアが由来するかを識別するため、使用者が随時読出し可能なOEM名称
、ここではFa.Softyである。第2の部分は、各OEMのみが知っており、使用者に
は隠されているOEM暗証である。これに伴い誤使用が防止できる。なぜならば、
暗証を知っているOEMのみが重みモジュールを発生できるからである。更に、図
4に示す入力マスクには、ここではMC通し番号と呼ばれるメモリカードの通し番
号と重みモジュールの重みが記入してある。
【0025】 図5に相応して電子装置の始動時、ソフトウェアの後ロードの際、常に又は動
作中の適当な間隔で、利用権の十分な存在を検査する。メモリカード50上に機
能モジュールFBおよび重み51が格納されている。利用権を検査するため、計算
ユニットにより適当なオペレーティングシステムソフトウェアを用いてステップ
52で制御プログラムを機能モジュールFBに従って探索し、個別重みを読出し、
かつ合計重みを計算する。ステップ53で、実行時間ソフトウェアに対する最大
許容可能な重み51を読出す。その後、ステップ52で求めた合計重みと最大許
容可能な重み51との間の比較54を行う。合計重みが最大許容可能な重み51
を超過すると、ステップ55で指示信号を発し、かつ場合によっては別の誤反応
を行う。他の場合には、ステップ56で正常動作に移行する。その際、メモリカ
ード50上に存在する全ての保護すべき機能モジュールを捕捉する。次に、機能
モジュール形式のインスタンスが進行サイクル内に組み込まれているか否かに無
関係に検査を行う。機能モジュールの各配線は、図5中にプログラムブロック5
7で図示してある。上記の検査は、各のメーカに対して別々に実行する。
【0026】 以下では、重みを検査するため代替的な可能性を説明する。その進行を図6に
示す。機能モジュールFBは、各機能モジュールにより実現されるインスタンスの
最初の呼出し時に、その重みとメーカIDをオペレーティングシステムのリスト内
に書込む。この過程はフローチャートのステップ60に相当する。完全なアプリ
ケーションプログラムを1回通過すると、リスト内の全ての関与する機能モジュ
ールの重みとメーカIDが含まれることになる。ステップ61で、重みを各メーカ
IDに従って合計重みに別々に加えることで、リストを評価する。ステップ62で
、重み63を重みモジュールから読出し、かつ再び比較64で計算した合計重み
と比較する。十分な利用権が存在するならば、正常な動作65に移行する。さも
なければ、ステップ66で指示信号を発し、かつ反応が始まる。この形式の検査
の際には、配線67に相応して実行時間ソフトウェアの進行内に組み込まれてい
る機能モジュールFBのみを捕捉する。
【0027】 図5および6で説明する変形例に対しては、検査を電子装置の計算ユニットの
始動中に実行するのが望ましい。動作の進行中、格納されている最大許容可能な
重みを有する装置の切り離しを許容する計算ユニットの場合、検査は追加的に適
当な時間間隔で行わなければならない。
【0028】 各用途に応じて、利用権がない際の種々の反応が可能である。例えば指示信号
の発信に追加して、計算ユニットを低減した能力でその後動作させる。その際、
深刻な結果は、利用権が存在しないとき計算ユニットが停止状態に移行し、かつ
それによって電子装置が機能不可能になろう。
【0029】 計画、検査、始動又はハードウェア交換時のソフトウェア保護の取扱いを簡単
にするため、電子装置の使用者に2つの解決策を提供する。一方の解決策は、使
用者にその重みモジュールが無限大の価値を含む、一般的に有効なメモリカード
を使用可能にすることである。このメモリカードにより、全ての保護されたモジ
ュールが無制限に進行可能となる。他方の解決策は、エンジニアリングシステム
におけるパラメータ化を介し、電子装置の計算ユニットを動作形式“テスト動作
”に切換えることにある。この動作形式では重みの検査は行わない。全ての保護
された機能モジュールは、再度無制限に進行可能である。特定の時間、例えば2
00時間後にテスト動作は終了し、かつ上記の保護機構が再び有効になる。
【0030】 重みモジュールの販売は、例えば発送を介して行う。使用者は、そのため文書
又は電話によりメモリカードの通し番号をあげて特定の重みを持つ重みモジュー
ルを、その機能モジュールライブラリを用いるメーカに注文する。メーカは、例
えば電子装置のメーカやOEMであってよい。このメーカで重みモジュールを作成
し、ディスケット上に記録し、かつ注文者に着払いで発送する。
【0031】 販売のための他の、完全に自動的に展開可能な可能性をインターネットが与え
る。使用者はメーカのサービスホームページを選びだし、かつそこにメニュー点
“重みモジュールを注文”を見出す。ここに使用者はその名称、Eメールアドレ
ス、メモリカードの通し番号、所望の重みおよび好ましい支払形式、例えば計算
書又はクレジットカードを入力して注文する。サーバーが、メーカにおいて自動
的にこの指図を手がかりにして重みモジュールを作成し、かつそのモジュールを
、Eメールを介して注文者に送付する。
【0032】 図示の実施例に対し代替的に、ここではメモリカードとして構成したドングル
が、MPI接続ケーブルのコネクタ内に内蔵され、又はMPI接続を使用していないと
きには、ブラインドコネクタとしてMPIインタフェース上に載せられるハード
ウェアキーとして実現される。しかし、この実現変形例は、新しい追加的なハー
ドウェア構成要素を表す新しいドングルを開発せねばならない欠点を持つ。そ上
ドングルは、MPIインタフェースの将来の追加開発に適合せねばならない。
【0033】 後からロード可能な重みモジュールに対し代替的に、全重みがメモリカードの
IDビットメモリ内に格納され、こうして全重みはソフトウェアでは変更不可能で
ある。この全重みは、直接保護すべき全ソフトウェアの価値をシステムメーカお
よびOEMから覆い隠す。メモリカードは異なる重みを有するものとして生産され
、かつ異なる注文番号で入手される。即ち、nの異なる価値の際には、nの異な
る形式のメモリカードを製品として入手かつ貯蔵せねばならない。この変形例で
は、システムメーカとOEMとの間の区別は不可能である。なぜならば、ただ全重
みが両方に対して共通に格納されるからである。重みを後から変更できないので
、上記の“重みの墓場”が生ずる。
【0034】 別の変形例では、メモリカードの識別ビットメモリ内に、固定的な合計重みが
各システムメーカとOEMに対し別々に格納される。こうしてソフトウェア保護の
際、システムメーカのソフトウェアとOEMのソフトウェアとが区別される。メモ
リカードは異なった重みを有するものとして製作され、その際、各重み組みの合
わせが注文番号を有する独自の製品に相当する。それに応じ、在庫せねばならな
い製品の数が何倍にもなる。追加的にOEM識別が各重みに対応付けられる。
【0035】 別の代替例として、その識別ビットメモリが使用者データの書込み範囲を持つ
メモリカードが作られる。しかしながら、この範囲は、付属のプログラミング機
構が公知の場合のみ、接近可能とすべきである。そこに重みおよびOEMのIDが格
納される。OEMはこの場合、IDビットメモリのこの範囲にアクセスすべく、プロ
グラミング機構を持つ特別なプログラミングツールを必要とする。このツールは
メモリカードのメーカから供給されるエンジニアリングシステムの拡張として実
現される。この変形例ではOEMは重みおよびそのID自体を変更する。こうして製
品の在庫が少なくてすみ、かつ保護のための費用が少なくてすむ。
【0036】 上記の実施例とは異なり、重みモジュールは、実行時間ソフトウェアに対する
最大許容可能な重みが読出し可能に格納された装置12のメモリ範囲を、メモリ
2又は3の部分により置換できるよう、電子装置のメモリ2又は3内にロードす
る。この場合、装置12は一義的なID、例えば通し番号を有し、かつ交換可能な
ハードウェアモジュールとして構成するとよい。
【図面の簡単な説明】
【図1】 ソフトウェア保護を使用者電子装置のブロック回路図。
【図2】 重みが格納されている装置のブロック回路図。
【図3】 重みを格納する装置および作用原理を明らかにするための機能モジュール。
【図4】 重みモジュールを作成するための入力マスク。
【図5および6】 各々十分な利用権を検査するためのフローチャート。
【符号の説明】
1 計算ユニット 2、3 メモリ 4〜11、30 機能モジュール 12 一義的なIDを有する装置 13、50 メモリカード 14 指示信号 20、35 IDビットメモリ 21、33、37 通し番号 22〜24、32 重みモジュール 25 自由なメモリ範囲 31、38 メーカID 34、51 最大許容可能な重み 36 重み 57 プログラムブロック
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ミュラー、ペーター ドイツ連邦共和国 デー‐76344 エッゲ ンシュタイン ポツダーマー リング 24 ベー Fターム(参考) 5B058 CA01 CA27 KA31 YA20 5B076 FB01 FB03 FB10 FB16

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】 ソフトウェア保護を有する電子装置において、 −プログラムを実行する計算ユニット(1)と、 −計算ユニット(1)に対するオペレーティングシステムソフトウェアがロード されているメモリ(2)と、 −重みを付けられた少なくとも1つの機能モジュール(7…11)を含む実行時 間ソフトウェアがロードされたメモリ(3)と、 −実行時間ソフトウェアに対する最大許容可能な重みが読出し可能に格納された 装置(2、3、12)とを含み、 実行時間ソフトウェアの機能モジュール(4…11)の合計重みを決定し、か
    つ合計重みが最大許容可能な重みを超過するときに、指示信号(14)を出力す
    る手段が存在することを特徴とする電子装置。
  2. 【請求項2】 実行時間ソフトウェアに対する最大許容可能な重みが読出し可能に格納されて
    いる装置(12)が、電子装置内で使用可能な又は電子装置に接続可能なハード
    ウェアモジュールとして構成されたことを特徴とする請求項1記載の電子装置。
  3. 【請求項3】 ハードウェアモジュールがメモリカードであることを特徴とする請求項2記載
    の電子装置。
  4. 【請求項4】 −一義的なID、特に通し番号(21)を持つ装置(12)を備え、かつ −格納されている重みが、各IDを持つ装置(13)に対してのみ有効性を持つロ ード可能な重みモジュール(22、23、24)として構成された ことを特徴とする請求項1ないし3の1つに記載の電子装置。
  5. 【請求項5】 −機能モジュールが群、特にメーカ毎に、分類されており、 −各群に重みモジュール(22、23、24)が対応付けられており、かつ −群の機能モジュールの合計重みを決定し、かつ合計重みが各重みモジュールの 最大許容可能な重みを超過すると指示信号(14)を出力する手段が存在する
    ことを特徴とする請求項4記載の電子装置。
  6. 【請求項6】 請求項1ないし5の1つによる電子装置内に使用可能な、又
    は上記電子装置に接続可能なハードウェアモジュール、特にメモリカードとして
    構成された装置において、 装置内に実行時間ソフトウェアに対する最大許容可能な重みおよび/又は一義
    的なID、特に通し番号が電子装置により読出し可能に格納されたことを特徴と
    する装置。
  7. 【請求項7】 請求項1ないし5の1つによる電子装置の実行時間ソフトウ
    ェアに使用するための機能モジュールにおいて、該モジュールに重みが付けられ
    たことを特徴とする機能モジュール。
JP2001532368A 1999-10-18 2000-10-17 電子装置 Withdrawn JP2003512667A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE19950249A DE19950249C1 (de) 1999-10-18 1999-10-18 Elektronisches Gerät mit Softwareschutz
DE19950249.8 1999-10-18
PCT/DE2000/003649 WO2001029638A2 (de) 1999-10-18 2000-10-17 Elektronisches gerät mit softwareschutz

Publications (1)

Publication Number Publication Date
JP2003512667A true JP2003512667A (ja) 2003-04-02

Family

ID=7926110

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001532368A Withdrawn JP2003512667A (ja) 1999-10-18 2000-10-17 電子装置

Country Status (6)

Country Link
US (1) US20020129270A1 (ja)
EP (1) EP1226484A2 (ja)
JP (1) JP2003512667A (ja)
CN (1) CN1409834A (ja)
DE (1) DE19950249C1 (ja)
WO (1) WO2001029638A2 (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001216357A (ja) * 2000-02-01 2001-08-10 Toshiba Corp ソフトウェアのライセンス管理方法および電子機器並びに記録媒体
DE10023820B4 (de) * 2000-05-15 2006-10-19 Siemens Ag Software-Schutzmechanismus
DE10105363B4 (de) * 2001-02-06 2008-01-03 Siemens Gebäudetechnik Bayern GmbH & Co. oHG Speicherprogrammierbare Steuerung
JP2004062610A (ja) * 2002-07-30 2004-02-26 Citizen Watch Co Ltd 工作機械のプログラム不正使用防止装置
US20060267808A1 (en) * 2005-05-24 2006-11-30 Imation Corp. Secure drive system enabled by matching media code
US8091084B1 (en) 2006-04-28 2012-01-03 Parallels Holdings, Ltd. Portable virtual machine
CN101339595B (zh) * 2008-05-20 2011-08-10 北京深思洛克软件技术股份有限公司 一种通过使用许可控制软件使用的装置
JP5168012B2 (ja) * 2008-07-28 2013-03-21 株式会社ジェイテクト プログラマブルコントローラのプログラム編集装置
DE102009059939A1 (de) * 2009-12-22 2011-06-30 Giesecke & Devrient GmbH, 81677 Verfahren zum Komprimieren von Bezeichnern
US9311457B1 (en) 2011-11-02 2016-04-12 Google Inc. Platform for cloud application software
CN105426705A (zh) * 2015-11-05 2016-03-23 肖月华 一种会计软件的加密控制系统
CN115859389B (zh) * 2023-02-17 2023-04-28 浪潮通用软件有限公司 一种基于私有化部署的软件序列号授权方法及系统

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5339419A (en) * 1990-06-25 1994-08-16 Hewlett-Packard Company ANDF compiler using the HPcode-plus compiler intermediate language
US5551033A (en) * 1991-05-17 1996-08-27 Zenith Data Systems Corporation Apparatus for maintaining one interrupt mask register in conformity with another in a manner invisible to an executing program
US5742848A (en) * 1993-11-16 1998-04-21 Microsoft Corp. System for passing messages between source object and target object utilizing generic code in source object to invoke any member function of target object by executing the same instructions
US5530752A (en) * 1994-02-22 1996-06-25 Convex Computer Corporation Systems and methods for protecting software from unlicensed copying and use
FR2720532B1 (fr) * 1994-05-25 1997-09-12 Vincent Lorphelin Système de location sécurisée de logiciels par carte à mémoire.
US5724425A (en) * 1994-06-10 1998-03-03 Sun Microsystems, Inc. Method and apparatus for enhancing software security and distributing software
US5701343A (en) * 1994-12-01 1997-12-23 Nippon Telegraph & Telephone Corporation Method and system for digital information protection
WO1996018939A2 (en) * 1994-12-16 1996-06-20 Graphisoft R & D Software Development Company Limited By Shares Software usage metering system
ATE419586T1 (de) * 1995-02-13 2009-01-15 Intertrust Tech Corp Systeme und verfahren zur gesicherten transaktionsverwaltung und elektronischem rechtsschutz
US5761499A (en) * 1995-12-21 1998-06-02 Novell, Inc. Method for managing globally distributed software components
US5671412A (en) * 1995-07-28 1997-09-23 Globetrotter Software, Incorporated License management system for software applications
US6026485A (en) * 1996-01-24 2000-02-15 Sun Microsystems, Inc. Instruction folding for a stack-based machine
US20010011253A1 (en) * 1998-08-04 2001-08-02 Christopher D. Coley Automated system for management of licensed software
US5892904A (en) * 1996-12-06 1999-04-06 Microsoft Corporation Code certification for network transmission
US6263492B1 (en) * 1997-06-06 2001-07-17 Microsoft Corporation Run time object layout model with object type that differs from the derived object type in the class structure at design time and the ability to store the optimized run time object layout model
US6643775B1 (en) * 1997-12-05 2003-11-04 Jamama, Llc Use of code obfuscation to inhibit generation of non-use-restricted versions of copy protected software applications
US6134659A (en) * 1998-01-07 2000-10-17 Sprong; Katherine A. Controlled usage software
US6189146B1 (en) * 1998-03-18 2001-02-13 Microsoft Corporation System and method for software licensing
US6665796B1 (en) * 1999-08-18 2003-12-16 Sun Microsystems, Inc. Microprocessor instruction result obfuscation
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
US6308256B1 (en) * 1999-08-18 2001-10-23 Sun Microsystems, Inc. Secure execution of program instructions provided by network interactions with processor
JP2001222424A (ja) * 2000-02-08 2001-08-17 Fujitsu Ltd ソフトウェアライセンス管理装置,ソフトウェアライセンス管理方法およびソフトウェアライセンス管理用プログラム記録媒体
US7121639B2 (en) * 2002-12-02 2006-10-17 Silverbrook Research Pty Ltd Data rate equalisation to account for relatively different printhead widths

Also Published As

Publication number Publication date
WO2001029638A3 (de) 2001-11-22
DE19950249C1 (de) 2001-02-01
US20020129270A1 (en) 2002-09-12
WO2001029638A2 (de) 2001-04-26
EP1226484A2 (de) 2002-07-31
CN1409834A (zh) 2003-04-09

Similar Documents

Publication Publication Date Title
JP6516870B2 (ja) プログラム命令を安全に実行する方法及び該方法用プログラム
JP4510945B2 (ja) カスタムソフトウェア画像をコンピュータシステムへ供給する方法およびシステム
CN100371906C (zh) 用于确定访问许可的方法和设备
JP3529800B2 (ja) 携帯データキャリヤー用データ保護マイクロプロセッサー回路
US4646234A (en) Anti-piracy system using separate storage and alternate execution of selected proprietary and public portions of computer programs
CN100533330C (zh) 用于个人计算机存储器区域的外部锁固机构
JP2755828B2 (ja) 複数のマイクロプロセッサ間でアプリケーション・データおよび手続きを共用するための安全なアプリケーション・カード
US5432939A (en) Trusted personal computer system with management control over initial program loading
US20030126456A1 (en) Method for licensing software
US20030125975A1 (en) Method for generating licenses
CN101414263B (zh) 软件安装方法及防盗版模块
JP2003512667A (ja) 電子装置
CN105324750A (zh) 开发环境系统、开发环境装置、开发环境提供方法及程序
US8103591B2 (en) Flexible management process for multiple activities executed on partitionable platforms of a multiple processor system
CN101714124A (zh) 存储器保护方法及信息处理装置
EP1855226A1 (en) Security system of flash memory and method thereof
JPH07191776A (ja) 機密保護を実現するパーソナル・コンピュータ・システム
US5838793A (en) Controlling movement of owned parts
JP2001209451A (ja) コンピュータプログラムの不当コピー阻止装置,不当コピー阻止方法及び記録媒体
JP2002032141A (ja) ソフトウェア構成要素の無許可利用の防止方法
CN100432955C (zh) 一种非法内存读写的检测方法
US7930708B2 (en) Device control system, device control method, and device control program
US20070043675A1 (en) Software license manager
JPWO2009118886A1 (ja) ハードウェアリソースの管理装置
CN100549904C (zh) 软件的使用限制方法

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20080108