JPH01240948A - プログラム盗用防止装置 - Google Patents

プログラム盗用防止装置

Info

Publication number
JPH01240948A
JPH01240948A JP63068396A JP6839688A JPH01240948A JP H01240948 A JPH01240948 A JP H01240948A JP 63068396 A JP63068396 A JP 63068396A JP 6839688 A JP6839688 A JP 6839688A JP H01240948 A JPH01240948 A JP H01240948A
Authority
JP
Japan
Prior art keywords
program
card
application program
stored
editing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP63068396A
Other languages
English (en)
Inventor
Hiromi Funadogawa
船渡川 寛美
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP63068396A priority Critical patent/JPH01240948A/ja
Publication of JPH01240948A publication Critical patent/JPH01240948A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Storage Device Security (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 [発明の目的] (産業上の利用分野) 本発明は、第三者が無断でプログラムを複製することを
防止し得るようにしたプログラム盗用防止装置に関する
(従来の技術) 当初、ハードウェアの時代には、ソフトウェアは業界の
指導的地位にある会社によって無料で提供されていた。
しかし、この約10年間におけるハードウェアの発達は
急激で、小型化、高速化、低価格化の一途をたどり、技
術面の注目すべき現象としてのソフトウェアの重要性は
一気に高まってきた。現在では、ソフトウェアの開発費
用は他のどんな技術的資産への投資額よりも大きくなっ
ている。そして、既に現在社会に不可欠のものとなって
いるコンピュータ・ソフトウェアの重要性は、今後まず
ます高くなると予想される。
ところが、比較的小型のソフトウェアは、複製が容易な
ことから無断複製が横行し、多くのトラブルを起こして
いる。多大な資金と労力をかけて新しいソフトウェアを
開発しても、他人に複製されてしまったのでは、先行開
発者は後発者に比べて圧倒的に不利な立場に置かれるこ
とになる。そして、このような状況の下においては、新
しいソフトウェアの開発意欲は薄くなり、ソフトウェア
産業の発展にとってマイナスの効果を与える。その意味
からも、ソフトウェアを複製から守るということは、ソ
フトウェア産業の発展にとって重大なことであり、それ
を防止するための方法がいろいろ考えられてきている。
従来のプログラムを盗用防止手段として、最も多〈実施
され、効果をあげてきているものとして、「フロッピー
ディスクのプロテクト」と、「プログラムの暗号化」と
があげられる。まず前者は、フロッピーディスクに処理
を加えて、プログラムを読み出せないようにする方法で
あり、パソコンがフロッピーデ、イスクベースで使用さ
れるようになって以来、様々な工夫が加えられてきてい
る。
その中でも、最もオーツドックスな2つの方法を第6図
および第7図に夫々示す。第6図は、トラック間のギャ
ップに特殊なコードを書き込んでおく方法である。第7
図は、ディスクごとに内容(1トラツクのセクターの数
や容量)を変え、さらに特殊なコードを書き込んでおく
方法であ。いずれも、記憶媒体中の記録方式を変えて、
データのやりとりができないようにしたソフト的プロテ
クトと言える。
一方後者は、プログラムそのらのを暗号化して読み出さ
れても意味のないものにする方法であり、暗号化の手段
は多種多様である。その中でも、有名な方法として「ビ
ットすらし」がある。すなわち、18を2進数で書くと
“OOO10010”となる。そして、これを1ピツI
・すらすと、“00100100”つまり36となる。
これを応用して、ディスクに記録するデータを予め左l
\1ビットずらしておく(先の例で言うと36がディス
クに記録される)、そして、ロード時に右へ1ピツトず
らして18へ戻す。従って、データがずれているのを知
らずに複製すると、全く意味のないものになってしまう
ことになる。また、以上の方法以外にも、ある与えられ
たアルゴリズムでキーを使ってデータをかき混ぜて暗号
化する等、合計すると一冊の本になるくらいa!りな方
法が考えられている。これらの技術は、マニア的ユーザ
ーの解除技術の向上やコピーツールの登場等で、複製防
止をかける側とそれをはずす側とのいたちごっこが始ま
り、益々、複雑なものとなってきている。
一方最近では、複製を防止するのではなく、実質的にコ
ピーを無効にする方法もある。これがバンドリングであ
る。このバンドリングとは、ハードウェアの販売時にソ
フトら一緒に(付属して)売る方法で、ハードウェアの
販売金数分はソフトら売れたことになり、いくらコピー
されても被害は出ない、すなわち、ハードウェアの販売
台数は明確に分かるため、ソフトら同じ数だけ販売され
たと考えることができる。従って、複製、プロテクトは
不要となってくる。
(発明が解決しようとする課題) しながら、上述した従来の各方法においては、次のよう
な問題がある。
(1)フロッピーディスクをプロテクトする方法(a)
バックアップがとれないため、ソフトが壊れた場合にユ
ーザーの業務に多大な支障が生じる。
(b)RAMディスクが役に立たなくなる。
fc)ネットワーク上では、プロテクトがかかっている
ソフトは使いものにならないゆ (d)プロテクトの手間が、価格に即はねかえる。
(2)プログラムの暗号化を行なう方法、(a)高度な
暗号解析装置を個々のプログラム媒体に対して供給する
ことは困難であ。
(b)常に暗号化ということを意識して復合化の方法を
理解していなければ使用できない。
(C)暗号化の方法の保存が難しく、記録したものを盗
まれたらすぐに復合されてしまう。
(d)ソフト的プロテクトだけでは、その部分の修正・
変更を行なうことではずされてしまう。
(3)  バンドリングする方法 (a)全てのソフト製品にバンドリングが適用できるわ
けではない。
(b)バンドリング・ソフトは、機能を向上させてもソ
フト料金・収入が上がらない。
本発明の目的は、対象となるプログラムを供給する際に
、複製不可能なカードに暗号分解読のキーワードを持た
せ、プログラムを格納した媒体(FD)とペアにするこ
とにより、カードをリリースされた者のみにプログラム
の使用を限定して不正なプログラムの流入を防止するこ
とができ、かつ、フロッピーディスクの物理的もろさ、
操作の誤り等でプログラムが壊れた場合のバックアップ
も作成でき、ネットワーク上でも活用でき、しかも容易
にとりはすしのきくソフト的プロテクトのみでなくカー
ドといつなカード的プロテクトも用いて暗号化というこ
とを意識することなく容易にプログラムを使用すること
が可能な安価で手軽なプログラム盗用防止装置を提供す
ることにある。
[発明の構成] (課題を解決するための手段) 上記の目的を達成するために本発明のプログラム盗用防
止装置は、アプリケーションプログラムをそのままでは
実行不可能な状態に暗号化編集する第1の編集手段と、
第1の編集手段により編集されたプログラム、およびカ
ードとの照合を行なうためのキーワードが記憶される記
憶手段と、記憶手段に記憶されたプログラムを実行可能
な状態に復合化するための情報、およびプログラムを覆
合する前にペアとなっている記憶媒体か否かを照合する
ためのキーワードを有するカードと、カードの情報を読
取るカード読取手段と、カード読取手段により読取られ
たカードの復合化情報に基づいて、記憶手段に記憶され
たプログラムを実行可能な状態に復合化して前記アプリ
ケーションプログラムに編集する第2の編集手段とを備
えて構成している4 (ft  用) 従って、本発明のプログラム盗用防止装置においては、
機密としたいアプリケーションプログラムは、第1の編
集手段1によって、そのままでは実行不可能な状態に暗
号化され、この暗号化したプログラムと、そのプログラ
ムであることを照明するキーワードが記憶手段2に格納
される。このアプリケーションプログラムを実行する際
には、カード読取り手段4によってカード3に格納され
ているキーワードとアプリケーションプログラムを復合
化する情報か読取られ、また、記憶手段2からキーワー
ドと暗号化されたアプリケーションプログラムが読取ら
れる。そして、カード3と記憶手段2とのキーワードが
照合される。その結果、一致した場合には、復合化情報
に従って第2の編集手段5により、アプリケーションプ
ログラムが実行可能な状態に復合化されてプログラムが
実行される。また両者のキーワードが一致しない場合に
は、何の処理ら行なわれずプログラムは実行されない。
(実施例) 以下、本発明の一実施例を図面を参照して説明する。
第2図は本発明の一実施例を示す概要構成図である。本
実施例のプログラム盗用防止装置は、機密としたいアプ
リケーションプログラム10のオブジェクトコードを実
行不可能な状態に組替えるために、機械語レベルにおち
ている命令語を並びかえる編集プログラムを有する編集
手段11と、この編集手段11からの編集プログラムを
記憶するフレキシブル・ディスク・シート12と、編集
定義データとキーワードを有するICカード13と、こ
のICカード13の内容を読取るICカード読取装置1
4と、フレキシブル・ディスク・シート12に記憶され
ているキーワードと、ICカード読取装置14からのI
Cカード13に記憶されているキーワードとを照合する
照合手段1ヲと、この照合手段15からの照合結果を基
に、両者のキーワードが一致していれば、フレキシブル
・ディスク・シート12に記憶されていた内容をICカ
ード13に記・憶されている編集定義データを基に再度
並びかえてアプリケーションプログラム16のオブジェ
クトコードに再構成する再編集手段17とから構成して
いる6なお1つは電算機である。
以上のように、構成した本実施例のプログラム盗用防止
装置においては、機密としたいアプリケーションプログ
ラム10のオブジェクトのハーフワード(2バイト)デ
ータの入れ替えがフルワード(4バイト)単位に行なわ
れる。すなわち、例えば“0100”となっているデー
タの前半分゛′01”と後半分゛00”とを入れかえて
” 0001”とする。このようにし、て全データにつ
いて入れかえを行なったものと、このアプリケーション
プログラムであることを照明するキーワードとが、フレ
キシブル・ディスク・シート12に格納される。このア
グリゲーションプログラムを実行する際には、まずIC
カード13の情報がICカード読み取り装置11F14
によって読取られ、このICカード13内のキーワード
と、フレキシブル・ディスク、・シート12内のキーワ
ードとの照合が、電算機19の照合手段15で行なわれ
る。
その結果、両者のキーワードが一致したならば、フレキ
シブル・ディスク・シート12より暗号化編集されたア
グリゲーションプログラム10が電X1ffl19の再
編集手段17に読み取られ、ICカード13に格納され
ている編集定義データを基に編集が行なわれ、実行可能
状態に復合化されなアグリゲーションプログラムが実行
される。
次に、編集手段11および再編集手段17の作用につい
て、第3図および第4図を用いて詳述する。
まず、編集手段11においては、第3図に示すように、
オブジェクトファイルを作成しくステップA)、オブジ
ェクトを暗号化するために並びがえの編集定義を生成す
る(ステップB)。次に、オブジェクトをフルワード(
4バイト)単位にハーフワード(2バイト)データの入
れがえを行なって(ステップC)全データを暗号化し、
フレキシブル・ディスク・シート12にハーフヮードデ
ータの入れ替えを行なったデータとキーワードとを記憶
させる(ステップD)、その後、予め生成した編集定義
データとキーワードとをICカード13に格納する(ス
テップE)。
次に、再編集手段16においては、第4図に示すように
フレキシブル・ディスク・シート12のキーワードとI
Cカード13のキーワードとが一致したか否かをチエツ
クする(ステップG)、その結果、両者のキーワードが
一致した場合には、フレキシブル・ディスク・シート1
2から復合化するための再編集定義と暗号化されたアプ
リケーションプログラムとを読込み(ステy7H) 、
編集手段11で入れかえられたデータを再度ハーフワー
ド(2バイト)毎に入れかえ、実行可能なアグリゲーシ
ョンプログラムに復合化する(ステップ■)、また、両
者のキーワードが一致しない場合には、データの並びか
え処理は行なわない。
上述したように、本実施例のプログラム盗用防止装置に
おいては、アプリケーションプログラムに対応するIC
カード13をリリースされた者のみがプログラムの使用
が可能となり、プログラムの不正な流出を防止すること
ができる。また、ICカード13を持つことにより、暗
号化ということを意識することなく、極めて容易に機密
プログラムを使用することができる。
次に、本発明の池の実施例を第5図を参照して説明する
。なお本実施例では、第2図の実施例と同一部分につい
ての説明は省略し、異なる部分についてのみ説明する。
本実施例のプログラム盗用防止装置は、同図に示すよう
に、磁気カード20と、この磁気カード20の内容を読
取る磁気カード読取装置21と、アプリケーションプロ
グラム22を、1ビット単位で磁気カード20に記憶さ
れている変換関数を基にy=k (x−F)で示される
変換関数に代入し、1ビツトXを変換値yに変換する変
換手段23と、この変換手段23により変換されたプロ
グラムを記憶する磁気テープ24と、この磁気テープ2
4に記憶されたプログラムを、磁気カード20に記憶さ
れている再変換関数を基に再度アプリケーションプログ
ラム25に編集する再変換手段26とから構成している
以上このように構成した本実施例のプログラム盗用防止
装置においては、磁気カード20に記憶されていた内容
(変換定義データ)を読み取り、その読み取った内容を
基に、アプリケーションプログラム22のプログラムを
変換し、磁気テープ24に記憶する。この記憶された変
換プログラムは、磁気カード20に記憶されていた内容
(再変換定義データ)を基に再変換され、アプリケーシ
ョンプログラム25となる。
上述したように、本実施例のプログラム盗用防止装置に
おいては、磁気カード20を各個人々で保持することに
より、全てのプログラムに適用することかでき、またカ
ードとしての磁気カードを用いているので、カードとし
てのコストは前述した実施例に比べて低いものとなる。
[発明の効果コ 以上説明したように本発明によれば、対象となるプログ
ラムを供給する際に、複製不可能なカードに暗号文解読
のキーワードを持たせ、プログラムを格納した媒体(F
D)とペアにするようにしなので、カードをリリースさ
れた者のみにプログラムの使用を限定して、不正なプロ
グラムの流出を防止することができ、かつ、フロッピー
ディスクの物理的もろさ、操作の誤り等でプログラムが
壊れた場合のバックアップも作成でき、ネットワーク上
でも活用でき、しかも容易にとりはすしのきくソフト的
プログラムのみでなくカードといったハード的プロテク
トも用いて、暗号化ということを意識することなく容易
にプログラムを使用することが可能な安価で手軽なプロ
グラム盗用防止装置か提供できる。
【図面の簡単な説明】
第1図は本発明のプログラムの盗用防止装置を示す機能
ブロック図、第2図は本発明の一実施例を示す概要構成
図、第3図は第2図における編集手段の処理内容を示す
フローチャート図、第4図は第2図における再編集手段
の処理内容を示すフローチャート図、第5図は本発明の
他の実施例を示す概要構成図、第6図および第7図は従
来のプログラム盗用防止方法を夫々説明するための図で
ある。 1・・・第1の編集手段、2・・・記憶手段、3・・・
カード、4・・・カード読取手段、5・・・第2の編集
手段。 出願人代理人 弁理士 鈴江武彦 第10 ?、22 図 第3 図 第50 −  第6 口 第70

Claims (1)

  1. 【特許請求の範囲】 アプリケーションプログラムをそのままでは実行不可能
    な状態に暗号化編集する第1の編集手段と、 前記第1の編集手段により編集されたプログラム、およ
    びカードとの照合を行なうためのキーワードが記憶され
    る記憶手段と、 前記記憶手段に記憶されたプログラムを実行可能な状態
    に復合化するための情報、およびプログラムを復合する
    前にペアとなっている記憶媒体か否かを照合するための
    キーワードを有するカードと、 前記カードの情報を読取るカード読取手段と、前記カー
    ド読取手段により読取られたカードの復合化情報に基づ
    いて、前記記憶手段に記憶されたプログラムを実行可能
    な状態に復合化して前記アプリケーションプログラムに
    編集する第2の編集手段と、 を備えて成ることを特徴とするプログラム盗用防止装置
JP63068396A 1988-03-23 1988-03-23 プログラム盗用防止装置 Pending JPH01240948A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63068396A JPH01240948A (ja) 1988-03-23 1988-03-23 プログラム盗用防止装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63068396A JPH01240948A (ja) 1988-03-23 1988-03-23 プログラム盗用防止装置

Publications (1)

Publication Number Publication Date
JPH01240948A true JPH01240948A (ja) 1989-09-26

Family

ID=13372497

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63068396A Pending JPH01240948A (ja) 1988-03-23 1988-03-23 プログラム盗用防止装置

Country Status (1)

Country Link
JP (1) JPH01240948A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10240518A (ja) * 1997-02-25 1998-09-11 Mitsubishi Electric Corp ソフトウェア版権保護装置
JPH1115738A (ja) * 1997-06-25 1999-01-22 Nec Corp 暗号化機能付きデータ蓄積装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10240518A (ja) * 1997-02-25 1998-09-11 Mitsubishi Electric Corp ソフトウェア版権保護装置
JPH1115738A (ja) * 1997-06-25 1999-01-22 Nec Corp 暗号化機能付きデータ蓄積装置

Similar Documents

Publication Publication Date Title
JP3073590B2 (ja) 電子化データ保護システム、使用許諾者側装置および使用者側装置
JPS62502080A (ja) 多重に暗号化されたキ−と一重に解読する回路モジユ−ルを使用したソフトウエア海賊行為の防止システム
UA65637C2 (uk) Спосіб та система захисту від копіювання
KR950029930A (ko) 화일 액세스 보안유지 방법 및 장치
CN106650327A (zh) 基于动态恢复so文件的Android应用加固方法
US20050246551A1 (en) System and method for rendering selective presentation of documents
US20070014403A1 (en) Controlling distribution of protected content
KR101190124B1 (ko) 소스 코드 보호
JP2002351742A (ja) データ保護装置
JP3773697B2 (ja) メディア固有化情報を移動可能にする情報記録方法
JPS63182758A (ja) 情報記憶装置
JPH01240948A (ja) プログラム盗用防止装置
JPH1196674A (ja) データ記録装置、データ再生装置及びデータ記録媒体
JPH05250268A (ja) コピーガード装置
JPS59123954A (ja) 記憶デ−タの不正使用防止方式
JP3184189B2 (ja) 電子化データ保護システム、使用許諾者側装置、使用者側装置、使用許諾情報生成処理方法および電子化データ復号処理方法
JPH01253051A (ja) 情報保護方法
CN101587723A (zh) 一种防复制光存储介质及其制造方法
JPH043224A (ja) Icカードによるソフトモジュールの管理方法
JPS6358538A (ja) ソフトウエア保護方式
US7174464B1 (en) Method of making a user piece of software secure by means of a processing and secret memorizing unit, and a system constituting an application thereof
JPS59173847A (ja) コンピユ−タソフトウエアの保護方法およびその装置
JPH10240517A (ja) ソフトウェアの複製防止方法及び装置
USRE39802E1 (en) Storage medium for preventing an irregular use by a third party
JPS63311454A (ja) 秘密保護方式