JP3984951B2 - コンテンツ利用回数制限方法、コンテンツ利用端末装置、コンテンツ利用システム、コンピュータプログラム、及びコンピュータ読み取り可能な記録媒体 - Google Patents

コンテンツ利用回数制限方法、コンテンツ利用端末装置、コンテンツ利用システム、コンピュータプログラム、及びコンピュータ読み取り可能な記録媒体 Download PDF

Info

Publication number
JP3984951B2
JP3984951B2 JP2003392727A JP2003392727A JP3984951B2 JP 3984951 B2 JP3984951 B2 JP 3984951B2 JP 2003392727 A JP2003392727 A JP 2003392727A JP 2003392727 A JP2003392727 A JP 2003392727A JP 3984951 B2 JP3984951 B2 JP 3984951B2
Authority
JP
Japan
Prior art keywords
content
output
electronic file
key
terminal device
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
JP2003392727A
Other languages
English (en)
Other versions
JP2005159556A (ja
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2003392727A priority Critical patent/JP3984951B2/ja
Priority to US10/989,317 priority patent/US20050114684A1/en
Publication of JP2005159556A publication Critical patent/JP2005159556A/ja
Application granted granted Critical
Publication of JP3984951B2 publication Critical patent/JP3984951B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0822Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/60Digital content management, e.g. content distribution

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Storage Device Security (AREA)

Description

本発明は、コンテンツ利用回数制限方法、コンテンツ利用端末装置、コンテンツ利用システム、コンピュータプログラム、及びコンピュータ読み取り可能な記録媒体に関し、特に、コンテンツの利用回数を制限するために用いて好適なものである。
コンテンツの利用回数を制限する方法の従来技術としては、以下のようなものがある。
(第1の従来技術)
クライアントにおけるコンテンツの利用の状況を、クライアントからサーバに送信し、サーバ側でクライアント毎の利用回数を管理する。そして、利用回数が制限回数に達した場合、サーバは、クライアントに対して、コンテンツの使用許可通知を送信しない。これにより、コンテンツの利用回数を制限する(例えば、特許文献1を参照)。
(第2の従来技術)
また、サーバからクライアントに配信された電子帳票のクライアントにおける印刷回数を制御する技術があった。この技術では、まず、電子帳票ファイル内に属性として記憶されているIDと、印刷回数上限値とを、最初の印刷時に印刷履歴ファイルにコピーし、印刷回数をそれらと関連付けて印刷履歴ファイル内に保存する。そして、2回目以降の印刷では、印刷しようとする電子帳票ファイルのIDから、印刷履歴ファイル内を検索して、対応する印刷回数と印刷回数上限値とを比較して印刷可否の判断し、印刷可であると判断すれば、印刷回数をインクリメントして印刷処理を実行する。
特開2003−67651号公報
ところで、一般に、電子ファイルは、コピーや配布にかかるコストが非常に安い。そのため、機密の情報を含む電子ファイルが一旦関係者以外の第三者に渡ると、その内容が広く流通してしまう恐れがあり、電子ファイルの所有者は、大きなリスクを負うことになる。それを避けるために、電子ファイル自体が第三者に渡ってもその内容を知られないことが必要になる。これを実現するには、電子ファイルを暗号化するのが一般的である。
しかしながら、電子ファイルを単純に暗号化すると、暗号化した電子ファイルを利用するための復号鍵を利用者に渡さなければならない。したがって、利用者が不特定多数であったり、利用者を完全には信頼できなかったりする場合には、電子ファイルを単純に暗号化すると、十分にリスクを軽減できない。
このような状況は、金融商品のような物体の移動を伴わない商取引のように、代理店が取引を仲介する業態において実際にあり得ることである。したがって、そのような利用者に対しては、電子ファイルの内容を利用する機会や方法を制限したり、不正利用に必要となるコストや障壁を高くしたりすることで、電子ファイルの情報が漏洩するというリスクを最小化したい。このようなリスクを最小化する場合には、電子ファイルの利用回数を制限するというのが、情報の管理者と利用者との双方にとって理解しやすい。
そして、電子ファイルの利用回数を制限することを実現するために、従来は、上記第1の従来技術で述べたように、電子ファイルの利用システムを、サーバとクライアントとを用いて構成し、電子ファイルを利用する際に必要な信号やデータを、サーバからクライアントに送信するという手法が一般的であった。
しかしながら、この手法により電子ファイルの利用回数を制限すると、利用の都度、ネットワークに接続することが必要になってしまうという問題点があった。
また、上記第2の従来技術で述べたように、電子ファイルの利用回数を制限しつつ、クライアントとサーバとの通信回数を抑制するために、電子ファイルの利用回数の履歴を、クライアント側のローカルファイルとして保存する手法も存在する。
しかしながら、この手法では、利用回数の履歴を記憶した利用履歴ファイルに対しては何の保護もされていない。このため、電子ファイルを利用する前に利用履歴ファイルをコピーして別途保存しておき、利用した後に新しい利用履歴ファイルに対して履歴を上書きすると、記憶されている利用回数が元に戻ってしまう問題点があった。
本発明は、上述の問題点に鑑みてなされたものであり、電子ファイルに含まれるコンテンツの利用回数を容易に且つ確実に制限することができるようにすることを目的とする。
本発明のコンテンツ利用回数制限方法は、コンテンツと、該コンテンツを特定する識別情報とを含む暗号化された暗号化電子ファイルを、コンテンツ利用端末装置の復号化手段により復号化する復号化ステップと、上記暗号化電子ファイルから暗号鍵及び復号鍵を、上記コンテンツ利用端末装置の生成手段により1組み生成する生成ステップと、上記生成ステップにより生成された暗号鍵を用いて、上記復号化ステップにより復号化された電子ファイルを、上記コンテンツ利用端末装置の再暗号化手段により再暗号化する再暗号化ステップと、上記再暗号化ステップにより再暗号化された電子ファイルを再暗号化電子ファイルとして、上記コンテンツ利用端末装置の保存手段により保存する保存ステップと、上記復号化ステップにより復号化された電子ファイルに基づく上記コンテンツとともに、上記生成ステップにより生成された復号鍵に関する情報と上記識別情報とを含み、上記再暗号化電子ファイルを再度出力するために用いられる再出力情報を、上記コンテンツ利用端末装置の出力手段が印刷装置に印刷出力させる出力ステップと、上記再暗号化された電子ファイルの再出力要求であって、上記出力ステップで印刷出力された再出力情報を用いてなされる再出力要求を、上記コンテンツ利用端末装置の再出力要求受付手段により受け付ける再出力受付ステップと、上記再出力受付ステップで受け付けられた上記再出力要求で用いられた上記再出力情報に含まれる上記識別情報に基づいて上記保存ステップで保存された上記再暗号化電子ファイルを特定し、上記再出力情報に含まれる上記復号鍵に関する情報に基づいて上記特定した暗号化電子ファイルを復号化し、該復号化した電子ファイルに基づいて上記コンテンツを、上記コンテンツ利用端末装置の再出力手段が上記印刷装置に再度印刷出力させる再出力ステップと、を有することを特徴とする。
また、本発明の他の特徴とするところは、コンテンツと、上記コンテンツの利用回数の上限値に関連する数の暗号鍵及び復号鍵の組とを含む暗号化された暗号化電子ファイルを、外部から入力される第1復号鍵を用いてコンテンツ利用端末装置の復号化手段により復号化する復号化ステップと、上記暗号化電子ファイルに含まれる暗号鍵及び復号鍵の組であって、上記コンテンツの利用回数の上限値に関連する数の暗号鍵及び復号鍵の組のうちの1つの暗号鍵を用いて上記電子ファイルを、上記コンテンツ利用端末装置の再暗号化手段により再暗号化する再暗号化ステップと、上記再暗号化ステップにより再暗号化された電子ファイルを、上記コンテンツ利用端末装置の保存手段により保存する保存ステップと、上記再暗号化ステップで用いられた暗号鍵と組みとなっている第2復号鍵を、上記コンテンツ利用端末装置の復号鍵取得手段により取得する復号鍵取得ステップと、上記復号化ステップにより復号化された電子ファイルに基づくコンテンツとともに、上記復号鍵取得ステップにより取得された第2復号鍵に関する情報を、上記コンテンツ利用端末装置の出力手段が印刷装置に印刷出力させる出力ステップと、を有することを特徴とする。
本発明のコンテンツ利用端末装置は、コンテンツと、該コンテンツを特定する識別情報とを含む暗号化された暗号化電子ファイルを復号化する復号化手段と、上記暗号化電子ファイルから暗号鍵及び復号鍵を1組み生成する生成手段と、上記生成手段により生成された暗号鍵を用いて、上記復号化手段により復号化された電子ファイルを再暗号化する再暗号化手段と、上記再暗号化手段により再暗号化された電子ファイルを再暗号化電子ファイルとして保存する保存手段と、上記復号化手段により復号化された電子ファイルに基づくコンテンツとともに、上記生成手段により生成された復号鍵に関する情報と上記識別情報とを含み、上記再暗号化電子ファイルを再度出力するために用いられる再出力情報を画像形成装置に印刷出力させる出力手段と、上記再暗号化電子ファイルの再出力要求であって、上記出力手段が上記画像形成装置に印刷出力させた上記再出力情報を用いてなされる再出力要求を受け付ける再出力要求受付手段と、上記再出力要求受付手段が受け付けた上記再出力要求で用いられた上記再出力情報に含まれる上記識別情報に基づいて上記保存手段で保存された上記再暗号化電子ファイルを特定し、上記再出力情報に含まれる上記復号鍵に関する情報に基づいて上記特定した暗号化電子ファイルを復号化し、該復号化した電子ファイルに基づいて上記コンテンツを上記画像形成装置に再度印刷出力させるよう制御する再出力手段と、を有することを特徴とする。
また、本発明の他の特徴とするところは、コンテンツと、上記コンテンツの利用回数の上限値に関連する数の暗号鍵及び復号鍵の組とを含む暗号化された暗号化電子ファイルを、外部から入力される第1復号鍵を用いて復号化する復号化手段と、上記暗号化電子ファイルに含まれる暗号鍵及び復号鍵の組であって、上記コンテンツの利用回数の上限値に関連する数の暗号鍵及び復号鍵の組のうちの1つの暗号鍵を用いて上記電子ファイルを再暗号化する再暗号化手段と、上記再暗号化手段により再暗号化された電子ファイルを保存する保存手段と、上記再暗号化手段で用いられた暗号鍵と組みとなっている第2復号鍵を取得する復号鍵取得手段と、上記復号化手段により復号化された電子ファイルに基づくコンテンツとともに上記復号鍵取得手段により取得された第2復号鍵に関する情報を画像形成装置に印刷出力させる出力手段と、を有することを特徴とする。
本発明のコンテンツ利用システムは、上記コンテンツ利用端末装置と、上記暗号化電子ファイルを上記コンテンツ利用端末装置に配信するサーバと、上記コンテンツ利用端末装置から出力されたコンテンツの内容を印刷出力する画像形成装置とを有することを特徴とする。
本発明のコンピュータプログラムは、コンテンツと、該コンテンツを特定する識別情報とを含む暗号化された暗号化電子ファイルを、コンテンツ利用端末装置の復号化手段により復号化する復号化ステップと、上記暗号化電子ファイルから暗号鍵及び復号鍵を、上記コンテンツ利用端末装置の生成手段により1組み生成する生成ステップと、上記生成ステップにより生成された暗号鍵を用いて、上記復号化ステップにより復号化された電子ファイルを、上記コンテンツ利用端末装置の再暗号化手段により再暗号化する再暗号化ステップと、上記再暗号化ステップにより再暗号化された電子ファイルを再暗号化電子ファイルとして、上記コンテンツ利用端末装置の保存手段により保存する保存ステップと、上記復号化ステップにより復号化された電子ファイルに基づくコンテンツとともに上記生成ステップにより生成された復号鍵に関する情報と上記識別情報とを含み、上記再暗号化電子ファイルを再度出力するために用いられる再出力情報を、上記コンテンツ利用端末装置の出力手段が印刷装置に印刷出力させる出力ステップと、上記再暗号化された電子ファイルの再出力要求であって、上記出力ステップで印刷出力された再出力情報を用いてなされる再出力要求を、上記コンテンツ利用端末装置の再出力要求受付手段により受け付ける再出力受付ステップと、上記再出力受付ステップで受け付けられた上記再出力要求で用いられた上記再出力情報に含まれる上記識別情報に基づいて上記保存ステップで保存された上記再暗号化電子ファイルを特定し、上記再出力情報に含まれる上記復号鍵に関する情報に基づいて上記特定した暗号化電子ファイルを復号化し、該復号化した電子ファイルに基づいて上記コンテンツを、上記コンテンツ利用端末装置の再出力手段が上記印刷装置に再度印刷出力させる再出力ステップと、をコンピュータに実行させることを特徴とする。
また、本発明の他の特徴とするところは、コンテンツと、上記コンテンツの利用回数の上限値に関連する数の暗号鍵及び復号鍵の組とを含む暗号化された暗号化電子ファイルを、外部から入力される第1復号鍵を用いて、コンテンツ利用端末装置の復号化手段により復号化する復号化ステップと、上記暗号化電子ファイルに含まれる暗号鍵及び復号鍵の組であって、上記コンテンツの利用回数の上限値に関連する数の暗号鍵及び復号鍵の組のうちの1つの暗号鍵を用いて上記電子ファイルを、上記コンテンツ利用端末装置の再暗号化手段により再暗号化する再暗号化ステップと、上記再暗号化ステップにより再暗号化された電子ファイルを、上記コンテンツ利用端末装置の保存手段により保存する保存ステップと、上記再暗号化ステップで用いられた暗号鍵と組みとなっている第2復号鍵を、上記コンテンツ利用端末装置の復号鍵取得手段により取得する復号鍵取得ステップと、上記復号化ステップにより復号化された電子ファイルに基づくコンテンツとともに上記復号鍵取得ステップにより取得された第2復号鍵に関する情報を、上記コンテンツ利用端末装置の出力手段が印刷装置に印刷出力させる出力ステップと、をコンピュータに実行させることを特徴とする。
本発明のコンピュータ読み取り可能な記憶媒体は、上記コンピュータプログラムを記録したことを特徴とする。
本発明によれば、通信コストを最小限に抑えつつ、コンテンツの利用回数をより確実に制限することができる。
次に、図面を参照しながら、本発明の実施の形態について説明する。なお、以下の実施形態では、コンテンツが帳票である場合を例に挙げて説明するが、コンテンツは帳票に限定されないということは勿論である。
(第1の実施形態)
図1は、帳票印刷システムの構成の一例を示した図である。図1において、帳票印刷システムは、本社(拠点)101に配設された帳票サーバ1001と、代理店102に配設されたクライアントPC1002a、1002b、プリンタ1003、及びスキャナ1004とが、インターネット103、ルータ104a、104b、及びLAN105a、105bを介して通信可能に接続されて構成されている。
なお、以下の説明において、2つのクライアントPC1002a、1002bの双方又は何れか一方を、クライアントPC1002と略称する。また、クライアントPCの数は、2つに限定されないということは勿論である。
帳票サーバ1001は、帳票を生成及び保存するサーバであり、クライアントPC1002からの要求に応じて、図3に示す帳票本体データ301に、帳票ID302と、利用回数分の暗号鍵及び復号鍵の鍵ペア303とを付加してクライアントPC1002に帳票データ300として配信する機能を有している。
ここで、図2のフローチャートを参照しながら、クライアントPC1002から要求を受けた場合の帳票サーバ1001の動作の一例を説明する。
まず、ステップS1において、クライアントPC1002からのHTTPリクエストを受信するまで待機する。HTTPリクエストを受信すると、ステップS2に進み、ステップS1で受信したHTTPリクエストの中身を解析し、受信したHTTPリクエストが、過去に受信したことのあるHTTPリクエストと同一であるかどうかを判定する。
この判定の結果、同一であればステップS3に進み、ステップS1で受信したHTTPリクエストをキーにして、帳票サーバ1001内に設けられている帳票DBから、帳票本体データ301及びその生成日時を取得する。
一方、同一でなければステップS4に進み、ステップS1で受信したHTTPリクエストの内容に基づき帳票本体データ301を生成する。そして、HTTPリクエストをキーとして、生成した帳票本体データ301と、その生成日時とを上記帳票DBに保存する。このようにするのは、帳票本体データ301を将来使用できるようにするためである。
次に、ステップS5において、帳票本体データ301の生成日時と、要求(HTTPリクエスト)の受付日時(ステップS1でHTTPリクエストを受信した日時)とから一意となる帳票ID302を生成する。
ここで、帳票ID302の生成に帳票本体データ301の生成日時を用いるのは、帳票本体データ301毎に帳票ID302を一意とするためである。そして、要求の受付日時を用いるのは、クライアントPC1002からの要求毎に帳票ID302を一意とするためである。
次に、ステップS6において、帳票本体データ301の種類と、HTTPリクエストを発行したクライアントPC1002と、HTTPリクエストを発行した人物の役職とにより、予め用意したテーブルから印刷回数上限値を決定する。
ここで、帳票本体データ301の種類は、例えば、金額にまつわる重要な書類か否かにより識別される。また、クライアントPC1002は、例えば、上級管理職のクライアントPC1002から来たHTTPリクエストか、それとも販売代理店のクライアントPC1002から来たHTTPリクエストかなど、リクエストの発信IPアドレスにより識別される。さらに、HTTPリクエストを発行した人物の役職は、SSLを用いた個人認証により人物を特定することによって識別される。なお、識別方法は、これらに限定されないということは勿論である。
また、クライアントPC1002や、その使用者に与えられている権限により印刷回数上限値を決定するようにしていれば、必ずしも、帳票本体データ301の種類と、HTTPリクエストを発行したクライアントPC1002と、HTTPリクエストを発行した人物の役職とにより、印刷回数上限値を決定する必要はないということは勿論である。例えば、帳票本体データ301の種類と、HTTPリクエストを発行したクライアントPC1002と、HTTPリクエストを発行した人物の役職とのうち、何れか1つ又は2つにより印刷回数上限値を決定するようにしてもよい。
次に、ステップS7において、ステップS6で決定された印刷回数上限値の数だけ、暗号鍵及び復号鍵の鍵ペア303を生成する。
次に、ステップS8において、ステップS3又はステップS4で得られた帳票本体データ301に、ステップS7で生成した鍵ペア303と、ステップS5で生成した帳票ID302とを付加して、配信データ(帳票データ)300を生成する。
最後に、ステップS9において、ステップS8で生成された配信データ(帳票データ)300を、ステップS1で受信したHTTPリクエストの送信元のクライアントPC1002に配信する。このステップS9で、帳票サーバ1001がクライアントPC1002に配信する帳票データ300の内容は、図3に示す通りである。
次に、図4〜図6を参照しながら、配信データ(帳票データ)300を受信したクライアントPC1002、プリンタ1003、及びスキャナ1004の動作について説明する。図4は、クライアントPC1002が配信データ(帳票データ)300を受信し、受信した帳票データ300に含まれる帳票本体データ301について、最初の印刷を行う場合の処理の一例を説明するフローチャートである。図6は、帳票データ300に含まれる帳票本体データ301の印刷を行う場合の処理の概念を示した図である。
まず、ステップS11において、クライアントPC1002は、帳票サーバ1001から配信データ(帳票データ)300を受信するまで待機する。帳票データ300を受信すると、ステップS12に進み、クライアントPC1002は、ステップS11で受信した帳票データ300を主メモリに保存する。
次に、ステップS13において、クライアントPC1002は、ステップS12で主メモリに保存された帳票データ300に含まれる帳票本体データ301を元に印刷帳票イメージデータを生成する。
次に、ステップS14において、クライアントPC1002は、ステップS12で主メモリに保存された帳票データ300に、1回目の暗号鍵303aと1回目の復号鍵303bとからなる鍵ペアが含まれているかどうかを判定する。この判定の結果、1回目の暗号鍵303aと1回目の復号鍵303bとかなる鍵ペアが含まれていない場合には、後述するステップS15〜ステップS18を省略してステップS19に進む。
一方、1回目の暗号鍵303aと1回目の復号鍵303bとかなる鍵ペアが含まれている場合には、ステップS15に進み、クライアントPC1002は、クライアント環境に固有の情報を取得し、取得したクライアント環境に固有の情報に基づき、共通暗号鍵を生成(計算)する。なお、クライアント環境に固有の情報は、例えば、クライアントPC1002のCPUシリアル番号とMACアドレスである。また、クライアント環境に固有の情報は、必ずしもこのステップで取得する必要はなく、例えば、上記ステップS11で取得すればよい。
次に、ステップS16に進み、クライアントPC1002は、1回目の復号鍵303bを、ステップS15で生成された共通暗号鍵で暗号化する。
次に、ステップS17において、クライアントPC1002は、ステップS12で主メモリに保存された帳票データ300に含まれる帳票ID302と、ステップS16で暗号化された1回目の復号鍵303bとを、二次元バーコード化して、二次元バーコードイメージデータを生成する。この二次元バーコードイメージデータは、後述するようにして、2回目の印刷を行う場合に、必要になるデータである。
次に、ステップS18において、クライアントPC1002は、ステップS13で生成された印刷帳票イメージデータと、ステップS17で生成された二次元バーコードイメージデータとを結合し、印刷イメージデータを生成する。
次に、ステップS19において、クライアントPC1002は、ステップS18で生成された印刷イメージデータをプリンタ1003に送信する。そして、プリンタ1003は、印刷帳票イメージデータと、二次元バーコードイメージデータとをセットにして印刷を行う。これにより、印刷帳票イメージ601と、二次元バーコードイメージ(鍵紙)602とが用紙上に印刷される。なお、本実施形態では、二次元バーコードイメージ602が最終ページとなるように、印刷帳票イメージ601と、二次元バーコードイメージ602とを用紙上に印刷するようにしている。
次に、ステップS20において、クライアントPC1002は、ステップS12で主メモリに保存された帳票データ300に、1回目の暗号鍵303aと1回目の復号鍵303bとかなる鍵ペアが含まれているかどうかを判定する。この判定の結果、1回目の暗号鍵303aと1回目の復号鍵303bとかなる鍵ペアが含まれていない場合には、後述するステップS21〜ステップS25を省略してステップS26に進む。
一方、1回目の暗号鍵303aと1回目の復号鍵303bとかなる鍵ペアが含まれている場合には、ステップS21に進み、クライアントPC1002は、上記主メモリに保存されている1回目の暗号鍵303aを取得する。
次に、ステップS22において、クライアントPC1002は、上記主メモリに保存されている1回目の暗号鍵303aと1回目の復号鍵303bとかなる鍵ペアを削除する。
次に、ステップS23において、クライアントPC1002は、ステップS22で鍵ペアが削除された帳票データ300を、ステップS21で取得した1回目の暗号鍵303aを用いて暗号化する。
次に、ステップS24において、クライアントPC1002は、ステップS22で1回目の鍵ペアが削除され、ステップS23で暗号化された帳票データ300をファイルとして保存する。そして、上記主メモリに保存されている元の帳票データ300を削除する。
次に、ステップS25において、クライアントPC1002は、ステップS24で保存された帳票データ300のファイル名と、その帳票データ300に含まれている帳票ID302とを関連付けて、インデックスファイルに保存する。このように、帳票データ300のファイル名と、帳票ID302とを関連付けて、インデックスファイルに保存するようにすれば、次回以降、帳票ID302を指定して再印刷する場合に、すばやく帳票ファイルを特定することができる。
最後に、ステップS26において、クライアントPC1002は、ステップS12で主メモリに保存された元のデータを消去する。
次に、図5のフローチャートを参照しながら、帳票データ300に含まれる帳票本体データ301について、2回目以降の印刷を行う場合の処理について説明する。
まず、ステップS31において、クライアントPC1002は、キーボードやマウスなどのユーザによる操作に基づき、ユーザから再印刷の要求がされるまで待機する。再印刷の要求がされると、ステップS32に進み、クライアントPC1002は、前回の帳票印刷に際して同時に出力された鍵紙(例えば、図4のステップS19で印刷された二次元バーコードイメージ(鍵紙)602)をスキャナ604から取り込むように要求するメッセージをモニタに表示する。
次に、ステップS33において、クライアントPC1002は、スキャナ104から二次元バーコードイメージ602が取り込まれるまで待機する。二次元バーコードイメージ602が取り込まれると、ステップS34に進み、クライアントPC1002は、ステップS33で取り込まれた二次元バーコードイメージを、画像処理してバイナリデータに変化させる。
次に、ステップS35において、クライアントPC1002は、ステップ34でバイナリデータにさせた二次元バーコードイメージから、帳票ID302と、暗号化された(n−1)回目の復号鍵(例えば、1回目の復号鍵)とを抽出する。なお、上記において、nは、今回の印刷回数である。
次に、ステップS36において、クライアントPC1002は、上記インデックスファイルから、ステップS35で抽出された帳票ID302に対応する帳票データファイル名を抽出する。
次に、ステップS37において、クライアントPC1002は、クライアント環境に固有の情報を取得し、取得したクライアント環境に固有の情報に基づき、共通暗号鍵を生成(計算)する。なお、クライアント環境に固有の情報は、例えば、クライアントPC1002のCPUシリアル番号とMACアドレスである。
次に、ステップS38において、クライアントPC1002は、ステップS35で抽出された(n−1)回目の復号鍵を、ステップS37で生成された共通暗号鍵で復号化する。
次に、ステップS39において、クライアントPC1002は、ファイルとして保存されている帳票データ300(以下、帳票データファイルと称する)を、ステップS38で復号化された(n−1)回目の復号鍵で復号化するとともに、復号化した帳票データデータファイルをメモリに書き込む。
次に、ステップS40において、クライアントPC1002は、元の帳票データファイルを削除する。
次に、ステップS41において、クライアントPC1002は、ステップS39でメモリに書き込まれた帳票データファイルに含まれる帳票本体データ301から、印刷帳票イメージデータを生成する。
次に、ステップS42において、クライアントPC1002は、ステップS39でメモリに書き込まれた帳票データファイルに、n回目の暗号鍵とn回目の復号鍵とかなる鍵ペアが含まれているかどうかを判定する。この判定の結果、n回目の暗号鍵とn回目の復号鍵とかなる鍵ペアが含まれていない場合には、後述するステップS43〜ステップS46を省略してステップS47に進む。
一方、n回目の暗号鍵とn回目の復号鍵とかなる鍵ペアが含まれている場合には、ステップS43に進み、クライアントPC1002は、クライアント環境に固有の情報を取得し、取得したクライアント環境に固有の情報に基づき、共通暗号鍵を生成(計算)する。なお、クライアント環境に固有の情報は、例えば、クライアントPC1002のCPUシリアル番号とMACアドレスである。
次に、ステップS44において、クライアントPC1002は、n回目の復号鍵を、ステップS43で生成された共通暗号鍵で暗号化する。
次に、ステップS45において、クライアントPC1002は、ステップS39でメモリに書き込まれた帳票データファイルに含まれる帳票ID302と、ステップS44で暗号化されたn回目の復号鍵とを、二次元バーコード化して、二次元バーコードイメージデータを生成する。この二次元バーコードイメージデータは、(n+1)回目に印刷を行う場合に、必要になるデータである。
次に、ステップS46において、クライアントPC1002は、ステップS41で生成された印刷帳票イメージデータと、ステップS45で生成された二次元バーコードイメージデータとに基づいて、印刷イメージデータを生成する。
次に、ステップS47において、クライアントPC1002は、ステップS46で生成された印刷イメージデータをプリンタ1003に送信する。そして、プリンタ1003は、印刷帳票イメージデータと、二次元バーコードイメージデータとをセットにして印刷を行う。例えば、今回の印刷が2回目である場合には、印刷帳票イメージ603と、二次元バーコードイメージ(鍵紙)604とが用紙上に印刷される。
次に、ステップS48において、クライアントPC1002は、上記主メモリに、n回目の暗号鍵とn回目の復号鍵とかなる鍵ペアが含まれているかどうかを判定する。この判定の結果、n回目の暗号鍵とn回目の復号鍵とかなる鍵ペアが含まれていない場合には、後述するステップS49〜ステップS53を省略してステップS54に進む。
一方、n回目の暗号鍵303aとn回目の復号鍵303bとかなる鍵ペアが含まれている場合には、ステップS49に進み、クライアントPC1002は、上記主メモリに保存されているn回目の暗号鍵を取得する。
次に、ステップS50において、クライアントPC1002は、上記主メモリに保存されているn回目の暗号鍵とn回目の復号鍵とかなる鍵ペアを削除する。
次に、ステップS51において、クライアントPC1002は、ステップS50で鍵ペアが削除された帳票データ300を、ステップS51で取得したn回目の暗号鍵を用いて暗号化する。
次に、ステップS52において、クライアントPC1002は、ステップS50でn回目の鍵ペアが削除され、ステップS51で暗号化された帳票データ300をファイルとして保存する。そして、上記主メモリに保存されている元の帳票データ300を削除する。
次に、ステップS53において、クライアントPC1002は、ステップS52で保存された帳票データ300のファイル名と、その帳票データ300に含まれている帳票ID302とを関連付けて、インデックスファイルに保存する。
最後に、ステップS54において、上記主メモリに保存されている元のデータを消去する。
このように、帳票データ300内に保存されているn番目の鍵ペアが存在しない場合には、次回の印刷のための二次元バーコードイメージ(鍵紙)を印刷せず、また帳票データ300も再保存されないため、再度印刷することが不可能になる。
上述した帳票サーバ1001及びクライアントPC1002におけるソフトウェア処理(機能)は、図15に示すようなコンピュータシステムを用いることにより実現することができる。
図15は、帳票サーバ1001及びクライアントPC1002に配設されているコンピュータシステムの構成の一例を示したブロック図である。
図15において、コンピュータシステム150は、CPU1501と、ROM1502と、RAM1503と、キーボード(KB)1504のキーボードコントローラ(KBC)1505と、表示部としてのCRTディスプレイ(CRT)1506のCRTコントローラ(CRTC)1507と、ハードディスク(HD)1508及びフレキシブルディスク(FD)1509のディスクコントローラ(DKC)1510と、ネットワーク1511との接続のためのネットワークインターフェースコントローラ(NIC)1512とが、システムバス1513を介して互いに通信可能に接続された構成としている。
CPU1501は、ROM1502或いはHD1508に記憶されたソフトウェア、或いはFD1509より供給されるソフトウェアを実行することで、システムバス1503に接続された各構成部を総括的に制御する。
すなわち、CPU1501は、所定の処理シーケンスに従った処理プログラムを、ROM1502、或いはHD1508、或いはFD1509から読み出して実行することで、装置の動作を実現するための制御を行う。
RAM1503は、CPU1501の主メモリ或いはワークエリア等として機能する。
KBC1505は、KB1504や図示していないポインティングデバイス等からの指示入力を制御する。
CRTC1507は、CRT1506の表示を制御する。
DKC1510は、ブートプログラム、種々のアプリケーション、編集ファイル、ユーザファイル、ネットワーク管理プログラム、及び所定の処理プログラム等を記憶するHD1508及びFD1509とのアクセスを制御する。
NIC1502は、ネットワーク1511上の装置或いはシステムと双方向にデータをやりとりする。
以上のように本実施形態では、帳票サーバ1001は、クライアントPC1002からの要求に応じて、帳票データ300を配信する。帳票データ300が配信されたクライアントPC1002は、帳票データ300に含まれている帳票本体データ301から帳票印刷イメージデータを生成するとともに、帳票データ300に含まれている帳票ID302とn回目の復号鍵とから二次元バーコードイメージデータを生成し、帳票印刷イメージ601、603と、二次元バーコードイメージ602、604とを印刷する。そして、帳票データ300に含まれているn回目の暗号鍵とn回目の復号鍵とからなる鍵ペアを削除する。次回以降の印刷では、二次元バーコードイメージ602、604を使用して、帳票本体データ301を復号化するようにする。
これにより、帳票本体データ301の反復的な利用を行うに際し、帳票本体データ301を再利用(再印刷)することができる者は、二次元バーコードイメージ602、604を有している者だけになる。また、帳票本体データ301を印刷できる回数は、鍵ペアの数に応じた回数になる。さらに、帳票本体データ301を印刷できる回数をクライアントPC1002で管理することができる。
したがって、帳票サーバ1001とクライアントPC1002との通信回数を最小限に抑えつつ、帳票本体データ301の印刷回数を従来よりも確実に制限できるとともに、帳票本体データ301の不正な再利用を可及的に防止することができる。
特に、本実施形態では、印刷後に、n回目の暗号鍵とn回目の復号鍵とからなる鍵ペアが削除された帳票データ300を再暗号化し、再暗号化した帳票データ300をファイルとして保存するとともに、元の帳票データ300を削除するようにしたので、帳票本体データ301の不正な再利用をより効果的に防止することができる。
また、今回の印刷に対応する鍵ペアに含まれている復号鍵を、CPUシリアル番号とMACアドレスとから生成した共通暗号鍵を用いて暗号化し、暗号化した復号鍵を次回の印刷に必要となる情報(二次元バーコードイメージ602、604)として出力する。そして、次回の印刷を行うに際し、二次元バーコードイメージ602、604を入力すると、CPUシリアル番号とMACアドレスとから生成した共通暗号鍵を用いて、入力した二次元バーコードイメージ602、604を復号化する。そして、この復号化した二次元バーコードイメージ602、604を用いて、帳票データ301を復号化する。これにより、初回に帳票本体データ(コンテンツ)301を利用したクライアント環境でのみ、2回目以降の利用を可能とすることができ、不正利用、不正コピー、及び不正配布に対するセキュリティをより向上させることができる。
なお、本実施形態では、元の帳票データ300を削除して、帳票本体データ301の不正な再利用を効果的に防止するようにしたが、再暗号化した帳票データ300を、元の帳票データ300に上書きしてもよい。
また、本実施形態では、二次元バーコードイメージを使用して、次回以降の印刷の不正な再利用を可及的に防止するようにしたが、二次元バーコードイメージの代わりに電子透かしを用いてもよい。
さらに、本実施形態では、暗号鍵と復号鍵とを異ならせるようにしたが、暗号鍵と復号鍵とが同一な共通鍵暗号化方式を使用してもよい。
(第2の実施形態)
次に、本発明の第2の実施形態を説明する。上述した第1の実施形態では、鍵ペア303の数により、印刷回数を制限するようにしたが、本実施形態では、帳票データに印刷回数の上限値を付加し、この印刷回数の上限値を用いて、印刷回数を制限するようにする。また、上述した第1の実施形態では、帳票サーバ1001で鍵ペアを生成するようにしたが、本実施形態ではクライアントPCで鍵ペアを生成する。このように、上述した第1の実施形態と、本実施形態とは、ソフトウェア処理の一部だけが異なるだけであるので、以下の説明において、上述した第1の実施形態と同一の部分については、図1〜図6と同一の符号を付すなどして詳細な説明を省略する。
図8は、本実施形態の帳票データの内容の一例を示した図である。本実施形態では、帳票本体データ301に、帳票ID302と、帳票データ800の残りの利用(印刷)回数値とを付加したものを帳票データ800として、帳票サーバ1001からクライアントPC1002に配信するようにしている。
ここで、図7のフローチャートを参照しながら、クライアントPC1002から要求を受けた場合の帳票サーバ1001の動作の一例を説明する。
図7において、ステップS71〜S76は、図3に示したステップS1〜S6と同じである。
すなわち、ステップS71において、クライアントPC1002からのHTTPリクエストを受信すると、ステップS72に進み、受信したHTTPリクエストがHTTPリクエストと同一であるかどうかを判定する。
この判定の結果、同一であればステップS73に進み、帳票サーバ1001内に設けられている帳票DBから、帳票本体データ301およびその生成日時を取得する。
一方、同一でなければステップS74に進み、受信したHTTPリクエストの内容に基づき帳票本体データ301を生成し、生成した帳票本体データ301と、その生成日時とを保存する。
次に、ステップS75において、帳票本体データ301の生成日時と、要求の受付日時とから一意となる帳票ID302を生成する。
次に、ステップS76において、帳票本体データ301の種類と、HTTPリクエストを発行したクライアントPC1002と、HTTPリクエストを発行した人物の役職とにより、印刷回数上限値801を決定する。
次に、ステップS77において、ステップS75で生成した帳票ID302と、ステップS76で決定した印刷回数上限値801とを、帳票本体データ301に付加して、配信データ(帳票データ)800を生成する。
最後に、ステップS78において、ステップS77で生成された配信データ(帳票データ)800を、ステップS71で受信したHTTPリクエストの送信元のクライアントPC1002に配信する。
次に、図9及び図10を参照しながら、配信データ(帳票データ)800を受信したクライアントPC1002、プリンタ1003、及びスキャナ1004の動作について説明する。
図9は、クライアントPC1002が配信データ(帳票データ)800を受信し、受信した帳票データ800に含まれる帳票本体データ301について、最初の印刷を行う場合の処理の一例を説明するフローチャートである。
図9において、ステップS81〜S83は、図4に示したステップS11〜S13と同じである。
すなわち、まず、ステップS81において、帳票サーバ1001から配信データ(帳票データ)800を受信すると、ステップS82において、クライアントPC1002は、受信した帳票データ800を主メモリに保存し、ステップS83において、保存した帳票データ800に含まれる帳票本体データ301を元に印刷帳票イメージデータを生成する。
次に、ステップS84において、クライアントPC1002は、ステップS82で主メモリに保存された帳票データ800に付加されている印刷回数上限値(残り利用回数)801が1以上であるかどうかを判定する。この判定の結果、印刷回数上限値(残り利用回数)801が1以上でない(0である)場合には、後述するステップS85〜ステップS89を省略してステップS90に進む。
一方、印刷回数上限値(残り利用回数)801が1以上である場合には、ステップS85に進み、図4のステップS15と同様に、クライアントPC1002は、共通暗号鍵を生成(計算)する。
次に、ステップS86において、クライアントPC1002は、乱数を用いて、暗号鍵及び復号鍵の鍵ペアを生成する。
次に、ステップS87において、クライアントPC1002は、ステップS86で生成された復号鍵を、ステップS85で生成された共通暗号鍵で暗号化する。
次に、ステップS88において、クライアントPC1002は、図4のステップS17と同様に、ステップS82で主メモリに保存された帳票データ800に含まれる帳票ID302と、ステップS87で暗号化された復号鍵とを、二次元バーコード化して、二次元バーコードイメージデータを生成する。
次に、ステップS89において、クライアントPC1002は、図4のステップS18と同様に、ステップS83で生成された印刷帳票イメージデータと、ステップS88で生成された二次元バーコードイメージデータとに基づいて、印刷イメージデータを生成する。
次に、ステップS90において、クライアントPC1002は、図4のステップS19と同様に、ステップS89で生成された印刷イメージデータをプリンタ1003に送信する。そして、プリンタ1003は、印刷帳票イメージデータと、二次元バーコードイメージデータとをセットにして印刷を行う。
次に、ステップS91において、クライアントPC1002は、ステップS82で主メモリに保存された帳票データ800に付加されている印刷回数上限値(残り利用回数)801が1以上であるかどうかを判定する。この判定の結果、印刷回数上限値(残り利用回数)801が1以上でない(0である)場合には、後述するステップS92〜ステップS95を省略してステップS96に進む。
一方、印刷回数上限値(残り利用回数)801が1以上である場合には、ステップS92に進み、クライアントPC1002は、主メモリに保存された帳票データ800に付加されている印刷回数上限値(残り利用回数)801を1減じる。
次に、ステップS93において、クライアントPC1002は、ステップS92で印刷回数上限値(残り利用回数)801が1減じられた帳票データ800を、ステップS86で生成された暗号鍵を用いて暗号化する。
次に、ステップS94において、クライアントPC1002は、ステップS92で印刷回数上限値(残り利用回数)801が1減じられ、ステップS93で暗号化された帳票データ800をファイルとして保存する。そして、上記主メモリに保存されている元の帳票データ800を削除する。
次に、ステップS95において、クライアントPC1002は、図4のステップS24と同様に、ステップS94で保存された帳票データ800のファイル名と、その帳票データ800に含まれている帳票ID302とを関連付けて、インデックスファイルに保存する。
最後に、ステップS96において、クライアントPC1002は、図4のステップS26と同様に、ステップS82で主メモリに保存された元のデータを消去する。
次に、図10のフローチャートを参照しながら、帳票データ800に含まれる帳票本体データ301について、2回目以降の印刷を行う場合の処理について説明する。
図10において、ステップS101〜S104は、図5に示したステップS31〜S34と同じである。
すなわち、まず、ステップS101において、クライアントPC1002は、ユーザから再印刷の要求がされると、ステップS102において、クライアントPC1002は、前回の帳票印刷に際して同時に出力された鍵紙をスキャナ604から取り込むことを要求する。そして、ステップS103において、スキャナ104から二次元バーコードイメージ602が取り込まれると、ステップS104において、ステップS103で取り込まれた二次元バーコードイメージを、バイナリデータに変化させる。
次に、ステップS105において、クライアントPC1002は、ステップ104でバイナリデータにさせた二次元バーコードイメージから、帳票ID302と、暗号化された復号鍵とを抽出する。
次に、ステップS106において、クライアントPC1002は、図5のステップS36と同様に、上記インデックスファイルから、ステップS105で抽出された帳票ID302に対応する帳票データファイル名を抽出する。
次に、ステップS107において、クライアントPC1002は、図5のステップS37と同様に、クライアント環境に固有の情報に基づき、共通暗号鍵を生成(計算)する。なお、クライアント環境に固有の情報は、例えば、クライアントPC1002のCPUシリアル番号とMACアドレスである。
次に、ステップS108において、クライアントPC1002は、ステップS105で抽出された復号鍵を、ステップS107で生成された共通暗号鍵で復号化する。
次に、ステップS109において、クライアントPC1002は、ファイルとして保存されている帳票データ800(以下、帳票データファイルと称する)を、ステップS108で復号化された復号鍵で復号化するとともに、復号化した帳票データデータファイルをメモリに書き込む。
次に、ステップS110において、クライアントPC1002は、図5のステップS40と同様に、元の帳票データファイルを削除する。
次に、ステップS111において、クライアントPC1002は、図5のステップS110と同様に、ステップS109でメモリに書き込まれた帳票データファイルに含まれる帳票本体データ301から、印刷帳票イメージデータを生成する。
次に、ステップS112において、クライアントPC1002は、ステップS109でメモリに書き込まれた帳票データファイルに含まれている印刷回数上限値(残り利用回数)801が1以上であるかどうかを判定する。この判定の結果、印刷回数上限値(残り利用回数)801が1以上でない(0である)場合には、後述するステップS113〜ステップS117を省略してステップS90に進む。
一方、印刷回数上限値(残り利用回数)801が1以上である場合には、ステップS113に進み、クライアントPC1002は、図5のステップS43と同様に、クライアント環境に固有の情報に基づき、共通暗号鍵を生成(計算)する。なお、クライアント環境に固有の情報は、例えば、クライアントPC1002のCPUシリアル番号とMACアドレスである。
次に、ステップS114において、クライアントPC1002は、乱数を用いて暗号鍵及び復号鍵の鍵ペアを生成する。
次に、ステップS115において、クライアントPC1002は、ステップS114で生成された復号鍵を、ステップS113で生成された共通暗号鍵で暗号化する。
次に、ステップS116において、クライアントPC1002は、ステップS109でメモリに書き込まれた帳票データファイルに含まれる帳票ID302と、ステップS114で生成された復号鍵とを、二次元バーコード化して、二次元バーコードイメージデータを生成する。
次に、ステップS117において、クライアントPC1002は、図5のステップS46と同様に、ステップS111で生成された印刷帳票イメージデータと、ステップS116で生成された二次元バーコードイメージデータとに基づいて、印刷イメージデータを生成する。
次に、ステップS118において、クライアントPC1002は、図5のステップS47と同様に、ステップS117で生成された印刷イメージデータをプリンタ1003に送信する。そして、プリンタ1003は、印刷帳票イメージデータと、二次元バーコードイメージデータとをセットにして印刷を行う。
次に、ステップS119において、クライアントPC1002は、主メモリに保存された帳票データ800に付加されている印刷回数上限値(残り利用回数)801が1以上であるかどうかを判定する。この判定の結果、印刷回数上限値(残り利用回数)801が1以上でない(0である)場合には、後述するステップS120〜ステップS123を省略してステップS124に進む。
一方、印刷回数上限値(残り利用回数)801が1以上である場合には、ステップS120に進み、ステップS120に進み、クライアントPC1002は、主メモリに保存された帳票データ800に付加されている印刷回数上限値(残り利用回数)801を1減じる。
次に、ステップS121において、クライアントPC1002は、ステップS120で印刷回数上限値(残り利用回数)801を1減じられた帳票データ800を、ステップS114で生成された暗号鍵を用いて暗号化する。
次に、ステップS122において、クライアントPC1002は、ステップS120で印刷回数上限値(残り利用回数)801が1減じられ、ステップS121で暗号化された帳票データ800をファイルとして保存する。そして、上記主メモリに保存されている元の帳票データ800を削除する。
次に、ステップS123において、クライアントPC1002は、図5のステップS95と同様に、ステップS122で保存された帳票データ800のファイル名と、その帳票データ800に含まれている帳票ID302とを関連付けて、インデックスファイルに保存する。
最後に、ステップS124において、クライアントPC1002は、図5のステップS54と同様に、主メモリに保存された元のデータを消去する。
以上のように本実施形態では、帳票データ800に印刷回数上限値801を付加し、この印刷回数上限値801を用いて、印刷回数を制限するようにしたので、上述した第1の実施形態における効果に加え、帳票データ800のファイルサイズが、利用するたびに変化しないという効果が得られる。
なお、上述した第1の実施形態と同様に、再暗号化した帳票データ300を、元の帳票データ300に上書きして、帳票本体データ301の不正な再利用を効果的に防止するようにしてもよい。
また、電子透かしを用いて、次回以降の印刷の不正な再利用を可及的に防止するようにしてもよい。
さらに、暗号鍵と復号鍵とが同一な共通鍵暗号化方式を使用してもよい。
(第3の実施形態)
次に、本発明の第3の実施形態を説明する。上述した第1の実施形態では、次回の印刷を行う場合に必要になるデータ(二次元バーコードイメージデータ)と、帳票本体データ301との出力先を同じにしたが、本実施形態では、これらを異ならせるようにしている。このように、上述した第1の実施形態と、本実施形態とは、ソフトウェア処理の一部だけが異なるだけであるので、以下の説明において、上述した第1の実施形態と同一の部分については、図1〜図6、図15と同一の符号を付すなどして詳細な説明を省略する。
図12は、本実施形態の帳票データの内容の一例を示した図である。本実施形態では、帳票本体データ301に、帳票ID302と、暗号鍵及び復号鍵の鍵ペア303と、次回の印刷を行う場合に必要になるデータ(以下、再復号鍵と称する)の出力先を示すデータ1201とを付加したものを帳票データ1201として、帳票サーバ1001からクライアントPC1002に配信するようにしている。
ここで、図11のフローチャートを参照しながら、クライアントPC1002から要求を受けた場合の帳票サーバ1001の動作の一例を説明する。
図11において、ステップS131〜S137は、図3に示したステップS1〜S7と同じである。
すなわち、ステップS131において、クライアントPC1002からのHTTPリクエストを受信すると、ステップS132に進み、受信したHTTPリクエストがHTTPリクエストと同一であるかどうかを判定する。
この判定の結果、同一であればステップS133に進み、帳票サーバ1001内に設けられている帳票DBから、帳票本体データ301およびその生成日時を取得する。
一方、同一でなければステップS134に進み、受信したHTTPリクエストの内容に基づき帳票本体データ301を生成し、生成した帳票本体データ301と、その生成日時とを保存する。
次に、ステップS135において、帳票本体データ301の生成日時と、要求の受付日時とから一意となる帳票ID302を生成する。
次に、ステップS136において、帳票本体データ301の種類と、HTTPリクエストを発行したクライアントPC1002と、HTTPリクエストを発行した人物の役職とにより、印刷回数上限値を決定する。
次に、ステップS137において、ステップS136で決定した印刷回数上限値の数だけ、暗号鍵及び復号鍵の鍵ペア303を生成する。
次に、ステップS138において、クライアントPC1002は、再復号鍵の出力先1201を、ユーザによる入力装置(キーボードやマウス)などの操作に基づき取得し、取得した再復号鍵の出力先1201と、ステップS137で生成した鍵ペア303と、ステップS135で生成した帳票ID302とを、ステップS133又はステップS134で得られた帳票本体データ301に付加して、配信データ(帳票データ)1200を生成する。
最後に、ステップS139において、ステップS138で生成された配信データ(帳票データ)1200を、ステップS1で受信したHTTPリクエストの送信元のクライアントPC1002に配信する。
次に、図13及び図14を参照しながら、配信データ(帳票データ)1200を受信したクライアントPC1002、プリンタ1003、及びスキャナ1004の動作について説明する。
図13は、クライアントPC1002が配信データ(帳票データ)1200を受信し、受信した帳票データ1200に含まれる帳票本体データ301について、最初の印刷を行う場合の処理の一例を説明するフローチャートである。
図13において、ステップS141〜S146は、図4に示したステップS11〜S16と同じである。
すなわち、まず、ステップS141において、クライアントPC1002は、帳票サーバ1001から配信データ(帳票データ)1200を受信すると、ステップS142において、受信した帳票データ1200を主メモリに保存し、ステップS143において、保存した帳票データ1200に含まれる帳票本体データ1201を元に印刷帳票イメージデータを生成する。
次に、ステップS144において、クライアントPC1002は、ステップS142で主メモリに保存された帳票データ300に、1回目の鍵ペアが含まれているかどうかを判定する。この判定の結果、1回目の鍵ペアが含まれていない場合には、後述するステップS145〜ステップS147を省略してステップS148に進む。
一方、1回目の鍵ペアが含まれている場合には、ステップS145に進み、クライアントPC1002は、クライアント環境に固有の情報に基づき、共通暗号鍵を生成(計算)する。なお、クライアント環境に固有の情報は、例えば、クライアントPC1002のCPUシリアル番号とMACアドレスである。
次に、ステップS146に進み、クライアントPC1002は、1回目の復号鍵303bを、ステップS145で生成された共通暗号鍵で暗号化する。
次に、ステップS147において、クライアントPC1002は、ステップS12で主メモリに保存された帳票データ300に含まれる帳票ID302と、ステップS16で暗号化された1回目の復号鍵303bとを結合し、ステップS142で主メモリに保存された帳票データ1200に含まれている再復号鍵の出力先1201に出力する。
次に、ステップS148において、クライアントPC1002は、ステップS143で生成された印刷帳票イメージデータをプリンタ1003に送信する。そして、プリンタ1003は、印刷帳票イメージデータの印刷を行う。
なお、コンテンツ本体(帳票本体データ301)と再暗号鍵は、同じ方式で出力しても、異なる方式で出力してもよい。また、再暗号鍵の出力先(指定メディア)としては、例えば、フレキシブルディスク、メモリカード、及びパンチカードのようなメディアが挙げられる。
次のステップS149〜S155は、図4に示したステップS20〜S26と同じである。
すなわち、ステップS149において、クライアントPC1002は、主メモリに保存された帳票データ1200に、1回目の鍵ペアが含まれているかどうかを判定する。この判定の結果、1回目の鍵ペアが含まれていない場合には、後述するステップS150〜ステップS154を省略してステップS155に進む。
一方、1回目の鍵ペアが含まれている場合には、ステップS150に進み、クライアントPC1002は、上記主メモリに保存されている1回目の暗号鍵303aを取得する。
次に、ステップS151において、クライアントPC1002は、上記主メモリに保存されている1回目の鍵ペアを削除する。
次に、ステップS152において、クライアントPC1002は、1回目の鍵ペアが削除された帳票データ1200を、ステップS150で取得した1回目の暗号鍵303aを用いて暗号化する。
次に、ステップS153において、クライアントPC1002は、ステップS151で1回目の鍵ペアが削除され、ステップS152で暗号化された帳票データ1200をファイルとして保存する。そして、上記主メモリに保存されている元の帳票データ1200を削除する。
次に、ステップS154において、クライアントPC1002は、ステップS153で保存された帳票データ1200のファイル名と、その帳票データ1200に含まれている帳票ID302とを関連付けて、インデックスファイルに保存する。
最後に、ステップS155において、クライアントPC1002は、ステップS142で主メモリに保存された元のデータを消去する。
次に、図14のフローチャートを参照しながら、帳票データ1200に含まれる帳票本体データ301について、2回目以降の印刷を行う場合の処理について説明する。
まず、ステップS161において、クライアントPC1002は、図10のステップS101と同様に、ユーザから再印刷の要求がされるまで待機する。再印刷の要求がされると、ステップS162に進み、クライアントPC1002は、指定メディアから再暗号鍵を入力するように要求するメッセージをモニタに表示する。
次に、ステップS163において、クライアントPC1002は、指定メディアから再暗号鍵が入力されるまで待機し、入力されると、ステップS164に進み、クライアントPC1002は、ステップS163で入力された再暗号鍵を取得する。
次のステップS165〜S174は、図5のステップS35〜S44と同じである。
すなわち、ステップS165において、クライアントPC1002は、帳票ID302と、暗号化された(n−1)回目の復号鍵とを抽出する。
次に、ステップS166において、クライアントPC1002は、ステップS165で抽出された帳票ID302に対応する帳票データファイル名を抽出する。
次に、ステップS167において、クライアントPC1002は、クライアント環境に固有の情報に基づき、共通暗号鍵を生成(計算)する。なお、クライアント環境に固有の情報は、例えば、クライアントPC1002のCPUシリアル番号とMACアドレスである。
次に、ステップS168において、クライアントPC1002は、ステップS165で抽出された(n−1)回目の復号鍵を、ステップS167で生成された共通暗号鍵で復号化する。
次に、ステップS169において、クライアントPC1002は、ファイルとして保存されている帳票データ1200(以下、帳票データファイルと称する)を、ステップS168で復号化された(n−1)回目の復号鍵で復号化するとともに、復号化した帳票データデータファイルをメモリに書き込む。
次に、ステップS170において、クライアントPC1002は、元の帳票データファイルを削除する。
次に、ステップS171において、クライアントPC1002は、印刷帳票イメージデータを生成する。
次に、ステップS172において、クライアントPC1002は、ステップS169でメモリに書き込まれた帳票データファイルに、n回目の鍵ペアが含まれているかどうかを判定する。この判定の結果、n回目の鍵ペアが含まれていない場合には、後述するステップS173〜ステップS175を省略してステップS176に進む。
一方、n回目の鍵ペアが含まれている場合には、ステップS173に進み、クライアントPC1002は、クライアント環境に固有の情報に基づき、共通暗号鍵を生成(計算)する。なお、クライアント環境に固有の情報は、例えば、クライアントPC1002のCPUシリアル番号とMACアドレスである。
次に、ステップS174において、クライアントPC1002は、n回目の復号鍵を、ステップS173で生成された共通暗号鍵で暗号化する。
次に、ステップS175において、クライアントPC1002は、ステップS169で復号化された帳票データ1200に含まれる帳票ID302と、ステップS174で暗号化されたn回目の復号鍵とを結合し、帳票データ1200に含まれている再復号鍵の出力先1201に出力する。
次のステップS176〜183は、図5のステップS47〜S54と同じである。
すなわち、ステップS176において、クライアントPC1002は、ステップS171で生成された印刷帳票イメージデータをプリンタ1003に送信する。そして、プリンタ1003は、印刷帳票イメージデータの印刷を行う。
次に、ステップS177において、クライアントPC1002は、上記主メモリに、n回目の鍵ペアが含まれているかどうかを判定する。この判定の結果、n回目の鍵ペアが含まれていない場合には、後述するステップS178〜ステップS182を省略してステップS183に進む。
一方、n回目の鍵ペアが含まれている場合には、ステップS178に進み、クライアントPC1002は、上記主メモリに保存されているn回目の暗号鍵を取得する。
次に、ステップS179において、クライアントPC1002は、上記主メモリに保存されているn回目の鍵ペアを削除する。
次に、ステップS180において、クライアントPC1002は、n回目の鍵ペアが削除された帳票データ1200を、ステップS178で取得したn回目の暗号鍵を用いて暗号化する。
次に、ステップS181において、クライアントPC1002は、n回目の鍵ペアが削除され、且つ暗号化された帳票データ1200をファイルとして保存する。そして、上記主メモリに保存されている元の帳票データ1200を削除する。
次に、ステップS182において、クライアントPC1002は、保存された帳票データ1200のファイル名と、その帳票データ1200に含まれている帳票ID302とを関連付けて、インデックスファイルに保存する。
最後に、ステップS183において、上記主メモリに保存されている元のデータを消去する。
以上のように本実施形態では、次回の印刷を行う場合に必要になるデータ(再暗号鍵)の出力先と、帳票本体データ301の出力先とを異ならせるようにしたので、上述した第1の実施形態の効果に加え、例えば、コンテンツが、帳票本体データではなく映像である場合であってもコンテンツを容易に再利用することができる。すなわち、上述した第1の実施形態では、コンテンツが、帳票本体データ301ではなく映像などである場合には、次回の印刷を行う場合に必要になるデータとしての二次元バーコードをモニタに表示しても、ユーザがこれを記録して次回の利用時にクライアントPC1002に入力させるということが困難であるが、本実施形態ではこのような弊害を除去することができる。
なお、上述した第1の実施形態と同様に、再暗号化した帳票データ300を、元の帳票データ300に上書きして、帳票本体データ301の不正な再利用を効果的に防止するようにしてもよい。
また、暗号鍵と復号鍵とが同一な共通鍵暗号化方式を使用してもよい。
(本発明の他の実施形態)
上述した実施形態の機能を実現するべく各種のデバイスを動作させるように、該各種デバイスと接続された装置あるいはシステム内のコンピュータに対し、前記実施形態の機能を実現するためのソフトウェアのプログラムコードを供給し、そのシステムあるいは装置のコンピュータ(CPUあるいはMPU)に格納されたプログラムに従って前記各種デバイスを動作させることによって実施したものも、本発明の範疇に含まれる。
また、この場合、前記ソフトウェアのプログラムコード自体が上述した実施形態の機能を実現することになり、そのプログラムコード自体、及びそのプログラムコードをコンピュータに供給するための手段、例えば、かかるプログラムコードを格納した記録媒体は本発明を構成する。かかるプログラムコードを記憶する記録媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。
また、コンピュータが供給されたプログラムコードを実行することにより、上述の実施形態の機能が実現されるだけでなく、そのプログラムコードがコンピュータにおいて稼働しているOS(オペレーティングシステム)あるいは他のアプリケーションソフト等と共同して上述の実施形態の機能が実現される場合にもかかるプログラムコードは本発明の実施形態に含まれることは言うまでもない。
さらに、供給されたプログラムコードがコンピュータの機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに格納された後、そのプログラムコードの指示に基づいてその機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって上述した実施形態の機能が実現される場合にも本発明に含まれることは言うまでもない。
本発明の実施形態を示し、帳票印刷システムの構成の一例を示した図である。 本発明の第1の実施形態を示し、クライアントPCから要求を受けた場合の帳票サーバの動作の一例を説明するフローチャートである。 本発明の第1の実施形態を示し、帳票サーバがクライアントPCに配信する帳票データの内容の一例を示した図である。 本発明の第1の実施形態を示し、クライアントPCが帳票データを受信し、受信した帳票データに含まれる帳票本体データについて、最初の印刷を行う場合の処理の一例を説明するフローチャートである。 本発明の第1の実施形態を示し、帳票データに含まれる帳票本体データについて、2回目以降の印刷を行う場合の処理について説明するフローチャートである。 本発明の第1の実施形態を示し、帳票データに含まれる帳票本体データの印刷を行う場合の処理の概念を示した図である。 本発明の第2の実施形態を示し、クライアントPCから要求を受けた場合の帳票サーバの動作の一例を説明するフローチャートである。 本発明の第2の実施形態を示し、帳票サーバがクライアントPCに配信する帳票データの内容の一例を示した図である。 本発明の第2の実施形態を示し、クライアントPCが帳票データを受信し、受信した帳票データに含まれる帳票本体データについて、最初の印刷を行う場合の処理の一例を説明するフローチャートである。 本発明の第2の実施形態を示し、帳票データに含まれる帳票本体データについて、2回目以降の印刷を行う場合の処理について説明するフローチャートである。 本発明の第3の実施形態を示し、クライアントPCから要求を受けた場合の帳票サーバの動作の一例を説明するフローチャートである。 本発明の第3の実施形態を示し、帳票サーバがクライアントPCに配信する帳票データの内容の一例を示した図である。 本発明の第3の実施形態を示し、クライアントPCが帳票データを受信し、受信した帳票データに含まれる帳票本体データについて、最初の印刷を行う場合の処理の一例を説明するフローチャートである。 本発明の第3の実施形態を示し、帳票データに含まれる帳票本体データについて、2回目以降の印刷を行う場合の処理について説明するフローチャートである。 本発明の実施の形態を示し、帳票サーバ及びクライアントPCに配設されているコンピュータシステムの構成の一例を示したブロック図である。
符号の説明
300、800、1200 帳票データ
301 帳票本体データ
302 帳票ID
303 鍵ペア
601 印刷帳票イメージ
602 二次元バーコードイメージ(鍵紙)
801 印刷回数上限値(残り利用回数)
1201 再復号鍵の出力先
1001 帳票サーバ
1002 クライアントPC
1003 プリンタ
1004 スキャナ

Claims (17)

  1. コンテンツと、該コンテンツを特定する識別情報とを含む暗号化された暗号化電子ファイルを、コンテンツ利用端末装置の復号化手段により復号化する復号化ステップと、
    上記暗号化電子ファイルから暗号鍵及び復号鍵を、上記コンテンツ利用端末装置の生成手段により1組み生成する生成ステップと、
    上記生成ステップにより生成された暗号鍵を用いて、上記復号化ステップにより復号化された電子ファイルを、上記コンテンツ利用端末装置の再暗号化手段により再暗号化する再暗号化ステップと、
    上記再暗号化ステップにより再暗号化された電子ファイルを再暗号化電子ファイルとして、上記コンテンツ利用端末装置の保存手段により保存する保存ステップと、
    上記復号化ステップにより復号化された電子ファイルに基づく上記コンテンツとともに、上記生成ステップにより生成された復号鍵に関する情報と上記識別情報とを含み、上記再暗号化電子ファイルを再度出力するために用いられる再出力情報を、上記コンテンツ利用端末装置の出力手段が印刷装置に印刷出力させる出力ステップと、
    上記再暗号化された電子ファイルの再出力要求であって、上記出力ステップで印刷出力された再出力情報を用いてなされる再出力要求を、上記コンテンツ利用端末装置の再出力要求受付手段により受け付ける再出力受付ステップと、
    上記再出力受付ステップで受け付けられた上記再出力要求で用いられた上記再出力情報に含まれる上記識別情報に基づいて上記保存ステップで保存された上記再暗号化電子ファイルを特定し、上記再出力情報に含まれる上記復号鍵に関する情報に基づいて上記特定した暗号化電子ファイルを復号化し、該復号化した電子ファイルに基づいて上記コンテンツを、上記コンテンツ利用端末装置の再出力手段が上記印刷装置に再度印刷出力させる再出力ステップと、を有することを特徴とするコンテンツ利用回数制限方法。
  2. 更に、上記コンテンツを利用するコンテンツ利用端末装置の環境に固有の属性を、上記コンテンツ利用端末装置の取得手段により取得する属性取得ステップと、
    上記属性取得ステップにより取得された属性に基づいて、共通暗号鍵を、上記コンテンツ利用端末装置の共通暗号鍵生成手段により生成する共通暗号鍵生成ステップと、を有し、
    上記出力ステップで出力する上記再出力情報に含まれる上記復号鍵は、上記共通暗号鍵で暗号化されていることを特徴とする、請求項1に記載のコンテンツ利用回数制限方法。
  3. 更に、上記再出力受付ステップで上記暗号化電子ファイルの再出力要求を受け付けたことに基づいて、上記コンテンツを利用するコンテンツ利用端末装置の環境に固有の属性を、上記コンテンツ利用端末装置の属性再取得手段により再取得する属性再取得ステップと、
    上記属性再取得ステップにより再取得された属性に基づいて、共通暗号鍵を、上記コンテンツ利用端末装置の共通暗号鍵再生成手段により再生成する共通暗号鍵再生成ステップと、を有し、
    上記再出力ステップは、上記共通暗号鍵再生成ステップにより再生成された共通暗号鍵を用いて、上記再出力情報に含まれる復号鍵であって、上記共通暗号鍵で暗号化された復号鍵を復号化することを特徴とする、請求項2に記載のコンテンツ利用回数制限方法。
  4. 上記暗号化電子ファイルは、上記コンテンツの利用回数を示す利用回数値を含み、
    更に、上記出力ステップにおける上記コンテンツの出力に基づいて上記利用回数値を、上記コンテンツ利用端末装置の利用回数値変更手段により減ずる利用回数値変更ステップを有することを特徴とする、請求項1〜3のいずれか1項に記載のコンテンツ利用回数制限方法。
  5. 上記利用回数値が1以上でない場合には、上記再暗号化ステップと上記保存ステップとを実行しないことを特徴とする、請求項4に記載のコンテンツ利用回数制限方法。
  6. コンテンツと、上記コンテンツの利用回数の上限値に関連する数の暗号鍵及び復号鍵の組とを含む暗号化された暗号化電子ファイルを、外部から入力される第1復号鍵を用いて、コンテンツ利用端末装置の復号化手段により復号化する復号化ステップと、
    上記暗号化電子ファイルに含まれる暗号鍵及び復号鍵の組であって、上記コンテンツの利用回数の上限値に関連する数の暗号鍵及び復号鍵の組のうちの1つの暗号鍵を用いて上記電子ファイルを、上記コンテンツ利用端末装置の再暗号化手段により再暗号化する再暗号化ステップと、
    上記再暗号化ステップにより再暗号化された電子ファイルを、上記コンテンツ利用端末装置の保存手段により保存する保存ステップと、
    上記再暗号化ステップで用いられた暗号鍵と組みとなっている第2復号鍵を、上記コンテンツ利用端末装置の復号鍵取得手段により取得する復号鍵取得ステップと、
    上記復号化ステップにより復号化された電子ファイルに基づくコンテンツとともに、上記復号鍵取得ステップにより取得された第2復号鍵に関する情報を、上記コンテンツ利用端末装置の出力手段が印刷装置に印刷出力させる出力ステップと、を有することを特徴とするコンテンツ利用回数制限方法。
  7. 上記復号化ステップにおいて外部から入力される第1復号鍵は、上記出力ステップにおける上記コンテンツの前回の出力の際に上記復号鍵取得ステップで取得された第2復号鍵に関する情報に基づいて得られた復号鍵であることを特徴とする請求項6に記載のコンテンツ利用回数制限方法。
  8. 上記コンテンツを利用するコンテンツ利用端末装置の環境に固有の属性を、上記コンテンツ利用端末装置の属性取得手段により取得する属性取得ステップと、
    上記属性取得ステップにより取得された属性に基づいて、共通暗号鍵を、上記コンテンツ利用端末装置の共通暗号鍵生成手段により生成する共通暗号鍵生成ステップと、を有し、
    記出力ステップで出力する第2復号鍵に関する情報は、上記第2復号鍵を上記共通暗号鍵で暗号化した情報であり、
    上記復号化ステップは、上記出力ステップにおける前回の出力の際に上記復号鍵取得ステップで取得され、上記共通暗号鍵で暗号化された上記第2復号鍵を、上記コンテンツ利用端末装置の環境に固有な属性を用いて復号化し、上記暗号化電子ファイルの復号化に用いることを特徴とする、請求項7に記載のコンテンツ利用回数制限方法。
  9. 上記再暗号化ステップは、上記電子ファイルから再暗号のために用いる暗号鍵と該暗号鍵と組みとなる第2復号鍵とを削除した上で再暗号化を行うことを特徴とする請求項6〜8の何れか1項に記載のコンテンツ利用回数制限方法。
  10. 上記出力ステップは、上記復号鍵に関する情報を二次元バーコードとして紙上に印刷し、
    上記出力ステップにより紙上に印刷された二次元バーコードを、原稿読み取り装置の読み取り手段により読み取る読み取りステップを有することを特徴とする請求項6〜9の何れか1項に記載のコンテンツ利用回数制限方法。
  11. 上記出力ステップは、上記復号鍵に関する情報を電子透かしとして紙上に印刷し、
    上記出力ステップにより紙上に印刷された電子透かしを、原稿読み取り装置の読み取り手段により読み取る読み取りステップを有することを特徴とする請求項6〜9の何れか1項に記載のコンテンツ利用回数制限方法。
  12. コンテンツと、該コンテンツを特定する識別情報とを含む暗号化された暗号化電子ファイルを復号化する復号化手段と、
    上記暗号化電子ファイルから暗号鍵及び復号鍵を1組み生成する生成手段と、
    上記生成手段により生成された暗号鍵を用いて、上記復号化手段により復号化された電子ファイルを再暗号化する再暗号化手段と、
    上記再暗号化手段により再暗号化された電子ファイルを再暗号化電子ファイルとして保存する保存手段と、
    上記復号化手段により復号化された電子ファイルに基づくコンテンツとともに、上記生成手段により生成された復号鍵に関する情報と上記識別情報とを含み、上記再暗号化電子ファイルを再度出力するために用いられる再出力情報を印刷装置に印刷出力させる出力手段と、
    上記再暗号化電子ファイルの再出力要求であって、上記出力手段が上記印刷装置に印刷出力させた上記再出力情報を用いてなされる再出力要求を受け付ける再出力要求受付手段と、
    上記再出力要求受付手段が受け付けた上記再出力要求で用いられた上記再出力情報に含まれる上記識別情報に基づいて上記保存手段で保存された上記再暗号化電子ファイルを特定し、上記再出力情報に含まれる上記復号鍵に関する情報に基づいて上記特定した暗号化電子ファイルを復号化し、該復号化した電子ファイルに基づいて上記コンテンツを上記印刷装置に再度印刷出力させるよう制御する再出力手段と、を有することを特徴とするコンテンツ利用端末装置。
  13. コンテンツと、上記コンテンツの利用回数の上限値に関連する数の暗号鍵及び復号鍵の組とを含む暗号化された暗号化電子ファイルを、外部から入力される第1復号鍵を用いて復号化する復号化手段と、
    上記暗号化電子ファイルに含まれる暗号鍵及び復号鍵の組であって、上記コンテンツの利用回数の上限値に関連する数の暗号鍵及び復号鍵の組のうちの1つの暗号鍵を用いて上記電子ファイルを再暗号化する再暗号化手段と、
    上記再暗号化手段により再暗号化された電子ファイルを保存する保存手段と、
    上記再暗号化手段で用いられた暗号鍵と組みとなっている第2復号鍵を取得する復号鍵取得手段と、
    上記復号化手段により復号化された電子ファイルに基づくコンテンツとともに上記復号鍵取得手段により取得された第2復号鍵に関する情報を印刷装置に印刷出力させる出力手段と、を有することを特徴とするコンテンツ利用端末装置。
  14. 請求項12または13に記載のコンテンツ利用端末装置と、上記暗号化電子ファイルを上記コンテンツ利用端末装置に配信するサーバと、上記コンテンツ利用端末装置から出力されたコンテンツの内容を印刷出力する印刷装置とを有することを特徴とするコンテンツ利用システム。
  15. コンテンツと、該コンテンツを特定する識別情報とを含む暗号化された暗号化電子ファイルを、コンテンツ利用端末装置の復号化手段により復号化する復号化ステップと、
    上記暗号化電子ファイルから暗号鍵及び復号鍵を、上記コンテンツ利用端末装置の生成手段により1組み生成する生成ステップと、
    上記生成ステップにより生成された暗号鍵を用いて、上記復号化ステップにより復号化された電子ファイルを、上記コンテンツ利用端末装置の再暗号化手段により再暗号化する再暗号化ステップと、
    上記再暗号化ステップにより再暗号化された電子ファイルを再暗号化電子ファイルとして、上記コンテンツ利用端末装置の保存手段により保存する保存ステップと、
    上記復号化ステップにより復号化された電子ファイルに基づくコンテンツとともに上記生成ステップにより生成された復号鍵に関する情報と上記識別情報とを含み、上記再暗号化電子ファイルを再度出力するために用いられる再出力情報を、上記コンテンツ利用端末装置の出力手段が印刷装置に印刷出力させる出力ステップと、
    上記再暗号化された電子ファイルの再出力要求であって、上記出力ステップで印刷出力された再出力情報を用いてなされる再出力要求を、上記コンテンツ利用端末装置の再出力要求受付手段により受け付ける再出力受付ステップと、
    上記再出力受付ステップで受け付けられた上記再出力要求で用いられた上記再出力情報に含まれる上記識別情報に基づいて上記保存ステップで保存された上記再暗号化電子ファイルを特定し、上記再出力情報に含まれる上記復号鍵に関する情報に基づいて上記特定した暗号化電子ファイルを復号化し、該復号化した電子ファイルに基づいて上記コンテンツを、上記コンテンツ利用端末装置の再出力手段が上記印刷装置に再度印刷出力させる再出力ステップと、をコンピュータに実行させることを特徴とするコンピュータプログラム。
  16. コンテンツと、上記コンテンツの利用回数の上限値に関連する数の暗号鍵及び復号鍵の組とを含む暗号化された暗号化電子ファイルを、外部から入力される第1復号鍵を用いて、コンテンツ利用端末装置の復号化手段により復号化する復号化ステップと、
    上記暗号化電子ファイルに含まれる暗号鍵及び復号鍵の組であって、上記コンテンツの利用回数の上限値に関連する数の暗号鍵及び復号鍵の組のうちの1つの暗号鍵を用いて上記電子ファイルを、上記コンテンツ利用端末装置の再暗号化手段により再暗号化する再暗号化ステップと、
    上記再暗号化ステップにより再暗号化された電子ファイルを、上記コンテンツ利用端末装置の保存手段により保存する保存ステップと、
    上記再暗号化ステップで用いられた暗号鍵と組みとなっている第2復号鍵を、上記コンテンツ利用端末装置の復号鍵取得手段により取得する復号鍵取得ステップと、
    上記復号化ステップにより復号化された電子ファイルに基づくコンテンツとともに上記復号鍵取得ステップにより取得された第2復号鍵に関する情報を、上記コンテンツ利用端末装置の出力手段が印刷装置に印刷出力させる出力ステップと、をコンピュータに実行させることを特徴とするコンピュータプログラム。
  17. 請求項15または16に記載のコンピュータプログラムを記録したことを特徴とするコンピュータ読み取り可能な記録媒体。
JP2003392727A 2003-11-21 2003-11-21 コンテンツ利用回数制限方法、コンテンツ利用端末装置、コンテンツ利用システム、コンピュータプログラム、及びコンピュータ読み取り可能な記録媒体 Expired - Fee Related JP3984951B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2003392727A JP3984951B2 (ja) 2003-11-21 2003-11-21 コンテンツ利用回数制限方法、コンテンツ利用端末装置、コンテンツ利用システム、コンピュータプログラム、及びコンピュータ読み取り可能な記録媒体
US10/989,317 US20050114684A1 (en) 2003-11-21 2004-11-17 Contents use frequency limiting method, contents using terminal apparatus, contents using system, computer program and computer readable memory medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003392727A JP3984951B2 (ja) 2003-11-21 2003-11-21 コンテンツ利用回数制限方法、コンテンツ利用端末装置、コンテンツ利用システム、コンピュータプログラム、及びコンピュータ読み取り可能な記録媒体

Publications (2)

Publication Number Publication Date
JP2005159556A JP2005159556A (ja) 2005-06-16
JP3984951B2 true JP3984951B2 (ja) 2007-10-03

Family

ID=34587531

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003392727A Expired - Fee Related JP3984951B2 (ja) 2003-11-21 2003-11-21 コンテンツ利用回数制限方法、コンテンツ利用端末装置、コンテンツ利用システム、コンピュータプログラム、及びコンピュータ読み取り可能な記録媒体

Country Status (2)

Country Link
US (1) US20050114684A1 (ja)
JP (1) JP3984951B2 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007079859A (ja) * 2005-09-13 2007-03-29 Canon Inc 画像形成装置およびその制御方法とプログラム
JP2007200140A (ja) * 2006-01-27 2007-08-09 Canon Inc 文書権限管理装置、文書権限管理システム、文書権限管理方法、及びコンピュータプログラム
JP5072632B2 (ja) * 2008-02-07 2012-11-14 キヤノン株式会社 アクセス権管理システム
US9224184B2 (en) 2012-10-21 2015-12-29 Digimarc Corporation Methods and arrangements for identifying objects
US10320757B1 (en) * 2014-06-06 2019-06-11 Amazon Technologies, Inc. Bounded access to critical data
JP6903944B2 (ja) * 2017-02-27 2021-07-14 富士フイルムビジネスイノベーション株式会社 情報処理装置、印刷システムおよびプログラム
JP2019114160A (ja) * 2017-12-26 2019-07-11 キヤノンマーケティングジャパン株式会社 帳票印刷システム、その制御方法、およびプログラム
US11227591B1 (en) 2019-06-04 2022-01-18 Amazon Technologies, Inc. Controlled access to data
CN116954530B (zh) * 2023-09-19 2023-12-22 珠海芯烨电子科技有限公司 一种打印机数据处理方法以及服务器

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6741991B2 (en) * 1994-09-30 2004-05-25 Mitsubishi Corporation Data management system
US5778068A (en) * 1995-02-13 1998-07-07 Eta Technologies Corporation Personal access management system
EP1650757A1 (en) * 1997-05-13 2006-04-26 Kabushiki Kaisha Toshiba Information ciphering method and apparatus, information reproducing method and apparatus
US6226618B1 (en) * 1998-08-13 2001-05-01 International Business Machines Corporation Electronic content delivery system
JP4763866B2 (ja) * 1998-10-15 2011-08-31 インターシア ソフトウェア エルエルシー 2重再暗号化によりデジタルデータを保護する方法及び装置
JP2001209583A (ja) * 2000-01-26 2001-08-03 Sony Corp データ記録再生器およびセーブデータ処理方法、並びにプログラム提供媒体
JP2002032685A (ja) * 2000-05-11 2002-01-31 Nec Corp コンテンツレンタルシステム
US6873435B1 (en) * 2000-08-17 2005-03-29 Eastman Kodak Company Print having encoded metadata coupled thereto
JP4470312B2 (ja) * 2000-10-10 2010-06-02 ソニー株式会社 サーバ装置、再生装置、データ配信方法、データ再生方法、記憶媒体
KR20020064672A (ko) * 2001-02-02 2002-08-09 마쯔시다덴기산교 가부시키가이샤 콘텐츠 이용 관리 시스템 및 콘텐츠 이용 관리 방법
US20030009681A1 (en) * 2001-07-09 2003-01-09 Shunji Harada Digital work protection system, recording medium apparatus, transmission apparatus, and playback apparatus
US20070050696A1 (en) * 2003-03-31 2007-03-01 Piersol Kurt W Physical key for accessing a securely stored digital document
US20050097335A1 (en) * 2003-10-31 2005-05-05 Hewlett-Packard Development Company, L.P. Secure document access method and apparatus

Also Published As

Publication number Publication date
JP2005159556A (ja) 2005-06-16
US20050114684A1 (en) 2005-05-26

Similar Documents

Publication Publication Date Title
KR100753932B1 (ko) 컨텐츠 암호화 방법, 이를 이용한 네트워크를 통한 컨텐츠제공 시스템 및 그 방법
US8571212B2 (en) Image encrypting device, image decrypting device and method
US7532836B2 (en) Document management method, document management system, and computer program product
US7502466B2 (en) System and method for secure communication of electronic documents
US20050289346A1 (en) Print data communication with data encryption and decryption
JP2006344212A (ja) 電子文書のセキュアな印刷
JP2006341601A (ja) 電子文書のセキュアな印刷
JP2007325274A (ja) プロセス間データ通信システムおよびプロセス間データ通信方法
JP2006341600A (ja) 電子文書のセキュアな印刷
KR20000075866A (ko) 디지털 서명을 갖는 전송 수정본
CN101118586A (zh) 信息处理设备和方法以及数据处理设备和方法
CN114175580B (zh) 增强的安全加密和解密***
JP2001244925A (ja) 暗号化データ管理システム及び方法、記憶媒体
JP2007257527A (ja) 印刷システムおよび制御方法
US20150286843A1 (en) Method and system for modular digital watermarking of electronic files
JP3984951B2 (ja) コンテンツ利用回数制限方法、コンテンツ利用端末装置、コンテンツ利用システム、コンピュータプログラム、及びコンピュータ読み取り可能な記録媒体
US20130061059A1 (en) Information processing apparatus, information processing method, and non-transitory computer readable medium
KR101497067B1 (ko) 디지털 포렌식 기반의 전자기록물 이관 방법 및 이관 장치
JP4442583B2 (ja) 画像処理装置、画像処理方法及び画像処理用プログラム
JPH1041934A (ja) 情報暗号化復号化方法および情報暗号化復号化装置
JP5038015B2 (ja) 画像形成システム、画像形成装置、画像形成方法、画像形成プログラム及び記録媒体
CN113642009A (zh) 基于区块链的打印方法、装置、计算机设备和存储介质
JP4475576B2 (ja) ネットワーク印刷システム、印刷データ授受方法およびサーバコンピュータ用プログラム
JP7086163B1 (ja) データ処理システム
JP2006011916A (ja) 編集物のネットワーク校正方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060130

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060404

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060602

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060926

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061124

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20061201

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070417

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070608

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070709

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

Free format text: PAYMENT UNTIL: 20100713

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110713

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120713

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120713

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130713

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees