JP4013413B2 - Information processing apparatus and storage medium - Google Patents

Information processing apparatus and storage medium Download PDF

Info

Publication number
JP4013413B2
JP4013413B2 JP22164399A JP22164399A JP4013413B2 JP 4013413 B2 JP4013413 B2 JP 4013413B2 JP 22164399 A JP22164399 A JP 22164399A JP 22164399 A JP22164399 A JP 22164399A JP 4013413 B2 JP4013413 B2 JP 4013413B2
Authority
JP
Japan
Prior art keywords
user
processing
value
function
return
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
Application number
JP22164399A
Other languages
Japanese (ja)
Other versions
JP2001051945A (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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
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 Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP22164399A priority Critical patent/JP4013413B2/en
Publication of JP2001051945A publication Critical patent/JP2001051945A/en
Application granted granted Critical
Publication of JP4013413B2 publication Critical patent/JP4013413B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、ユーザ定義のログイン情報を用いて、ユーザ認証を含むシステムの起動処理を実行する情報処理装置、及び記憶媒体に関する。
【0002】
【従来の技術】
現在、パーソナルコンピュータやサーバ等のコンピュータ・システムはあらゆる状況で使用されている。そのため、そのコンピュータ・システムが安全で、且つ信頼できるようにし、また、そのコンピュータ・システムに蓄えられたデータの改竄や盗難などに備えることがとても重要になっている。そこで、コンピュータ・システムのセキュリティ対策として、コンピュータ・システムの起動時に、ユーザがユーザ名やパスワード等を入力し、コンピュータ・システム側でそれらの照合をする方法が主に採用されている。
【0003】
一般に、上述したコンピュータ・システムの起動時のセキュリティ管理において、ユーザ名やパスワード等の入力は、図6に示すようなコンピュータ・システムの標準のログインダイアログ画面10aを使用して行い、且つこれらの管理もコンピュータ・システムの標準のシステム起動処理関数で行っている。
【0004】
図6に示すように、コンピュータ・システムの標準のログインダイアログ画面10aには、ユーザ名を入力するためのユーザ入力欄10b、パスワードを入力するためのパスワード入力欄10c、ユーザ名とパスワード入力後、ユーザ認証処理を開始するためのOKボタン10d、ユーザ認証処理を行わずキャンセルするためのキャンセルボタン10eが設けられている。
【0005】
コンピュータ・システムを起動する際、ユーザは、この標準のログインダイアログ画面10aのユーザ入力欄10b、パスワード入力欄10cに対して、それぞれユーザ名、パスワードを入力するといったログイン処理を行う。そして、コンピュータ・システムにおける標準のシステム起動処理関数は、これらのユーザ名やパスワードが予め設定されているものと一致するか否かを判定し、一致する場合のみ、コンピュータ・システムへのログインを可能とする。
【0006】
一方、コンピュータ・システムは、様々な用途に使用されるようになってきている。例えば、個人用に使用する頻度の高い携帯型のパーソナルコンピュータ等においては、ユーザがより自己の機器を利用しやすくするため、適度にカスタマイズすることが可能である。そして、上述のログイン処理は、自己の機器の起動時毎に実行するものであるため、その実行頻度が高く、ログインダイアログ画面についても、ユーザ独自のものに変更して、使用しやすくしたいという要望があった。
【0007】
【発明が解決しようとする課題】
しかしながら、コンピュータ・システムにおいて、ユーザが独自にコンピュータ・システムの起動時のログインダイアログ画面を作成することは、セキュリティ管理という性質から困難である。その上、仮にユーザ独自のログインダイアログ画面を作成でき、且つユーザ定義のログイン情報を用いてシステムへのログイン処理が行えたとしても、ユーザ定義のログイン情報に基づいて行われるユーザ認証が不十分となり、却ってコンピュータ・システムのセキュリティを確保することが困難になる可能性があった。
【0008】
つまり、パスワードに、ユーザ自身の名前や生年月日に関連する番号など、ユーザ自信が忘れにくい文字列を設定した場合には、そのパスワードが容易に他者によって盗用される可能性がある。逆に、複雑なパスワードを設定した場合にも、文字列の組み合わせを変えて繰り返しログイン操作することによって、パスワードが盗用されてしまう可能性があったり、ユーザ自身が忘れてしまうのを防ぐために残したメモ等によって簡単に盗難されてしまう可能性がある。そして、ユーザ定義のログイン情報を用いてシステムへのログイン処理を行う場合には、ユーザ定義のログイン情報のセキュリティ管理が十分に確保されていない可能性も生じる。
【0009】
そこで、本発明の課題は、ユーザ定義のログイン情報を用いて、ユーザ認証を含むシステムの起動処理を実行する際に、十分なセキュリティ機能を確保することを可能とする情報処理装置、及び記憶媒体を提供することである。
【0010】
【課題を解決するための手段】
請求項1記載の発明は、
ユーザにより定義され、ユーザ認証を含むユーザ関数ルーチンを記憶する第1の記憶手段(例えば、図1に示すユーザ関数ライブラリ3UL)と、
処理値算出関数を記憶する第2の記憶手段(例えば、図1に示す標準関数ライブラリ3SL)と、
前記第1の記憶手段に記憶された前記ユーザ関数ルーチンを読み出して、当該ユーザ関数ルーチンにおいてユーザ認証を実行し、前記処理値算出関数に引数として渡される認証結果値(例えば、処理フラグ“Flg”)を取得するとともに、取得した認証結果値及びユーザによる設定が不可能な所定値(例えば、起動処理値“sRt”)を引数として、前記第2の記憶手段に記憶された処理値算出関数を呼び出し、当該呼び出した処理値算出関数により前記ユーザ認証の正当性を確認するための第1の戻り値を演算する第1の演算手段(例えば、図1に示すCPU2;図5に示すパスワード入力ユーザ関数処理)と、
前記第1の演算手段において使用する引数と同一の値を引数として、前記第2の記憶手段に記憶された処理値算出関数を呼び出し、当該呼び出した処理値算出関数により前記ユーザ認証の正当性を確認するための第2の戻り値を演算する第2の演算手段(例えば、図1に示すCPU2;図4に示す処理値算出関数処理)と、
前記第1の演算手段により演算された第1の戻り値(例えば、戻り値“uRt”)と、前記第2の演算手段により演算された第2の戻り値(例えば、戻り値“srOk”、“srCan”)と、を比較する比較手段(図1に示すCPU2;図4に示す“Ru”と“Rs”との比較)と、
この比較手段による比較結果に応じて、システム起動処理、キャンセル、セキュリティ処理を実行する起動処理手段(例えば、図1に示すCPU2;図4に示すシステム起動処理、セキュリティ処理)と、
を備えたことを特徴としている。
【0013】
請求項2記載の発明は、
システムを起動する都度、乱数を発生させる乱数発生手段(例えば、図1に示すCPU2;図4に示すステップS110)を更に備え、
前記第1及び第2の演算手段において演算される前記処理値算出関数の引数である前記所定値には、前記乱数発生手段によって発生された乱数を使用することを特徴としている。
【0016】
請求項3記載の発明は、
前記ユーザ関数ルーチンにおけるユーザ認証は、ユーザから入力されるログイン情報(例えば、パスワード等)を用いて行われることを特徴とする。
【0019】
請求項4記載の発明は、
前記ユーザ関数ルーチンにおけるユーザ認証の結果が正当なものである場合は、前記第1の演算手段による演算結果には、前記第1の戻り値及びシステム起動の際のログイン処理に必要なユーザ名(例えば、ユーザ名“uUser”)が含まれ、
前記比較手段は、第1の演算手段により演算された第1の戻り値と第2の演算手段により演算された第2の戻り値とを比較し、
前記起動処理手段は、この比較手段によって、前記第1の演算手段により演算された第1の戻り値と前記第2の演算手段により演算された第2の戻り値とが一致すると判定された場合に、前記システム起動の際のログイン処理に必要なユーザ名を使用してシステムの起動処理を実行することを特徴としている。
【0022】
【発明の実施の形態】
以下、図1〜図5を参照して本発明の情報処理装置の実施の形態について説明する。
【0023】
この情報処理装置1は、ユーザ定義のログイン情報を用いて、システムの起動処理を行う際にも十分なセキュリティを確保するために、ユーザにより定義され、ユーザ認証を含むログイン関数ルーチン(パスワード入力ユーザ関数)を記憶しているユーザ関数ライブラリ3ULと、処理値算出関数を記憶している標準関数ライブラリ3SLとを備えている。そして、システムを起動する際は、前記ユーザ関数ライブラリ3ULから、パスワード入力ユーザ関数を呼び出し、当該パスワード入力ユーザ関数内でユーザにより入力されるログイン情報(パスワード等のログインダイアログに入力されるログインコード)を用いたユーザ認証を行い、そのユーザ認証結果値(処理フラグ“Flg”)を取得し、取得したユーザ認証結果値及びユーザにより設定が不可能な起動処理値(sRt;例えば、システムの起動の都度、発生される乱数等)を引数として、処理値算出関数を演算し、この演算結果を戻り値(uRt)として取得する。また、システム側でも同一の値(起動処理値“sRt”、処理フラグ“Flg”)を引数として、前記処理値算出関数を演算し、この演算結果を戻り値(srOkまたはsrCan)として取得する。これら戻り値として取得した両演算結果を比較することにより、両演算結果が一致しているかを否かを判別し、この判別結果に応じた起動処理(システム起動、キャンセル、セキュリティ処理)を行う。
【0024】
詳細は後述するが、ユーザにより定義され、システム起動処理実行時にユーザにより入力されるログイン情報は、パスワード等のログインコードを含んでいる。パスワード入力ユーザ関数は、後述するユーザ関数ライブラリ3ULのパスワードDLL内に記憶されている。また、処理値算出関数は、後述する標準関数ライブラリ3SLの起動処理値算出関数DLL内に記憶されている。
【0025】
まず構成を説明する。
図1は、本実施の形態における情報処理装置1の内部構成を示すブロック図である。
【0026】
この図1において、情報処理装置1は、CPU2、RAM3、ROM4、表示部5、操作子部6、メモリカード7、及び通信部8によって構成されており、各部はバス9によって接続されている。
【0027】
CPU(Central Processing Unit)2は、記憶媒体であるメモリカード7内のメモリに記憶されている当該情報処理装置1に対応する各種プログラムの中から指定されたプログラムや、操作子部6から入力される各種指示信号に応じた各種データ等をRAM3内に格納し、この入力指示及び入力データに応じてRAM3内に格納したアプリケーションプログラムに従って各種処理を実行し、その処理結果をRAM3内に格納するとともに、表示部5に出力して表示する。そして、CPU2は、RAM3内に格納した処理結果を操作子部6から入力指示されるメモリカード7内のメモリの保存先に保存する。
【0028】
また、CPU2は、後述するシステムの起動処理を実行する際には、記憶媒体であるメモリカード7内のメモリからインストールされ、RAM3内に格納されている、システムの起動処理(図4参照)、に係わるプログラムを読み出して、読み出したプログラムに従って、各処理を実行する。このシステムの起動処理には、ユーザ定義のパスワード入力ユーザ関数の処理(図5参照)が含まれる。
【0029】
各処理については詳細を後述するが、ここで概略を説明する。CPU2はシステムの起動の際に、記憶媒体であるメモリカード7内のメモリからインストールされ、RAM3内に格納されたシステムの起動処理(図4参照)を行うが、予めユーザが定義したパスワード入力ユーザ関数をDLL(Dynamic Link Library)の形式で作成している場合には必ず、ユーザ定義のパスワード入力ユーザ関数の処理(図5参照)を実行する。
【0030】
ここで、DLL(Dynamic Link Library)とは、OSが持つ機能であり、ルーチンをいくつかの“.DLL”という拡張子を持つファイルに分けておき、必要なDLLファイルだけをメモリにロードして使用する。修正も対象となるDLLファイルだけに対して行え、たとえ別のルーチンであっても同じDLLファイルを使用することが可能であるため、メモリを節約することにもなる。
【0031】
CPU2は、予めユーザにより定義されたパスワード入力ユーザ関数を呼び出す前に、ユーザによる設定が不可能な起動処理値を算出する。本実施の形態では、この起動処理値としてシステム起動毎に発生する乱数を使用する。
【0032】
パスワード入力ユーザ関数とは、ユーザ関数ライブラリ3ULのパスワードDLL内に記憶されている関数であり、ユーザ認証を行うための関数である。パスワード入力ユーザ関数では、このユーザから入力されるユーザ定義のログイン情報によるユーザ認証の結果値及び前記算出された起動処理値とを引数として、起動処理値算出DLLから呼びだされる処理値算出関数を演算し、ユーザ認証結果を含むその演算結果を戻り値として取得する。
【0033】
処理値算出関数とは、標準関数ライブラリ3SLの起動処理値算出DLL内に記憶されている関数であり、パスワード入力ユーザ関数の正当性認証を行う関数である。CPU2は、システムの起動処理(図4参照)とパスワード入力ユーザ関数処理(図5参照)とにおいて、同一の引数を用いて、処理値算出関数を演算し、その演算結果を戻り値として取得する。
【0034】
そして、CPU2は、パスワード入力ユーザ関数において演算された前記処理値算出関数の戻り値と、システムの起動処理側で演算された前記処理値算出関数の戻り値とを比較し、これらの戻り値が一致した場合で、且つシステム起動に必要な情報であるユーザ名を取得していす場合には正常なログイン処理が行われたと判断し、これら戻り値が一致しなかった場合には正常なログイン処理が行われなかったと判断する。その判断結果に応じて、システム起動処理のうちログイン処理、キャンセル処理、あるいはセキュリティ処理などを行う。
【0035】
RAM(Random Access Memory)3は、本情報処理装置1に対応したアプリケーションプログラム(例えば、アプリケーションプログラム1(AP1)、AP2、及びAP3)や、システムスペックファイル3SF、アプリケーションスペックファイル3AF、標準関数ライブラリ3SL、ユーザ関数ライブラリ3UL等を格納するメモリエリアを有する。また、入力指示、入力データ及び処理結果を格納するワークメモリエリアも有する。
【0036】
RAM3内に格納されているアプリケーションプログラム(以下、「AP」と呼ぶ。)は、メモリカード7を介してインストールされ、情報処理装置1で使用可能なプログラムである。
【0037】
システムスペックファイル3SFは、情報処理装置1のシステムの定義や設定を行うために必要な情報を有するファイルである。
【0038】
アプリケーションスペックファイル3AFは、情報処理装置1におけるアプリケーションに対応して設定されるファイルである。
【0039】
標準関数ライブラリ3SLは、情報処理装置1がシステムの標準として持っている各種関数を格納したライブラリであり、標準的な起動処理を行うための処理関数やパスワード入力ユーザ関数の正当性認証を行うための処理値算出関数等を格納しているライブラリである。
【0040】
ユーザ関数ライブラリ3ULは、ユーザにより定義された各種関数を格納したライブラリであり、このユーザ関数ライブラリ3UL内のパスワードDLL内には、パスワード入力ユーザ関数等を格納している。
【0041】
ROM(Read Only Memory)4は、本情報処理装置1に対応したオペレーティングシステム(OS)プログラム等を記憶している。
【0042】
表示部5は、CRT(Cathode Ray Tube)、LCD(Liquid Crystal Display)により構成され、CPU2から入力される表示データを表示する。
【0043】
操作子部6は、カーソルキーや数字入力キー等を備えたキーボード及びマウス等のポインティングデバイス等の入力装置を含み、キーボードにおいて押下されたキーの押下信号やマウスの位置信号をCPU2に出力する。
【0044】
メモリカード7は、プログラムやデータ等が予め記憶されているメモリを有しており、このメモリは磁気的、光学的メモリ、若しくは半導体メモリで構成されている。このメモリカード7のメモリには、当該情報処理装置1に対応する各種アプリケーションプログラムや、各種処理プログラムで処理されたデータ等が記憶され、この記憶されているアプリケーションプログラムやデータ等は、RAM3にインストールされる。
【0045】
また、このメモリカード7に記憶するプログラムやデータ等は、後述する通信部8を介して他の装置から受信して記憶する構成としてもよく、更に、通信部8を介して接続された他の装置側に上記メモリカード7を設け、このメモリカード7に記憶されているプログラムやデータ等を通信部8を介して使用する構成にしてもよい。
【0046】
通信部8は、モデム(MODEM:MOdulator / DEModulator )、ターミナルアダプタ(TA:Terminal Adapter)、あるいはルータ等によって構成され、電話回線、ISDN回線、あるいは専用線等の通信回線を介して外部機器との通信を行うための制御を行う。
【0047】
ここで、図2を参照して、各情報処理装置1とメインコンピュータ11間のデータ交換の例を説明する。図2に記載されている携帯端末1A、携帯端末1B、携帯端末1Cは、本発明を適用した携帯端末型の情報処理装置である。
【0048】
携帯端末1Aはメモリカード7Aに対して、携帯端末1Bはメモリカード7Bに対して、そして携帯端末1Cはメモリカード7Cに対してデータを記憶し、各メモリカード7A、7B、7Cに記憶されたそれぞれの内容が、カードリーダ/ライタ12によってリードされる。そして、リードされた各内容が、カードリーダ/ライタ12に接続されているメインコンピュータ11へ転送される。また、このカードリーダ/ライタ12は、メインコンピュータ11のアプリケーションファイル11AFやデータファイル11DFをメモリカード7A、7B、7Cへライトする。そして、携帯端末1A、携帯端末1B、そして携帯端末1Cでは、各メモリカード7A、7B、7Cに記憶されているアプリケーションやデータを読み出し、各々のRAM3へインストールする。
【0049】
次に図3を参照して、ユーザ定義のログイン情報を入力するためのログインダイアログ画面を例を挙げて説明する。
【0050】
図3は、ユーザ定義のログイン情報を用いてシステムの起動処理を行うためのログインダイアログ画面5aの例であり、このログインダイアログ画面5aは表示部5に表示される。図3に示すように、情報処理装置1のログインダイアログ画面5aには、パスワードを入力するためのパスワード入力欄5b、パスワード入力後、ユーザ認証処理を開始させるためのOKボタン5c、ユーザ認証処理を行わずキャンセルさせるためのキャンセルボタン5dが設けられている。
【0051】
この図3に示す、ログインダイアログ画面5aでは、ユーザ個人を認証するための情報として、パスワードのみが入力される。パスワードのみの入力で、十分なセキュリティを確保するために、CPU2は、以下に示すシステム起動処理(図4参照)及びユーザ定義のパスワード入力ユーザ関数の処理(図5参照)を実行する。
【0052】
次に動作を説明する。
まず、図4を参照して情報処理装置1におけるシステムの起動処理の動作を説明する。図4は、CPU2により実行されるシステム起動処理の動作を示すフローチャートである。
【0053】
図4において、情報処理装置1が起動すると、CPU2は、記憶媒体であるメモリカード7内のメモリに記憶されており、そのメモリ内からRAM3内にインストールされシステム起動処理プログラムを読み出して、システム起動処理プログラムを開始する。そしてまず、CPU2は、ユーザ関数ライブラリ内のユーザ定義のパスワード入力ユーザ関数が記憶されているパスワードDLL(Dynamic Link Library)があるか否かを判定し(ステップS101)、パスワードDLLが無い場合(ステップS101;NO)には、ステップS102〜ステップS108の標準のシステム起動処理を実行する。
【0054】
一方、ユーザにより定義されたパスワード入力ユーザ関数が記憶されているパスワードDLLがある場合(ステップS101;YES)には、パスワードDLL内に記憶されているパスワード入力ユーザ関数を呼び出し(図5参照)、ステップS110〜ステップS119のユーザ定義のシステム起動処理を実行する。予めユーザにより定義されたパスワード入力ユーザ関数については、後で詳細に説明する。
【0055】
まず、パスワード入力ユーザ関数が記憶されているパスワードDLLが無い場合(ステップS101;NO)について説明する。ユーザにより定義されたパスワード入力ユーザ関数が無い場合には、情報処理装置1の標準のシステム起動処理(ステップS102〜S108)を実行する。
【0056】
標準のシステム起動処理では、パスワード等を入力する標準のログインダイアログ(Log-in Dialog)画面(DLG)を表示する(ステップS102)。そして、カウンタ“C”を“0”に初期化した後(ステップS103)、ユーザが入力したパスワードが、ユーザ個人の登録パスワードと一致するか否かを判定する(ステップS104)。このカウンタ“C”は、ユーザにより、パスワード誤入力あるいはパスワード不正入力が連続して何回行われたかを計数し、このカウンタ“C”によるカウント値がある一定値“m”と一致し、ユーザにより一定回数以上パスワード誤入力あるいはパスワード不正入力が行われた場合には、情報処理装置1のセキュリティ処理(ステップS119)を実行する。
【0057】
ユーザが入力したパスワードがユーザ個人の登録パスワードと一致すると判定されると(ステップS104;YES)、ステップS107に移行し、ユーザ名が設定され、ログイン処理を実行し(ステップS107)、情報処理装置1のシステムを起動する(ステップS108)。ユーザが入力したパスワードがユーザ個人の登録パスワードと一致しないと判定されると(ステップS104;NO)、カウンタ“C”に“1”加算し(ステップS105)、その加算されたカウンタ“C”のカウント値がある一定値“m”と一致すか否かを判定する(ステップS106)。カウンタ“C”が“m”と一致しない場合(ステップS106;NO)には、ステップS102に移行し、もう一度、標準のログインダイアログ画面におけるパスワードの入力から処理を開始する。カウンタ“C”が“m”と一致する場合(ステップS106;YES)には、ステップS119に移行し(矢印▲1▼)、情報処理装置1のセキュリティ処理を行い(ステップS119)、情報処理装置1におけるシステム起動処理を終了する。
【0058】
次に、パスワード入力ユーザ関数が記憶されているパスワードDLLがある場合(ステップS101;YES)について説明する。ユーザにより定義されたパスワード入力ユーザ関数がある場合には、このパスワード入力ユーザ関数を呼び出し、ユーザ定義のシステム起動処理(ステップS110〜S119)を実行する。
【0059】
パスワードDLL内に記憶されているパスワード入力ユーザ関数を呼び出す前に、情報処理装置1は、パスワード入力ユーザ関数と処理値算出関数に引数として渡す起動処理値“sRt”を取得する(ステップS110)。この起動処理値“sRt”は、情報処理装置1のシステムを起動する都度、発生する乱
数であり、ユーザによる設定が不可能な数である。
【0060】
起動処理値“sRt”が取得されると、CPU2はパスワードDLL内に記憶されている、ユーザにより定義されたパスワード入力ユーザ関数を呼び出す(ステップS111)。この際、このパスワード入力ユーザ関数の引数として、先程算出した起動処理値“sRt”を渡す。本実施の形態において使用するパスワード入力ユーザ関数の形式を式(1)に示す。
【0061】
Int Msv_Pw_Input(HWND hWnd, int sRt) …(1)
【0062】
この式(1)において、引数はアプリケーションハンドル“hWnd”、処理値算出関数“sRt”であり、戻り値は式(1)で算出される値である。
【0063】
なお、このパスワード入力ユーザ関数が一例であり、これに限られるものではなく、DLL形式で作成された関数であればよい。
【0064】
ここで呼び出されるパスワード入力ユーザ関数(1)により、情報処理装置1におけるシステム起動処理をユーザが予め定義したログインダイアログ画面等を利用して実行する。
【0065】
図5は、CPU2により実行されるユーザ定義のパスワード入力ユーザ関数(1)における処理の動作を説明するフローチャートである。
【0066】
図5において、パスワード入力ユーザ関数(1)が図4のステップS111で呼びだされると、CPU2は、記憶媒体であるメモリカード7内のメモリに記憶されており、そのメモリ内からRAM3にインストールされたパスワード入力ユーザ関数処理プログラムを読み出す。そして、ユーザ定義のパスワード入力ユーザ関数処理プログラムを開始する。
【0067】
ユーザ定義のパスワード入力ユーザ関数(1)における処理は、ユーザが予め定義したパスワード等のログイン情報を入力するログインダイアログ(Log-in Dialog)画面5a(DLG)(図3参照)を表示する(ステップS120)。そして、この表示されたログインダイアログ画面5aに対して、パスワード等の予めユーザが設定したログイン情報を入力し(ステップS121)、ユーザ認証処理を実行するか否かを、“Ok”ボタン、あるいは“キャンセル”ボタンを操作することで決定する(ステップS122)。ユーザ認証処理を実行する場合には、ステップS123〜S128の処理を実行し、ユーザ認証処理をキャンセルする場合には、ステップS129の処理を実行する。
【0068】
ステップS122において、“Ok”ボタンが選択されると(ステップS122;OK)、カウンタ“C”を“0”に初期化する(ステップS123)。カウンタ“C”は、図4のステップS103の場合と同様、ユーザ認証処理(ステップS124)が連続して正しく実行されなかった回数を計数し、システムのセキュリティ処理(図4、ステップS119)を実行するか否かの判断基準となる値である。
【0069】
次に、ユーザ認証処理を行い(ステップS124)、正しくユーザ認証処理が行われたと判定されると(ステップS124;YES)、ユーザ認証結果値として処理フラグ“Flg=0”を取得し、起動処理値“sRt”と処理フラグ“Flg=0”とを引数として起動処理値算出関数DLL内の処理値算出関数を呼び出す(ステップS125)。本実施の形態においては、処理値算出関数の形式を式(2)に示す。
【0070】
Int Msv_User_Deal(int sRt, int Flg) …(2)
【0071】
この式(2)において、引数は、起動処理値“sRt”と処理フラグ“Flg”とであり、その戻り値は、“uRt”として取得する。
【0072】
なお、この処理値算出関数は一例であり、これに限られるものではなく、DLL形式で作成された関数であればよい。
【0073】
起動処理値“sRt”と処理フラグ“Flg=0”を引数として処理値算出関数を演算し、戻り値“uRt”を得る。更に、ステップS124において正しくユーザ認証処理が行われたと判定されているので、ログイン処理に必要な情報であるユーザ名“uUser”を取得する(ステップS126)。その後、戻り値“uRt”及びユーザ名“uUser”を取得すると、図4のステップS111に戻り、ユーザ定義のシステム起動処理に復帰する。
【0074】
ユーザ認証処理を行い(ステップS124)、正しくユーザ認証処理が行われなかったと判定されると(ステップS124;NO)、上述したカウンタ“C”に“1”加算し(ステップS127)、その加算されたカウンタ“C”のカウント値がある一定値“n”と一致するか否かを判定する(ステップS128)。カウント値が“n”と一致しない場合(ステップS128;NO)には、ステップS121に移行し、もう一度、パスワード等のログインコードの入力から処理を開始する。カウント値が“n”と一致する場合(ステップS128;YES)には、図4のステップS119に移行し(矢印▲1▼)、情報処理装置1のセキュリティ処理を行い(ステップS119)、情報処理装置1におけるシステム起動処理を終了する。
【0075】
ステップS122において、“キャンセル”ボタンが選択されると(ステップS122;キャンセル)、ユーザ認証結果値として処理フラグ“Flg=1”を取得し、起動処理値“sRt”と処理フラグ“Flg=1”とを引数として起動処理値算出DLL内の処理値算出関数(2)を呼び出す(ステップS129)。その結果、戻り値として“uRt”を取得し、図4のステップS111に戻り、ユーザ定義のシステム起動処理に復帰する。
【0076】
図5を参照して上述した、ユーザ定義のパスワード入力ユーザ関数(1)の処理が終了すると、ユーザ定義のシステム起動処理へ復帰し、戻り値“uRt”、ユーザ名“uUser”を各々レジスタ“Ru”、レジスタ“Rn”に確保する(ステップS112)。 パスワード入力ユーザ関数(1)における戻り値“Ru”及び“Rn”を取得すると、図5に示すパスワード入力ユーザ関数(1)処理において、ユーザ認証処理が正しく行われ、正しいユーザ名が取得されたかどうか(ステップS113〜S115)、あるいはユーザ認証処理がキャンセルされ、キャンセル処理が行われたかどうか(ステップS116〜S118)を、パスワード入力ユーザ関数(1)の正当性認証を行うため、起動処理値算出DLLから処理値算出関数(2)を呼び出して、この演算結果を判断する。
【0077】
上述した処理値算出関数(2)に引数として渡される処理フラグ“Flg”は、パスワード入力ユーザ関数(1)処理においてユーザ認証処理が正しく行われたか否かを判断するための基準となる戻り値を得るために、処理フラグ“Flg=0”、あるいは処理フラグ“Flg=1”にセットされる。処理値算出関数(2)において、この処理フラグ“Flg”を“Flg=0”にセットすると、パスワード入力ユーザ関数(1)処理においてユーザ認証処理が正しく行われたか否かを判断するための基準となる戻り値“srOk”を取得することができる。一方、処理値算出関数(2)において、この処理フラグ“Flg”を“Flg=1”にセットすると、パスワード入力ユーザ関数(1)処理においてユーザ認証処理がキャンセルされたか否かを判断するための基準となる戻り値“srCan”を取得することができる。
【0078】
まず、上述したパスワード入力ユーザ関数(1)処理において、ユーザ認証処理が正しく行われたか否かを判断する。ステップS113で、パスワード入力ユーザ関数(1)処理において、ユーザ認証処理が正しく行われたか否かを判断するために、処理フラグ“Flg=0”にセットし、この処理フラグ“Flg=0”及び起動処理値“sRt”を引数として、処理値算出関数(2)を演算し、演算結果として戻り値“srOk”を取得する。そして戻り値“srOk”をレジスタ“Rs”に確保する(ステップS114)。ステップS114において戻り値“srOk”を取得すると、ステップS112において取得したレジスタ“Ru”に確保した戻り値“uRt”と一致するか否かを判定する(ステップS115)。
【0079】
レジスタ“Ru”とレジスタ“Rs”とにそれぞれ確保されている戻り値が一致する場合、すなわち、ステップS112においてパスワード入力ユーザ関数(1)から取得した戻り値“uRt”と、ステップS114において処理値算出関数(2)から取得した戻り値“srOk”とが一致する場合(ステップS115;YES)には、パスワード入力ユーザ関数(1)における処理がユーザ認証処理の正当性が確認され、ステップS107に移行する。そして、パスワード入力ユーザ関数(1)処理において取得したユーザ名“uUser”をレジスタ“Rn”から読み出し、情報処理装置1に設定し、情報処理装置1へログインし(ステップS107)、情報処理装置1のシステムを起動する(ステップS108)。逆に、レジスタ“Ru”とレジスタ“Rs”とにそれぞれ確保されている戻り値が一致しない場合(ステップS115;NO)には、ステップS116の処理に移行する。
【0080】
上述したパスワード入力ユーザ関数(1)処理において、ユーザ認証処理が正しく行われなかったと判断されると、次に、パスワード入力ユーザ関数(1)処理において、ユーザ認証処理がキャンセルされたか否かを判断する。ステップS116で、パスワード入力ユーザ関数(1)処理において、ユーザ認証処理がキャンセルされたか否かを判断するために、ステップS113の処理の場合とは異なり、“Flg=1”にセットし、この処理フラグ“Flg=1”及び起動処理値“sRt”を引数として、処理値算出関数(2)を演算して、演算結果として戻り値“srCan”を取得する(ステップS117)。そして戻り値“srCan”をレジスタ“Rs”に確保する。ステップS117において戻り値“srCan”を取得すると、ステップS112においてレジスタ“Ru”に確保した戻り値“uRt”と一致するか否かを判定する(ステップS118)。
【0081】
レジスタ“Ru”とレジスタ“Rs”とにそれぞれ確保されている戻り値が一致する場合、すなわち、ステップS112においてパスワード入力ユーザ関数(1)から取得した戻り値“uRt”と、ステップS117において処理値算出関数(2)から取得した戻り値“srCan”とが一致する場合(ステップS118;YES)には、パスワード入力ユーザ関数(1)処理がキャンセル処理を行ったと判断し、情報処理装置1のシステム起動処理を終了する。逆に、レジスタ“Ru”とレジスタ“Rs”とにそれぞれ確保されている戻り値が一致しない場合(ステップS118;NO)には、ユーザ認証が正しく行われず、キャンセルもされていないものと判断して、ステップS119の処理に移行する。
【0082】
ステップS119では情報処理装置1のセキュリティ処理を行い(ステップS119)、情報処理装置1におけるシステム起動処理を終了する。ステップS119におけるセキュリティ処理とは、情報処理装置1を使用不可にしたり、強制終了させたりする処理のことである。
【0083】
以上のように、本発明を適用した実施の形態における情報処理装置1は、ユーザにより予め定義されたパスワード入力ユーザ関数をユーザ関数ライブラリ3ULに記憶しているとともに、処理値算出関数を標準関数ライブラリ3SLに記憶している。システムを起動する際には、このパスワード入力ユーザ関数において、ユーザにより入力されたログイン情報を利用したユーザ認証を実行し、そのユーザ認証の結果値として処理フラグ“Flg”を取得し、この処理フラグと、乱数である起動処理値とを引数として前記処理値算出関数の戻り値を算出する。また、システム側では、前記パスワード入力関数において使用した引数と同一の引数を用いて、前記処理値算出関数の戻り値を算出する。そして、前記両戻り値を比較することによって、ユーザ定義のシステム起動処理が正しく実行されるか否かを判別する。
【0084】
したがって、パスワード入力ユーザ関数において、ユーザ認証結果と乱数である起動処理値とを引数として処理値算出関数を演算し、システムの起動処理において、同一の引数を用いて処理値算出関数を演算し、これらの演算結果を比較することによって、ユーザ認証の正当性を判定することができる。そのため、ユーザ定義のログインダイアログ画面に対して、ユーザが入力するログイン情報を用いてシステムを起動する場合にも、これらユーザ定義のログイン情報のセキュリティ管理やシステムのセキュリティを確実に確保することが可能となる。
【0085】
また、システムを起動する都度乱数発生させ、発生した乱数をユーザ認証のための演算の引数とすることによって、意図的にユーザ認証の結果を操作されることを防ぐことができる。そのため、ユーザにより自由に定義されたシステムのセキュリティを更に強化することが可能となる。
【0086】
そして、上述したユーザ認証に、ユーザにより入力されるログイン情報を用いることによって、ユーザは自己の利用しやすいパスワード等を用いてログイン時の処理を実行することができる。そのため、ユーザにより正しいログイン情報が入力されない限り、正しくユーザ認証されず、ユーザにより自由に定義されたシステムのセキュリティを確保することが可能となる。
【0087】
さらに、システム起動に必要な情報は、ユーザ認証の結果が正当で、且つ所定の関数の演算を経た後取得されるので、他人に盗用されたり改竄されたりすることを少なくすることができる。また、ユーザ認証の結果から、ログインに必要な情報を取得していおり、且つログイン関数ルーチン側とシステム側とにおける処理値算出関数の演算結果が一致するという双方の条件を満たす場合のみ、システムが起動されるので、ユーザにより自由に定義されたログイン関数ルーチンを使用したシステム起動時のセキュリティをより一層強化することが可能となる。
【0088】
なお、本発明は、上記実施の形態の内容に限られるものではなく、本発明の趣旨を逸脱しない範囲で適宜変更可能である。例えば、ユーザにより定義されるパスワード入力ユーザ関数や起動処理値算出DLL内の処理値算出関数を、C++言語形式で作成したが、これに限られるものではなく、DLL形式でメモリに記憶可能な言語形式の関数であるばよい。
【0089】
また、本実施の形態においては、記憶媒体としてメモリカードを利用したが、フロッピーディスクや、DVD−ROMなどの他の記憶媒体であってもよい。
【0090】
【発明の効果】
請求項1記載の発明の情報処理装置及び請求項5記載の記憶媒体によれば、ユーザにより自由に定義されたユーザ関数ルーチンを用いてユーザ認証を行い、そのユーザ認証の正当性を判定することができる。その結果、ユーザ定義のログインダイアログ画面に対して、ユーザが入力するログイン情報を用いてシステムを起動する場合にも、これらユーザ定義のログイン情報のセキュリティ管理やシステムのセキュリティを確実に確保することが可能となる。
【0091】
請求項2記載の発明の情報処理装置によれば、システムを起動する都度乱数を発生させ、発生した乱数をユーザ認証のための演算の引数とするため、ある一定値をユーザ認証のための演算の引数とした場合とは異なり、演算結果を予測されたり、意図的にユーザ認証の結果を操作されることを防ぐことができる。その結果、ユーザにより自由に定義されたシステムのセキュリティを更に強化することが可能となる。
【0092】
請求項3記載の発明の情報処理装置によれば、ユーザ関数ルーチンにおけるユーザ認証には、ユーザから入力されるログイン情報を用いるので、ユーザは自己の使用しやすいパスワード等を用いてログイン時の処理を実行することができる一方、ユーザにより正しいログイン情報が入力されない限り、正しくユーザ認証されず、ユーザにより自由に定義されたシステムのセキュリティを確保することが可能となる。
【0093】
請求項4記載の発明の情報処理装置によれば、システム起動に必要な情報は、ユーザ認証の結果が正当で、且つ所定の関数の演算を経た後、取得されるので、他人に盗用されたり改竄されたりすることを少なくすることができる。また、ユーザ認証の結果からログインに必要な情報を取得し、且つユーザ関数ルーチン側とシステム側とにおける処理値算出関数の演算結果が一致するという双方の条件を満たす場合のみ、システムが起動されるので、ユーザにより自由に定義されたユーザ関数ルーチンを使用したシステム起動時のセキュリティをより一層強化することが可能となる。
【図面の簡単な説明】
【図1】本発明の実施の形態の情報処理装置1の内部構成を示すブロック図である。
【図2】複数の情報処理装置1とメインコンピュータ11のデータ交換の例を示す図である。
【図3】情報処理装置1において、ユーザ定義のログイン情報を用いて、システムの起動処理を実行するためのログインダイアログ画面5aの例を示す図である。
【図4】情報処理装置1における、システム起動処理の動作を説明するフローチャートである。
【図5】情報処理装置1における、ユーザ定義のパスワード入力ユーザ関数処理の動作を説明するフローチャートである。
【図6】コンピュータ・システムにおいて、一般に使用されている標準のシステム起動処理を行うための、標準のログインダイアログ画面10aの例を示す図である。
【符号の説明】
1 情報処理装置
1A 携帯端末型情報処理装置
1B 携帯端末型情報処理装置
1C 携帯端末型情報処理装置
2 CPU
3 RAM
3SF システムスペックファイル
3AF アプリケーションスペックファイル
3SL 標準関数ライブラリ
3UL ユーザ関数ライブラリ
4 ROM
5 表示部
5a ユーザ定義のログインダイアログ画面
5b パスワード入力欄
5c OKボタン
5d キャンセルボタン
6 操作子部
7 メモリカード
7A メモリカード
7B メモリカード
7C メモリカード
8 通信部
9 バス
10a 標準のログインダイアログ画面
10b ユーザ入力欄
10c パスワード入力欄
10d OKボタン
10e キャンセルボタン
11 メインコンピュータ
11AF アプリケーションファイル
11DF データファイル
12 カードリーダ/ライタ
AP1 アプリケーションプログラム
AP2 アプリケーションプログラム
AP3 アプリケーションプログラム
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an information processing apparatus and a storage medium that execute a system startup process including user authentication using user-defined login information.
[0002]
[Prior art]
Currently, computer systems such as personal computers and servers are used in all situations. Therefore, it is very important to make the computer system safe and reliable, and to prepare for tampering or theft of data stored in the computer system. Thus, as a security measure for the computer system, a method in which a user inputs a user name, a password, and the like when the computer system is started and the computer system side collates them is mainly employed.
[0003]
In general, in security management at the time of starting the computer system described above, input of a user name, a password, and the like is performed using a standard login dialog screen 10a of the computer system as shown in FIG. Is also performed by the standard system startup processing function of the computer system.
[0004]
As shown in FIG. 6, the standard login dialog screen 10a of the computer system includes a user input column 10b for inputting a user name, a password input column 10c for inputting a password, a user name and a password, An OK button 10d for starting user authentication processing and a cancel button 10e for canceling without performing user authentication processing are provided.
[0005]
When starting up the computer system, the user performs a login process such as inputting a user name and a password in the user input field 10b and password input field 10c of the standard login dialog screen 10a. The standard system startup processing function in the computer system determines whether or not these user names and passwords match those set in advance, and only when they match, can log in to the computer system And
[0006]
On the other hand, computer systems have been used for various purposes. For example, in a portable personal computer or the like that is frequently used for personal use, the user can easily customize the device so that the user can easily use the device. And since the above-mentioned login process is executed every time the device is started, the frequency of execution is high, and the user wishes to change the login dialog screen to one unique to the user and make it easier to use. was there.
[0007]
[Problems to be solved by the invention]
However, in a computer system, it is difficult for a user to create a login dialog screen when starting up the computer system independently because of the nature of security management. In addition, even if a user's own login dialog screen can be created and login processing to the system can be performed using user-defined login information, user authentication performed based on the user-defined login information becomes insufficient. On the other hand, it may be difficult to ensure the security of the computer system.
[0008]
That is, when a character string that is difficult for the user to forget such as the user's own name or date of birth is set in the password, the password may be easily stolen by others. Conversely, even when a complicated password is set, changing the combination of character strings and repeatedly performing login operations may cause the password to be stolen or forgotten by the user. It may be easily stolen by memos. When performing login processing to the system using user-defined login information, there is a possibility that security management of user-defined login information is not sufficiently ensured.
[0009]
Therefore, an object of the present invention is to provide an information processing apparatus and a storage medium capable of ensuring a sufficient security function when executing a system activation process including user authentication using user-defined login information. Is to provide.
[0010]
[Means for Solving the Problems]
The invention described in claim 1
Defined by user and includes user authentication User First storage means for storing a function routine (for example, the user function library 3UL shown in FIG. 1);
A second storage means for storing the processing value calculation function (for example, the standard function library 3SL shown in FIG. 1);
Read the user function routine stored in the first storage means, and execute user authentication in the user function routine, Passed as an argument to the processing value calculation function Acquired the authentication result value (for example, processing flag “Flg”) Authentication result value And a processing value calculation function stored in the second storage means with a predetermined value (for example, the startup processing value “sRt”) that cannot be set by the user as an argument And a first return value for confirming the validity of the user authentication is calculated by the called processing value calculation function. First computing means (for example, CPU 2 shown in FIG. 1; password input user function processing shown in FIG. 5);
The processing value calculation function stored in the second storage means using the same value as the argument used in the first calculation means as an argument And a second return value for confirming the validity of the user authentication is calculated by the called processing value calculation function. Second computing means (for example, CPU 2 shown in FIG. 1; processing value calculation function processing shown in FIG. 4);
In the first calculation means The first return value computed by (For example, the return value “uRt”) and the second calculation means The second return value computed by (E.g., return values “srOk”, “srCan”) and a comparison means (CPU 2 shown in FIG. 1; comparison between “Ru” and “Rs” shown in FIG. 4);
Depending on the comparison result by this comparison means System startup processing, cancellation, security processing An activation processing means to execute (for example, CPU 2 shown in FIG. 1; system activation processing and security processing shown in FIG. 4);
It is characterized by having.
[0013]
The invention according to claim 2
The system further includes random number generation means (for example, CPU 2 shown in FIG. 1; step S110 shown in FIG. 4) for generating a random number each time the system is activated.
A random number generated by the random number generation means is used as the predetermined value which is an argument of the processing value calculation function calculated by the first and second calculation means.
[0016]
The invention described in claim 3
The user authentication in the user function routine is performed using login information (for example, a password) input from the user.
[0019]
The invention according to claim 4
When the result of user authentication in the user function routine is valid, the calculation result by the first calculation means includes The first return value And system startup In the login process necessary User name (For example, the user name “uUser”)
The comparison means is connected to the first calculation means. The first return value computed by And second computing means The second return value computed by And compare
The activation processing means is transferred to the first calculation means by the comparison means. The first return value computed by And the second computing means The second return value computed by If the system is determined to match, the system is started User name required for login process using , It is characterized by executing system startup processing.
[0022]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, an embodiment of an information processing apparatus according to the present invention will be described with reference to FIGS.
[0023]
This information processing apparatus 1 uses a login function routine (password input user) defined by a user and including user authentication in order to ensure sufficient security even when performing system startup processing using user-defined login information. A user function library 3UL storing a function) and a standard function library 3SL storing a processing value calculation function. When the system is started, the password input user function is called from the user function library 3UL, and login information input by the user in the password input user function (login code input to a login dialog such as a password). The user authentication result value (processing flag “Flg”) is acquired, the acquired user authentication result value and the startup processing value that cannot be set by the user (sRt; for example, system startup A processing value calculation function is calculated using a generated random number or the like as an argument, and the calculation result is acquired as a return value (uRt). The system side also calculates the processing value calculation function using the same values (startup processing value “sRt”, processing flag “Flg”) as arguments, and acquires the calculation result as a return value (srOk or srCan). By comparing the two calculation results acquired as the return values, it is determined whether or not the two calculation results are coincident with each other, and a startup process (system startup, cancellation, security process) corresponding to the determination result is performed.
[0024]
Although details will be described later, the login information defined by the user and input by the user when the system activation process is executed includes a login code such as a password. The password input user function is stored in a password DLL of a user function library 3UL described later. The processing value calculation function is stored in a startup processing value calculation function DLL of a standard function library 3SL described later.
[0025]
First, the configuration will be described.
FIG. 1 is a block diagram showing an internal configuration of the information processing apparatus 1 according to the present embodiment.
[0026]
In FIG. 1, the information processing apparatus 1 includes a CPU 2, a RAM 3, a ROM 4, a display unit 5, an operation unit 6, a memory card 7, and a communication unit 8, and each unit is connected by a bus 9.
[0027]
A CPU (Central Processing Unit) 2 is input from a program designated from various programs corresponding to the information processing apparatus 1 stored in a memory in a memory card 7 that is a storage medium, or from an operation unit 6. Various data corresponding to various instruction signals are stored in the RAM 3, various processes are executed in accordance with the application program stored in the RAM 3 according to the input instruction and input data, and the processing results are stored in the RAM 3. , Output to the display unit 5 for display. Then, the CPU 2 stores the processing result stored in the RAM 3 in a memory storage destination in the memory card 7 instructed to input from the operation unit 6.
[0028]
When the CPU 2 executes a system startup process to be described later, the CPU 2 is installed from the memory in the memory card 7 as a storage medium and stored in the RAM 3 (see FIG. 4). Is read out, and each process is executed according to the read program. This system activation process includes a user-defined password input user function process (see FIG. 5).
[0029]
The details of each process will be described later, but the outline will be described here. The CPU 2 is installed from the memory in the memory card 7 as a storage medium and starts up the system stored in the RAM 3 (see FIG. 4) when the system is started. When a function is created in a DLL (Dynamic Link Library) format, a user-defined password input user function process (see FIG. 5) is always executed.
[0030]
Here, the DLL (Dynamic Link Library) is a function of the OS. The routine is divided into several files with the extension “.DLL” and only the necessary DLL files are loaded into the memory. use. The correction can be performed only on the target DLL file, and even if it is another routine, the same DLL file can be used, which also saves memory.
[0031]
The CPU 2 calculates an activation process value that cannot be set by the user before calling a password input user function defined in advance by the user. In the present embodiment, a random number generated every time the system is activated is used as the activation process value.
[0032]
The password input user function is a function stored in the password DLL of the user function library 3UL, and is a function for performing user authentication. In the password input user function, a process value calculation function called from the activation process value calculation DLL with the result value of user authentication based on user-defined login information input from the user and the calculated activation process value as arguments. And the calculation result including the user authentication result is acquired as a return value.
[0033]
The process value calculation function is a function stored in the startup process value calculation DLL of the standard function library 3SL, and is a function for authenticating the password input user function. In the system startup process (see FIG. 4) and the password input user function process (see FIG. 5), the CPU 2 calculates a processing value calculation function using the same argument, and acquires the calculation result as a return value. .
[0034]
Then, the CPU 2 compares the return value of the processing value calculation function calculated in the password input user function with the return value of the processing value calculation function calculated on the system startup processing side, and these return values are If there is a match and the user name, which is information necessary for system startup, is acquired, it is determined that a normal login process has been performed, and if these return values do not match, a normal login process is performed. Is determined not to have been performed. Depending on the determination result, login processing, cancellation processing, security processing, or the like is performed in the system startup processing.
[0035]
A RAM (Random Access Memory) 3 includes application programs (for example, application program 1 (AP1), AP2, and AP3) corresponding to the information processing apparatus 1, a system specification file 3SF, an application specification file 3AF, and a standard function library 3SL. And a memory area for storing the user function library 3UL and the like. It also has a work memory area for storing input instructions, input data, and processing results.
[0036]
An application program (hereinafter referred to as “AP”) stored in the RAM 3 is a program that is installed via the memory card 7 and can be used by the information processing apparatus 1.
[0037]
The system spec file 3SF is a file having information necessary for defining and setting the system of the information processing apparatus 1.
[0038]
The application spec file 3AF is a file set in correspondence with an application in the information processing apparatus 1.
[0039]
The standard function library 3SL is a library that stores various functions that the information processing apparatus 1 has as a system standard. In order to authenticate the processing function for performing a standard activation process and the password input user function. This is a library storing the processing value calculation function and the like.
[0040]
The user function library 3UL is a library in which various functions defined by the user are stored, and a password input user function and the like are stored in the password DLL in the user function library 3UL.
[0041]
A ROM (Read Only Memory) 4 stores an operating system (OS) program or the like corresponding to the information processing apparatus 1.
[0042]
The display unit 5 includes a CRT (Cathode Ray Tube) and an LCD (Liquid Crystal Display), and displays display data input from the CPU 2.
[0043]
The operation unit 6 includes input devices such as a keyboard provided with cursor keys and numeric input keys, and a pointing device such as a mouse, and outputs a key press signal and a mouse position signal pressed on the keyboard to the CPU 2.
[0044]
The memory card 7 has a memory in which programs, data, and the like are stored in advance, and this memory is constituted by a magnetic, optical memory, or semiconductor memory. The memory of the memory card 7 stores various application programs corresponding to the information processing apparatus 1, data processed by various processing programs, and the stored application programs and data are installed in the RAM 3. Is done.
[0045]
Further, the program, data, etc. stored in the memory card 7 may be received from other devices via the communication unit 8 to be described later and stored, and other programs connected via the communication unit 8 may be used. The memory card 7 may be provided on the apparatus side, and a program, data, or the like stored in the memory card 7 may be used via the communication unit 8.
[0046]
The communication unit 8 is constituted by a modem (MODEM / DEModulator), a terminal adapter (TA: Terminal Adapter), a router, or the like. Performs control for communication.
[0047]
Here, an example of data exchange between each information processing apparatus 1 and the main computer 11 will be described with reference to FIG. A mobile terminal 1A, a mobile terminal 1B, and a mobile terminal 1C illustrated in FIG. 2 are mobile terminal type information processing apparatuses to which the present invention is applied.
[0048]
The mobile terminal 1A stores data in the memory card 7A, the mobile terminal 1B stores data in the memory card 7B, and the mobile terminal 1C stores data in the memory card 7C. The data is stored in the memory cards 7A, 7B, and 7C. Each content is read by the card reader / writer 12. Then, each read content is transferred to the main computer 11 connected to the card reader / writer 12. The card reader / writer 12 writes the application file 11AF and the data file 11DF of the main computer 11 to the memory cards 7A, 7B, and 7C. Then, in the mobile terminal 1A, the mobile terminal 1B, and the mobile terminal 1C, the applications and data stored in the memory cards 7A, 7B, and 7C are read and installed in the RAMs 3 respectively.
[0049]
Next, with reference to FIG. 3, a login dialog screen for inputting user-defined login information will be described as an example.
[0050]
FIG. 3 shows an example of a login dialog screen 5 a for performing system startup processing using user-defined login information. The login dialog screen 5 a is displayed on the display unit 5. As shown in FIG. 3, the login dialog screen 5a of the information processing apparatus 1 includes a password input field 5b for inputting a password, an OK button 5c for starting user authentication processing after the password is input, and user authentication processing. A cancel button 5d for canceling without being provided is provided.
[0051]
In the login dialog screen 5a shown in FIG. 3, only a password is input as information for authenticating the individual user. In order to ensure sufficient security by inputting only the password, the CPU 2 executes the following system activation process (see FIG. 4) and user-defined password input user function process (see FIG. 5).
[0052]
Next, the operation will be described.
First, with reference to FIG. 4, the operation of the system activation process in the information processing apparatus 1 will be described. FIG. 4 is a flowchart showing the operation of the system startup process executed by the CPU 2.
[0053]
In FIG. 4, when the information processing apparatus 1 is activated, the CPU 2 is stored in the memory in the memory card 7 as a storage medium, and is installed in the RAM 3 from the memory and reads the system activation processing program to activate the system. Start the processing program. First, the CPU 2 determines whether or not there is a password DLL (Dynamic Link Library) in which a user-defined password input user function is stored in the user function library (step S101). If there is no password DLL (step S101) In step S101; NO), standard system activation processing in steps S102 to S108 is executed.
[0054]
On the other hand, when there is a password DLL in which the password input user function defined by the user is stored (step S101; YES), the password input user function stored in the password DLL is called (see FIG. 5), The user-defined system activation process in steps S110 to S119 is executed. The password input user function defined in advance by the user will be described in detail later.
[0055]
First, the case where there is no password DLL in which the password input user function is stored (step S101; NO) will be described. If there is no password input user function defined by the user, standard system activation processing (steps S102 to S108) of the information processing apparatus 1 is executed.
[0056]
In the standard system activation process, a standard log-in dialog screen (DLG) for inputting a password or the like is displayed (step S102). Then, after the counter “C” is initialized to “0” (step S103), it is determined whether or not the password entered by the user matches the registered password of the user (step S104). This counter “C” counts how many times the user has made incorrect password input or incorrect password input, and the counter value “C” is equal to a certain value “m”. When the password is erroneously input or the password is illegally input more than a certain number of times, the security processing (step S119) of the information processing apparatus 1 is executed.
[0057]
If it is determined that the password entered by the user matches the registered password of the individual user (step S104; YES), the process proceeds to step S107, the user name is set, and login processing is executed (step S107). 1 is activated (step S108). If it is determined that the password entered by the user does not match the registered password of the individual user (step S104; NO), “1” is added to the counter “C” (step S105), and the counter “C” is added. It is determined whether or not the count value matches a certain value “m” (step S106). If the counter “C” does not match “m” (step S106; NO), the process proceeds to step S102, and the process is started again from the input of the password on the standard login dialog screen. If the counter “C” matches “m” (step S106; YES), the process proceeds to step S119 (arrow (1)), and security processing of the information processing apparatus 1 is performed (step S119). 1 ends the system activation process.
[0058]
Next, a case where there is a password DLL in which a password input user function is stored (step S101; YES) will be described. If there is a password input user function defined by the user, this password input user function is called to execute user-defined system activation processing (steps S110 to S119).
[0059]
Before calling the password input user function stored in the password DLL, the information processing apparatus 1 acquires the activation process value “sRt” passed as an argument to the password input user function and the process value calculation function (step S110). This activation process value “sRt” is a disturbance that occurs every time the system of the information processing apparatus 1 is activated.
It is a number that cannot be set by the user.
[0060]
When the activation processing value “sRt” is acquired, the CPU 2 calls a password input user function defined by the user stored in the password DLL (step S111). At this time, the activation processing value “sRt” calculated earlier is passed as an argument of the password input user function. The format of the password input user function used in this embodiment is shown in equation (1).
[0061]
Int Msv_Pw_Input (HWND hWnd, int sRt) (1)
[0062]
In this equation (1), the argument is the application handle “hWnd”, the processing value calculation function “sRt”, and the return value is a value calculated by equation (1).
[0063]
The password input user function is an example, and is not limited to this, and any function created in the DLL format may be used.
[0064]
With the password input user function (1) called here, the system activation process in the information processing apparatus 1 is executed using a login dialog screen or the like defined in advance by the user.
[0065]
FIG. 5 is a flowchart for explaining processing operations in the user-defined password input user function (1) executed by the CPU 2.
[0066]
In FIG. 5, when the password input user function (1) is called in step S111 in FIG. 4, the CPU 2 is stored in the memory in the memory card 7 as a storage medium, and installed in the RAM 3 from the memory. Read the password input user function processing program. Then, a user-defined password input user function processing program is started.
[0067]
The process in the user-defined password input user function (1) displays a log-in dialog screen 5a (DLG) (see FIG. 3) for inputting login information such as a password previously defined by the user (see FIG. 3). S120). Then, login information set in advance by the user such as a password is input to the displayed login dialog screen 5a (step S121), and whether or not to execute the user authentication process is determined by an “Ok” button or “ It is determined by operating the “cancel” button (step S122). When executing the user authentication process, the processes of steps S123 to S128 are executed. When canceling the user authentication process, the process of step S129 is executed.
[0068]
When the “Ok” button is selected in step S122 (step S122; OK), the counter “C” is initialized to “0” (step S123). The counter “C” counts the number of times that the user authentication process (step S124) has not been executed correctly continuously, as in step S103 of FIG. 4, and executes the system security process (FIG. 4, step S119). It is a value that is a criterion for determining whether or not to do so.
[0069]
Next, user authentication processing is performed (step S124). If it is determined that the user authentication processing has been performed correctly (step S124; YES), the processing flag “Flg = 0” is acquired as the user authentication result value, and the startup processing is performed. The process value calculation function in the activation process value calculation function DLL is called with the value “sRt” and the process flag “Flg = 0” as arguments (step S125). In the present embodiment, the form of the processing value calculation function is shown in Expression (2).
[0070]
Int Msv_User_Deal (int sRt, int Flg) (2)
[0071]
In this equation (2), the argument is the activation process value “sRt” and the process flag “Flg”, and the return value is acquired as “uRt”.
[0072]
Note that this processing value calculation function is an example, and is not limited to this, and may be a function created in the DLL format.
[0073]
The processing value calculation function is calculated using the startup processing value “sRt” and the processing flag “Flg = 0” as arguments, and a return value “uRt” is obtained. Furthermore, since it is determined in step S124 that the user authentication process has been performed correctly, the user name “uUser”, which is information necessary for the login process, is acquired (step S126). Thereafter, when the return value “uRt” and the user name “uUser” are acquired, the process returns to step S111 in FIG. 4 to return to the user-defined system activation process.
[0074]
When user authentication processing is performed (step S124) and it is determined that the user authentication processing has not been performed correctly (step S124; NO), "1" is added to the counter "C" described above (step S127), and the addition is performed. It is determined whether the count value of the counter “C” matches a certain value “n” (step S128). If the count value does not match “n” (step S128; NO), the process proceeds to step S121, and the process is started again from the input of a login code such as a password. If the count value matches “n” (step S128; YES), the process proceeds to step S119 in FIG. 4 (arrow (1)), and the security processing of the information processing apparatus 1 is performed (step S119). The system activation process in the device 1 is terminated.
[0075]
When the “cancel” button is selected in step S122 (step S122; cancel), the processing flag “Flg = 1” is acquired as the user authentication result value, and the activation processing value “sRt” and the processing flag “Flg = 1”. And the process value calculation function (2) in the startup process value calculation DLL is called (step S129). As a result, “uRt” is acquired as a return value, and the process returns to step S111 in FIG. 4 to return to the user-defined system activation process.
[0076]
When the process of the user-defined password input user function (1) described above with reference to FIG. 5 ends, the process returns to the user-defined system activation process, and the return value “uRt” and the user name “uUser” are stored in the register “ Ru ”and register“ Rn ”are secured (step S112). If the return values “Ru” and “Rn” in the password input user function (1) are acquired, whether or not the user authentication processing is correctly performed and the correct user name is acquired in the password input user function (1) processing shown in FIG. Whether or not the user authentication process is canceled and the cancel process is performed (steps S116 to S118) is calculated for the activation process value in order to authenticate the password input user function (1). The processing value calculation function (2) is called from the DLL to determine the calculation result.
[0077]
The processing flag “Flg” passed as an argument to the processing value calculation function (2) described above is a return value that serves as a reference for determining whether or not the user authentication processing has been performed correctly in the password input user function (1) processing. Is set to the processing flag “Flg = 0” or the processing flag “Flg = 1”. When the processing flag “Flg” is set to “Flg = 0” in the processing value calculation function (2), a criterion for determining whether or not the user authentication processing is correctly performed in the password input user function (1) processing. The return value “srOk” can be acquired. On the other hand, when the processing flag “Flg” is set to “Flg = 1” in the processing value calculation function (2), it is determined whether or not the user authentication processing is canceled in the password input user function (1) processing. The reference return value “srCan” can be acquired.
[0078]
First, it is determined whether or not the user authentication process is correctly performed in the password input user function (1) process described above. In step S113, in the password input user function (1) process, in order to determine whether or not the user authentication process is correctly performed, the process flag “Flg = 0” is set, and the process flag “Flg = 0” and The processing value calculation function (2) is calculated using the startup processing value “sRt” as an argument, and the return value “srOk” is acquired as the calculation result. Then, the return value “srOk” is secured in the register “Rs” (step S114). If the return value “srOk” is acquired in step S114, it is determined whether or not it matches the return value “uRt” secured in the register “Ru” acquired in step S112 (step S115).
[0079]
When the return values secured in the register “Ru” and the register “Rs” match, that is, the return value “uRt” obtained from the password input user function (1) in step S112 and the processing value in step S114. When the return value “srOk” acquired from the calculation function (2) matches (step S115; YES), the password input user function (1) confirms the validity of the user authentication process, and the process proceeds to step S107. Transition. Then, the user name “uUser” acquired in the password input user function (1) process is read from the register “Rn”, set in the information processing apparatus 1, and logged into the information processing apparatus 1 (step S107). The system is activated (step S108). Conversely, if the return values secured in the register “Ru” and the register “Rs” do not match (step S115; NO), the process proceeds to step S116.
[0080]
If it is determined in the password input user function (1) process that the user authentication process is not performed correctly, it is then determined whether or not the user authentication process is canceled in the password input user function (1) process. To do. In step S116, in order to determine whether or not the user authentication process is canceled in the password input user function (1) process, unlike the process in step S113, “Flg = 1” is set. The processing value calculation function (2) is calculated using the flag “Flg = 1” and the activation processing value “sRt” as arguments, and the return value “srCan” is obtained as the calculation result (step S117). The return value “srCan” is secured in the register “Rs”. When the return value “srCan” is obtained in step S117, it is determined whether or not it matches the return value “uRt” secured in the register “Ru” in step S112 (step S118).
[0081]
When the return values secured in the registers “Ru” and “Rs” match, that is, the return value “uRt” acquired from the password input user function (1) in step S112, and the processing value in step S117. If the return value “srCan” acquired from the calculation function (2) matches (step S118; YES), it is determined that the password input user function (1) processing has been canceled, and the system of the information processing apparatus 1 End the startup process. On the other hand, if the return values secured in the register “Ru” and the register “Rs” do not match (step S118; NO), it is determined that the user authentication has not been performed correctly and has not been canceled. Thus, the process proceeds to step S119.
[0082]
In step S119, the security processing of the information processing apparatus 1 is performed (step S119), and the system activation process in the information processing apparatus 1 is terminated. The security processing in step S119 is processing for disabling the information processing apparatus 1 or forcibly terminating it.
[0083]
As described above, the information processing apparatus 1 according to the embodiment to which the present invention is applied stores the password input user function defined in advance by the user in the user function library 3UL and the processing value calculation function as the standard function library. It is stored in 3SL. When the system is started, user authentication using login information input by the user is executed in the password input user function, and a processing flag “Flg” is acquired as a result value of the user authentication. And the return value of the processing value calculation function is calculated using the activation processing value that is a random number as an argument. Further, on the system side, the return value of the processing value calculation function is calculated using the same argument as that used in the password input function. Then, by comparing the two return values, it is determined whether or not the user-defined system activation process is correctly executed.
[0084]
Therefore, in the password input user function, the processing value calculation function is calculated using the user authentication result and the startup processing value that is a random number as arguments, and in the system startup processing, the processing value calculation function is calculated using the same argument, By comparing these calculation results, the validity of the user authentication can be determined. Therefore, even when starting the system using login information entered by the user on the user-defined login dialog screen, it is possible to ensure security management of these user-defined login information and system security. It becomes.
[0085]
In addition, it is possible to prevent a user authentication result from being manipulated intentionally by generating a random number every time the system is started and using the generated random number as an argument for a calculation for user authentication. Therefore, it is possible to further strengthen the security of the system freely defined by the user.
[0086]
Then, by using the login information input by the user for the above-described user authentication, the user can execute processing at the time of login using a password that is easy to use. Therefore, unless the correct login information is input by the user, the user is not correctly authenticated, and the security of the system freely defined by the user can be ensured.
[0087]
Furthermore, since the information required for starting the system is acquired after the result of user authentication is valid and after the calculation of a predetermined function, it is possible to reduce the amount of information being stolen or tampered with by others. In addition, only when the information required for login is acquired from the result of user authentication and the calculation result of the processing value calculation function on the login function routine side and the system side match both conditions, Since it is activated, it is possible to further enhance the security at the time of system activation using the login function routine freely defined by the user.
[0088]
The present invention is not limited to the contents of the above embodiment, and can be appropriately changed without departing from the gist of the present invention. For example, the password input user function defined by the user and the process value calculation function in the startup process value calculation DLL are created in the C ++ language format, but the present invention is not limited to this, and a language that can be stored in the memory in the DLL format. It should be a function of the form.
[0089]
In this embodiment, a memory card is used as a storage medium. However, another storage medium such as a floppy disk or a DVD-ROM may be used.
[0090]
【The invention's effect】
According to the information processing apparatus of the invention described in claim 1 and the storage medium described in claim 5, it is freely defined by the user. User User authentication can be performed using a function routine, and the validity of the user authentication can be determined. As a result, even when the system is started using login information entered by the user on the user-defined login dialog screen, security management of the user-defined login information and system security can be reliably ensured. It becomes possible.
[0091]
According to the information processing apparatus of the second aspect of the invention, a random number is generated each time the system is started, and the generated random number is used as an argument for the operation for user authentication. Unlike the case where the argument is used, it is possible to prevent the calculation result from being predicted or the user authentication result from being manipulated intentionally. As a result, it is possible to further enhance the security of the system freely defined by the user.
[0092]
According to the information processing apparatus of the third aspect of the present invention, the login information input from the user is used for user authentication in the user function routine. Therefore, the user can log in using his / her password that is easy to use. On the other hand, unless correct login information is input by the user, the user is not properly authenticated, and the security of the system freely defined by the user can be ensured.
[0093]
According to the information processing apparatus of the fourth aspect of the invention, the information necessary for system startup is acquired after the result of user authentication is valid and after a predetermined function is calculated. It is possible to reduce tampering. In addition, information necessary for login is acquired from the result of user authentication, and User Since the system is started only when both of the conditions that the calculation result of the processing value calculation function on the function routine side and the system side match are satisfied, it is freely defined by the user User It is possible to further enhance the security at the time of starting the system using the function routine.
[Brief description of the drawings]
FIG. 1 is a block diagram showing an internal configuration of an information processing apparatus 1 according to an embodiment of the present invention.
2 is a diagram showing an example of data exchange between a plurality of information processing apparatuses 1 and a main computer 11. FIG.
FIG. 3 is a diagram showing an example of a login dialog screen 5a for executing system startup processing using user-defined login information in the information processing apparatus 1.
FIG. 4 is a flowchart for explaining the operation of system startup processing in the information processing apparatus 1;
FIG. 5 is a flowchart for explaining the operation of user-defined password input user function processing in the information processing apparatus 1;
FIG. 6 is a diagram showing an example of a standard login dialog screen 10a for performing standard system activation processing that is generally used in a computer system.
[Explanation of symbols]
1 Information processing equipment
1A mobile terminal type information processing device
1B mobile terminal type information processing device
1C Mobile terminal type information processing device
2 CPU
3 RAM
3SF system spec file
3AF application spec file
3SL standard function library
3UL user function library
4 ROM
5 display section
5a User-defined login dialog screen
5b Password input field
5c OK button
5d Cancel button
6 Controller part
7 Memory card
7A memory card
7B memory card
7C memory card
8 Communication Department
9 Bus
10a Standard login dialog screen
10b User input field
10c Password input field
10d OK button
10e Cancel button
11 Main computer
11AF application file
11DF data file
12 Card reader / writer
AP1 application program
AP2 application program
AP3 application program

