JP4128982B2 - Information processing apparatus, information processing method, computer program, and storage medium - Google Patents
Information processing apparatus, information processing method, computer program, and storage medium Download PDFInfo
- Publication number
- JP4128982B2 JP4128982B2 JP2004178523A JP2004178523A JP4128982B2 JP 4128982 B2 JP4128982 B2 JP 4128982B2 JP 2004178523 A JP2004178523 A JP 2004178523A JP 2004178523 A JP2004178523 A JP 2004178523A JP 4128982 B2 JP4128982 B2 JP 4128982B2
- Authority
- JP
- Japan
- Prior art keywords
- application program
- file
- user
- authentication
- program
- 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.)
- Expired - Fee Related
Links
- 230000010365 information processing Effects 0.000 title claims description 19
- 238000003860 storage Methods 0.000 title claims description 19
- 238000004590 computer program Methods 0.000 title claims description 6
- 238000003672 processing method Methods 0.000 title claims 3
- 238000000034 method Methods 0.000 claims description 92
- 230000008569 process Effects 0.000 claims description 84
- 238000012545 processing Methods 0.000 claims description 42
- 238000006243 chemical reaction Methods 0.000 claims description 41
- 230000037430 deletion Effects 0.000 claims description 6
- 238000012544 monitoring process Methods 0.000 claims description 6
- 238000012217 deletion Methods 0.000 claims description 5
- 238000012423 maintenance Methods 0.000 description 23
- 238000012360 testing method Methods 0.000 description 18
- 230000006870 function Effects 0.000 description 13
- 230000004913 activation Effects 0.000 description 11
- 238000007726 management method Methods 0.000 description 10
- 238000012550 audit Methods 0.000 description 8
- 230000007246 mechanism Effects 0.000 description 7
- 230000008859 change Effects 0.000 description 4
- 230000008707 rearrangement Effects 0.000 description 3
- 238000005215 recombination Methods 0.000 description 3
- 230000006798 recombination Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000000126 substance Substances 0.000 description 2
- 125000002066 L-histidyl group Chemical group [H]N1C([H])=NC(C([H])([H])[C@](C(=O)[*])([H])N([H])[H])=C1[H] 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
Images
Landscapes
- Storage Device Security (AREA)
Description
本発明はパーソナルコンピュータ等の汎用情報処理装置上で動作する一般アプリケーションプログラムの実行許可/不許可を行う技術に関するものである。 The present invention relates to a technique for permitting / not permitting execution of a general application program that operates on a general-purpose information processing apparatus such as a personal computer.
近年、セキュリティに関する重要性が高まり、様々な分野で幾つものセキュリティの仕組みが考えられている。特に、認証によるセキュリティの仕組みは広く用いられている。例えば、認証によるセキュリティの仕組みは、コンピュータ端末のオペレーティングシステム(以下、OS)の起動時やWebシステムへのログイン時など、端末やシステムにログインする際に正当なユーザのみに利用させる仕組みとして用いられている。 In recent years, the importance of security has increased, and a number of security mechanisms have been considered in various fields. In particular, a security mechanism based on authentication is widely used. For example, a security mechanism based on authentication is used as a mechanism that is used only by a legitimate user when logging in to a terminal or system, such as when an operating system (hereinafter referred to as OS) of a computer terminal is started or when logging into a Web system. ing.
コンピュータ端末にインストールされたアプリケーションプログラムの起動に対してもセキュリティ機能を施す仕組みが考えられている。 A mechanism for applying a security function to the activation of an application program installed in a computer terminal is considered.
かかる目的を達成するため、アプリケーションのインストールや起動に関してユーザ認証を行い、その認証処理を経ない限り、アプリケーションを起動しないという技術が知られている(特許文献1)。 In order to achieve such an object, a technique is known in which user authentication is performed for installation and activation of an application, and the application is not activated unless the authentication process is performed (Patent Document 1).
この技術のシステムにおいては、認証によりアプリケーションの起動に対するセキュリティを提供し、さらに複数のアプリケーションに対する認証を簡素化することが可能となる。
しかしながら、上記の技術を用いたシステムにおける認証セキュリティ機能は、予め決められた特定のアプリケーションプログラムについてのみであり、認証を必要としない既存のアプリケーションに、後から認証セキュリティ機能を付加することはできない。 However, the authentication security function in the system using the above technology is only for a specific application program determined in advance, and the authentication security function cannot be added later to an existing application that does not require authentication.
本発明は、認証によりアプリケーションに対するセキュリティを提供と共に、実行可能な形式のアプリケーションプログラムを、ネットワーク上の他のクライアント装置から操作されることを防ぐ仕組みを提供することを目的とする。 It is an object of the present invention to provide a mechanism for preventing security of an application by authentication and preventing an executable application program from being operated from another client device on a network.
上記の目的を達成するための本発明の情報処理装置は以下の構成を備える。すなわち、
アプリケーションプログラムを実行可能な情報処理装置であって、
前記アプリケーションプログラムを暗号化し、当該アプリケーションプログラムを暗号化された形式に変換する変換手段と、
当該アプリケーションプログラムの利用者を認証するための利用者情報の入力を受け付ける利用者情報受付手段と、
前記利用者情報受付手段で受け付けた利用者情報に従って当該利用者の認証処理を行う認証手段と、
前記変換手段で変換された該暗号化された形式のアプリケーションプログラムを、実行可能なアプリケーションプログラムに復号する復号手段と、
前記復号手段で復号されることにより生成されるアプリケーションプログラムの格納先が共有フォルダか否かを判定する判定手段とを備え、
前記認証手段で当該利用者が認証され、かつ前記判定手段で当該アプリケーションプログラムの格納先が共有フォルダではないと判定された場合に、前記復号手段を実行し、一方、前記判定手段で当該アプリケーションプログラムの格納先が共有フォルダと判定された場合、又は前記認証手段により当該利用者が認証されなかった場合に、前記復号手段の実行を禁止することを特徴とする。
In order to achieve the above object, an information processing apparatus of the present invention comprises the following arrangement. That is,
An information processing apparatus capable of executing an application program,
Conversion means for encrypting the application program and converting the application program into an encrypted format;
User information receiving means for receiving input of user information for authenticating the user of the application program;
Authentication means for performing authentication processing of the user according to the user information received by the user information receiving means;
Decryption means for decrypting the encrypted application program converted by the conversion means into an executable application program;
Determination means for determining whether or not the storage destination of the application program generated by being decrypted by the decryption means is a shared folder,
When the authentication unit authenticates the user and the determination unit determines that the storage destination of the application program is not a shared folder, the decryption unit is executed, while the determination unit executes the application program. When the storage location is determined to be a shared folder, or when the user is not authenticated by the authentication unit, execution of the decryption unit is prohibited.
本発明によれば、認証によりアプリケーションに対するセキュリティを提供すると共に、実行可能な形式のアプリケーションプログラムを、ネットワーク上の他のクライアント装置から操作されることを防ぐ仕組みを提供することができる。 ADVANTAGE OF THE INVENTION According to this invention, while providing the security with respect to an application by authentication, the mechanism which prevents operating the application program of an executable format from the other client apparatus on a network can be provided.
以下、添付図面に従って本発明に係る実施形態を詳細に説明する。 Hereinafter, embodiments according to the present invention will be described in detail with reference to the accompanying drawings.
<第1の実施の形態>
図1は本発明の実施形態のアプリケーションプログラムのセキュリティ管理を実行するセキュリティ管理プログラムを有する、セキュリティ管理装置の構成を示す図である。
<First Embodiment>
FIG. 1 is a diagram showing a configuration of a security management apparatus having a security management program for executing security management of an application program according to an embodiment of the present invention.
実施形態におけるセキュリティ管理装置は、図示の汎用情報処理装置であるパーソナルコンピュータ(以下、PC)100を用いた例を説明する。また、PC100上で動作するOS(オペレーティングシステム)としては、米国マイクロソフト社が提供するWindows(登録商標)を例にする。 The security management apparatus according to the embodiment will be described using an example using a personal computer (hereinafter, PC) 100 which is a general-purpose information processing apparatus shown in the figure. Further, as an OS (operating system) operating on the PC 100, Windows (registered trademark) provided by Microsoft Corporation in the United States is taken as an example.
CPU101は、システムバス104に接続される各デバイスやコントローラを統括的に制御する。また、ROM102には、BIOS(Basic Input Output System)、ブートプログラムが格納されている。RAM103は、CPU101の主メモリ、ワークエリア等として機能する。
The
外部メモリ(通常はハードディスクドライブとする)111には、OS、各種アプリケーションプログラム(ワードプロセッサやスプレッドシート等であり、その種類は問わない)112が格納されている。これらアプリケーションプログラム112は、少なくともその母体となる実行プログラム113(exeファイル)を含むことになる。また、実施形態における中枢となるセキュリティ管理プログラム114も外部メモリに格納される。更に、、外部メモリ111には、各種アプリケーションで作成されたデータファイルも記憶されることになる。
An external memory (usually a hard disk drive) 111 stores an OS and various application programs (word processors, spreadsheets, etc., regardless of the type) 112. These application programs 112 include at least the execution program 113 (exe file) that is the parent program. In addition, the
本装置に電源が投入されると、CPU101はROM102のブートプログラムを実行することで、メモリコントローラ107を介して外部メモリ111にアクセスし、OSをRAM103にロードする。そして、ビデオコントローラ106を介してCRT110にOSの操作画面の表示処理と、入力コントローラ105を介したキーボード及びマウス(登録商標)等のポインティングデバイス(KB/PD)109(指示手段)から入力処理とを行い、必要に応じて外部メモリ111にアクセスしてアプリケーションプログラム112、実施形態におけるセキュリティ管理プログラム114の起動を行うことになる。場合によっては、通信インタフェース108を介してネットワークとの通信を行うことになる。
When the apparatus is turned on, the
なお、図1は実施形態における装置の一例である点に注意されたい。すなわち、表示装置はCRTに限らず液晶表示装置でも構わず、外部メモリ111はハードディスクに限らずその種類を問わない。
It should be noted that FIG. 1 is an example of an apparatus in the embodiment. That is, the display device is not limited to a CRT, and may be a liquid crystal display device, and the
<セキュリティ管理プログラムの概要>
実施形態におけるセキュリティ管理プログラム114は、アプリケーションプログラム112にセキュリティ機能を付加するものであるが、2つの独立したプログラムで構成される。
<Outline of security management program>
The
1つは、既存の一般アプリケーションプログラムを実行不可形式ファイルに変換するファイル変換プログラム、もう1つは、実行不可形式に変換されたアプリケーションプログラムファイルについての起動とユーザメンテナンス処理を行う認証処理プログラムである。 One is a file conversion program that converts an existing general application program into an inexecutable format file, and the other is an authentication processing program that performs activation and user maintenance processing for the application program file converted into an inexecutable format. .
「ファイル変換プログラム」は、その管理者のみ、つまり、予め設定された管理者用認証処理を経た管理者だけが実行可能なプログラムである。このため、このファイル変換プログラムをPC100にインストールする際、もしくは最初に起動した際、管理者名及びパスワードをキーボードから入力させ、それを暗号化して外部メモリの適当な位置に記憶(登録)し、次回起動した際には利用者にパスワードを入力させ、管理者として登録したパスワードと一致した場合にのみ、ファイル変換処理に移行できるようにした。つまり、このファイル変換プログラムそのものが認証処理を含んだものとなっており、よりセキュリティ機能を向上させているものである。 The “file conversion program” is a program that can be executed only by the administrator, that is, only by an administrator who has undergone a preset administrator authentication process. For this reason, when this file conversion program is installed on the PC 100 or when it is first started up, the administrator name and password are entered from the keyboard, encrypted and stored (registered) in an appropriate location in the external memory. When starting next time, the user is prompted to enter the password, and the file conversion process can only be entered if it matches the password registered as an administrator. That is, the file conversion program itself includes an authentication process, and further improves the security function.
先ず、管理者は、ファイル変換プログラムを起動し認証に成功したものとする。管理者は、PC100にインストールされているアプリケーションプログラム(OSに関連するプログラム以外の一般アプリケーションであればその種類を問わない)のうち、特定の利用者のみに実行許可しようとするアプリケーションプログラムファイルを指定する。指定方法は如何なるものでも構わないが、例えば、キーボードより該当するアプリケーションプログラムをフルパス、例えば、“c:\aaa\bbb\ccc.exe”(ドライブcのディレクトリ(フォルダ)“aaa”内の更なるディレクトリ“bbb”内に存在する“ccc.exe”という名の実行プログラムファイル)の文字列を入力する。或いは、ファイルブラウザ形式のウインドウを表示し、ポインティングデバイスの操作にしたがい、ドライブ、サブフォルダと順にたどっていき目的とする実行プログラムを指定する方法でも構わない。 First, it is assumed that the administrator activates the file conversion program and succeeds in authentication. The administrator designates an application program file to be permitted to be executed only by a specific user among application programs installed on the PC 100 (regardless of the type of general application other than the OS-related program). To do. Any designation method may be used. For example, the full path of the corresponding application program from the keyboard, for example, “c: \ aaa \ bbb \ ccc.exe” (a further directory (folder) “aaa” in the drive c) Enter the character string of the executable program file named “ccc.exe” that exists in the directory “bbb”. Alternatively, a method may be used in which a file browser format window is displayed, and the target execution program is specified in the order of drive and subfolder in accordance with the operation of the pointing device.
いずれにしても目的とするアプリケーションプログラムファイル“ccc.exe”を指定し、所定の指示を与えると、実施形態のファイル変換プログラムは、認証処理プログラムを介しない限り実行できない形式に変換し(詳細後述)、その変換後のファイル名を“ccc.ex_”として、実施形態におけるセキュリティ管理プログラムの管理している所定のフォルダ(実施形態では、この管理フォルダのパスを「c:\Ovl\bin\」とする)に保存すると共に、オリジナルプログラムファイル“ccc.exe”を削除する。この際、変換後のファイル“ccc.ex_”のファイル属性(一般にアトリビュートと呼ばれる)の可視/不可視の情報を“不可視”に設定することで、見かけ上、そのファイルが外部メモリ111に存在しないように見せかける。以上の結果、アプリケーションプログラムファイル“ccc.exe”は実際に存在しなくなり、尚且つ、変換後のファイル“ccc.ex_”の存在も格別な操作をしなければ見えない状況を提供できるようになる。
In any case, when the target application program file “ccc.exe” is designated and given instructions are given, the file conversion program of the embodiment converts it into a format that cannot be executed without going through the authentication processing program (details will be described later). ), And the converted file name is “ccc.ex_”, and a predetermined folder managed by the security management program in the embodiment (in this embodiment, the path of the management folder is “c: \ Ovl \ bin \”). And delete the original program file “ccc.exe”. At this time, by setting the visible / invisible information of the file attribute (generally called an attribute) of the converted file “ccc.ex_” to “invisible”, the file does not seem to exist in the
なお、以下では、ファイル変換プログラムによって、実施形態における認証プログラムを介しない限り、実行又はオープンできないファイルをスクランブルファイルという。 Hereinafter, a file that cannot be executed or opened by the file conversion program unless the authentication program in the embodiment is used is referred to as a scrambled file.
一方、認証プログラムにおけるアプリケーション起動部分(メンテナンス処理についてはここでは除く)は、大きくわけて4つ処理を含む。第1には認証処理である。第2には認証に成功した場合にスクランブルファイル“ccc.ex_”から、実行可能なファイル“ccc.exe”に復元する復元処理である。そして、第3には、復元した“ccc.exe”の起動をOSに対して要求するアプリケーション起動処理である。そして、第4には、アプリケーションプログラム“ccc.exe”の終了要求をした後、その“ccc.exe”が終了するのを待って“ccc.exe”を削除する削除処理である。 On the other hand, the application activation part (excluding the maintenance process here) in the authentication program roughly includes four processes. The first is authentication processing. The second is restoration processing for restoring the executable file “ccc.exe” from the scramble file “ccc.ex_” when the authentication is successful. The third is application activation processing that requests the OS to activate the restored “ccc.exe”. A fourth process is a deletion process in which after the application program “ccc.exe” is requested to end, the “ccc.exe” is deleted after waiting for the “ccc.exe” to end.
以上の結果、アプリケーションプログラムファイル“ccc.exe”が外部メモリ111に存在する期間は、実質的に、そのアプリケーションが実行中に限られることとなり、第3者によって、実行可能アプリケーションプログラムファイル“ccc.exe”が複製されることを抑制することが可能となる。以下では、本実施形態について、より具体的に説明する。
As a result, the period during which the application program file “ccc.exe” is present in the
なお、以下の説明において、実施形態におけるセキュリティ管理プログラム114は既に外部メモリにインストールされているものとする。
In the following description, it is assumed that the
<ファイル変換処理プログラムの説明>
まず、実施形態におけるセキュリティ管理プログラム114を構成するファイル変換プログラムの処理を図3のフローチャートを用いて説明する。ここではセキュリティ機能を追加したいアプリケーションの実行ファイル113を、OSからは直接起動することができないスクランブルファイルに変換するものである。以下に説明する各ステップはCPU101がRAM103にロードしたセキュリティ管理プログラムを実行することで実現されるものである。
<Description of file conversion processing program>
First, the processing of the file conversion program constituting the
まず、ユーザがセキュリティ管理プログラムのファイル変換処理を起動すると、CPU101は、ビデオコントローラ106を制御して、管理者であるか否かを確認するため、管理者名とパスワードを入力するためのユーザインタフェース(ウインドウ)の描画指示を行い、キー入力を待つ(ステップS310)。なお、以下では、ビデオコントローラ106に対する描画要求を行う処理を、単に「表示する」と言う。
First, when the user starts the file conversion process of the security management program, the
そして、ステップS311において、キー入力された結果と、予め登録された管理者名とパスワードとの一致した場合に限ってステップS301に処理を進める。なお、入力した管理者名とパスワードの誤り回数が所定回数以上の場合には本処理を終了するようにしても良い。 In step S311, the process proceeds to step S301 only when the result of key input matches the administrator name and password registered in advance. Note that this process may be terminated when the number of errors in the entered administrator name and password is greater than or equal to a predetermined number.
処理がステップS301に進むと、図4に示す入力画面のユーザインターフェース(以下、UI)を表示する。 When the process proceeds to step S301, a user interface (hereinafter, UI) of the input screen shown in FIG. 4 is displayed.
ステップS302はユーザがキーボードやポインティングデバイスを用いて変換処理対象に指定するアプリケーションプログラムの実行ファイルの選択入力を行う。入力は、先に説明したように、目的とするアプリケーションプログラムファイルの所在を特定するパス付きファイル名の文字列をキーボードを操作してテキストボックス41に入力するか、或いは、図4における「ファイル指定」ボタン42の位置までポインティングデバイスに連動するカーソルを移動し、ポインティングデバイスに備えられたボタンを押下し、ファイルビューワウインドウ(不図示)を表示し、ドライブ、ディレクトリ、ファイル名を同様の操作で行う。ファイルの指定が行われると、そのファイルのパス情報を含む文字列がテキストボックス41に表示される。なお、ファイルビューワにてファイルを選択する技術そのものは公知であるので、ここでの説明は省略する。
In step S302, the user selects and inputs an execution file of an application program to be designated as a conversion process target using a keyboard or a pointing device. As described above, the character string of the file name with the path that specifies the location of the target application program file is input to the
次にステップS303では、CPU101はステップS302におけるファイルの選択入力がなされているかを判定し、選択入力がなされている場合には図4においてグレーアウトしていた「ファイル変換」ボタン43を有効にする表示を行う(ステップS304、図5)。選択入力がなされていない場合にはステップS301に戻って図4のUI表示を行う。
Next, in step S303, the
そして、ステップS305ではCPU101はファイル変換ボタン43が押下されたか否かを判定する。ステップS305の判定の結果、ファイル変換ボタンが押下されている場合にはステップS306にて、指定されたファイル(テキストボックスに入力されたパス位置のファイルで、図示の場合、ドライブDのディレクトリ“Test”内にある“FcPro.exe”というファイル)の変換を行う。このステップS306の詳細は後述するが、この結果、管理フォルダ(c:\Ovl\bin\)に、スクランブルファイル“FCPro.ex_”(実行ファイルを示す拡張子“exe”の3文字目をアンダーバーに置換えたファイル)が作成されることになる。
In step S305, the
ステップS307にて、ファイル変換が正常終了したか否かを判断する。これは、ファイルを作成している際に、何らかのエラー(例えば、容量不足等で書き込み失敗した場合等)に対処するものである。異常終了した場合には、ステップS304に戻り、再度、ファイル変換ボタンを押下するよう促す。 In step S307, it is determined whether the file conversion has been completed normally. This is to deal with some kind of error (for example, when writing fails due to insufficient capacity, etc.) while creating a file. If the process ends abnormally, the process returns to step S304 to prompt the user to press the file conversion button again.
また、正常に変換処理が終了したと判断した場合には、ステップS308にて、変換元のオリジナルファイル(図4では“FcPro.exe”)を削除し、本処理を終了する。 If it is determined that the conversion process has been completed normally, the original file (“FcPro.exe” in FIG. 4) of the conversion source is deleted in step S308, and this process ends.
次に、上記ステップS306の処理内容の詳細を図6に従って説明する。スクランブルファイルは、先に説明したように、そのままでは実行できない形式になる。そして、実際に実行(起動)する際には、実行可能なファイルへの逆変換処理が介在することになるので、変換及び逆変換はストレス無く高速なものであることが望ましい。 Next, details of the processing in step S306 will be described with reference to FIG. As described above, the scramble file has a format that cannot be executed as it is. When actually executing (starting up), reverse conversion processing into an executable file is involved. Therefore, it is desirable that conversion and reverse conversion be fast without stress.
そこで、本実施形態におけるステップS306は次のようにして、スクランブルファイルへの変換を行うようにした。 Therefore, in step S306 in the present embodiment, conversion to a scramble file is performed as follows.
先ず、CPU101は、ステップS601において、管理フォルダ内に、オリジナル実行プログラムファイルの拡張子の文字列が異なる書き込み用ファイルをオープンし、その先頭の1024バイト(1KB)にダミーデータを書き込む。
First, in step S601, the
通常、OSはプログラムファイルを実行する際、そのヘッダを解析して実行することになる。上記の書き込むダミーデータは、解析した際に、エラーになるようにしたデータである。理由は、仮に、ダミーデータを書き込まないで、手作業で拡張子“ex_”のファイルを“exe”にし、それを実行すると暴走してしまう可能性があるためである。上記の場合、拡張子及びファイルヘッダの2段階(後述するように不可視設定することになるので3段階とも言える)で実行不可にしているため、安全性を高めることになる。 Normally, when the OS executes a program file, it analyzes and executes the header. The dummy data to be written is data that causes an error when analyzed. The reason is that if dummy data is not written and a file with the extension “ex_” is manually set to “exe” and executed, it may run out of control. In the above case, since the execution is disabled in the two stages of the extension and the file header (which can be said to be the third stage because it is set invisible as described later), the safety is improved.
次に、ステップS602においては、上述のステップS302でユーザが入力したファイル変換の対象ファイル(アプリケーションの実行ファイル)のファイルサイズを取得する。これはOSが通常有するファンクションをコールすることで得ることができる。 In step S602, the file size of the file conversion target file (application execution file) input by the user in step S302 is acquired. This can be obtained by calling a function that the OS normally has.
そしてステップS603でCPU101は実行ファイル113から所定量単位に、データをRAM103上に読み込む。実施形態におけるこの「所定量」は1024バイト(=1KB)とした。
In step S603, the
そして、ステップS604でCPU101はRAM103上の1024バイトのデータを、その半分である512バイトで2分割する。そしてステップS605においては分割したデータを所定の順番で組み替えて外部メモリ111の確保したファイルに書き込む。
In step S604, the
実施形態では、2分割しているので、後半の512バイトを書き込み、その後で前半の512バイトを書き込むことになる。図7は、上記のステップS601乃至605における処理の具体例を示している。 In the embodiment, since it is divided into two, 512 bytes in the latter half are written, and then 512 bytes in the first half are written. FIG. 7 shows a specific example of the processing in steps S601 to S605 described above.
ステップS606ではCPU101は実行ファイル113のファイルサイズと既に読み込んだデータ容量からまだ読み込んでいないデータサイズが1024バイト以下か否かを判定し、まだ1024バイト以上ある場合にはステップS603に戻って上記処理を継続する。もし、残りのデータサイズが1024バイト以下の場合には、ステップS607に進んで、残りのデータをRAM103に読み込み、外部メモリ111上の変換後のファイルに書き込む(ステップS608)。
In step S606, the
以上で変換処理が完了したことになるが、実施形態では、安全のため、ステップS609にて、書き込みファイルとして生成したスクランブルファイル(xxx.ex_)のファイル属性として隠しファイルの属性をセットする。 Although the conversion process is completed as described above, in the embodiment, for safety, the attribute of the hidden file is set as the file attribute of the scramble file (xxx.ex_) generated as the write file in step S609.
<認証プログラムにおけるセキュリティ管理の説明>
上記のようにして、管理者は、必要なアプリケーションプログラムファイルから生成したスクランブルファイルを管理フォルダに格納していくが、そのファイル数に制限はない。
<Description of security management in authentication program>
As described above, the administrator stores the scramble file generated from the necessary application program file in the management folder, but the number of files is not limited.
一方、復元して実行するためには、上記の逆の処理を行うことになるが、スクランブルファイルの数だけ、それを復元するためのプログラムを用意するのは、外部メモリ11を消費してしまい、効率的とは言えない。 On the other hand, in order to restore and execute, the reverse processing described above is performed, but preparing the programs for restoring the same number of scrambled files consumes the external memory 11. It's not efficient.
また、アプリケーションプログラムによっては、元々存在していたパス位置から起動することを条件にしているものもある。 Some application programs are conditional on starting from a path location that originally existed.
そこで、実施形態では、複数のスクランブルファイル(実行不可に変換されたアプリケーションプログラムファイル)に対し、復元処理を実行する共通な認証プログラムを用いるものとした。ただし、個々の実行不可アプリケーションプログラムファイルの所在位置や引数はそれぞれ異なるので、各アプリケーション毎にショートカットファイルを作成することで対処した。ショートカットファイルとは、アプリケーションの実体ファイルではなく、そのアプリケーションプログラムファイルの所在情報、及び、引数となる文字列で構成されるものであり、ファイルサイズが非常に小さいものである。 Therefore, in the embodiment, a common authentication program for executing restoration processing is used for a plurality of scramble files (application program files converted to be unexecutable). However, since the location and arguments of each non-executable application program file are different, we dealt with creating a shortcut file for each application. A shortcut file is not a substance file of an application but is composed of location information of the application program file and a character string as an argument, and has a very small file size.
例えば、実施形態における認証プログラム(復元プログラムを含む)ファイルが、
c:\Ovl\Bin\PWExec.exe
である場合、次のような記述形式のショートカットファイルを作成する。
c:\Ovl\Bin\PWExec.exe "{パス付きオリジナルプログラム名}" "c:\Ovl\Bin\{スクランブルファイル名}"
例えば、アプリケーションプログラムファイルが元々存在したパス付きファイル名が、
c:\Fcraft\FCXEdtr.exe
である場合には、次のような記述を含むショートカットファイルを作成する。
c:\Ovl\Bin\PWExec.exe "c:\Fcraft\FCXEdtr.exe" "c:\Ovl\Bin\FCXEdtr.ex_"
このショートカットファイルを、例えばデスクトップ画面に配置するとか、メニューに登録する等を行い、ユーザが実行の指示を入力すると、認証プログラム「c:\Ovl\Bin\PWExec.exe」が起動し、その際、認証プログラムに引数「c:\Fcraft\FCXEdtr.exe c:\Ovl\Bin\FCXEdtr.ex_」が引き渡されることになる。
For example, the authentication program (including the restoration program) file in the embodiment is
c: \ Ovl \ Bin \ PWExec.exe
If so, create a shortcut file with the following description format.
c: \ Ovl \ Bin \ PWExec.exe "{original program name with path}""c: \ Ovl \ Bin \ {scrambled file name}"
For example, the file name with the path where the application program file originally existed is
c: \ Fcraft \ FCXEdtr.exe
If so, create a shortcut file containing the following description:
c: \ Ovl \ Bin \ PWExec.exe "c: \ Fcraft \ FCXEdtr.exe""c: \ Ovl \ Bin \ FCXEdtr.ex_"
When this shortcut file is placed on the desktop screen or registered in the menu, for example, when the user inputs an execution instruction, the authentication program “c: \ Ovl \ Bin \ PWExec.exe” is started. Then, the argument “c: \ Fcraft \ FCXEdtr.exe c: \ Ovl \ Bin \ FCXEdtr.ex_” is delivered to the authentication program.
従って、認証プログラムは起動した際に認証(管理者が設定したパスワードと利用者の入力したパスワードの合致するか否かの判定処理)を先ず行い、その認証に成功した場合、第2引数であるスクランブルファイル「c:\Ovl\Bin\FCXEdtr.ex_」を逆変換して第1引数であるオリジナルの実行可能なファイル「c:\Fcraft\FCXEdtr.exe」を作成した上で、逆変換して得られた「c:\Fcraft\FCXEdtr.exe」を起動させればよいことになる。 Therefore, when the authentication program is started, authentication (determination process of whether or not the password set by the administrator and the password input by the user matches) is first performed, and if the authentication is successful, it is the second argument. The scrambled file “c: \ Ovl \ Bin \ FCXEdtr.ex_” is reverse converted to create the original executable file “c: \ Fcraft \ FCXEdtr.exe” as the first argument, and then reverse converted. The obtained “c: \ Fcraft \ FCXEdtr.exe” should be started.
認証プログラム「c:\Ovl\Bin\PWExec.exe」は目的とするアプリケーションを起動した後も、RAM103に常駐しつづけ、該当するアプリケーションが終了した場合は、その実行可能ファイルを削除し、自身の処理も終了する。
The authentication program “c: \ Ovl \ Bin \ PWExec.exe” continues to reside in the
ショートカットファイルの作成であるが、実施形態の場合、PC100上で稼働するOSがWindows(登録商標)としているので、OSの機能を利用することとした。図2はOSに用意されているショートカット作成のGUIの例を示している。図中の「コマンドライン」のテキストボックスに上記の文字列を記述することで作成できる(図示では3つの例を示している)。なお、実施形態ではショートカットファイルで実現する例を示したが、バッチファイルでも同様であり、他のOSにも同様に実現できるのは容易に想到し得よう。バッチファイルの場合には、テキストエディタで作成できるし、多くのOSでも採用されている。 Although a shortcut file is created, in the case of the embodiment, since the OS running on the PC 100 is Windows (registered trademark), the OS function is used. FIG. 2 shows an example of a shortcut creation GUI prepared in the OS. It can be created by describing the above character string in the “command line” text box in the figure (three examples are shown in the figure). In the embodiment, an example in which a shortcut file is used has been described. However, the same applies to a batch file, and it can easily be realized that other OSs can be realized in the same manner. In the case of a batch file, it can be created by a text editor, and it is also adopted by many OSs.
さて、実施形態における認証プログラム(上記例では「c:\Ovl\Bin\PWExec.exe」)ファイルは、スクランブルファイルを実行可能ファイルに逆変換する以外の処理として、管理者が各利用者のパスワードの設定等のメンテナンス処理をも行うものとした。メンテナンス処理は、管理者コード及び管理者のパスワードを入力した場合についてのみ移行することが可能である。特に管理者がメンテナンス操作を行う場合には、ショートカットではなく認証プログラムをダイレクトに起動しても構わないことになる。 Now, the authentication program ("c: \ Ovl \ Bin \ PWExec.exe" file in the above example) file in the embodiment is processed by the administrator as a process other than the reverse conversion of the scrambled file into an executable file. It is assumed that maintenance processing such as setting is also performed. The maintenance process can be shifted only when the administrator code and the administrator password are input. In particular, when the administrator performs a maintenance operation, the authentication program may be directly started instead of the shortcut.
上記を踏まえ、実施形態における認証プログラムの処理手順を、図8のフローチャートに従って説明する。 Based on the above, the processing procedure of the authentication program in the embodiment will be described according to the flowchart of FIG.
なお、ここでは、
c:\Ovl\Bin\PWExec.exe "c:\test\AAA.exe" "c:\Ovl\Bin\AAA.ex_"
の文字列が記述されたショートカットファイルのアイコンを、ポインティングデバイスを操作(通常はダブルクリック)して起動した例を説明する。つまり、実行不可に変換されたプログラムファイル「c:\test\AAA.ex_」を逆変換して実行可能にし、起動する場合である。
Here,
c: \ Ovl \ Bin \ PWExec.exe "c: \ test \ AAA.exe""c: \ Ovl \ Bin \ AAA.ex_"
A description will be given of an example in which an icon of a shortcut file in which the character string is written is activated by operating a pointing device (usually double-clicking). In other words, the program file “c: \ test \ AAA.ex_” converted to non-executable is reverse-converted to be executable and started.
本実施形態における認証プログラムが起動すると、ステップS801において、CPU101は外部メモリ111に記憶される表示データを用いて図9に示すユーザインターフェース90を表示し、テキストボックス91、92にユーザ名(ユーザID)及びパスワードの入力を促す。表示されるユーザインタフェースの上部には、実行しようとするファイル(この時点では存在しないが、逆変換された場合のファイル)名のメッセージ文字列が表示される。上記の例では、「c:\test\AAA.exe」を起動する旨のメッセージが表示されることになる。
When the authentication program in the present embodiment is activated, in step S801, the
そして、ステップS802でユーザ名(ユーザID)及びパスワードの文字列をキーボード109から入力するのを待つ。
In step S802, the process waits for input of a user name (user ID) and a password character string from the
次にCPU101は、ステップS803、S804、S811にて、「起動」ボタン93、「メンテナンス」ボタン94、「終了」ボタン95のいずれが押下(クリック)されるのを待つ。
Next, in steps S803, S804, and S811, the
ステップS803で、「起動」ボタンが押下されていると判定した場合には、CPU101はステップS805で認証識別処理を行う。また、ステップS804で「メンテナンス」ボタンが押下されていると判定した場合には、ステップS806で認証識別処理を行う。
If it is determined in step S803 that the “start” button has been pressed, the
ここでステップS805及びステップS806の処理であるが、管理者が予め設定登録したユーザIDとパスワードを対にするテーブルを作成しておき、それを参照して認証を行う。テーブルは、外部メモリ111にファイル(以下、認証テーブルファイルという)として格納されるものであるが、セキュリティを確保するため、所定の暗号化処理が施されるものとする。また、テーブルにはユーザIDとパスワード以外に、その権限情報(管理者であるか、一般ユーザであるか)、及び、各種メンテナンスに関る情報が1レコードとして記憶されている。登録するユーザ数(レコード数)に制限はない。
Here, in the processing of step S805 and step S806, a table for pairing the user ID and password set and registered in advance by the administrator is created, and authentication is performed with reference to the table. The table is stored in the
「起動」ボタン93、「メンテナンス」ボタン94が押下されると、認証テーブルファイルの暗号を復号する。そして、ステップS805では、テキストボックス91、92に入力されたユーザIDとパスワードの文字列が完全一致する情報が、暗号復号した認証テーブルファイル内に存在するか否かで認証処理を行う(管理者か一般ユーザかは問わない)。また、ステップS806では、認証テーブルファイルの権限情報として管理者を示すユーザIDとパスワードとの照合が行われる。換言すれば、「メンテナンス」ボタン94の押下した際にメンテナンス処理に移行できるのは、管理者のみとなる。なお、暗号化処理、暗号復号処理そのものは公知であるので、その詳細については省略する。
When the “start”
また、認証テーブルファイルのパスワード等を暗号化したまま、入力されたパスワードを所定の方法で暗号化し、暗号化したままのデータ同士を比較して認証することも可能であることは言うまでもない。 It goes without saying that the password entered in the authentication table file is encrypted, the input password is encrypted by a predetermined method, and the encrypted data can be compared and authenticated.
さて、ステップS805、S867において認証に失敗した場合、処理はステップS807に進み、連続して失敗した回数が所定回数(実施形態では5回とした)になったか否かを判断する。所定回数に到達すると、ステップS808に進んで、アカウントロックしてそのユーザIDを使用できなくする。そしてステップS809でCRT110にエラー表示を行い、本処理を終了する。
If authentication fails in steps S805 and S867, the process proceeds to step S807, and it is determined whether the number of consecutive failures has reached a predetermined number (5 in the embodiment). When the predetermined number of times is reached, the process proceeds to step S808, the account is locked and the user ID cannot be used. In step S809, an error is displayed on the
また、ステップS805において、認証成功と判断した場合にはステップS810に進み、CPU101は後述するセキュリティ管理処理の実体である組み替え実行処理を行う。
If it is determined in step S805 that the authentication has succeeded, the process advances to step S810, and the
また、ステップS806において認証成功と判断した場合には、ステップS811に進んで、後述するメンテナンス処理を行う。 If it is determined in step S806 that the authentication is successful, the process proceeds to step S811, and a maintenance process described later is performed.
次に、図10のフローチャートを用いてステップS810の組み替え実行処理を説明する。これはスクランブルファイルから実行可能なアプリケーションプログラムファイルを生成し、その起動を行う処理である。より詳しくは、不可視属性が設定されたファイル「c:\Ovl\bin\AAA.ex_」から、実行可能なファイルを「c:\test\AAA.exe」を一時的に生成し、それを起動し、モニタする処理である。 Next, the rearrangement execution process of step S810 will be described using the flowchart of FIG. This is a process of generating an executable application program file from the scramble file and starting it. More specifically, from the file "c: \ Ovl \ bin \ AAA.ex_" with the invisible attribute set, create an executable file "c: \ test \ AAA.exe" temporarily and launch it And monitoring.
まず、ステップS1001において、実施形態における認証プログラムが起動した際の引数を解析し、取得する。ここでの例では、2つの引数「c:\test\AAA.exe」(パス付き実行可能ファイル名)、「c:\Ovl\bin\AAA.ex_」(パス付きスクランブルファイル名)の文字列を得ることになる。 First, in step S1001, an argument when the authentication program in the embodiment is activated is analyzed and acquired. In this example, the string of two arguments "c: \ test \ AAA.exe" (executable file name with path) and "c: \ Ovl \ bin \ AAA.ex_" (scrambled file name with path) Will get.
次いで、CPU101は、ステップS1002にて、取得した文字列の拡張子が「exe」のパス(この場合には「c:\test」)が、PC100にてネットワーク上に共有フォルダとして設定されているか否かを調べる。共有フォルダであるか否かの判定は、OSが管理するレジストリからShared情報のキーを取得しチェックすることが可能である。
Next, in step S1002, the
共有フォルダに設定されていると判断した場合には、ステップS1003にてエラー表示し、ステップS1011で監査ログ(不図示のログファイル)に、エラー発生とその種類を示すデータを出力する。 If it is determined that the shared folder is set, an error is displayed in step S1003, and data indicating the error occurrence and its type is output to an audit log (not shown) in step S1011.
拡張子「exe」のパスが共有フォルダに設定されている場合にエラー処理する理由は、スクランブルファイルから実行可能ファイルに復元した場合、一時的と言えども、ネットワーク上の他のクライアント装置から実行可能となったファイルの存在が知られる可能性があり、悪意有るユーザにコピーされる危険性があるためである。 If the path of the extension "exe" is set to a shared folder, the reason for error handling is that if it is restored from a scrambled file to an executable file, it can be executed from another client device on the network even if it is temporary This is because there is a possibility that the existence of the file becomes unknown and there is a risk of being copied to a malicious user.
さて、拡張子「exe」のパスが共有フォルダに設定されていないと判断した場合には、ステップS1004に進んで、EXEファイルの復元処理を行う(詳細後述)。この結果、実行可能なファイルが「c:\test\AAA.exe」に生成されるので、処理はステップS1005に進んで、そのファイルの実行をOSに対して実行要求し、起動させる。この結果、少なくとも「c:\test\AAA.exe」を母体とするアプリケーションプログラムがRAM103に読み込まれ、そのアプリケーションを利用した各種作業が可能となる。なお、実行ファイルの起動要求は、OSの関数CreateProcess()を用いて実行すればよい。
If it is determined that the path of the extension “exe” is not set in the shared folder, the process advances to step S1004 to execute the EXE file restoration process (details will be described later). As a result, an executable file is generated in “c: \ test \ AAA.exe”, and the process advances to step S1005 to request the OS to execute the file and start it. As a result, at least an application program having “c: \ test \ AAA.exe” as a parent is read into the
そして、ステップS1006に進んで、CPU101はユーザIDや起動時間、起動アプリケーション名を監査ログファイルに追加書き込みを行う。
In step S1006, the
以上の結果、起動したアプリケーションがRAM103に常駐することになるので、CPU101はステップS1007、S1008においてアプリケーションの実行プロセス(「AAA.exe」がRAMに常駐しているか否か)を監視する。実行プロセスの監視はアプリケーションの起動等の動作においてOSが返すプロセスIDからそのプロセスの状態を監視することで実現できる。そして、注目しているアプリケーションプログラムのプロセスが終了した、すなわち、ユーザがアプリケーション「AAA.exe」を終了した場合、ステップS1008に進み、復元したアプリケーションプログラムファイル「c:\test\AAA.exe」を外部メモリ111から削除し、ステップS1010にて監査ログにアプリケーション終了タイミングを追加出力し、本処理を終える。
As a result, since the activated application resides in the
なお、通常、実行中のアプリケーションプログラムはOSによって保護され、削除できない。これを利用し、定期的(例えば5秒間隔)に実行中の実行ファイルの削除要求をOSに対して行い、削除成功した場合にステップS1010の処理を行うようにしても構わない。この場合、実際にアプリケーションプログラムを終了したタイミングより多少遅延した段階で、アプリケーションプログラムファイルの削除が行われる可能性があるが、せいぜい数秒程度に留めることが可能であり、実質的にアプリケーションの終了時に削除することと等価であろう。 Normally, an application program being executed is protected by the OS and cannot be deleted. By using this, a request for deleting an executable file being executed periodically (for example, at intervals of 5 seconds) may be sent to the OS, and the processing in step S1010 may be performed when the deletion is successful. In this case, there is a possibility that the application program file will be deleted at a stage slightly delayed from the timing when the application program is actually terminated, but it can be kept to a few seconds at most. Equivalent to deleting.
次にステップS1004のEXEファイル復元処理を図11のフローチャートを用いて説明する。本処理は図6及び図7を用いて説明した組み替えによるファイル変換処理の逆変換処理でもある。 Next, the EXE file restoration process in step S1004 will be described with reference to the flowchart of FIG. This process is also an inverse conversion process of the file conversion process by recombination described with reference to FIGS.
ここで、2つの引数「c:\test\AAA.exe」(パス付き実行可能ファイル名)、「c:\Ovl\bin\AAA.ex_」(パス付きスクランブルファイル名)の文字列が既に与えられている点に注意されたい。 Here, the character strings of two arguments “c: \ test \ AAA.exe” (executable file name with path) and “c: \ Ovl \ bin \ AAA.ex_” (scrambled file name with path) are already given. Please note that it is.
まず、ステップS1101で、スクランブルファイル「c:\test\AAA.ex_」のファイルサイズをファイルのプロパティ情報から取得し、「c:\test\AAA.exe」という名前の書き込み用ファイルをオープン(確保)する。 First, in step S1101, the file size of the scrambled file “c: \ test \ AAA.ex_” is obtained from the file property information, and a writing file named “c: \ test \ AAA.exe” is opened (reserved) )
次いで、ステップS1102でスクランブルファイルの先頭から所定のバイト数のデータを読み飛ばして、ステップS1103へ移行する(実施形態では、この所定バイト数として1024バイトとしている)。 In step S1102, a predetermined number of bytes of data are skipped from the beginning of the scrambled file, and the process proceeds to step S1103 (in the embodiment, the predetermined number of bytes is set to 1024 bytes).
ステップS1103ではCPU101は読み飛ばした後のデータから所定量(例、1024バイト)のデータをRAM103に読み込む。そして、ステップS1004ではCPU101は読み込んだデータを所定量(実施形態では512バイト)で分割する。この例では2分割される。
In step S <b> 1103, the
分割後のデータを後ろの所定量(512バイト)のデータを、書き込み用にオープンしているファイル「c:\test\AAA.exe」に書き込み、次いで前半の所定量(512バイト)のデータを書き込む(ステップS1105)。 Write the predetermined amount (512 bytes) of the divided data to the file “c: \ test \ AAA.exe” opened for writing, and then the predetermined amount (512 bytes) of the first half Writing is performed (step S1105).
このステップS1103乃至1105の処理を、ステップS1106にて、変換元の「c:\Ovl\bin\AAA.ex_」の未読取りデータ量が1024バイト以下になるまで繰り返す。 The processing of steps S1103 to 1105 is repeated until the amount of unread data of the conversion source “c: \ Ovl \ bin \ AAA.ex_” becomes 1024 bytes or less in step S1106.
ステップS1106で残りが所定量以下の場合には、残りのデータをRAM103に読み出し(ステップS1107)、その読取ったデータを書き込み用にオープンしているファイルに書き込み、そのファイルをクローズして本処理を終了する。 If the remaining amount is less than or equal to the predetermined amount in step S1106, the remaining data is read to the RAM 103 (step S1107), the read data is written to a file opened for writing, the file is closed, and this process is performed. finish.
<メンテナンス処理>
次に、実施形態におけるメンテナンス処理について説明する。この処理は、図9のUIにて、管理者が自身のユーザIDとパスワードを入力し、「メンテナンスボタン」94を押下したとき、ステップS806の判定で認証成功した場合の処理である。
<Maintenance processing>
Next, the maintenance process in the embodiment will be described. This process is performed when the administrator inputs his / her user ID and password and presses the “maintenance button” 94 in the UI of FIG.
このメンテナンス処理はユーザIDやパスワード、各ユーザの権限の情報をメンテナンスするものである。ユーザの追加、削除、パスワードの変更、ユーザ権限の設定を行うものであり、図12や図13で示す入力画面を用いて各種設定を行う。これらの情報はステップS805、806の認証処理や、監査ログに用いる情報として利用される。 This maintenance process is to maintain the user ID, password, and authority information of each user. User additions, deletions, password changes, and user authority settings are made, and various settings are made using the input screen shown in FIGS. These pieces of information are used as information used for the authentication processing in steps S805 and S806 and the audit log.
図12はメンテナンス処理の初期UI120であり、上部領域121に表示されるのは認証テーブルファイルの内容であり、ユーザ名、権限情報、パスワードである。いずれのユーザが、管理者(権限項目で「super」=メンテナンス処理が可能)であり、一般ユーザであるかが判別可能にしている。
FIG. 12 shows an
また、表示されたユーザ名を選択した際、そのユーザに対して次の2項目を設定可能とした。1つは、表示領域122における利用期間であり(0の場合には無期限)、2つ目は、表示領域123に示すように、入力間違いを10回以上重ねた場合の対策である。図8のステップS807では5回に設定された例を示している。実施形態では、無対策、ユーザIDを入力した際に受け付け停止されていることを示すメッセージを表示する、無視(何の処理も行わない)、の3つの中から選択できるようにした。
When the displayed user name is selected, the following two items can be set for the user. One is a usage period in the display area 122 (indefinite in the case of 0), and the second is a countermeasure when input errors are repeated ten times or more as shown in the
図12において、領域121内の「追加」ボタンを押下すると、図13の入力画面のユーザ名等の欄が空欄状態で表示され、新規のユーザ名、パスワード、権限を設定し、登録することが可能である。また、「削除/変更」ボタンを押下した場合、領域121で選択されたユーザに対して編集することができる。図12ではユーザ名「BBB」が選択状態であることを示しているので、この状態で「削除/変更」ボタンを押下すると、図13に示すように、ユーザ名、パスワードの変更、或いは、管理者権限を付与する等の変更が可能となる。また、「削除」ボタンを押下した場合には、そのユーザ名に関する情報が削除され、図12に戻ることになる。「設定」ボタンが押下された場合には、変更内容を仮決定し、図12に戻る。
In FIG. 12, when the “Add” button in the
図12における「設定終了」ボタンが押下された場合、メンテナンス操作を最終的に認証テーブルファイルに反映させる処理を行い、本処理を終了する。「キャンセル」ボタンが押下された場合には、直前までの作業を破棄し、認証テーブルファイルへの変更を行わないようにした。 When the “end setting” button in FIG. 12 is pressed, a process of finally reflecting the maintenance operation in the authentication table file is performed, and this process ends. When the “Cancel” button is pressed, the previous work is discarded and the authentication table file is not changed.
なお上記実施形態では、スクランブルファイルを生成するアルゴリズムとしてオリジナルのアプリケーションプログラムファイルの所定量ごとに組み替える例を説明したが、実行ファイルを暗号化することで実行不可のファイルを生成しても構わない。ただし、一般に暗号化処理(及び暗号復号処理)は、複雑な演算を必要とし、CPUにかかる負荷は大きい。従って、実行可能なファイルに変換するまでに、無視できない時間を必要とする。かかる点、上記実施形態のように、所定量毎に組み替えする場合、スクランブル及びその解除処理が単純であり、違和感の無い時間内でアプリケーションを起動でき、好適である。 In the above-described embodiment, the example in which the original application program file is rearranged for each predetermined amount as the algorithm for generating the scramble file has been described. However, the executable file may be generated by encrypting the executable file. However, in general, encryption processing (and encryption / decryption processing) requires complicated operations, and the load on the CPU is large. Therefore, it takes a time that cannot be ignored before converting into an executable file. In this respect, when recombination is performed for each predetermined amount as in the above-described embodiment, it is preferable that the scramble and its release processing are simple, and the application can be started within a time without a sense of incongruity.
また、既存の一般アプリケーションプログラムを実行不可形式ファイルに変換するファイル変換プログラムと実行不可形式に変換されたアプリケーションプログラムファイルについての起動とユーザメンテナンス処理を行う認証処理プログラムはそれぞれが独立して実行できる形式のプログラムではなく、ひとつのセキュリティ管理プログラムとしてそれぞれの機能を実現する部分プログラムの形で提供されても良いものである。その場合には、セキュリティ管理プログラムの起動時には不図示の選択画面等で、ファイル変換機能を実行するかあるいは認証処理機能を実行するかを操作者に選択させるなどが必要であることは言うまでもない。 In addition, a file conversion program that converts an existing general application program into an inexecutable format file and an authentication processing program that performs startup and user maintenance processing for an application program file that has been converted into an inexecutable format can be executed independently. Instead of the above program, it may be provided in the form of a partial program that realizes each function as one security management program. In this case, it is needless to say that the operator needs to select whether to execute the file conversion function or the authentication processing function on a selection screen (not shown) when the security management program is started.
<第2の実施形態>
上記実施形態では、アプリケーションプログラムファイルのセキュリティ管理に関するものであった。従って、認証成功し、アプリケーションが起動した後に作成されるデータファイルについては、他のPC上に該当するアプリケーションが実行可能であれば自由に閲覧し、編集できてしまう。そこで、本第2の実施形態では、アプリケーションプログラムで作成されたデータファイルについても、スクランブル処理して他のPCからオープン不可のファイルにする例を説明する。
<Second Embodiment>
The above embodiment relates to security management of application program files. Therefore, the data file created after the authentication is successful and the application is started can be freely viewed and edited if the corresponding application can be executed on another PC. Therefore, in the second embodiment, an example will be described in which a data file created by an application program is also scrambled to be a file that cannot be opened from another PC.
説明を簡単なものとするため、セキュリティを付加しようとするアプリケーションプログラムファイル、及び、そのアプリケーションプログラムが編集可能でセキュリティを付加させようとするデータファイルのパスが次のようになっているとする。
アプリケーションプログラムファイル:「c:\Test\aaa.exe」
データファイル:「d:\data\xxx.dat」
In order to simplify the description, it is assumed that the path of an application program file to which security is to be added and a data file to which the application program can be edited and security is to be added are as follows.
Application program file: "c: \ Test \ aaa.exe"
Data file: “d: \ data \ xxx.dat”
これら2つのファイルを第1の実施形態で説明したファイル変換プログラムを用いて、セキュリティ付加された次の2つのファイルを生成し、オリジナルの2つのファイルを削除する。
セキュリティ付加後のアプリケーションプログラムファイル:「c:\Ovl\Bin\aaa.ex_」
セキュリティ付加後のデータファイル:「c:\Ovl\Bin\xxx.da_」
Using these file conversion programs described in the first embodiment, the following two files with security added are generated, and the original two files are deleted.
Application program file after security is added: "c: \ Ovl \ Bin \ aaa.ex_"
Data file after adding security: “c: \ Ovl \ Bin \ xxx.da_”
作成されるスクランブルファイルは2つあるので、それぞれ区別する必要がある。実施形態では、アプリケーションプログラムについては文字列「-p」オプションを付加し、データファイルについて文字列「-o」オプションを付加することで区別する。 Since there are two scrambled files to be created, it is necessary to distinguish between them. In the embodiment, the application program is distinguished by adding the character string “-p” option and the data file by adding the character string “-o” option.
従って、上記の場合、次の文字列を含むショートカットファイルを作成する際には、次のような文字列を入力する(認証プログラムは第1の実施形態と同じ「c:\Ovl\Bin\PWExec.exe」とする)。
c:\Ovl\Bin\PWExec.exe "-pc:\Test\aaa.exe" "c:\Ovl\Bin\aaa.ex_" "-od:\data\xxx.dat" "c:\Ovl\Bin\xxx.da_"
つまり、認証プログラム「c:\Ovl\Bin\PWExec.exe」は4つの引数を識別できるようにする。ここで、第1、第2の引数は、上記第1の実施形態と同じ扱いになる。3つ目、4つ目の引数の文字列で、セキュリティ解除後のデータファイル、セキュリティ付加されたスクランブルデータファイルを記述する。
Therefore, in the above case, when creating a shortcut file including the following character string, the following character string is input (the authentication program is the same as in the first embodiment “c: \ Ovl \ Bin \ PWExec .exe ").
c: \ Ovl \ Bin \ PWExec.exe "-pc: \ Test \ aaa.exe""c: \ Ovl \ Bin \ aaa.ex_""-od: \ data \ xxx.dat""c: \ Ovl \ Bin \ xxx.da_ "
That is, the authentication program “c: \ Ovl \ Bin \ PWExec.exe” makes it possible to identify four arguments. Here, the first and second arguments are handled in the same manner as in the first embodiment. The third and fourth argument character strings describe the data file after security release and the scrambled data file with security added.
認証プログラム「c:\Ovl\Bin\PWExec.exe」が上記オプションを含む4つの文字列を取得した場合、以下の処理を行う(但し、認証に成功した場合である)。
工程1.「-p」オプションに従ってスクランブルファイル「c:\Test\aaa.ex_」から「c:\Test\aaa.exe」(実行可能アプリケーションプログラム)を生成する。
工程2.「-o」オプションに従いスクランブルファイル「d:\data\xxx.da_」から「d:\data\xxx.dat」(アプリケーションで読み書きできるデータファイル)を生成する。
工程3.実行可能なアプリケーションプログラムに、そのアプリケーションが読み書き可能なデータファイルのパス付き文字列を引数を与えて起動する。
工程4.アプリケーションプログラム(上記の場合「aaa.exe」)の終了したか否かを監視する。
工程5.アプリケーションプログラムの終了した場合、そのアプリケーションプログラムファイル「c:\Test\aaa.exe」を外部メモリ111より削除する。
工程6.更新後のデータファイル「d:\data\xxx.dat」から、実施形態のファイル変換プログラムを用いて「d:\data\xxx.da_」を作成する。このとき、編集前に存在していた同名のファイルに対して上書きする。
工程7.ファイル「d:\data\xxx.dat」を外部メモリ111から削除する。
When the authentication program “c: \ Ovl \ Bin \ PWExec.exe” acquires four character strings including the above options, the following processing is performed (provided that authentication is successful).
Step 2. Generate "d: \ data \ xxx.dat" (data file that can be read and written by application) from scrambled file "d: \ data \ xxx.da_" according to "-o" option.
Step 3. An executable application program is started by giving a character string with a path of a data file that can be read and written by the application as an argument.
Step 4. Monitors whether the application program ("aaa.exe" in the above case) has terminated.
Step 5. When the application program ends, the application program file “c: \ Test \ aaa.exe” is deleted from the
Step 6. “D: \ data \ xxx.da_” is created from the updated data file “d: \ data \ xxx.dat” using the file conversion program of the embodiment. At this time, the file with the same name that existed before editing is overwritten.
Step 7. The file “d: \ data \ xxx.dat” is deleted from the
なお、工程5の処理は、工程6の後や工程7で行っても構わない。また、スクランブル解除後の実行可能ファイル、編集可能ファイルのパス位置が共有フォルダに含まれる場合、スクランブル解除しないのは第1の実施形態と同様である。 Note that the process of step 5 may be performed after step 6 or in step 7. Further, if the shared folder includes the executable file and editable file path positions after descrambling, the descrambling is not canceled as in the first embodiment.
また、ファイル変換プログラム、ユーザID&パスワードの認証処理について第1の実施形態と同じであるものとし、図8のステップS810に代わる処理について、図14のフローチャートに従って説明することとする。なお、以下の説明において、DFLAGとは、スクランブル処理されたデータファイルを復元する/しないを判定するためのフラグであり、本処理が開始される際に当たって“0”クリアされ、RAMに確保されるものである。 Further, the file conversion program and the user ID & password authentication process are the same as those in the first embodiment, and the process replacing step S810 in FIG. 8 will be described with reference to the flowchart in FIG. In the following description, DFLAG is a flag for determining whether or not to restore a scrambled data file, and is cleared to “0” and secured in the RAM when this process is started. Is.
先ず、ステップS1401において、認証プログラムを実行した際の引数を解析する。引数には、先に説明したように、「-p」オプションで始まるパス付き実行プログラムファイル名、及びそのスクランブルファイル名、「-o」オプションで始まるパスつきデータファイル名及びそのスクランブルファイル名が有り得る。 First, in step S1401, an argument when the authentication program is executed is analyzed. As described above, the argument can include an executable program file name with a path that starts with the "-p" option and its scrambled file name, a data file name with a path that starts with the "-o" option, and its scrambled file name. .
ステップS1402では、データファイルオプションが存在するか否かを上述した「-o」の有無で判定する。データファイルオプションがあると判定した場合、ステップS1421に進み、変換先のデータファイル名のパス位置が、共有フォルダに含まれるか否かを判定する。 In step S1402, whether or not a data file option exists is determined based on the presence or absence of “−o” described above. If it is determined that there is a data file option, the process advances to step S1421, and it is determined whether or not the path position of the data file name of the conversion destination is included in the shared folder.
変換先パスが共有フォルダに含まれると判断した場合には、ステップS1403にてエラー表示し、ステップS1404にて、その旨のエラー情報を監査ログファイルに書き出す。 If it is determined that the conversion destination path is included in the shared folder, an error is displayed in step S1403, and error information to that effect is written in the audit log file in step S1404.
また、データファイルの変換先が共有フォルダではないと判定した場合には、ステップS1405に進んで、フラグDFLAGに“1”をセットする。 If it is determined that the data file conversion destination is not a shared folder, the process advances to step S1405 to set “1” in the flag DFLAG.
一方、ステップS1402にてデータファイルオプションがないと判定された場合、或いは、ステップS1405の処理を経た場合、CPU101はステップS1406の処理を行う。ここでは、引数にアプリケーションプログラムファイルオプションが存在するか否か「-p」の有無によりを判断する。アプリケーションプログラムファイルオプションが存在しない場合には、ステップS1407にてエラー表示、ステップS1408で監査ログにエラー情報を書き出すことになる。
On the other hand, if it is determined in step S1402 that there is no data file option, or if the process of step S1405 is performed, the
ステップS1406にて、アプリケーションプログラムファイルオプションがあると判断した場合、処理はステップS1409に進む。ここでは、フラグDFLAGが“1”であるか否かを判定する。 If it is determined in step S1406 that there is an application program file option, the process proceeds to step S1409. Here, it is determined whether or not the flag DFLAG is “1”.
DFLAGが“0”である場合、スクランブルデータファイルが指定されておらず、アプリケーションプログラムの起動のみが設定されていることになるから、ステップS1411に進む。一方、DFLAGが“1”の場合には、復元対象であるアプリケーションを読み書き可能なデータファイルに復元する必要があることを示すので、ステップS1410にてデータファイルの復元処理を行い、ステップS1411に進む。 If DFLAG is “0”, the scramble data file is not specified and only the activation of the application program is set, and the process advances to step S1411. On the other hand, if DFLAG is “1”, it indicates that the application to be restored needs to be restored to a readable / writable data file, so the data file is restored in step S1410 and the process proceeds to step S1411. .
ステップS1411に処理が進むと、アプリケーションプログラムの復元処理を行う。この結果、少なくとも実行可能なアプリケーションプログラムファイルが生成され、データファイルオプションがあった場合には、復元されたデータファイルが生成されることになるので、ステップS1412にて、復元されたデータファイル名(パス付き)を引数として、復元アプリケーションプログラムの起動をOSに要求する。尚、フラグDFLAG=0の場合、復元データファイル名は空白となるので、結果的にアプリケーション単独の起動となり、第1の実施形態と同じとなる。 When the process proceeds to step S1411, an application program restoration process is performed. As a result, at least an executable application program file is generated, and when there is a data file option, a restored data file is generated. In step S1412, the restored data file name ( The OS is requested to start the restoration application program with a path). Note that when the flag DFLAG = 0, the restoration data file name is blank, and as a result, the application alone is activated, which is the same as in the first embodiment.
この後、ステップS1413にて、アプリケーションが起動された旨のメッセージを監査ログに書き出し、ステップS1414、S1415にて、起動要求したアプリケーションが終了するのを監視する。 Thereafter, in step S1413, a message indicating that the application has been started is written in the audit log, and in steps S1414 and S1415, it is monitored that the application that has been requested to start is finished.
起動したアプリケーションプログラムが終了したと判定した場合、処理はステップS1416に進み、復元したアプリケーションプログラムファイルを削除する。そして、ステップS1417にて、フラグDFLAGが“1”である場合には、編集後のオリジナルデータファイル(データファイルオプションで指定された変換先パス付きファイル名で示されるデータファイル)をスクランブルするため、ステップS1418にてデータ変換処理を行い、ステップS1419にてオリジナルデータファイルを削除する。そして、ステップS1420にてアプリケーションが終了した旨、及び、データファイルを編集したのであればその旨を監査ログファイルに書き出し、本処理を終了する。 If it is determined that the activated application program has ended, the process advances to step S1416 to delete the restored application program file. In step S1417, if the flag DFLAG is “1”, the edited original data file (data file indicated by the file name with the conversion destination path specified by the data file option) is scrambled. Data conversion processing is performed in step S1418, and the original data file is deleted in step S1419. In step S1420, the fact that the application has ended and, if the data file has been edited, are written to the audit log file, and this processing is ended.
以上説明したように本第2の実施形態によれば、第1の実施形態の作用効果に加えて、一般のアプリケーションで作成されるデータファイルでありながら、そのデータファイルのセキュリティをも確保することも可能になる。 As described above, according to the second embodiment, in addition to the operational effects of the first embodiment, the security of the data file can be ensured while being a data file created by a general application. Is also possible.
<第3の実施形態>
上記第1の実施形態では、認証プログラム、パス付きスクランブルファイル名、パスつき復元プログラムファイル名をキーボードより入力する必要がある。
<Third Embodiment>
In the first embodiment, it is necessary to input an authentication program, a scrambled file name with path, and a restored program file name with path from the keyboard.
また、アプリケーションプログラムの中には、そのプログラムファイルが存在しなければならないパスが決まっているものもあり、復元先のパス位置を示す文字列の入力に誤りは許されないものもある。 Some application programs have predetermined paths in which the program file must exist, and some of the application programs do not allow an error in the input of a character string indicating the path location of the restoration destination.
そこで、本第3の実施形態では、少なくとも復元先のパス位置の入力を省略可能にする例を説明する。 Therefore, in the third embodiment, an example will be described in which at least the input of the restoration destination path position can be omitted.
図5に示すように、ファイル変換しようとするアプリケーションプログラムのパス付きファイル名が決定された場合、その際のテキストボックスに記述されたファイル名を活用するものである。 As shown in FIG. 5, when the file name with path of the application program to be converted is determined, the file name described in the text box at that time is utilized.
図15に示すように、スクランブルファイルの先頭の1024バイトは、図7のそれと同じ意味である。異なる点は、その次の1024バイト(このサイズに限定されるものではないが、パスを記述するのに十分な容量であれば良い)に、図5のテキストボックス41に記述された文字列を格納し、最後に適当なエンドマークを示すコードを格納すればよい。また、文字列を暗号化して格納しても構わない。
As shown in FIG. 15, the first 1024 bytes of the scrambled file have the same meaning as that of FIG. The difference is that the character string described in the
結果的に、スクランブルファイルのファイルサイズは、オリジナルのアプリケーションプログラムファイルより2048(2K)バイト多くなるが、昨今のアプリケーションのサイズが数百KB、場合によっては数MBにもなることを考慮すると微々増加で済む。 As a result, the file size of the scrambled file is 2048 (2K) bytes larger than the original application program file, but it slightly increases considering that the size of the current application is several hundred KB and sometimes several MB. Just do it.
また、本第3の実施形態でのショートカットに記述する文字列は、
c:\Ovl\Bin\PWExec.exe "c:\Ovl\Bin\{スクランブルファイル名}"
となる。
In addition, the character string described in the shortcut in the third embodiment is
c: \ Ovl \ Bin \ PWExec.exe "c: \ Ovl \ Bin \ {scrambled file name}"
It becomes.
これに伴い、認証プログラム「c:\Ovl\Bin\PWExec.exe」は、引数で渡されたスクランブルファイルの先頭から1025バイト目以降から復元先のパスつき実行ファイル名を取得する処理が付加される点だけであるので、説明は不要であろう。 Along with this, the authentication program “c: \ Ovl \ Bin \ PWExec.exe” has a process to acquire the executable file name with the restoration destination path from the 1025th byte onward from the beginning of the scrambled file passed as an argument. No explanation will be necessary.
<第4の実施形態>
第3の実施形態から更に発展させた例を第4の実施形態として説明する。
<Fourth Embodiment>
An example developed further from the third embodiment will be described as a fourth embodiment.
本第4の実施形態では、認証プログラム「c:\Ovl\Bin\PWExec.exe」を操作する例である。ただし、オリジナルの認証プログラム「c:\Ovl\Bin\PWExec.exe」を操作するのではなく、そのコピーを操作する。 In the fourth embodiment, an authentication program “c: \ Ovl \ Bin \ PWExec.exe” is operated. However, instead of operating the original authentication program “c: \ Ovl \ Bin \ PWExec.exe”, the copy is operated.
図16は第4の実施形態における認証プログラム「c:\Ovl\Bin\PWExec.exe」メモリマップを示している。後端(必ずしも後端に限らない)には、適当な文字列を格納するための予約領域を用意しておく。そして、図6のステップS609の後に、図17の処理を行う。 FIG. 16 shows a memory map of the authentication program “c: \ Ovl \ Bin \ PWExec.exe” in the fourth embodiment. A reserved area for storing an appropriate character string is prepared at the rear end (not necessarily the rear end). Then, after step S609 in FIG. 6, the process in FIG. 17 is performed.
ステップS610では、実行プログラムを格納するパス付きファイル名を入力させる。このパス、ファイル名は管理者が任意に決定しても良い。パスについては、キーボードで入力しても良いが、ファイルブラウザを用いて所望とするドライブ、フォルダを指定し、最後にファイル名、例えば「xyz.exe」等と入力すると操作が楽である。ちょうど、アプリケーションプログラムでデータを新規に作成した際の保存するファイル名を入力する場合と同じ要領である。 In step S610, the file name with path for storing the execution program is input. The path and file name may be arbitrarily determined by the administrator. The path may be entered with a keyboard, but the operation can be easily performed by specifying a desired drive and folder using a file browser and finally entering a file name such as “xyz.exe”. This is exactly the same as entering the file name to be saved when data is newly created by the application program.
ステップS611では、認証プログラム「c:\Ovl\Bin\PWExec.exe」を指定されたファイル名(上記の例では「xyz.exe」)としてコピーする。この段階では、ファイル「xyz.exe」とオリジナルファイル「PWExec.exe」はファイル名が異なるだけで、中身は同じである。 In step S611, the authentication program “c: \ Ovl \ Bin \ PWExec.exe” is copied as the specified file name (“xyz.exe” in the above example). At this stage, the file “xyz.exe” and the original file “PWExec.exe” have the same contents except for the file names.
次いで、ステップS612では、コピー先のプログラムファイル「xyz.exe」の予約領域に、管理者が選択した一般アプリケーションプログラムファイルのパスつきファイル名、及び、パスつきスクランブルファイル名の文字列(暗号化しても構わない)を格納する。 In step S612, the path name of the general application program file selected by the administrator and the character string of the scrambled file name with path (encrypted) are stored in the reserved area of the copy destination program file “xyz.exe”. Stored).
本第4の実施形態における「PWExec.exe」(xyz.exeも同様である)は次のように動作する。 “PWExec.exe” (the same applies to xyz.exe) in the fourth embodiment operates as follows.
起動した際、認証処理を行い、その認証が成功した場合、自身の予約領域内に有意な文字列が存在する場合、格納されているのはパスつきスクランブルファイル名、パス付き一般アプリケーションプログラムファイル名であると判定し、スクランブルファイルから実行可能なファイルを復元する。後は、第1の実施形態と同様である。 When it starts, it performs authentication processing, and if the authentication is successful, if there is a significant character string in its reserved area, the stored scrambled file name with path, general application program file name with path The executable file is restored from the scramble file. The rest is the same as in the first embodiment.
また、本第4の実施形態によると、第2の実施形態で示されるパス付きデータファイル名を含ませることも可能である。 Further, according to the fourth embodiment, it is possible to include the data file name with a path shown in the second embodiment.
以上、本発明に係る第1乃至第4の実施形態を説明したが、本発明の主要部分はコンピュータプログラムで構成される。通常、コンピュータプログラムはCDROM等のコンピュータ可読記憶媒体に格納され、それをコンピュータにセットしてシステムにコピー若しくはインストールすることで実行可能となるから、当然そのようなコンピュータ可読記憶媒体も本発明の範疇に含まれるのは明らかである。 Although the first to fourth embodiments according to the present invention have been described above, the main part of the present invention is configured by a computer program. Usually, a computer program is stored in a computer-readable storage medium such as a CDROM, and can be executed by setting it in a computer and copying or installing it in a system. Of course, such a computer-readable storage medium is also within the scope of the present invention. Is clearly included.
また、実施形態では、認証プログラムには、スクランブルプログラムファイルを復元して実行する処理と、メンテナンスに関する処理が含まれるものとしたが、これらを独立したものとしても構わない。特に、第4の実施形態の場合、認証プログラムはショートカットファイルと比較してサイズが大きいので、作成される実行プログラムサイズ(認証プログラムのコピー)を小さくするためには、メンテナンスに関するプログラムは除かれることが望ましい。 In the embodiment, the authentication program includes processing for restoring and executing a scramble program file and processing for maintenance, but these may be independent. In particular, in the case of the fourth embodiment, since the authentication program is larger than the shortcut file, in order to reduce the size of the created execution program (copy of the authentication program), the program related to maintenance is excluded. Is desirable.
Claims (8)
前記アプリケーションプログラムを暗号化し、当該アプリケーションプログラムを暗号化された形式に変換する変換手段と、Conversion means for encrypting the application program and converting the application program into an encrypted format;
当該アプリケーションプログラムの利用者を認証するための利用者情報の入力を受け付ける利用者情報受付手段と、User information receiving means for receiving input of user information for authenticating the user of the application program;
前記利用者情報受付手段で受け付けた利用者情報に従って当該利用者の認証処理を行う認証手段と、Authentication means for performing authentication processing of the user according to the user information received by the user information receiving means;
前記変換手段で変換された該暗号化された形式のアプリケーションプログラムを、実行可能なアプリケーションプログラムに復号する復号手段と、Decryption means for decrypting the encrypted application program converted by the conversion means into an executable application program;
前記復号手段で復号されることにより生成されるアプリケーションプログラムの格納先が共有フォルダか否かを判定する判定手段とを備え、Determination means for determining whether or not the storage destination of the application program generated by being decrypted by the decryption means is a shared folder,
前記認証手段で当該利用者が認証され、かつ前記判定手段で当該アプリケーションプログラムの格納先が共有フォルダではないと判定された場合に、前記復号手段を実行し、一方、前記判定手段で当該アプリケーションプログラムの格納先が共有フォルダと判定された場合、又は前記認証手段により当該利用者が認証されなかった場合に、前記復号手段の実行を禁止することを特徴とする情報処理装置。When the authentication unit authenticates the user and the determination unit determines that the storage destination of the application program is not a shared folder, the decryption unit is executed, while the determination unit executes the application program. An information processing apparatus that prohibits execution of the decryption means when it is determined that the storage location is a shared folder, or when the user is not authenticated by the authentication means.
前記監視手段で当該アプリケーションプログラムが終了したと判定された場合に、当該アプリケーションプログラムで作成されるデータファイルを暗号化することにより、当該データファイルを暗号化された形式に変換するデータ変換手段と、A data conversion means for converting the data file into an encrypted format by encrypting the data file created by the application program when the monitoring means determines that the application program is terminated;
前記データ変換手段で変換された前記暗号化されたデータファイルを、前記アプリケーションプログラムが実行可能な形式のデータファイルに復号するデータ復号手段と、Data decrypting means for decrypting the encrypted data file converted by the data converting means into a data file in a format executable by the application program;
前記データ復号手段で復号されることにより生成されるデータファイルの格納先が共有フォルダか否かを判定するデータ判定手段とを更に備え、Data determination means for determining whether or not the storage destination of the data file generated by being decrypted by the data decryption means is a shared folder;
前記認証手段で当該利用者が認証された場合、かつ前記データ判定手段で当該データファイルの格納先が共有フォルダではないと判定された場合に、前記データ復号手段を実行し、一方、前記データ判定手段で当該データファイルの格納先が共有フォルダと判定された場合、又は前記認証手段により当該利用者が認証されなかった場合に、前記データ復号手段の実行を禁止することを特徴とする請求項1に記載の情報処理装置。When the user is authenticated by the authentication means, and when the data determination means determines that the storage destination of the data file is not a shared folder, the data decryption means is executed, while the data determination The execution of the data decryption unit is prohibited when the storage unit determines that the storage location of the data file is a shared folder or when the user is not authenticated by the authentication unit. The information processing apparatus described in 1.
前記情報処理装置の変換手段が、前記アプリケーションプログラムを暗号化し、当該アプリケーションプログラムを暗号化された形式に変換する変換工程と、A converting step in which the converting means of the information processing apparatus encrypts the application program and converts the application program into an encrypted format;
前記情報処理装置の利用者情報受付手段が、当該アプリケーションプログラムの利用者を認証するための利用者情報の入力を受け付ける利用者情報受付工程と、A user information accepting step for accepting an input of user information for authenticating a user of the application program;
前記情報処理装置の認証手段が、前記利用者情報受付工程で受け付けた利用者情報に従って当該利用者の認証処理を行う認証工程と、An authentication step in which the authentication unit of the information processing apparatus performs an authentication process of the user according to the user information received in the user information reception step;
前記情報処理装置の復号手段が、前記変換工程で変換された該暗号化された形式のアプリケーションプログラムを、実行可能なアプリケーションプログラムに復号する復号工程と、A decryption step of decrypting the encrypted application program converted by the conversion step into an executable application program;
前記情報処理装置の判定手段が、前記復号工程で復号されることにより生成されるアプリケーションプログラムの格納先が共有フォルダか否かを判定する判定工程とを備え、The determination unit of the information processing apparatus includes a determination step of determining whether a storage destination of the application program generated by being decrypted in the decryption step is a shared folder,
前記認証工程で当該利用者が認証された場合、かつ前記判定工程で当該アプリケーションプログラムの格納先が共有フォルダではないと判定された場合に、前記復号工程を実行し、一方、前記判定工程で当該アプリケーションプログラムの格納先が共有フォルダと判定された場合、又は前記認証工程により当該利用者が認証されなかった場合に、前記復号工程の実行を禁止することを特徴とする情報処理方法。When the user is authenticated in the authentication step, and when it is determined in the determination step that the storage destination of the application program is not a shared folder, the decryption step is executed, while in the determination step An information processing method for prohibiting execution of the decryption step when it is determined that a storage destination of an application program is a shared folder, or when the user is not authenticated by the authentication step.
前記アプリケーションプログラムを暗号化し、当該アプリケーションプログラムを暗号化された形式に変換する変換手段と、Conversion means for encrypting the application program and converting the application program into an encrypted format;
当該アプリケーションプログラムの利用者を認証するための利用者情報の入力を受け付ける利用者情報受付手段と、User information receiving means for receiving input of user information for authenticating the user of the application program;
前記利用者情報受付手段で受け付けた利用者情報に従って当該利用者の認証処理を行う認証手段と、Authentication means for performing authentication processing of the user according to the user information received by the user information receiving means;
前記変換手段で変換された該暗号化された形式のアプリケーションプログラムを、実行可能なアプリケーションプログラムに復号する復号手段と、Decryption means for decrypting the encrypted application program converted by the conversion means into an executable application program;
前記復号手段で復号されることにより生成されるアプリケーションプログラムの格納先が共有フォルダか否かを判定する判定手段として機能させ、Function as a determination unit that determines whether the storage destination of the application program generated by being decoded by the decoding unit is a shared folder,
前記認証手段で当該利用者が認証され、かつ前記判定手段で当該アプリケーションプログラムの格納先が共有フォルダではないと判定された場合に、前記復号手段を実行し、一方、前記判定手段で当該アプリケーションプログラムの格納先が共有フォルダと判定された場合、又は前記認証手段により当該利用者が認証されなかった場合に、前記復号手段の実行を禁止することを特徴とするコンピュータプログラム。When the authentication unit authenticates the user and the determination unit determines that the storage destination of the application program is not a shared folder, the decryption unit is executed, while the determination unit executes the application program. A computer program that prohibits execution of the decryption means when it is determined that the storage location is a shared folder, or when the user is not authenticated by the authentication means.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2004178523A JP4128982B2 (en) | 2004-06-16 | 2004-06-16 | Information processing apparatus, information processing method, computer program, and storage medium |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2004178523A JP4128982B2 (en) | 2004-06-16 | 2004-06-16 | Information processing apparatus, information processing method, computer program, and storage medium |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2006004087A JP2006004087A (en) | 2006-01-05 |
| JP4128982B2 true JP4128982B2 (en) | 2008-07-30 |
Family
ID=35772444
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2004178523A Expired - Fee Related JP4128982B2 (en) | 2004-06-16 | 2004-06-16 | Information processing apparatus, information processing method, computer program, and storage medium |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP4128982B2 (en) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2007226658A (en) * | 2006-02-24 | 2007-09-06 | Nec Access Technica Ltd | Information processing terminal device, information processing method, and program for information processing |
| EP2341459A1 (en) * | 2010-01-04 | 2011-07-06 | Thomson Licensing | Method and device for detecting if a computer file has been copied and method and device for enabling such detection |
-
2004
- 2004-06-16 JP JP2004178523A patent/JP4128982B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2006004087A (en) | 2006-01-05 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Rossel | Continuous Integration, Delivery, and Deployment: Reliable and faster software releases with automating builds, tests, and deployment | |
| US10613938B2 (en) | Data virtualization using copy data tokens | |
| US10958732B1 (en) | Serverless archive file creation and extraction system and serverless, in-browser, cloud storage enabled methods for opening, decompressing, and creating archive files | |
| JP5446860B2 (en) | Virtual machine operation system, virtual machine operation method and program | |
| JP4578119B2 (en) | Information processing apparatus and security ensuring method in information processing apparatus | |
| CN106843978B (en) | SDK access method and system | |
| US10691659B2 (en) | Integrating copy data tokens with source code repositories | |
| CN109992987B (en) | Script file protection method and device based on Nginx and terminal equipment | |
| CN107292135A (en) | Method and device for program code protection | |
| CN112270002B (en) | Full-disc encryption method, system operation method and electronic equipment | |
| US8418169B2 (en) | Management method for managing software module and information processor | |
| CN111382447B (en) | Encryption method, storage medium and computer equipment of installation package | |
| JP6256781B2 (en) | Management device for file security to protect the system | |
| KR101749209B1 (en) | Method and apparatus for hiding information of application, and method and apparatus for executing application | |
| KR101748627B1 (en) | Web-based electronic document service apparatus capable of authenticating a document and operating method thereof | |
| US7290137B2 (en) | Information processing apparatus, executable module generating method, and storage medium | |
| CN113961912B (en) | Android software package automatic encryption and decryption method, device, equipment and storage medium | |
| JP4128982B2 (en) | Information processing apparatus, information processing method, computer program, and storage medium | |
| EP3462363B1 (en) | Image forming apparatus and control method therefor | |
| KR101436741B1 (en) | The method and system for applying security solution program | |
| WO2013008650A1 (en) | Information processing device, information processing method, and computer program | |
| JP4000916B2 (en) | Data management apparatus and data management program | |
| JP6215468B2 (en) | Program protector | |
| US9779255B2 (en) | Split storage and communication of documents | |
| JP2011039716A (en) | Information storage medium and information system |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070711 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080121 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080321 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20080422 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080515 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110523 Year of fee payment: 3 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110523 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120523 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120523 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130523 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140523 Year of fee payment: 6 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| LAPS | Cancellation because of no payment of annual fees |