[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP5277576B2 - Information processing apparatus and cryptographic processing program - Google Patents

Information processing apparatus and cryptographic processing program Download PDF

Info

Publication number
JP5277576B2
JP5277576B2 JP2007187627A JP2007187627A JP5277576B2 JP 5277576 B2 JP5277576 B2 JP 5277576B2 JP 2007187627 A JP2007187627 A JP 2007187627A JP 2007187627 A JP2007187627 A JP 2007187627A JP 5277576 B2 JP5277576 B2 JP 5277576B2
Authority
JP
Japan
Prior art keywords
cryptographic
processing
engine
encryption
command
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
JP2007187627A
Other languages
Japanese (ja)
Other versions
JP2009027386A (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.)
Ricoh Co Ltd
Original Assignee
Ricoh 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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2007187627A priority Critical patent/JP5277576B2/en
Publication of JP2009027386A publication Critical patent/JP2009027386A/en
Application granted granted Critical
Publication of JP5277576B2 publication Critical patent/JP5277576B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

本発明は情報処理装置、暗号処理プログラムに係り、特に暗号エンジンを用いてデータの暗号処理を行う情報処理装置、暗号処理プログラムに関する。   The present invention relates to an information processing apparatus and a cryptographic processing program, and more particularly to an information processing apparatus and a cryptographic processing program that perform cryptographic processing of data using a cryptographic engine.

近年の情報セキュリティ意識の高まりに伴い、パーソナルコンピュータ,画像処理装置又は通信装置等の情報処理装置は、所定の暗号方式を用いてデータを暗号化し、通信中のデータの機密性を高めることが行われるようになった(例えば特許文献1参照)。
特開2006−217152号公報
With the recent increase in awareness of information security, information processing devices such as personal computers, image processing devices, or communication devices encrypt data using a predetermined encryption method to increase the confidentiality of data being communicated. (See, for example, Patent Document 1).
JP 2006-217152 A

従来の情報処理装置では、所定の通信方式に対応したデーモン(例えばhttpd)の内部に暗号エンジン(例えばOpenSSL)を取り込んでいた。しかしながら、従来の情報処理装置では、暗号エンジンを利用するデーモン毎に暗号エンジンを取り込む必要があり、同一の暗号エンジンが重複して取り込まれることによりROM/RAM等のメモリを浪費してしまうという問題があった。   In a conventional information processing apparatus, an encryption engine (for example, OpenSSL) is incorporated in a daemon (for example, httpd) corresponding to a predetermined communication method. However, in the conventional information processing apparatus, it is necessary to fetch the cryptographic engine for each daemon that uses the cryptographic engine, and the same cryptographic engine is duplicated and the memory such as ROM / RAM is wasted. was there.

また、従来の情報処理装置では、所定の通信方式に対応したデーモンの暗号エンジンを変更する場合に、デーモンを修正する必要があり、容易に暗号エンジンを変更できないという問題があった。   Further, the conventional information processing apparatus has a problem in that when the encryption engine of the daemon corresponding to a predetermined communication method is changed, the daemon needs to be modified and the encryption engine cannot be easily changed.

本発明は、上記の点に鑑みなされたもので、メモリの浪費を防ぐことができ、暗号エンジンの変更が容易な情報処理装置、暗号処理プログラムを提供することを目的とする。   The present invention has been made in view of the above points, and an object of the present invention is to provide an information processing apparatus and a cryptographic processing program that can prevent memory waste and that can easily change a cryptographic engine.

上記課題を解決するため、本発明は、暗号エンジンを用いてデータの暗号処理を行う情報処理装置であって、1つ以上のアプリケーション手段と、ネットワーク側から各プロトコルによって受信したデータを前記アプリケーション手段に振り分け、前記アプリケーション手段から受信したデータをネットワーク側に送信するネットワークコントロール手段と、前記データに対して暗号処理を行う暗号処理手段と、前記ネットワークコントロール手段に含まれる前記プロトコルに対応した複数の他の処理手段と前記暗号処理手段との間で、暗号処理に関するコマンド及び暗号処理の対象であるデータを送受信する暗号処理インターフェース手段とを有し、前記暗号処理手段は、前記他の処理手段との間で、前記暗号処理に関するコマンド及び暗号処理の対象であるデータを、前記暗号処理インターフェース手段を介して送受信する送受信手段と、前記データに対して暗号処理を行う暗号エンジンと、前記送受信手段と前記暗号エンジンとの間で、前記データを送受信する暗号エンジンインターフェース手段と、前記コマンドを解析し、前記コマンドに応じた暗号処理を、前記暗号エンジン及び暗号エンジンインターフェース手段を用いて行うコマンド解析手段とを有することを特徴とする。 In order to solve the above-mentioned problems, the present invention provides an information processing apparatus that performs cryptographic processing of data using a cryptographic engine, and includes one or more application means and data received by each protocol from a network side. Network control means for transmitting data received from the application means to the network side, encryption processing means for performing encryption processing on the data, and a plurality of other corresponding to the protocol included in the network control means Between the processing means and the cryptographic processing means, and a cryptographic processing interface means for transmitting and receiving commands relating to cryptographic processing and data to be cryptographically processed, wherein the cryptographic processing means communicates with the other processing means. between the command and the dark regarding the encryption processing Transmission / reception means for transmitting / receiving data to be processed by the encryption processing interface means , a cryptographic engine for performing cryptographic processing on the data, and the data between the transmission / reception means and the cryptographic engine And a command analysis unit that analyzes the command and performs cryptographic processing according to the command using the cryptographic engine and the cryptographic engine interface unit.

また、本発明は、暗号エンジンを用いてデータの暗号処理を行う情報処理装置を、1つ以上のアプリケーション手段、ネットワーク側から各プロトコルによって受信したデータを前記アプリケーション手段に振り分け、前記アプリケーション手段から受信したデータをネットワーク側に送信するネットワークコントロール手段、前記データに対して暗号処理を行う暗号処理手段、前記ネットワークコントロール手段に含まれる前記プロトコルに対応した複数の他の処理手段と前記暗号処理手段との間で、暗号処理に関するコマンド及び暗号処理の対象であるデータを送受信する暗号処理インターフェース手段として機能させ、前記暗号処理手段は、前記他の処理手段との間で、前記暗号処理に関するコマンド及び暗号処理の対象であるデータを、前記暗号処理インターフェース手段を介して送受信する送受信手段と、前記データに対して暗号処理を行う暗号エンジンと、前記送受信手段と前記暗号エンジンとの間で、前記データを送受信する暗号エンジンインターフェース手段と、前記コマンドを解析し、前記コマンドに応じた暗号処理を、前記暗号エンジン及び暗号エンジンインターフェース手段を用いて行うコマンド解析手段とを有する暗号処理プログラムであることを特徴とする。 In addition, the present invention provides an information processing apparatus that performs cryptographic processing of data using a cryptographic engine, one or more application means, and distributes data received by each protocol from the network side to the application means and receives from the application means Network control means for transmitting the data to the network side, cryptographic processing means for performing cryptographic processing on the data, a plurality of other processing means corresponding to the protocol included in the network control means, and the cryptographic processing means between, to function as the encryption processing interface means for transmitting and receiving data that is the subject of the command and the encryption processing related cryptographic processing, the cryptographic processing unit, between said other processing means, the command and the cipher processing relating to the cryptographic processing Data that is subject to Transmitting / receiving means for transmitting / receiving via the cryptographic processing interface means, a cryptographic engine for performing cryptographic processing on the data, and a cryptographic engine interface means for transmitting / receiving the data between the transmitting / receiving means and the cryptographic engine And a command processing unit that analyzes the command and performs a cryptographic process corresponding to the command using the cryptographic engine and a cryptographic engine interface unit.

なお、本発明の構成要素、表現または構成要素の任意の組合せを、方法、装置、システム、コンピュータプログラム、記録媒体、データ構造などに適用したものも本発明の態様として有効である。   In addition, what applied the component, expression, or arbitrary combination of the component of this invention to a method, an apparatus, a system, a computer program, a recording medium, a data structure, etc. is also effective as an aspect of this invention.

本発明によれば、メモリの浪費を防ぐことができ、暗号エンジンの変更が容易な情報処理装置、暗号処理プログラムを提供可能である。   According to the present invention, it is possible to provide an information processing apparatus and a cryptographic processing program that can prevent memory from being wasted and that can easily change a cryptographic engine.

次に、本発明を実施するための最良の形態を、以下の実施例に基づき図面を参照しつつ説明していく。まず、本発明の理解を容易とする為、本発明の原理について説明する。   Next, the best mode for carrying out the present invention will be described based on the following embodiments with reference to the drawings. First, in order to facilitate understanding of the present invention, the principle of the present invention will be described.

図1は本発明の原理について説明する為のブロック図である。本発明では、所定の通信方式に対応したデーモン1から暗号エンジン4を切り出し、その暗号エンジン4をプロセスとしてモジュール化することにより、各デーモン1が暗号エンジン4を共通に利用できるようにしている。各デーモン1は他の処理手段に対応する。   FIG. 1 is a block diagram for explaining the principle of the present invention. In the present invention, the cryptographic engine 4 is cut out from the daemon 1 corresponding to a predetermined communication method, and the cryptographic engine 4 is modularized as a process so that the daemons 1 can use the cryptographic engine 4 in common. Each daemon 1 corresponds to another processing means.

モジュール化された暗号エンジン4は、暗号処理モジュール(DESS)3によって制御される。暗号処理モジュール3は、暗号エンジン4を持つプロセスである。暗号処理モジュール3は動的に暗号エンジン4を取り込み、各デーモン1に暗号処理サービスを提供する。DESS I/F2は、各デーモン1が暗号処理モジュール3を利用する為のインターフェースである。各デーモン1は、DESS I/F2を介して暗号処理モジュール3を利用する。   The modularized cryptographic engine 4 is controlled by a cryptographic processing module (DESS) 3. The cryptographic processing module 3 is a process having a cryptographic engine 4. The cryptographic processing module 3 dynamically fetches the cryptographic engine 4 and provides a cryptographic processing service to each daemon 1. The DESS I / F 2 is an interface for each daemon 1 to use the cryptographic processing module 3. Each daemon 1 uses the cryptographic processing module 3 via the DESS I / F 2.

図1では、デーモン1の一例としてhttpd,ncsd,sshd,snmpdを表している。また、図1では、暗号エンジン4の一例としてOpenSSL,BSAFEを表している。   In FIG. 1, httpd, ncsd, sshd, and snmpd are shown as an example of the daemon 1. In FIG. 1, OpenSSL and BSAFE are shown as an example of the cryptographic engine 4.

図1のような構成とすることにより、各デーモン1は、使用する暗号エンジン4を動的に選択可能となり、暗号エンジン4の変更が容易となる。また、各デーモン1は個別に暗号エンジン4を取り込む必要が無くなるため、ROM/RAM等のメモリの容量を節約できる。   With the configuration shown in FIG. 1, each daemon 1 can dynamically select the cryptographic engine 4 to be used, and the cryptographic engine 4 can be easily changed. Further, each daemon 1 does not need to fetch the encryption engine 4 individually, so that the capacity of a memory such as a ROM / RAM can be saved.

次に、本発明による情報処理装置の一例として複合機を例に説明する。図2は本発明による複合機の一実施例のハードウェア構成図である。   Next, a multifunction machine will be described as an example of the information processing apparatus according to the present invention. FIG. 2 is a hardware configuration diagram of an embodiment of the multifunction machine according to the present invention.

複合機10は、コントローラ11と,操作パネル12と,FCU13と,エンジン部14とを含む。図2のコントローラ11は、CPU21と,システムメモリ22と,ノースブリッジ(NB)23と,サウスブリッジ(SB)24と,ASIC25と,ローカルメモリ26と,HDD27と、ネットワークインターフェースカード(NIC)28と,セントロニクス29とを含む。   The multifunction machine 10 includes a controller 11, an operation panel 12, an FCU 13, and an engine unit 14. 2 includes a CPU 21, a system memory 22, a north bridge (NB) 23, a south bridge (SB) 24, an ASIC 25, a local memory 26, an HDD 27, a network interface card (NIC) 28, and the like. , And Centronics 29.

操作パネル12は、コントローラ11のASIC25に接続されている。また、FCU13およびエンジン部14は、コントローラ11のASIC25にPCIバス30で接続されている。   The operation panel 12 is connected to the ASIC 25 of the controller 11. The FCU 13 and the engine unit 14 are connected to the ASIC 25 of the controller 11 via the PCI bus 30.

コントローラ11は、ASIC25にローカルメモリ26,HDD27などが接続されると共に、CPU21とASIC25とがCPUチップセットのNB23を介して接続されている。コントローラ11は、NB23を介してCPU21とASIC25とを接続することにより、CPU21のインターフェースが公開されていない場合に対応する。ASIC25とNB23とはAGP(Accelerated Graphics Port )31を介して接続されている。   In the controller 11, a local memory 26, an HDD 27, and the like are connected to the ASIC 25, and a CPU 21 and an ASIC 25 are connected to each other via an NB 23 of a CPU chip set. The controller 11 corresponds to the case where the interface of the CPU 21 is not disclosed by connecting the CPU 21 and the ASIC 25 via the NB 23. The ASIC 25 and the NB 23 are connected via an AGP (Accelerated Graphics Port) 31.

このように、図2の複合機10は一つ以上のプロセスを実行制御するため、ASIC25とNB23とを低速のPCIバスでなくAGP31を介して接続し、パフォーマンスの低下を防いでいる。   As described above, since the multifunction peripheral 10 shown in FIG. 2 controls execution of one or more processes, the ASIC 25 and the NB 23 are connected not via the low-speed PCI bus but via the AGP 31 to prevent performance degradation.

CPU21は、複合機10の全体制御を行うものである。例えばCPU21は、後述するサービス層の各モジュールを、OS上にそれぞれプロセスとして起動して実行させると共に、アプリケーションを起動して実行させる。   The CPU 21 performs overall control of the multifunction machine 10. For example, the CPU 21 activates and executes each module of a service layer described later as a process on the OS and activates and executes an application.

NB23は、CPU21,システムメモリ22,SB24,ASIC25,NIC28及びセントロニクス29を接続するためのブリッジである。SB24,NIC28及びセントロニクス29は、PCIバス32を介してNB23に接続されている。なお、SB24はPCIバス32とROMや周辺デバイス等とを接続するためのブリッジである。   The NB 23 is a bridge for connecting the CPU 21, system memory 22, SB 24, ASIC 25, NIC 28, and Centronics 29. The SB 24, the NIC 28, and the Centronics 29 are connected to the NB 23 via the PCI bus 32. The SB 24 is a bridge for connecting the PCI bus 32 to a ROM, peripheral devices, and the like.

システムメモリ22は複合機10の描画用メモリ等として用いるメモリである。ローカルメモリ26はコピー用画像バッファ,符号バッファとして用いるメモリである。ASIC25は、画像処理用のハードウェア要素を有する画像処理用途向けのICである。HDD27は、画像データの蓄積,文書データの蓄積,プログラムの蓄積,フォントデータの蓄積,フォームの蓄積などを行うストレージ(補助記憶装置)の一例である。   The system memory 22 is a memory used as a drawing memory or the like of the multifunction machine 10. The local memory 26 is a memory used as a copy image buffer and a code buffer. The ASIC 25 is an IC for image processing applications having hardware elements for image processing. The HDD 27 is an example of storage (auxiliary storage device) that stores image data, document data, programs, font data, forms, and the like.

NIC28は、複合機10をネットワークに接続するインターフェース機器である。セントロニクス29は、パソコンのプリンタ出力の規格であるセントロニクス規格に準じたインターフェースである。   The NIC 28 is an interface device that connects the multifunction peripheral 10 to a network. The Centronics 29 is an interface conforming to the Centronics standard, which is a printer output standard for personal computers.

また、操作パネル12は、操作者からの入力操作を受け付けると共に、操作者に向けた表示を行う操作部である。FCU(ファックスコントロールユニット)13はファックスに関する制御を行うユニットであり、ファクシミリデータの送受信を行う。   The operation panel 12 is an operation unit that accepts an input operation from the operator and performs display for the operator. An FCU (fax control unit) 13 is a unit that performs control related to fax, and transmits and receives facsimile data.

図3は本発明による複合機の一実施例のソフトウェア構成図である。複合機10は、アプリケーション41,API(アプリケーションプログラムインターフェース)42,一つ以上のサービスモジュールを含むように構成されるサービス層43,IPC(プロセス間通信)部44,スレッド制御部(pthread)45及びOS(オペレーティングシステム)46を含むように構成される。   FIG. 3 is a software configuration diagram of an embodiment of the multifunction machine according to the present invention. The multi-function device 10 includes an application 41, an API (application program interface) 42, a service layer 43 configured to include one or more service modules, an IPC (interprocess communication) unit 44, a thread control unit (pthread) 45, and An OS (Operating System) 46 is included.

アプリケーション41は、プリンタ,コピー,ファックスおよびスキャナなどの画像形成にかかる処理を行うプリンタアプリ,コピーアプリ,ファックスアプリ,スキャナアプリ等を含む。アプリケーション41はAPI42を利用して、サービス層43のサービスモジュールを利用する。   The application 41 includes a printer application, a copy application, a fax application, a scanner application, and the like that perform processing relating to image formation such as a printer, a copy, a fax, and a scanner. The application 41 uses the service module of the service layer 43 using the API 42.

サービス層43は、アプリケーション41からの処理要求を解釈してエンジン部14等のハードウェアの獲得要求を発生すると共に、ハードウェアの管理を行って獲得要求を調停する。   The service layer 43 interprets the processing request from the application 41 and generates a hardware acquisition request for the engine unit 14 and the like, and manages the hardware to arbitrate the acquisition request.

IPC部44は動作中のモジュール(プロセス)間でデータをやり取りする為に利用されるものである。スレッド制御部45は例えばスレッドを制御するライブラリである。OS46は、アプリケーション41,サービス層43の各サービスモジュールをプロセスとして並列実行する。   The IPC unit 44 is used to exchange data between operating modules (processes). The thread control unit 45 is, for example, a library that controls threads. The OS 46 executes the service modules of the application 41 and the service layer 43 in parallel as processes.

上記した暗号処理モジュール(DESS)3はネットワークコントロールサービス(NCS)51と同じくサービス層43に含まれる。NCS51は、ネットワーク側から各プロトコルによって受信したデータを各アプリケーションに振り分け、各アプリケーションからのデータをネットワーク側に送信する際の仲介を行う。例えばNCS51は、複合機10にネットワークを介して接続されるクライアントとの通信を制御する。図3の複合機10は、アプリケーション41で共通的に必要な処理をサービス層43で一元的に処理可能である。   The cryptographic processing module (DESS) 3 is included in the service layer 43 in the same manner as the network control service (NCS) 51. The NCS 51 distributes data received from the network side by each protocol to each application, and performs mediation when data from each application is transmitted to the network side. For example, the NCS 51 controls communication with a client connected to the multifunction machine 10 via a network. The multifunction machine 10 shown in FIG. 3 can process in common with the service layer 43 the processes commonly required by the application 41.

図4は暗号処理モジュール及び暗号処理モジュールインターフェースの一実施例の機能ブロック図である。暗号処理モジュールインターフェース(DESS I/F)2は、コマンド送信部61,コマンド受信部62,データ送信部63,データ受信部64を含むように構成される。   FIG. 4 is a functional block diagram of an embodiment of the cryptographic processing module and the cryptographic processing module interface. The cryptographic processing module interface (DESS I / F) 2 includes a command transmission unit 61, a command reception unit 62, a data transmission unit 63, and a data reception unit 64.

DESS3は、コマンド受信部65,コマンド送信部66,データ受信部67,データ送信部68,コマンド解析部69,セッション管理部70,暗号エンジンI/F71及び暗号エンジン4を含むように構成される。   The DESS 3 is configured to include a command reception unit 65, a command transmission unit 66, a data reception unit 67, a data transmission unit 68, a command analysis unit 69, a session management unit 70, a cryptographic engine I / F 71, and a cryptographic engine 4.

DESS I/F2のコマンド送信部61及びコマンド受信部62は、DESS3との間でコマンドの送信,レスポンスの受信を行う。DESS I/F2のデータ送信部63及びデータ受信部64は、DESS3との間で暗号処理前のデータの送信,暗号処理後のデータの受信を行う。   The command transmission unit 61 and the command reception unit 62 of the DESS I / F 2 perform command transmission and response reception with the DESS 3. The data transmission unit 63 and the data reception unit 64 of the DESS I / F 2 perform transmission of data before encryption processing and reception of data after encryption processing with the DESS 3.

なお、DESS I/F2は、NCS51に含まれる各デーモン1からのコマンド及び暗号処理前のデータを受信し、各デーモン1へのレスポンス及び暗号処理後のデータを送信する。例えば各デーモン1は、上記のアプリケーション41からの要求に基づき、DESS I/F2を介してDESS3を利用する。   The DESS I / F 2 receives a command and data before encryption processing from each daemon 1 included in the NCS 51, and transmits a response to each daemon 1 and data after encryption processing. For example, each daemon 1 uses the DESS 3 via the DESS I / F 2 based on the request from the application 41.

DESS3のコマンド受信部65及びコマンド送信部66は、DESS I/F2との間でコマンドの受信,レスポンスの送信を行う。なお、コマンドには、例えば暗号化処理の実行,復号処理の実行及び暗号エンジンの選択等がある。DESS3のデータ受信部67及びデータ送信部68は、DESS I/F2との間で暗号処理前のデータの受信,暗号処理後のデータの送信を行う。   The command receiving unit 65 and the command transmitting unit 66 of the DESS 3 perform command reception and response transmission with the DESS I / F 2. The command includes, for example, execution of encryption processing, execution of decryption processing, and selection of a cryptographic engine. The data receiving unit 67 and the data transmitting unit 68 of the DESS 3 receive data before encryption processing and transmit data after encryption processing with the DESS I / F 2.

コマンド解析部69は、コマンド受信部65が受信したコマンドを解析し、そのコマンドに応じた処理を行うものである。コマンド解析部69はセッションを割り当て、暗号エンジンI/F71を使用してコマンドに応じた処理を行う。セッション管理部70はNCS51に含まれる各デーモン1との間に張られたセッション数を計数し、そのセッション数が同時に並行処理可能なセッション数の範囲内となるように管理する。   The command analyzing unit 69 analyzes the command received by the command receiving unit 65 and performs processing according to the command. The command analysis unit 69 assigns a session and performs processing according to the command using the cryptographic engine I / F 71. The session management unit 70 counts the number of sessions established between each daemon 1 included in the NCS 51, and manages the number of sessions within the range of the number of sessions that can be simultaneously processed.

暗号エンジンI/F71は、暗号エンジン4を使用する際に、呼び出し方の違いによる各暗号エンジン4の差異を吸収する部分である。暗号エンジン4はOpenSSL,BSAFEなど、データに対して暗号処理を行う部分である。   The cryptographic engine I / F 71 is a part that absorbs differences between the cryptographic engines 4 due to differences in calling methods when the cryptographic engine 4 is used. The cryptographic engine 4 is a part that performs cryptographic processing on data, such as OpenSSL and BSAFE.

なお、図4のDESS3では内部に暗号エンジン4を持つ構成を示したが、暗号エンジン4を外部モジュール化し、必要に応じてDESS3の外部から暗号エンジン4を読み込む構成としてもよい。例えばDESS3は必要に応じて暗号エンジン4を複合機10の外からダウンロードする構成としてもよい。このように、暗号エンジン4を外部モジュール化し、必要に応じてDESS3の外部から暗号エンジン4を読み込む構成とすれば、更にROM/RAM等のメモリの容量を節約できる。   In addition, although the structure which has the encryption engine 4 inside was shown in DESS3 of FIG. 4, it is good also as a structure which makes the encryption engine 4 an external module and reads the encryption engine 4 from the exterior of DESS3 as needed. For example, the DESS 3 may be configured to download the cryptographic engine 4 from outside the multifunction device 10 as necessary. In this way, if the cryptographic engine 4 is formed as an external module and the cryptographic engine 4 is read from the outside of the DESS 3 as necessary, the capacity of a memory such as a ROM / RAM can be further saved.

図5及び図6は暗号エンジンを読み込む構成としたDESSの一例の構成図である。図5の構成図では、DESS3が暗号エンジン4の一例としてOpenSSLを外部から読み込んでいる。図6の構成図では、DESS3が暗号エンジン4の一例としてBSAFEを外部から読み込んでいる。   5 and 6 are configuration diagrams of an example of DESS configured to read a cryptographic engine. In the configuration diagram of FIG. 5, DESS 3 reads OpenSSL as an example of encryption engine 4 from the outside. In the configuration diagram of FIG. 6, DESS 3 reads BSAFE from the outside as an example of encryption engine 4.

図7の構成図では、DESS3が暗号エンジン4の一例としてOpenSSL及びBSAFEを同時に外部から読み込んでいる。また、図8の構成図では、読み込んだ暗号エンジン4が不要になったとき、読み込んだ暗号エンジン4の一例としてのOpenSSLを破棄している。   In the configuration diagram of FIG. 7, DESS 3 simultaneously reads OpenSSL and BSAFE from the outside as an example of the encryption engine 4. In the configuration diagram of FIG. 8, when the read cryptographic engine 4 becomes unnecessary, OpenSSL as an example of the read cryptographic engine 4 is discarded.

図9は暗号エンジンI/Fが呼び出し方の違いによる各暗号エンジンの差異を吸収する仕組みについて説明する説明図である。図9に示すように、暗号エンジンI/F71は暗号エンジン4に依らず、コマンド解析部69に以下のような共通のI/Fを提供する。例えば暗号エンジンI/F71は、ENC_Init(),ENC_Update()及びENC_Final()を共通のI/Fとしてコマンド解析部69に提供する。   FIG. 9 is an explanatory diagram for explaining a mechanism in which the cryptographic engine I / F absorbs differences between the cryptographic engines due to differences in calling methods. As shown in FIG. 9, the cryptographic engine I / F 71 provides the following common I / F to the command analysis unit 69 without depending on the cryptographic engine 4. For example, the cryptographic engine I / F 71 provides ENC_Init (), ENC_Update (), and ENC_Final () as a common I / F to the command analysis unit 69.

暗号エンジンI/F71は暗号エンジン4としてOpenSSLを利用する場合、コマンド解析部69から受信したENC_Init()をOpenSSL_Init()に変換して暗号エンジン4としてOpenSSLに送信する。また、コマンド解析部69から受信したENC_Update()をOpenSSL_Update()に変換して暗号エンジン4としてOpenSSLに送信する。さらに、コマンド解析部69から受信したENC_Final()をOpenSSL_Final()に変換して暗号エンジン4としてOpenSSLに送信する。   When using OpenSSL as the encryption engine 4, the encryption engine I / F 71 converts ENC_Init () received from the command analysis unit 69 into OpenSSL_Init (), and transmits it to the OpenSSL as the encryption engine 4. Also, ENC_Update () received from the command analysis unit 69 is converted to OpenSSL_Update () and transmitted to the OpenSSL as the encryption engine 4. Furthermore, ENC_Final () received from the command analysis unit 69 is converted to OpenSSL_Final () and transmitted to the OpenSSL as the cryptographic engine 4.

暗号エンジンI/F71は暗号エンジン4としてBSAFEを利用する場合、コマンド解析部69から受信したENC_Init()を、BSAFE_CTX()及びBSAFE_Init()に変換して暗号エンジン4としてBSAFEに送信する。また、コマンド解析部69から受信したENC_Update()をBSAFE_Update()に変換して暗号エンジン4としてBSAFEに送信する。さらに、コマンド解析部69から受信したENC_Final()をBSAFE_Final()に変換して暗号エンジン4としてBSAFEに送信する。   When using BSAFE as the cipher engine 4, the cipher engine I / F 71 converts ENC_Init () received from the command analysis unit 69 into BSAFE_CTX () and BSAFE_Init (), and transmits it to the BSAFE as the cipher engine 4. Also, ENC_Update () received from the command analysis unit 69 is converted into BSAFE_Update () and transmitted to the BSAFE as the cryptographic engine 4. Further, ENC_Final () received from the command analysis unit 69 is converted into BSAFE_Final () and transmitted to the BSAFE as the cryptographic engine 4.

このように、暗号エンジンI/F71はコマンド解析部69から受信した暗号エンジン4に依らない共通のI/FであるENC_Init(),ENC_Update()及びENC_Final()に基づき、暗号エンジン4に対応したI/Fを呼び出すことで各暗号エンジン4の差異を吸収できる。   As described above, the cryptographic engine I / F 71 corresponds to the cryptographic engine 4 based on ENC_Init (), ENC_Update (), and ENC_Final (), which are common I / Fs that are not dependent on the cryptographic engine 4 received from the command analysis unit 69. By calling the I / F, the difference between the cryptographic engines 4 can be absorbed.

以下、DESS I/F及びDESSの処理手順について、シーケンス図を参照しつつ説明していく。図10はDESS I/F及びDESSの処理手順の一例を表したシーケンス図である。図10のシーケンス図は暗号エンジン4としてOpenSSLを選択する例を表している。   Hereinafter, the processing procedure of DESS I / F and DESS will be described with reference to sequence diagrams. FIG. 10 is a sequence diagram showing an example of the processing procedure of the DESS I / F and DESS. The sequence diagram of FIG. 10 represents an example in which OpenSSL is selected as the cryptographic engine 4.

ステップS1に進み、DESS I/F2はNCS51に含まれるデーモン1の一例としてのhttpdから暗号開始を要求される。ステップS2に進み、DESS I/F2はDESS3内のセッション管理部70にセッション登録を要求する。DESS I/F2はステップS3に進み、セッション管理部70に登録されたセッションの情報(例えばセッション識別子)をセッション管理部70から通知される。ここでは、セッション管理部70からセッション識別子が通知されたとして説明する。なお、DESS I/F2は通知されたセッション識別子と、デーモン1の一例としてのhttpdとを対応付けて管理する。   In step S1, the DESS I / F 2 is requested to start encryption from httpd as an example of the daemon 1 included in the NCS 51. In step S2, the DESS I / F 2 requests session registration from the session management unit 70 in the DESS 3. In step S3, the DESS I / F 2 is notified from the session management unit 70 of information (for example, a session identifier) of the session registered in the session management unit 70. Here, it is assumed that the session identifier is notified from the session management unit 70. The DESS I / F 2 manages the notified session identifier and httpd as an example of the daemon 1 in association with each other.

ステップS4に進み、DESS I/F2はデーモン1の一例としてのhttpdから暗号エンジン4としてOpenSSLの使用を要求される。ステップS5に進み、DESS I/F2はコマンド解析部69に、暗号エンジン4としてOpenSSLを使用することを要求する。なお、DESS I/F2からコマンド解析部69への要求には上記したセッション識別子(1)が付加されている。その他、後述のステップS6,S8〜S16の要求にも上記したセッション識別子(1)が付加されている。また、ステップS6に進み、コマンド解析部69は暗号エンジンI/F71に、暗号エンジン4としてOpenSSLを使用することを通知する。   In step S4, the DESS I / F 2 is requested to use OpenSSL as the cryptographic engine 4 from httpd as an example of the daemon 1. In step S5, the DESS I / F 2 requests the command analysis unit 69 to use OpenSSL as the cryptographic engine 4. Note that the above-described session identifier (1) is added to the request from the DESS I / F 2 to the command analysis unit 69. In addition, the above-described session identifier (1) is also added to the requests in steps S6 and S8 to S16 described later. In step S 6, the command analysis unit 69 notifies the cryptographic engine I / F 71 that OpenSSL is used as the cryptographic engine 4.

ステップS7に進み、DESS I/F2はデーモン1の一例としてのhttpdから暗号処理を要求される。ステップS8に進み、DESS I/F2はコマンド解析部69にコマンドENC_Init(1)を送信する。ステップS9に進み、コマンド解析部69は受信したコマンドENC_Init(1)を暗号エンジンI/F71へ送信する。   In step S7, the DESS I / F 2 is requested to perform cryptographic processing from httpd as an example of the daemon 1. In step S8, the DESS I / F 2 transmits a command ENC_Init (1) to the command analysis unit 69. In step S9, the command analysis unit 69 transmits the received command ENC_Init (1) to the cryptographic engine I / F 71.

ステップS10に進み、暗号エンジンI/F71は、共通のI/FであるENC_Init(1)をOpenSSL_Init()に変換して暗号エンジン4としてOpenSSLに送信する。   In step S10, the cryptographic engine I / F 71 converts ENC_Init (1), which is a common I / F, into OpenSSL_Init (), and transmits the same to the OpenSSL as the cryptographic engine 4.

また、ステップS11に進み、DESS I/F2はコマンド解析部69にコマンドENC_Update(1)を送信する。ステップS12に進み、コマンド解析部69は受信したコマンドENC_Update(1)を暗号エンジンI/F71へ送信する。   In step S11, the DESS I / F 2 transmits a command ENC_Update (1) to the command analysis unit 69. In step S12, the command analysis unit 69 transmits the received command ENC_Update (1) to the cryptographic engine I / F 71.

ステップS13に進み、暗号エンジンI/F71は、共通のI/FであるENC_Update(1)をOpenSSL_Update()に変換して暗号エンジン4としてOpenSSLに送信する。   In step S13, the cryptographic engine I / F 71 converts ENC_Update (1), which is a common I / F, into OpenSSL_Update (), and transmits it to the OpenSSL as the cryptographic engine 4.

また、ステップS14に進み、DESS I/F2はコマンド解析部69にコマンドENC_Final(1)を送信する。ステップS15に進み、コマンド解析部69は受信したコマンドENC_Final(1)を暗号エンジンI/F71へ送信する。   In step S14, the DESS I / F 2 transmits a command ENC_Final (1) to the command analysis unit 69. In step S15, the command analysis unit 69 transmits the received command ENC_Final (1) to the cryptographic engine I / F 71.

ステップS16に進み、暗号エンジンI/F71は、共通のI/FであるENC_Final(1)をOpenSSL_Final()に変換して暗号エンジン4としてOpenSSLに送信する。   In step S16, the cryptographic engine I / F 71 converts ENC_Final (1), which is a common I / F, into OpenSSL_Final (), and transmits it to the OpenSSL as the cryptographic engine 4.

ステップS17に進み、DESS I/F2はNCS51に含まれるデーモン1の一例としてのhttpdから暗号終了を要求される。DESS I/F2はステップS18に進み、DESS3内のセッション管理部70にセッション(1)の削除を要求する。DESS I/F2は削除を要求したセッション識別子と、デーモン1の一例としてのhttpdとの対応付けを破棄する。   In step S17, the DESS I / F 2 is requested to end the encryption from httpd as an example of the daemon 1 included in the NCS 51. In step S18, the DESS I / F 2 requests the session management unit 70 in the DESS 3 to delete the session (1). The DESS I / F 2 discards the association between the session identifier requested to be deleted and httpd as an example of the daemon 1.

このように、暗号エンジンI/F71は、暗号エンジン4に依らない共通のI/FであるENC_Init(),ENC_Update()及びENC_Final()に基づいて暗号エンジン4に対応したI/Fを呼び出すことにより、各暗号エンジン4の差異を吸収できる。   As described above, the cryptographic engine I / F 71 calls an I / F corresponding to the cryptographic engine 4 based on ENC_Init (), ENC_Update (), and ENC_Final (), which are common I / Fs that do not depend on the cryptographic engine 4. Thus, the difference between the cryptographic engines 4 can be absorbed.

また、図11はDESS I/F及びDESSの処理手順の一例を表したシーケンス図である。図11のシーケンス図は、複数の暗号エンジン4としてOpenSSL4−1及びBSAFE4−2を同時に選択する例を表している。なお、図11のシーケンス図は図10のシーケンス図と同様な部分が含まれており、同様な部分について適宜説明を省略する。   FIG. 11 is a sequence diagram showing an example of processing procedures of the DESS I / F and DESS. The sequence diagram of FIG. 11 represents an example in which OpenSSL4-1 and BSAFE4-2 are simultaneously selected as a plurality of cryptographic engines 4. Note that the sequence diagram of FIG. 11 includes the same parts as those in the sequence diagram of FIG.

ステップS21に進み、DESS I/F2はデーモン1の一例としてのhttpdから暗号開始を要求される。ステップS22に進み、DESS I/F2はDESS3内のセッション管理部70にセッション登録を要求する。DESS I/F2はステップS23に進み、セッション管理部70に登録されたセッション識別子(1)をセッション管理部70から通知される。   In step S21, the DESS I / F 2 is requested to start encryption from httpd as an example of the daemon 1. In step S22, the DESS I / F 2 requests session registration from the session management unit 70 in the DESS 3. In step S23, the DESS I / F 2 notifies the session management unit 70 of the session identifier (1) registered in the session management unit 70.

ステップS24に進み、DESS I/F2はデーモン1の一例としてのhttpdから暗号エンジン4としてOpenSSL4−1の使用を要求される。ステップS25に進み、DESS I/F2はコマンド解析部69に、暗号エンジン4としてOpenSSL4−1を使用することを要求する。また、ステップS26に進み、コマンド解析部69は暗号エンジンI/F71に、暗号エンジン4としてOpenSSL4−1を使用することを通知する。   In step S24, the DESS I / F 2 is requested to use OpenSSL4-1 as the encryption engine 4 from httpd as an example of the daemon 1. In step S25, the DESS I / F 2 requests the command analysis unit 69 to use OpenSSL4-1 as the cryptographic engine 4. In step S26, the command analysis unit 69 notifies the cryptographic engine I / F 71 that OpenSSL4-1 is used as the cryptographic engine 4.

ステップS27に進み、DESS I/F2はデーモン1の一例としてのhttpdから暗号処理を要求される。ステップS28に進み、DESS I/F2はコマンド解析部69にコマンドENC_Init(1)を送信する。ステップS29に進み、コマンド解析部69は、受信したコマンドENC_Init(1)を暗号エンジンI/F71へ送信する。   In step S27, the DESS I / F 2 is requested to perform encryption processing from httpd as an example of the daemon 1. In step S28, the DESS I / F 2 transmits a command ENC_Init (1) to the command analysis unit 69. In step S29, the command analysis unit 69 transmits the received command ENC_Init (1) to the cryptographic engine I / F 71.

ステップS30に進み、暗号エンジンI/F71は、共通のI/FであるENC_Init(1)をOpenSSL_Init()に変換して暗号エンジン4としてOpenSSL4−1に送信する。   In step S30, the cryptographic engine I / F 71 converts ENC_Init (1), which is a common I / F, into OpenSSL_Init (), and transmits it as the cryptographic engine 4 to the OpenSSL 4-1.

ステップS31に進み、DESS I/F2はデーモン1の一例としてのhttpdから暗号開始を要求される。ステップS32に進み、DESS I/F2はDESS3内のセッション管理部70にセッション登録を要求する。DESS I/F2はステップS33に進み、セッション管理部70に登録されたセッション識別子(2)をセッション管理部70から通知される。   In step S31, the DESS I / F 2 is requested to start encryption from httpd as an example of the daemon 1. In step S32, the DESS I / F 2 requests session registration from the session management unit 70 in the DESS 3. In step S33, the DESS I / F 2 notifies the session management unit 70 of the session identifier (2) registered in the session management unit 70.

ステップS34に進み、DESS I/F2はデーモン1の一例としてのhttpdから暗号エンジン4としてBSAFE4−2の使用を要求される。また、ステップS35に進み、DESS I/F2は、コマンド解析部69に、暗号エンジン4としてBSAFE4−2を使用することを要求する。また、ステップS36に進み、コマンド解析部69は暗号エンジンI/F71に、暗号エンジン4としてBSAFE4−2を使用することを通知する。   In step S 34, the DESS I / F 2 is requested to use BSAFE 4-2 as the cryptographic engine 4 from httpd as an example of the daemon 1. In step S35, the DESS I / F 2 requests the command analysis unit 69 to use the BSAFE4-2 as the encryption engine 4. In step S 36, the command analysis unit 69 notifies the cryptographic engine I / F 71 that the BSAFE 4-2 is used as the cryptographic engine 4.

さらに、ステップS37に進み、DESS I/F2はコマンド解析部69にコマンドENC_Update(1)を送信する。ステップS38に進み、コマンド解析部69は受信したコマンドENC_Update(1)を暗号エンジンI/F71へ送信する。ステップS39に進み、暗号エンジンI/F71は、共通のI/FであるENC_Update(1)をOpenSSL_Update()に変換して暗号エンジン4としてOpenSSL4−1に送信する。   In step S37, the DESS I / F 2 transmits a command ENC_Update (1) to the command analysis unit 69. In step S38, the command analysis unit 69 transmits the received command ENC_Update (1) to the cryptographic engine I / F 71. In step S39, the cryptographic engine I / F 71 converts ENC_Update (1), which is a common I / F, into OpenSSL_Update (), and transmits it as the cryptographic engine 4 to the OpenSSL 4-1.

また、ステップS40に進み、DESS I/F2はコマンド解析部69にコマンドENC_Final(1)を送信する。ステップS41に進み、コマンド解析部69は受信したコマンドENC_Final(1)を暗号エンジンI/F71へ送信する。   In step S 40, the DESS I / F 2 transmits a command ENC_Final (1) to the command analysis unit 69. In step S41, the command analysis unit 69 transmits the received command ENC_Final (1) to the cryptographic engine I / F 71.

ステップS42に進み、暗号エンジンI/F71は、共通のI/FであるENC_Final(1)をOpenSSL_Final()に変換して暗号エンジン4としてOpenSSL4−1に送信する。   In step S42, the cryptographic engine I / F 71 converts ENC_Final (1), which is a common I / F, into OpenSSL_Final () and transmits it as the cryptographic engine 4 to the OpenSSL 4-1.

ステップS43に進み、DESS I/F2はNCS51に含まれるデーモン1の一例としてのhttpdから暗号終了を要求される。DESS I/F2はステップS44に進み、DESS3内のセッション管理部70にセッション(1)の削除を要求する。   In step S43, the DESS I / F 2 is requested to end encryption from httpd as an example of the daemon 1 included in the NCS 51. In step S44, the DESS I / F 2 requests the session management unit 70 in the DESS 3 to delete the session (1).

ステップS45に進み、DESS I/F2はデーモン1の一例としてのhttpdから暗号処理を要求される。ステップS46に進み、DESS I/F2はコマンド解析部69にコマンドENC_Init(2)を送信する。ステップS47に進み、コマンド解析部69は、受信したコマンドENC_Init(2)を暗号エンジンI/F71へ送信する。   In step S45, the DESS I / F 2 is requested to perform encryption processing from httpd as an example of the daemon 1. In step S46, the DESS I / F 2 transmits a command ENC_Init (2) to the command analysis unit 69. In step S47, the command analysis unit 69 transmits the received command ENC_Init (2) to the cryptographic engine I / F 71.

ステップS48,S49に進み、暗号エンジンI/F71は、共通のI/FであるENC_Init(2)をBSAFE_CTX()及びBSAFE_Init()に変換して暗号エンジン4としてBSAFE4−2に送信する。   In steps S48 and S49, the encryption engine I / F 71 converts ENC_Init (2), which is a common I / F, into BSAFE_CTX () and BSAFE_Init () and transmits the converted encryption engine 4 to the BSAFE4-2.

また、ステップS50に進み、DESS I/F2はコマンド解析部69にコマンドENC_Update(2)を送信する。ステップS51に進み、コマンド解析部69は受信したコマンドENC_Update(2)を暗号エンジンI/F71へ送信する。   In step S50, the DESS I / F 2 transmits a command ENC_Update (2) to the command analysis unit 69. In step S51, the command analysis unit 69 transmits the received command ENC_Update (2) to the cryptographic engine I / F 71.

ステップS52に進み、暗号エンジンI/F71は、共通のI/FであるENC_Update(2)をBSAFE_Update()に変換して暗号エンジン4としてBSAFE4−2に送信する。   In step S52, the cryptographic engine I / F 71 converts ENC_Update (2), which is a common I / F, into BSAFE_Update (), and transmits it to the BSAFE4-2 as the cryptographic engine 4.

また、ステップS53に進み、DESS I/F2はコマンド解析部69にコマンドENC_Final(2)を送信する。ステップS54に進み、コマンド解析部69は受信したコマンドENC_Final(2)を暗号エンジンI/F71へ送信する。   In step S 53, the DESS I / F 2 transmits the command ENC_Final (2) to the command analysis unit 69. In step S54, the command analysis unit 69 transmits the received command ENC_Final (2) to the cryptographic engine I / F 71.

ステップS55に進み、暗号エンジンI/F71は、共通のI/FであるENC_Final(2)をBSAFE_Final()に変換して暗号エンジン4としてBSAFE4−2に送信する。   In step S55, the cryptographic engine I / F 71 converts ENC_Final (2), which is a common I / F, into BSAFE_Final (), and transmits it to the BSAFE4-2 as the cryptographic engine 4.

ステップS56に進み、DESS I/F2はNCS51に含まれるデーモン1の一例としてのhttpdから暗号終了を要求される。DESS I/F2はステップS57に進み、DESS3内のセッション管理部70にセッション(2)の削除を要求する。   In step S56, the DESS I / F 2 is requested to end encryption from httpd as an example of the daemon 1 included in the NCS 51. In step S57, the DESS I / F 2 requests the session management unit 70 in the DESS 3 to delete the session (2).

このように、暗号エンジンI/F71は、複数の暗号エンジン4としてOpenSSL4−1及びBSAFE4−2を同時に選択する場合であっても、暗号エンジン4に依らない共通のI/FであるENC_Init(),ENC_Update()及びENC_Final()に基づいて暗号エンジン4に対応したI/Fを呼び出すことにより、各暗号エンジン4の差異を吸収できる。   Thus, even when the encryption engine I / F 71 selects OpenSSL4-1 and BSAFE4-2 as the plurality of encryption engines 4 at the same time, ENC_Init () which is a common I / F independent of the encryption engine 4 , ENC_Update () and ENC_Final (), the difference between the cryptographic engines 4 can be absorbed by calling the I / F corresponding to the cryptographic engine 4.

また、図12はDESS I/F及びDESSの処理手順の一例を表したシーケンス図である。図12のシーケンス図は複数のデーモンから同時に暗号エンジン4を選択する例を表している。なお、図12のシーケンス図は図10のシーケンス図と同様な部分が含まれており、同様な部分について適宜説明を省略する。   FIG. 12 is a sequence diagram showing an example of the processing procedure of DESS I / F and DESS. The sequence diagram of FIG. 12 represents an example in which the cryptographic engine 4 is selected simultaneously from a plurality of daemons. Note that the sequence diagram of FIG. 12 includes the same parts as those of the sequence diagram of FIG.

ステップS61に進み、DESS I/F2は、デーモン1の一例としてのhttpd1−1から暗号開始を要求される。ステップS62に進み、DESS I/F2はDESS3内のセッション管理部70にセッション登録を要求する。ステップS23に進み、DESS I/F2はセッション識別子(1)をセッション管理部70から通知される。   In step S61, the DESS I / F 2 is requested to start encryption from httpd1-1 as an example of the daemon 1. In step S62, the DESS I / F 2 requests the session management unit 70 in the DESS 3 for session registration. In step S23, the DESS I / F 2 is notified of the session identifier (1) from the session management unit 70.

ステップS64に進み、DESS I/F2は、デーモン1の一例としてのhttpd1−1から暗号エンジン4としてOpenSSLの使用を要求される。ステップS65に進み、DESS I/F2はコマンド解析部69に、暗号エンジン4としてOpenSSLを使用することを要求する。ステップS66に進み、コマンド解析部69は暗号エンジンI/F71に、暗号エンジン4としてOpenSSLを使用することを通知する。   In step S64, the DESS I / F 2 is requested to use OpenSSL as the cryptographic engine 4 from httpd1-1 as an example of the daemon 1. In step S65, the DESS I / F 2 requests the command analysis unit 69 to use OpenSSL as the cryptographic engine 4. In step S66, the command analysis unit 69 notifies the cryptographic engine I / F 71 that OpenSSL is used as the cryptographic engine 4.

ステップS67に進み、DESS I/F2は、デーモン1の一例としてのhttpd1−1から暗号処理を要求される。ステップS68に進み、DESS I/F2はコマンド解析部69にコマンドENC_Init(1)を送信する。ステップS69に進み、コマンド解析部69は、受信したコマンドENC_Init(1)を暗号エンジンI/F71へ送信する。   In step S67, the DESS I / F 2 is requested to perform cryptographic processing from httpd1-1 as an example of the daemon 1. In step S68, the DESS I / F 2 transmits a command ENC_Init (1) to the command analysis unit 69. In step S69, the command analysis unit 69 transmits the received command ENC_Init (1) to the cryptographic engine I / F 71.

ステップS70に進み、暗号エンジンI/F71は、共通のI/FであるENC_Init(1)をOpenSSL_Init()に変換して暗号エンジン4としてOpenSSLに送信する。   In step S70, the cryptographic engine I / F 71 converts ENC_Init (1), which is a common I / F, into OpenSSL_Init (), and transmits it to the OpenSSL as the cryptographic engine 4.

ステップS71に進み、DESS I/F2はデーモン1の一例としてncsd1−2から暗号開始を要求される。ステップS72に進み、DESS I/F2はDESS3内のセッション管理部70にセッション登録を要求する。DESS I/F2はステップS73に進み、セッション管理部70に登録されたセッション識別子(2)をセッション管理部70から通知される。   In step S71, the DESS I / F 2 is requested to start encryption from the ncsd1-2 as an example of the daemon 1. In step S72, the DESS I / F 2 requests the session management unit 70 in the DESS 3 for session registration. In step S73, the DESS I / F 2 notifies the session management unit 70 of the session identifier (2) registered in the session management unit 70.

ステップS74に進み、DESS I/F2はデーモン1の一例としてncsd1−2から暗号エンジン4としてOpenSSLの使用を要求される。また、ステップS75に進み、DESS I/F2は、コマンド解析部69に、暗号エンジン4としてOpenSSLを使用することを要求する。   In step S74, the DESS I / F 2 is requested to use OpenSSL as the cryptographic engine 4 from the ncsd1-2 as an example of the daemon 1. In step S75, the DESS I / F 2 requests the command analysis unit 69 to use OpenSSL as the encryption engine 4.

さらに、ステップS76に進み、DESS I/F2はコマンド解析部69にコマンドENC_Update(1)を送信する。ステップS77に進み、コマンド解析部69は受信したコマンドENC_Update(1)を暗号エンジンI/F71へ送信する。ステップS78に進み、暗号エンジンI/F71は、共通のI/FであるENC_Update(1)をOpenSSL_Update()に変換して暗号エンジン4としてOpenSSLに送信する。   In step S76, the DESS I / F 2 transmits a command ENC_Update (1) to the command analysis unit 69. In step S77, the command analysis unit 69 transmits the received command ENC_Update (1) to the cryptographic engine I / F 71. In step S78, the cryptographic engine I / F 71 converts ENC_Update (1), which is a common I / F, into OpenSSL_Update (), and transmits it to the OpenSSL as the cryptographic engine 4.

また、ステップS79に進み、DESS I/F2はコマンド解析部69にコマンドENC_Final(1)を送信する。ステップS80に進み、コマンド解析部69は受信したコマンドENC_Final(1)を暗号エンジンI/F71へ送信する。   In step S79, the DESS I / F 2 transmits a command ENC_Final (1) to the command analysis unit 69. In step S80, the command analysis unit 69 transmits the received command ENC_Final (1) to the cryptographic engine I / F 71.

ステップS81に進み、暗号エンジンI/F71は、共通のI/FであるENC_Final(1)をOpenSSL_Final()に変換して暗号エンジン4としてOpenSSLに送信する。   In step S81, the cryptographic engine I / F 71 converts ENC_Final (1), which is a common I / F, into OpenSSL_Final (), and transmits the same to the OpenSSL as the cryptographic engine 4.

ステップS82に進み、DESS I/F2は、NCS51に含まれるデーモン1の一例としてのhttpd1−1から暗号終了を要求される。DESS I/F2は、ステップS83に進み、DESS3内のセッション管理部70にセッション(1)の削除を要求する。   In step S82, the DESS I / F 2 is requested to end encryption from httpd1-1 as an example of the daemon 1 included in the NCS 51. In step S83, the DESS I / F 2 requests the session management unit 70 in the DESS 3 to delete the session (1).

ステップS84に進み、DESS I/F2はデーモン1の一例としてncsd1−2から暗号処理を要求される。ステップS85に進み、DESS I/F2はコマンド解析部69にコマンドENC_Init(2)を送信する。ステップS86に進み、コマンド解析部69は、受信したコマンドENC_Init(2)を暗号エンジンI/F71へ送信する。   In step S84, the DESS I / F 2 is requested to perform encryption processing from the ncsd1-2 as an example of the daemon 1. In step S85, the DESS I / F 2 transmits a command ENC_Init (2) to the command analysis unit 69. In step S86, the command analysis unit 69 transmits the received command ENC_Init (2) to the cryptographic engine I / F 71.

ステップS87に進み、暗号エンジンI/F71は、共通のI/FであるENC_Init(2)をOpenSSL_Init()に変換して暗号エンジン4としてOpenSSLに送信する。   In step S87, the cryptographic engine I / F 71 converts ENC_Init (2), which is a common I / F, into OpenSSL_Init (), and transmits the same to the OpenSSL as the cryptographic engine 4.

さらに、ステップS88に進み、DESS I/F2はコマンド解析部69にコマンドENC_Update(2)を送信する。ステップS89に進み、コマンド解析部69は受信したコマンドENC_Update(2)を暗号エンジンI/F71へ送信する。ステップS90に進み、暗号エンジンI/F71は、共通のI/FであるENC_Update(2)をOpenSSL_Update()に変換して暗号エンジン4としてOpenSSLに送信する。   In step S88, the DESS I / F 2 transmits a command ENC_Update (2) to the command analysis unit 69. In step S89, the command analysis unit 69 transmits the received command ENC_Update (2) to the cryptographic engine I / F 71. In step S90, the cryptographic engine I / F 71 converts ENC_Update (2), which is a common I / F, into OpenSSL_Update (), and transmits it to the OpenSSL as the cryptographic engine 4.

また、ステップS91に進み、DESS I/F2はコマンド解析部69にコマンドENC_Final(2)を送信する。ステップS92に進み、コマンド解析部69は受信したコマンドENC_Final(2)を暗号エンジンI/F71へ送信する。   In step S91, the DESS I / F 2 transmits a command ENC_Final (2) to the command analysis unit 69. In step S92, the command analysis unit 69 transmits the received command ENC_Final (2) to the cryptographic engine I / F 71.

ステップS93に進み、暗号エンジンI/F71は、共通のI/FであるENC_Final(2)をOpenSSL_Final()に変換して暗号エンジン4としてOpenSSLに送信する。   In step S93, the cryptographic engine I / F 71 converts ENC_Final (2), which is a common I / F, into OpenSSL_Final (), and transmits it to the OpenSSL as the cryptographic engine 4.

ステップS94に進み、DESS I/F2は、NCS51に含まれるデーモン1の一例としてのncsd1−2から暗号終了を要求される。DESS I/F2は、ステップS95に進み、DESS3内のセッション管理部70に、セッション(2)の削除を要求する。   In step S94, the DESS I / F 2 is requested to end the encryption from ncsd1-2 as an example of the daemon 1 included in the NCS 51. In step S95, the DESS I / F 2 requests the session management unit 70 in the DESS 3 to delete the session (2).

このように、暗号エンジンI/F71は、複数のデーモンとしてのhttpd1−1及びncsd1−2から同時に暗号エンジン4を選択する場合であっても、暗号エンジン4に依らない共通のI/FであるENC_Init(),ENC_Update()及びENC_Final()に基づいて暗号エンジン4に対応したI/Fを呼び出すことにより各暗号エンジン4の差異を吸収できる。   As described above, the cryptographic engine I / F 71 is a common I / F that does not depend on the cryptographic engine 4 even when the cryptographic engine 4 is simultaneously selected from httpd1-1 and ncsd1-2 as a plurality of daemons. Differences between the cryptographic engines 4 can be absorbed by calling an I / F corresponding to the cryptographic engine 4 based on ENC_Init (), ENC_Update (), and ENC_Final ().

また、図13はDESS I/F及びDESSの処理手順の一例を表したシーケンス図である。図13のシーケンス図は、使用する機能により自動的に暗号エンジン4を選択する例を表している。なお、図13のシーケンス図は図11のシーケンス図と同様な部分が含まれており、同様な部分について適宜説明を省略する。   FIG. 13 is a sequence diagram showing an example of the processing procedure of DESS I / F and DESS. The sequence diagram of FIG. 13 represents an example in which the cryptographic engine 4 is automatically selected according to the function used. Note that the sequence diagram of FIG. 13 includes the same parts as the sequence diagram of FIG.

ステップS101に進み、DESS I/F2はデーモン1の一例としてのhttpdからSSL開始を要求される。ステップS102に進み、DESS I/F2はDESS3内のセッション管理部70にセッション登録を要求する。ステップS103に進み、DESS I/F2はセッション管理部70に登録されたセッション識別子(1)をセッション管理部70から通知される。   In step S101, the DESS I / F 2 is requested to start SSL from httpd as an example of the daemon 1. In step S102, the DESS I / F 2 requests session registration from the session management unit 70 in the DESS 3. In step S 103, the DESS I / F 2 is notified of the session identifier (1) registered in the session management unit 70 from the session management unit 70.

ステップS104に進み、DESS I/F2はコマンド解析部69に、SSLを使用することを要求する。また、ステップS105に進み、コマンド解析部69は暗号エンジンI/F71に、SSLに基づき、暗号エンジン4としてのOpenSSL4−1を使用することを通知する。   In step S104, the DESS I / F 2 requests the command analysis unit 69 to use SSL. In step S105, the command analysis unit 69 notifies the cryptographic engine I / F 71 that the OpenSSL 4-1 as the cryptographic engine 4 is used based on the SSL.

ステップS106に進み、DESS I/F2はデーモン1の一例としてのhttpdからSSL処理を要求される。ステップS107に進み、DESS I/F2はコマンド解析部69にコマンドENC_Init(1)を送信する。ステップS108に進み、コマンド解析部69は、受信したコマンドENC_Init(1)を暗号エンジンI/F71へ送信する。   In step S106, the DESS I / F 2 is requested to perform an SSL process from httpd as an example of the daemon 1. In step S107, the DESS I / F 2 transmits a command ENC_Init (1) to the command analysis unit 69. In step S108, the command analysis unit 69 transmits the received command ENC_Init (1) to the cryptographic engine I / F 71.

ステップS109に進み、暗号エンジンI/F71は、共通のI/FであるENC_Init(1)をOpenSSL_Init()に変換して暗号エンジン4としてOpenSSL4−1に送信する。   In step S109, the cryptographic engine I / F 71 converts ENC_Init (1), which is a common I / F, into OpenSSL_Init (), and transmits it as the cryptographic engine 4 to the OpenSSL 4-1.

さらに、ステップS110に進み、DESS I/F2は、コマンド解析部69にコマンドENC_Update(1)を送信する。ステップS111に進み、コマンド解析部69は、受信したコマンドENC_Update(1)を暗号エンジンI/F71へ送信する。   In step S110, the DESS I / F 2 transmits a command ENC_Update (1) to the command analysis unit 69. In step S111, the command analysis unit 69 transmits the received command ENC_Update (1) to the cryptographic engine I / F 71.

ステップS112に進み、暗号エンジンI/F71は、共通のI/FであるENC_Update(1)をOpenSSL_Update()に変換して暗号エンジン4としてOpenSSL4−1に送信する。   In step S112, the cryptographic engine I / F 71 converts ENC_Update (1), which is a common I / F, into OpenSSL_Update (), and transmits it as the cryptographic engine 4 to the OpenSSL 4-1.

また、ステップS113に進み、DESS I/F2はコマンド解析部69にコマンドENC_Final(1)を送信する。ステップS114に進み、コマンド解析部69は受信したコマンドENC_Final(1)を暗号エンジンI/F71へ送信する。   In step S113, the DESS I / F 2 transmits a command ENC_Final (1) to the command analysis unit 69. In step S114, the command analysis unit 69 transmits the received command ENC_Final (1) to the cryptographic engine I / F 71.

ステップS115に進み、暗号エンジンI/F71は、共通のI/FであるENC_Final(1)をOpenSSL_Final()に変換して暗号エンジン4としてOpenSSL4−1に送信する。   In step S115, the cryptographic engine I / F 71 converts ENC_Final (1), which is a common I / F, into OpenSSL_Final () and transmits it as the cryptographic engine 4 to the OpenSSL 4-1.

ステップS116に進み、DESS I/F2は、NCS51に含まれるデーモン1の一例としてのhttpdからSSL終了を要求される。DESS I/F2は、ステップS117に進み、DESS3内のセッション管理部70にセッション(1)の削除を要求する。   In step S116, the DESS I / F 2 is requested to end SSL from httpd as an example of the daemon 1 included in the NCS 51. In step S117, the DESS I / F 2 requests the session management unit 70 in the DESS 3 to delete the session (1).

ステップS118に進み、DESS I/F2はデーモン1の一例としてのhttpdから暗号開始を要求される。ステップS119に進み、DESS I/F2はDESS3内のセッション管理部70にセッション登録を要求する。DESS I/F2はステップS120に進み、セッション管理部70に登録されたセッション識別子(2)をセッション管理部70から通知される。   In step S118, the DESS I / F 2 is requested to start encryption by httpd as an example of the daemon 1. In step S119, the DESS I / F 2 requests session registration from the session management unit 70 in the DESS 3. In step S120, the DESS I / F 2 notifies the session management unit 70 of the session identifier (2) registered in the session management unit 70.

ステップS121に進み、DESS I/F2はコマンド解析部69に、暗号を使用することを要求する。また、ステップS122に進み、コマンド解析部69は暗号エンジンI/F71に、BSAFEに基づき、暗号エンジン4としてのBSAFE4−2を使用することを通知する。   In step S121, the DESS I / F 2 requests the command analysis unit 69 to use encryption. In step S122, the command analysis unit 69 notifies the cryptographic engine I / F 71 that the BSAFE4-2 as the cryptographic engine 4 is to be used based on the BSAFE.

ステップS123に進み、DESS I/F2はデーモン1の一例としてのhttpdから暗号処理を要求される。ステップS124に進み、DESS I/F2はコマンド解析部69にコマンドENC_Init(2)を送信する。ステップS125に進み、コマンド解析部69は、受信したコマンドENC_Init(2)を暗号エンジンI/F71へ送信する。   In step S123, the DESS I / F 2 is requested to perform encryption processing from httpd as an example of the daemon 1. In step S124, the DESS I / F 2 transmits a command ENC_Init (2) to the command analysis unit 69. In step S125, the command analysis unit 69 transmits the received command ENC_Init (2) to the cryptographic engine I / F 71.

ステップS126,S127に進み、暗号エンジンI/F71は、共通のI/FであるENC_Init(2)をBSAFE_CTX()及びBSAFE_Init()に変換して暗号エンジン4としてBSAFE4−2に送信する。   Proceeding to steps S126 and S127, the cryptographic engine I / F 71 converts ENC_Init (2), which is a common I / F, into BSAFE_CTX () and BSAFE_Init (), and transmits the converted cryptographic engine 4 to the BSAFE4-2.

また、ステップS128に進み、DESS I/F2は、コマンド解析部69にコマンドENC_Update(2)を送信する。ステップS129に進み、コマンド解析部69は、受信したコマンドENC_Update(2)を、暗号エンジンI/F71へ送信する。   In step S128, the DESS I / F 2 transmits a command ENC_Update (2) to the command analysis unit 69. In step S129, the command analysis unit 69 transmits the received command ENC_Update (2) to the cryptographic engine I / F 71.

ステップS130に進み、暗号エンジンI/F71は、共通のI/FであるENC_Update(2)をBSAFE_Update()に変換して暗号エンジン4としてBSAFE4−2に送信する。   In step S130, the cryptographic engine I / F 71 converts ENC_Update (2), which is a common I / F, into BSAFE_Update (), and transmits it to the BSAFE4-2 as the cryptographic engine 4.

また、ステップS131に進み、DESS I/F2はコマンド解析部69にコマンドENC_Final(2)を送信する。ステップS132に進み、コマンド解析部69は受信したコマンドENC_Final(2)を暗号エンジンI/F71へ送信する。   In step S131, the DESS I / F 2 transmits a command ENC_Final (2) to the command analysis unit 69. In step S132, the command analysis unit 69 transmits the received command ENC_Final (2) to the cryptographic engine I / F 71.

ステップS133に進み、暗号エンジンI/F71は、共通のI/FであるENC_Final(2)をBSAFE_Final()に変換して暗号エンジン4としてBSAFE4−2に送信する。   In step S133, the cryptographic engine I / F 71 converts ENC_Final (2), which is a common I / F, into BSAFE_Final (), and transmits it to the BSAFE4-2 as the cryptographic engine 4.

ステップS134に進み、DESS I/F2はNCS51に含まれるデーモン1の一例としてのhttpdから暗号終了を要求される。DESS I/F2はステップS135に進み、DESS3内のセッション管理部70にセッション(2)の削除を要求する。   In step S134, the DESS I / F 2 is requested to end the encryption from httpd as an example of the daemon 1 included in the NCS 51. In step S135, the DESS I / F 2 requests the session management unit 70 in the DESS 3 to delete the session (2).

このように、暗号エンジンI/F71は、使用する機能により自動的に暗号エンジン4を選択する場合であっても、暗号エンジン4に依らない共通のI/FであるENC_Init(),ENC_Update()及びENC_Final()に基づいて暗号エンジン4に対応したI/Fを呼び出すことにより、各暗号エンジン4の差異を吸収できる。   Thus, even when the cryptographic engine I / F 71 automatically selects the cryptographic engine 4 according to the function used, ENC_Init () and ENC_Update (), which are common I / Fs that do not depend on the cryptographic engine 4. And by calling the I / F corresponding to the cryptographic engine 4 based on ENC_Final (), the difference between the cryptographic engines 4 can be absorbed.

本発明は、具体的に開示された実施例に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。   The present invention is not limited to the specifically disclosed embodiments, and various modifications and changes can be made without departing from the scope of the claims.

本発明の原理について説明する為のブロック図である。It is a block diagram for demonstrating the principle of this invention. 本発明による複合機の一実施例のハードウェア構成図である。1 is a hardware configuration diagram of an embodiment of a multifunction machine according to the present invention. FIG. 本発明による複合機の一実施例のソフトウェア構成図である。FIG. 3 is a software configuration diagram of an embodiment of a multifunction machine according to the present invention. 暗号処理モジュール及び暗号処理モジュールインターフェースの一実施例の機能ブロック図である。It is a functional block diagram of one Example of a cryptographic processing module and a cryptographic processing module interface. 暗号エンジンを読み込む構成としたDESSの一例の構成図である。It is a block diagram of an example of DESS made into the structure which reads a cryptographic engine. 暗号エンジンを読み込む構成としたDESSの一例の構成図である。It is a block diagram of an example of DESS made into the structure which reads a cryptographic engine. 複数の暗号エンジンを同時に読み込む構成としたときのDESSの一例の構成図である。It is a block diagram of an example of DESS when it is set as the structure which reads a some encryption engine simultaneously. 読み込んだ暗号エンジンが不要になったとき、読み込んだ暗号エンジンを破棄するDESSの一例の構成図である。It is a block diagram of an example of DESS which discards the read cryptographic engine when the read cryptographic engine becomes unnecessary. 暗号エンジンI/Fが呼び出し方の違いによる各暗号エンジンの差異を吸収する仕組みについて説明する説明図である。It is explanatory drawing explaining the mechanism in which the encryption engine I / F absorbs the difference of each encryption engine by the difference in the calling method. DESS I/F及びDESSの処理手順を表したシーケンス図である。It is a sequence diagram showing the processing procedure of DESS I / F and DESS. DESS I/F及びDESSの処理手順を表したシーケンス図である。It is a sequence diagram showing the processing procedure of DESS I / F and DESS. DESS I/F及びDESSの処理手順を表したシーケンス図である。It is a sequence diagram showing the processing procedure of DESS I / F and DESS. DESS I/F及びDESSの処理手順を表したシーケンス図である。It is a sequence diagram showing the processing procedure of DESS I / F and DESS.

符号の説明Explanation of symbols

1 デーモン
2 暗号処理モジュールインターフェース(DESS I/F)
3 暗号処理モジュール(DESS)
4 暗号エンジン
10 複合機
11 コントローラ
12 操作パネル
13 FCU
14 エンジン部
21 CPU
22 システムメモリ
23 ノースブリッジ(NB)
24 サウスブリッジ(SB)
25 ASIC
26 ローカルメモリ
27 HDD
28 ネットワークインターフェースカード(NIC)
29 セントロニクス
30,32 PCIバス
31 AGP(Accelerated Graphics Port )
41 アプリケーション
42 API(アプリケーションプログラムインターフェース)
43 サービス層
44 IPC(プロセス間通信)部
45 スレッド制御部(pthread)
46 OS(オペレーティングシステム)
51 NCS
61,66 コマンド送信部
62,65 コマンド受信部
63,68 データ送信部
64,67 データ受信部
69 コマンド解析部
70 セッション管理部
71 暗号エンジンI/F
1 daemon 2 cryptographic processing module interface (DESS I / F)
3 Cryptographic processing module (DESS)
4 Cryptographic engine 10 MFP 11 Controller 12 Operation panel 13 FCU
14 Engine part 21 CPU
22 System memory 23 North Bridge (NB)
24 South Bridge (SB)
25 ASIC
26 Local memory 27 HDD
28 Network Interface Card (NIC)
29 Centronics 30, 32 PCI bus 31 AGP (Accelerated Graphics Port)
41 Application 42 API (Application Program Interface)
43 Service Layer 44 IPC (Interprocess Communication) Unit 45 Thread Control Unit (pthread)
46 OS (Operating System)
51 NCS
61, 66 Command transmission unit 62, 65 Command reception unit 63, 68 Data transmission unit 64, 67 Data reception unit 69 Command analysis unit 70 Session management unit 71 Cryptographic engine I / F

Claims (12)

暗号エンジンを用いてデータの暗号処理を行う情報処理装置であって、
1つ以上のアプリケーション手段と、
ネットワーク側から各プロトコルによって受信したデータを前記アプリケーション手段に振り分け、前記アプリケーション手段から受信したデータをネットワーク側に送信するネットワークコントロール手段と、
前記データに対して暗号処理を行う暗号処理手段と、
前記ネットワークコントロール手段に含まれる前記プロトコルに対応した複数の他の処理手段と前記暗号処理手段との間で、暗号処理に関するコマンド及び暗号処理の対象であるデータを送受信する暗号処理インターフェース手段と
を有し、
前記暗号処理手段は、
前記他の処理手段との間で、前記暗号処理に関するコマンド及び暗号処理の対象であるデータを、前記暗号処理インターフェース手段を介して送受信する送受信手段と、
前記データに対して暗号処理を行う暗号エンジンと、
前記送受信手段と前記暗号エンジンとの間で、前記データを送受信する暗号エンジンインターフェース手段と、
前記コマンドを解析し、前記コマンドに応じた暗号処理を、前記暗号エンジン及び暗号エンジンインターフェース手段を用いて行うコマンド解析手段と
を有することを特徴とする情報処理装置。
An information processing apparatus that performs cryptographic processing of data using a cryptographic engine,
One or more application means;
Network control means for distributing data received by each protocol from the network side to the application means, and transmitting data received from the application means to the network side;
Cryptographic processing means for performing cryptographic processing on the data;
Cryptographic processing interface means for transmitting and receiving commands related to cryptographic processing and data to be cryptographically processed between the plurality of other processing means corresponding to the protocol included in the network control means and the cryptographic processing means;
Have
The cryptographic processing means includes
Between said other processing means, and receiving means for the data, transmitted and received through the encryption processing interface unit which is the subject of the command and the encryption processing related cryptographic processing,
A cryptographic engine that performs cryptographic processing on the data;
Cryptographic engine interface means for transmitting and receiving the data between the transmitting / receiving means and the cryptographic engine;
An information processing apparatus comprising: a command analysis unit that analyzes the command and performs a cryptographic process according to the command using the cryptographic engine and a cryptographic engine interface unit.
前記暗号エンジンインターフェース手段は、前記暗号エンジンを使用する際、前記暗号エンジンの違いによる差異を吸収することを特徴とする請求項1記載の情報処理装置。   The information processing apparatus according to claim 1, wherein the cryptographic engine interface unit absorbs a difference due to a difference between the cryptographic engines when the cryptographic engine is used. 前記コマンド解析手段は、前記コマンドに応じた暗号化処理実行,復号処理実行,前記暗号エンジンの選択を、前記暗号エンジン及び暗号エンジンインターフェース手段を用いて行うことを特徴とする請求項1記載の情報処理装置。   2. The information according to claim 1, wherein the command analysis means performs encryption processing, decryption processing execution, and selection of the cryptographic engine in accordance with the command using the cryptographic engine and cryptographic engine interface means. Processing equipment. 前記暗号処理手段は、前記他の処理手段との間に張られたセッション数を計数し、前記セッション数が同時に並行処理可能なセッション数の範囲内となるように管理するセッション管理手段を更に有することを特徴とする請求項1記載の情報処理装置。 The cryptographic processing unit further includes a session management unit that counts the number of sessions established between the other processing units and manages the number of sessions so as to be within a range of sessions that can be concurrently processed. The information processing apparatus according to claim 1. 記暗号処理手段は、前記暗号エンジンを必要なときに読み込み、前記暗号エンジンが不要になったとき、読み込んだ前記暗号エンジンを破棄することを特徴とする請求項1記載の情報処理装置。 Pre Symbol encryption processing unit reads when necessary the encryption engine, the encryption when the engine is no longer needed, the information processing apparatus according to claim 1, wherein the discarding the encryption engine read. 前記情報処理装置は、プロッタ部及びスキャナ部を備えた画像処理装置であることを特徴とする請求項1乃至何れか一項記載の情報処理装置。 The information processing apparatus, a plotter unit and an information processing apparatus according to claim 1 to 5 any one of claims, characterized in that an image processing apparatus having a scanner unit. 暗号エンジンを用いてデータの暗号処理を行う情報処理装置を、
1つ以上のアプリケーション手段、
ネットワーク側から各プロトコルによって受信したデータを前記アプリケーション手段に振り分け、前記アプリケーション手段から受信したデータをネットワーク側に送信するネットワークコントロール手段、
前記データに対して暗号処理を行う暗号処理手段、
前記ネットワークコントロール手段に含まれる前記プロトコルに対応した複数の他の処理手段と前記暗号処理手段との間で、暗号処理に関するコマンド及び暗号処理の対象であるデータを送受信する暗号処理インターフェース手段
として機能させ、
前記暗号処理手段は、
前記他の処理手段との間で、前記暗号処理に関するコマンド及び暗号処理の対象であるデータを、前記暗号処理インターフェース手段を介して送受信する送受信手段と、
前記データに対して暗号処理を行う暗号エンジンと、
前記送受信手段と前記暗号エンジンとの間で、前記データを送受信する暗号エンジンインターフェース手段と、
前記コマンドを解析し、前記コマンドに応じた暗号処理を、前記暗号エンジン及び暗号エンジンインターフェース手段を用いて行うコマンド解析手段と
を有する暗号処理プログラム。
An information processing apparatus that performs cryptographic processing of data using a cryptographic engine,
One or more application means,
Network control means for distributing data received from the network side according to each protocol to the application means, and transmitting data received from the application means to the network side;
Cryptographic processing means for performing cryptographic processing on the data;
Cryptographic processing interface means for transmitting and receiving commands relating to cryptographic processing and data to be cryptographically processed between a plurality of other processing means corresponding to the protocol included in the network control means and the cryptographic processing means
Function as
The cryptographic processing means includes
Between said other processing means, and receiving means for the data, transmitted and received through the encryption processing interface unit which is the subject of the command and the encryption processing related cryptographic processing,
A cryptographic engine that performs cryptographic processing on the data;
Cryptographic engine interface means for transmitting and receiving the data between the transmitting / receiving means and the cryptographic engine;
Command analysis means for analyzing the command and performing cryptographic processing according to the command using the cryptographic engine and the cryptographic engine interface means;
A cryptographic processing program.
前記暗号エンジンインターフェース手段は、前記暗号エンジンを使用する際、前記暗号エンジンの違いによる差異を吸収することを特徴とする請求項記載の暗号処理プログラム。 8. The cryptographic processing program according to claim 7, wherein the cryptographic engine interface means absorbs a difference due to a difference between the cryptographic engines when the cryptographic engine is used. 前記コマンド解析手段は、前記コマンドに応じた暗号化処理実行,復号処理実行,前記暗号エンジンの選択を、前記暗号エンジン及び暗号エンジンインターフェース手段を用いて行うことを特徴とする請求項記載の暗号処理プログラム。 8. The encryption according to claim 7 , wherein the command analysis means performs encryption processing, decryption processing execution, and selection of the encryption engine according to the command using the encryption engine and encryption engine interface means. Processing program. 前記暗号処理手段は、前記他の処理手段との間に張られたセッション数を計数し、前記セッション数が同時に並行処理可能なセッション数の範囲内となるように管理するセッション管理手段更にする請求項記載の暗号処理プログラム。 It said encryption processing means counts the number of tensioned session between said other processing means, further have the session management means the number of sessions to be managed to be within a range parallelism possible number of sessions at the same time The encryption processing program according to claim 7 . 記暗号処理手段は、前記暗号エンジンを必要なときに読み込み、前記暗号エンジンが不要になったとき、読み込んだ前記暗号エンジンを破棄することを特徴とする請求項記載の暗号処理プログラム。 Pre Symbol encryption processing unit reads when necessary the encryption engine, when said encryption engine is no longer needed, read claim 7, wherein the cryptographic processing program, characterized by discarding the encryption engine. 前記情報処理装置は、プロッタ部及びスキャナ部を備えた画像処理装置であることを特徴とする請求項乃至11何れか一項記載の暗号処理プログラム。 The information processing apparatus, a plotter unit and claims 7 to 11 any one of claims cryptographic processing program is characterized in that an image processing apparatus having a scanner unit.
JP2007187627A 2007-07-18 2007-07-18 Information processing apparatus and cryptographic processing program Expired - Fee Related JP5277576B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007187627A JP5277576B2 (en) 2007-07-18 2007-07-18 Information processing apparatus and cryptographic processing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007187627A JP5277576B2 (en) 2007-07-18 2007-07-18 Information processing apparatus and cryptographic processing program

Publications (2)

Publication Number Publication Date
JP2009027386A JP2009027386A (en) 2009-02-05
JP5277576B2 true JP5277576B2 (en) 2013-08-28

Family

ID=40398791

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007187627A Expired - Fee Related JP5277576B2 (en) 2007-07-18 2007-07-18 Information processing apparatus and cryptographic processing program

Country Status (1)

Country Link
JP (1) JP5277576B2 (en)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2689998B2 (en) * 1990-08-22 1997-12-10 インターナショナル・ビジネス・マシーンズ・コーポレイション Device for cryptographic operation
US5689565A (en) * 1995-06-29 1997-11-18 Microsoft Corporation Cryptography system and method for providing cryptographic services for a computer application
JP3668648B2 (en) * 1999-08-27 2005-07-06 株式会社エヌ・ティ・ティ・ドコモ Session information management method and session information management apparatus
KR100441077B1 (en) * 2000-06-08 2004-07-19 인터내셔널 비지네스 머신즈 코포레이션 Method and graphical user interface for allowing independent devices to work together as a single token interface
JP4663245B2 (en) * 2003-02-04 2011-04-06 株式会社リコー Electronic apparatus, image processing apparatus, remote management system, program, and authentication method
JP2007158618A (en) * 2005-12-02 2007-06-21 Ricoh Co Ltd Image processing apparatus, and method of processizing encryption module

Also Published As

Publication number Publication date
JP2009027386A (en) 2009-02-05

Similar Documents

Publication Publication Date Title
JP4827523B2 (en) Information processing apparatus, information processing method, and control program
US9398084B2 (en) Information processing system
US9692927B2 (en) Device, information processing system, and information processing method
US10296266B2 (en) Printing apparatus that allows an administrator to determine whether to execute registration of the printing apparatus to a printing service on the internet upon receiving a registration request, and control method and program for the apparatus
US8537395B2 (en) Image processing system, image processing apparatus, recording medium and data communication establishing method
US20110067088A1 (en) Image processing device, information processing method, and recording medium
US20070297666A1 (en) Information processing apparatus, service providing method, and service providing program product
US8966244B2 (en) Embedded apparatus, remote-processing method, and computer program product
EP1473903A1 (en) Information processing apparatus and session management method
KR100618043B1 (en) Service processing apparatus, service processing system, and method for storing original data of service processing system
JP2009255390A (en) Image forming apparatus, functional cooperation control method, and functional cooperation control program
US8239857B2 (en) Information processing apparatus and method of installing application program
US20120331175A1 (en) Image processing apparatus that communicates with server via relay device, method of controlling image processing apparatus, and storage medium
JP5277576B2 (en) Information processing apparatus and cryptographic processing program
JP2008181518A (en) System and method for cloning setting of document processor
JP2007183922A (en) Information processing apparatus and method for installing application
JP2007249575A (en) Information processor, computer-readable portable storage medium, information processing method, information processing program and information processing system
JP4396643B2 (en) Image processing apparatus, interface information disclosure program, and interface information disclosure method
KR20200014218A (en) Information processing method and information processing system
US20070223052A1 (en) Terminal device and medium for the same
US10394498B2 (en) Print control apparatus, control method and storage medium for controlling encrypted communication and print processing
US8281124B2 (en) Network apparatus, IPsec setting method therein, and computer-readable recording medium storing a control program for executing the method
JP2006203655A (en) Method for setting image forming apparatus and image forming apparatus
JP2004005503A (en) Image forming device having web service function
EP4250702B1 (en) Scan to service network system with a backup image forming apparatus taking over an unsuable image forming apparatus having requested a service workflow

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100222

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120510

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120821

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121019

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130506

LAPS Cancellation because of no payment of annual fees