Claims (5)

ユーザにより定義され、ユーザ認証を含むユーザ関数ルーチンを記憶する第1の記憶手段と、
処理値算出関数を記憶する第2の記憶手段と、
前記第1の記憶手段に記憶された前記ユーザ関数ルーチンを読み出して、当該ユーザ関数ルーチンにおいてユーザ認証を実行し、前記処理値算出関数に引数として渡される認証結果値を取得するとともに、取得した認証結果値及びユーザによる設定が不可能な所定値を引数として、前記第2の記憶手段に記憶された処理値算出関数を呼び出し、当該呼び出した処理値算出関数により前記ユーザ認証の正当性を確認するための第1の戻り値を演算する第1の演算手段と、
前記第1の演算手段において使用する引数と同一の値を引数として、前記第2の記憶手段に記憶された処理値算出関数を呼び出し、当該呼び出した処理値算出関数により前記ユーザ認証の正当性を確認するための第2の戻り値を演算する第2の演算手段と、
前記第1の演算手段により演算された第1の戻り値と、前記第2の演算手段により演算された第2の戻り値と、を比較する比較手段と、
この比較手段による比較結果に応じて、システム起動処理、キャンセル、セキュリティ処理を実行する起動処理手段と、
を備えたことを特徴とする情報処理装置。
First storage means for storing a user function routine defined by the user and including user authentication;
Second storage means for storing a processing value calculation function;
The user function routine stored in the first storage means is read, user authentication is executed in the user function routine, an authentication result value passed as an argument to the processing value calculation function is acquired, and the acquired authentication Using the result value and a predetermined value that cannot be set by the user as arguments, the processing value calculation function stored in the second storage means is called, and the validity of the user authentication is confirmed by the called processing value calculation function. First computing means for computing a first return value for :
The processing value calculation function stored in the second storage unit is called using the same value as the argument used in the first calculation unit as an argument, and the validity of the user authentication is verified by the called processing value calculation function. Second computing means for computing a second return value for confirmation ;
Comparing means for comparing the first return values more operation on the first computing means, a second return values more operation on the second operation means, the,
In accordance with the comparison result by the comparison unit, a startup processing unit that executes system startup processing, cancellation, and security processing ;
An information processing apparatus comprising:
システムを起動する都度、乱数を発生させる乱数発生手段を更に備え、
前記第1及び第2の演算手段において演算される前記処理値算出関数の引数である前記所定値には、前記乱数発生手段によって発生された乱数を使用することを特徴とする請求項1記載の情報処理装置。
A random number generating means for generating a random number each time the system is activated;
The random number generated by the random number generation means is used as the predetermined value that is an argument of the processing value calculation function calculated by the first and second calculation means. Information processing device.
前記ユーザ関数ルーチンにおけるユーザ認証は、ユーザから入力されるログイン情報を用いて行われることを特徴とする請求項1記載の情報処理装置。  The information processing apparatus according to claim 1, wherein user authentication in the user function routine is performed using login information input from a user. 前記ユーザ関数ルーチンにおけるユーザ認証の結果が正当なものである場合は、前記第1の演算手段による演算結果には、前記第1の戻り値及びシステム起動の際のログイン処理に必要なユーザ名が含まれ、
前記比較手段は、第1の演算手段により演算された第1の戻り値と第2の演算手段により演算された第2の戻り値とを比較し、
前記起動処理手段は、この比較手段によって、前記第1の演算手段により演算された第1の戻り値と前記第2の演算手段により演算された第2の戻り値とが一致すると判定された場合に、前記システム起動の際のログイン処理に必要なユーザ名を使用してシステムの起動処理を実行することを特徴とする請求項1記載の情報処理装置。
If the result of user authentication in the user function routine is valid, the calculation result by the first calculation means includes the first return value and a user name necessary for login processing at the time of system startup. Included,
The comparison means compares the first return value calculated by the first calculation means with the second return value calculated by the second calculation means,
The activation processing means, the comparison means, it is determined that the second return values more operations into the first return value and the second calculation means which is more operation on the first computing means coincides when the using a user name required to log process when the system is started, the information processing apparatus according to claim 1, wherein executing the system boot process.
コンピュータが実行可能なプログラムを格納した記憶媒体であって、
ユーザにより定義され、ユーザ認証を含むユーザ関数ルーチンを第1の記憶手段に記憶するためのコンピュータが実行可能なプログラムコードと、
処理値算出関数を第2の記憶手段に記憶するためのコンピュータが実行可能なプログラムコードと、
前記第1の記憶手段に記憶された前記ユーザ関数ルーチンを読み出して、当該ユーザ関数ルーチンにおいてユーザ認証を実行し、前記処理値算出関数に引数として渡される認証結果値を取得するとともに、取得した認証結果値及びユーザによる設定が不可能な所定値を引数として、前記第2の記憶手段に記憶された処理値算出関数を呼び出し、当該呼び出した処理値算出関数により前記ユーザ認証の正当性を確認するための第1の戻り値を演算するためのコンピュータが実行可能なプログラムコードと、
前記ユーザ関数ルーチンにおいて使用する引数と同一の値を引数として、前記第2の記憶手段に記憶された処理値算出関数を呼び出し、当該呼び出した処理値算出関数により前記ユーザ認証の正当性を確認するための第2の戻り値を演算するためのコンピュータが実行可能なプログラムコードと、
前記第1の戻り値と前記第2の戻り値とを比較するためのコンピュータが実行可能なプログラムコードと、
前記第1の戻り値と前記第2の戻り値とが一致するかを比較し、当該比較結果に応じて、システム起動処理、キャンセル、セキュリティ処理を実行するためのコンピュータが実行可能なプログラムコードと、
を含むプログラムを格納したことを特徴とする記憶媒体。
A storage medium storing a computer-executable program,
A computer-executable program code for storing a user function routine defined by a user and including user authentication in a first storage means;
A program code executable by a computer for storing the processing value calculation function in the second storage means;
The user function routine stored in the first storage means is read, user authentication is executed in the user function routine, an authentication result value passed as an argument to the processing value calculation function is acquired, and the acquired authentication Using the result value and a predetermined value that cannot be set by the user as arguments, the processing value calculation function stored in the second storage means is called, and the validity of the user authentication is confirmed by the called processing value calculation function. Computer-executable program code for computing a first return value for :
Using the same value as the argument used in the user function routine as an argument, the processing value calculation function stored in the second storage means is called, and the validity of the user authentication is confirmed by the called processing value calculation function. A computer-executable program code for calculating a second return value for :
A computer-executable program code for comparing the first return value and the second return value ;
A program code executable by a computer for comparing whether the first return value and the second return value match, and executing a system activation process, a cancellation process, and a security process according to the comparison result ; ,
A storage medium characterized by storing a program including:
JP22164399A 1999-08-04 1999-08-04 Information processing apparatus and storage medium Expired - Fee Related JP4013413B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP22164399A JP4013413B2 (en) 1999-08-04 1999-08-04 Information processing apparatus and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP22164399A JP4013413B2 (en) 1999-08-04 1999-08-04 Information processing apparatus and storage medium

Publications (2)

Publication Number Publication Date
JP2001051945A JP2001051945A (en) 2001-02-23
JP4013413B2 true JP4013413B2 (en) 2007-11-28

Family

ID=16770005

Family Applications (1)

Application Number Title Priority Date Filing Date
JP22164399A Expired - Fee Related JP4013413B2 (en) 1999-08-04 1999-08-04 Information processing apparatus and storage medium

Country Status (1)

Country Link
JP (1) JP4013413B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6962345B2 (en) * 2019-03-22 2021-11-05 オムロン株式会社 Information processing equipment, information processing methods, and information processing programs

Also Published As

Publication number Publication date
JP2001051945A (en) 2001-02-23

Similar Documents

Publication Publication Date Title
England et al. A trusted open platform
US6988250B1 (en) Trusted computing platform using a trusted device assembly
US8176324B1 (en) Method and system for a secure virtual keyboard
EP0443423B1 (en) Method and apparatus for executing trusted-path commands
US7770002B2 (en) Multi-factor authentication
US9716706B2 (en) Systems and methods for providing a covert password manager
US20080301462A1 (en) System for protecting a user's password
US9582656B2 (en) Systems for validating hardware devices
US20060161790A1 (en) Systems and methods for controlling access to data on a computer with a secure boot process
JP2002539514A (en) Computer device and operation method thereof
JP2002539656A (en) Smart card user interface for a trusted computing platform
JP2003507785A (en) Computer platform and its operation method
US20070192580A1 (en) Secure remote management of a TPM
KR20030057565A (en) Anti-spoofing password protection
WO2008016489A2 (en) Methods and systems for modifying an integrity measurement based on user athentication
WO2012118984A2 (en) Protecting operating system configuration values
JP4242847B2 (en) Screen saver display method and information processing system
JP4772291B2 (en) Information processing device with security function
JP5086640B2 (en) Authentication system
EP2084622B1 (en) User authentication system and method
US8171530B2 (en) Computer access security
US7085933B2 (en) Computer system apparatus and method for improved assurance of authentication
JP4013413B2 (en) Information processing apparatus and storage medium
WO2017166359A1 (en) User domain access method, access device, and mobile terminal
JP2007058421A (en) Information processor and authentication control method

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20061101

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061107

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070104

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: 20070821

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070903

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100921

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: 20100921

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110921

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120921

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130921

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees