"複数のユーザに電子書籍を閲覧させる電子書籍閲覧システムであって、個々のユーザがそれぞれ電子書籍の閲覧に利用する個々の端末装置と、これら各端末装置に対して接続可能なサーバ装置と、を備え、前記サーバ装置は、個々のユーザに対してユーザ管理識別コードUMIDを生成し、これを格納するユーザ登録部と、特定のユーザのユーザ管理識別コードUMIDと前記特定のユーザが利用する特定の端末装置の端末識別コードDIDとについて、ADID=UMIDXORDIDなる排他的論理和演算を行うことにより、前記特定の端末装置についての端末活性化コードADIDを生成する端末登録部と、前記特定の端末装置に対して、前記端末活性化コードADIDを送信する端末活性化部と、提供対象となる特定の電子書籍の書籍データDOCに対して固有の暗号化キーコードKEYを生成し、前記書籍データDOCを前記固有の暗号化キーコードKEYを用いて暗号化し、暗号化データDOCを生成する暗号化処理部と、前記特定のユーザのユーザ管理識別コードUMIDと前記固有の暗号化キーコードKEYとについて、L=UMIDXORKEYなる排他的論理和演算を行うことにより、前記特定の電子書籍についてのライセンスコードLを生成するライセンス生成部と、前記特定のユーザが利用する端末装置に対して、前記暗号化データDOCおよび前記ライセンスコードLを送信するデータ送信部と、を有し、前記個々の端末装置は、前記端末識別コードDIDを格納する端末識別コード格納部と、前記端末活性化部から送信されてきた前記端末活性化コードADIDを受信し、これを格納する端末活性化コード格納部と、前記データ送信部から送信されてきた個々の電子書籍についての暗号化データDOCおよびライセンスコードLを受信し、これを格納するデータ格納部と、前記データ格納部に格納されている閲覧対象書籍についてのライセンスコードLと前記端末活性化コード格納部に格納されている端末活性化コードADIDとについて、M=LXORADIDなる排他的論理和演算を行うことにより中間コードMを求め、更に、この中間コードMと前記端末識別コード格納部に格納されている端末識別コードDIDとについて、KEY=MXORDIDなる排他的論理和演算を行うことにより暗号化キーコードKEYを復元するキー復元部と、前記データ格納部に格納されている閲覧対象書籍についての暗号化データDOCに対して、復元された暗号化キーコードKEYを用いた復号化処理を行うことにより、元の書籍データDOCを生成する復号化処理部と、ユーザによる閲覧対象書籍の指定指示を、前記キー復元部および前記復号化処理部に伝達し、復号化された書籍データDOCに基づいて、閲覧対象書籍の所定部分を画面上に表示する書籍表示部と、を有することを特徴とする電子書籍閲覧システム。請求項1に記載の電子書籍閲覧システムにおいて、端末活性化部が、端末活性化コード格納部に対して読出指示を与える機能を有し、端末活性化コード格納部が、前記読出指示に応じて、端末識別コード格納部から端末識別コードDIDを読み出し、これを前記端末活性化部に送信する機能を有し、端末活性化部が、前記端末活性化コード格納部から送信されてきた端末識別コードDIDを端末登録部に与えることを特徴とする電子書籍閲覧システム。請求項1または2に記載の電子書籍閲覧システムにおいて、個々の端末装置とサーバ装置とが、ネットワークを介して接続可能となるように構成されており、サーバ装置は、前記ネットワークを介して端末装置にWebページを提供するとともに、このWebページを利用して端末装置からの入力を受け付ける機能をもったWebページ提供部を更に有し、個々の端末装置は、前記Webページを閲覧するとともに、前記Webページを利用してサーバ装置に対する入力を行う機能をもったWebページ閲覧部を更に有し、サーバ装置が、前記Webページ提供部が受け付けた入力に基づいて所定の処理を実行する機能を有することを特徴とする電子書籍閲覧システム。請求項3に記載の電子書籍閲覧システムにおいて、ユーザ登録部が、前記Webページ提供部が受け付けた入力に基づいてユーザ管理識別コードUMIDを生成する処理を行い、端末登録部が、前記Webページ提供部が受け付けた入力に基づいて端末活性化コードADIDを生成する処理を行い、暗号化処理部が、前記Webページ提供部が受け付けた入力に基づいて提供対象となる電子書籍を特定し、ライセンス生成部が、前記Webページ提供部が受け付けた入力に基づいてユーザを特定し、データ送信部が、前記Webページ提供部が受け付けた入力に基づいて送信先を特定することを特徴とする電子書籍閲覧システム。請求項4に記載の電子書籍閲覧システムにおいて、ユーザ登録部が、個々のユーザについて、ユーザ管理識別コードUMIDとともに、アカウントACCおよびパスワードPASSを格納する機能を有し、端末装置からWebページ提供部に対してアクセスがあった場合に、前記アカウントACCおよび前記パスワードPASSを利用して、アクセス元のユーザの認証を行うことを特徴とする電子書籍閲覧システム。請求項1~5のいずれかに記載の電子書籍閲覧システムにおいて、端末登録部が、同一のユーザ管理識別コードUMIDに対して、n個nは所定の自然数の端末識別コードDIDをそれぞれ対応させたn通りの組み合わせについて、それぞれ端末活性化コードADIDを生成する機能を有し、n1個目の端末識別コードDIDとの組み合わせについては、端末活性化コードADIDの生成を拒絶することを特徴とする電子書籍閲覧システム。請求項1~6のいずれかに記載の電子書籍閲覧システムにおいて、端末装置が、データ格納部に格納されている所定の電子書籍についての暗号化データDOCおよびライセンスコードLを外部に読み出す機能と、外部から所定の電子書籍についての暗号化データDOCおよびライセンスコードLが与えられたときに、これをデータ格納部に書き込む機能と、を有することを特徴とする電子書籍閲覧システム。請求項1~7のいずれかに記載の電子書籍閲覧システムにおいて、物理的な書籍の各ページの情報をスキャンして電子書籍の書籍データDOCを作成するスキャン装置を更に備え、暗号化処理部が、前記スキャン装置によって作成された書籍データDOCに基づいて暗号化データDOCを生成することを特徴とする電子書籍閲覧システム。請求項8に記載の電子書籍閲覧システムにおいて、スキャン装置とサーバ装置との間を中継するとともに、端末装置とサーバ装置との間を中継する機能をもった中継装置を更に備え、スキャン装置が作成した書籍データDOCが前記中継装置を経由してサーバ装置へ送信されるようにし、ユーザ登録部が、前記中継装置からの入力指示に基づいてユーザ管理識別コードUMIDを生成する機能を有し、端末活性化部が、前記中継装置を経由して端末活性化コードADIDを端末装置に送信する機能を有することを特徴とする電子書籍閲覧システム。複数のユーザが利用する個々の端末装置に対して、電子書籍のデータを暗号化された状態で提供する電子書籍データ提供用のサーバ装置であって、個々のユーザに対してユーザ管理識別コードUMIDを生成し、これを格納するユーザ登録部と、特定のユーザのユーザ管理識別コードUMIDと前記特定のユーザが利用する特定の端末装置の端末識別コードDIDとについて、ADID=UMIDXORDIDなる排他的論理和演算を行うことにより、前記特定の端末装置についての端末活性化コードADIDを生成する端末登録部と、前記特定の端末装置に対して、前記端末活性化コードADIDを送信する端末活性化部と、提供対象となる特定の電子書籍の書籍データDOCに対して固有の暗号化キーコードKEYを生成し、前記書籍データDOCを前記固有の暗号化キーコードKEYを用いて暗号化し、暗号化データDOCを生成する暗号化処理部と、前記特定のユーザのユーザ管理識別コードUMIDと前記固有の暗号化キーコードKEYとについて、L=UMIDXORKEYなる排他的論理和演算を行うことにより、前記特定の電子書籍についてのライセンスコードLを生成するライセンス生成部と、前記特定のユーザが利用する端末装置に対して、前記暗号化データDOCおよび前記ライセンスコードLを送信するデータ送信部と、を備えることを特徴とする電子書籍データ提供用のサーバ装置。請求項10に記載の電子書籍データ提供用のサーバ装置としてコンピュータを機能させるためのプログラム。サーバ装置から暗号化された状態で提供された電子書籍のデータに基づいて、電子書籍を閲覧する電子書籍閲覧用の端末装置であって、端末識別コードDIDを格納する端末識別コード格納部と、前記サーバ装置から送信されてきた端末活性化コードADIDを受信し、これを格納する端末活性化コード格納部と、前記サーバ装置から送信されてきた所定の電子書籍についての暗号化データDOCおよびライセンスコードLを受信し、これを格納するデータ格納部と、前記データ格納部に格納されている閲覧対象書籍についてのライセンスコードLと前記端末活性化コード格納部に格納されている端末活性化コードADIDとについて、M=LXORADIDなる排他的論理和演算を行うことにより中間コードMを求め、更に、この中間コードMと前記端末識別コード格納部に格納されている端末識別コードDIDとについて、KEY=MXORDIDなる排他的論理和演算を行うことにより暗号化キーコードKEYを復元するキー復元部と、前記データ格納部に格納されている閲覧対象書籍についての暗号化データDOCに対して、復元された暗号化キーコードKEYを用いた復号化処理を行うことにより、元の書籍データDOCを生成する復号化処理部と、ユーザによる閲覧対象書籍の指定指示を、前記キー復元部および前記復号化処理部に伝達し、復号化された書籍データDOCに基づいて、閲覧対象書籍の所定部分を画面上に表示する書籍表示部と、を備え、前記端末活性化コードADIDは、所定のユーザ管理識別コードUMIDと前記端末識別コードDIDとについて、ADID=UMIDXORDIDなる排他的論理和演算を行うことにより得られたコードであり、前記暗号化データDOCは、前記書籍表示部が表示可能な書籍データDOCに対して、所定の暗号化キーコードKEYを用いて暗号化されたデータであり、前記ライセンスコードLは、前記ユーザ管理識別コードUMIDと前記暗号化キーコードKEYとについて、L=UMIDXORKEYなる排他的論理和演算を行うことにより得られたコードであることを特徴とする電子書籍閲覧用の端末装置。請求項12に記載の電子書籍閲覧用の端末装置としてコンピュータを機能させるためのプログラム。サーバ装置から、個々のユーザが利用する各端末装置に対して、暗号化された状態で電子書籍のデータを提供し、これを端末装置が復号化して表示する電子書籍提供方法であって、前記サーバ装置が、個々のユーザに対してユーザ管理識別コードUMIDを生成し、これを格納するユーザ登録段階と、前記サーバ装置が、特定のユーザのユーザ管理識別コードUMIDと前記特定のユーザが利用する特定の端末装置に格納されている端末識別コードDIDとについて、ADID=UMIDXORDIDなる排他的論理和演算を行うことにより、前記特定の端末装置についての端末活性化コードADIDを生成する端末登録段階と、前記特定の端末装置が、前記サーバ装置が生成した前記端末活性化コードADIDを格納する端末活性化コード格納段階と、前記サーバ装置が、提供対象となる特定の電子書籍の書籍データDOCに対して固有の暗号化キーコードKEYを生成し、前記書籍データDOCを前記固有の暗号化キーコードKEYを用いて暗号化し、暗号化データDOCを生成する暗号化処理段階と、前記サーバ装置が、前記特定のユーザのユーザ管理識別コードUMIDと前記固有の暗号化キーコードKEYとについて、L=UMIDXORKEYなる排他的論理和演算を行うことにより、前記特定の電子書籍についてのライセンスコードLを生成するライセンス生成段階と、前記サーバ装置が、前記特定のユーザが利用する端末装置に対して、前記暗号化データDOCおよび前記ライセンスコードLを送信するデータ送信段階と、前記特定の端末装置が、前記サーバ装置から送信されてきた前記ライセンスコードLと前記端末活性化コードADIDとについて、M=LXORADIDなる排他的論理和演算を行うことにより中間コードMを求め、更に、この中間コードMと前記端末識別コードDIDとについて、KEY=MXORDIDなる排他的論理和演算を行うことにより前記暗号化キーコードKEYを復元するキー復元段階と、前記特定の端末装置が、前記サーバ装置から送信されてきた前記暗号化データDOCに対して、復元された暗号化キーコードKEYを用いた復号化処理を行うことにより、元の書籍データDOCを生成する復号化処理段階と、前記特定の端末装置が、復号化された書籍データDOCに基づいて、閲覧対象書籍の所定部分を画面上に表示する書籍表示段階と、を有することを特徴とする電子書籍提供方法。電子書籍を提供するビジネスでは、上述したとおり、適切な著作権管理が不可欠である。ただ、著作権者の立場からは、権利侵害となる不法行為をできるだけ防止できるように厳しい運用が求められるのに対して、ユーザの立場からは、利便性が損なわれないような柔軟な運用が求められるのが実情である。ここ数年来、ノートパソコン、タブレット型電子端末、スマートフォンなど、様々な電子機器の普及により、電子書籍の閲覧に利用できる端末装置の種類は急速に増加している。したがって、今後は、1人のユーザが複数の端末装置を所有する環境が一般化してくるものと予想される。このような環境下では、ユーザは、自己が所有する複数の端末装置間で書籍データを自由に複製することができ、しかも、いずれの端末装置においても電子書籍の閲覧が可能になるような運用を望むであろう。しかしながら、従来提案されている電子書籍閲覧システムでは、このようなユーザの希望に合致した著作権管理の運用を行いつつ、不正利用を防止することは困難である。たとえば、任意の端末装置で閲覧が可能な態様で書籍データを提供した場合、正規のユーザは自己が所有する任意の端末装置を利用して閲覧を行うことが可能になるため利便性は向上するものの、不正利用のリスクは高まることになる。これに対して、特定の端末装置においてのみ閲覧が可能となるような形態で書籍データを提供した場合、正規のユーザは、同一の書籍であっても、自己が所有する個々の端末装置ごとにそれぞれ別個の書籍データを入手する必要があり利便性の低下は避けられない。そこで本発明は、十分な著作権管理を行いつつ、複数の端末装置間で使い回しが可能な態様で、ユーザに電子書籍を提供し閲覧させることが可能な電子書籍閲覧システムを提供することを目的とする。本発明の第1の態様は、複数のユーザに電子書籍を閲覧させる電子書籍閲覧システムにおいて、個々のユーザがそれぞれ電子書籍の閲覧に利用する個々の端末装置と、これら各端末装置に対して接続可能なサーバ装置と、を設け、サーバ装置には、個々のユーザに対してユーザ管理識別コードUMIDを生成し、これを格納するユーザ登録部と、特定のユーザのユーザ管理識別コードUMIDとこの特定のユーザが利用する特定の端末装置の端末識別コードDIDとについて、ADID=UMIDXORDIDなる排他的論理和演算を行うことにより、上記特定の端末装置についての端末活性化コードADIDを生成する端末登録部と、上記特定の端末装置に対して、上記端末活性化コードADIDを送信する端末活性化部と、提供対象となる特定の電子書籍の書籍データDOCに対して固有の暗号化キーコードKEYを生成し、この書籍データDOCを上記固有の暗号化キーコードKEYを用いて暗号化し、暗号化データDOCを生成する暗号化処理部と、上記特定のユーザのユーザ管理識別コードUMIDと上記固有の暗号化キーコードKEYとについて、L=UMIDXORKEYなる排他的論理和演算を行うことにより、上記特定の電子書籍についてのライセンスコードLを生成するライセンス生成部と、上記特定のユーザが利用する端末装置に対して、上記暗号化データDOCおよび上記ライセンスコードLを送信するデータ送信部と、を設けるようにし、個々の端末装置には、端末識別コードDIDを格納する端末識別コード格納部と、端末活性化部から送信されてきた端末活性化コードADIDを受信し、これを格納する端末活性化コード格納部と、データ送信部から送信されてきた個々の電子書籍についての暗号化データDOCおよびライセンスコードLを受信し、これを格納するデータ格納部と、データ格納部に格納されている閲覧対象書籍についてのライセンスコードLと端末活性化コード格納部に格納されている端末活性化コードADIDとについて、M=LXORADIDなる排他的論理和演算を行うことにより中間コードMを求め、更に、この中間コードMと端末識別コード格納部に格納されている端末識別コードDIDとについて、KEY=MXORDIDなる排他的論理和演算を行うことにより暗号化キーコードKEYを復元するキー復元部と、データ格納部に格納されている閲覧対象書籍についての暗号化データDOCに対して、復元された暗号化キーコードKEYを用いた復号化処理を行うことにより、元の書籍データDOCを生成する復号化処理部と、ユーザによる閲覧対象書籍の指定指示を、キー復元部および復号化処理部に伝達し、復号化された書籍データDOCに基づいて、閲覧対象書籍の所定部分を画面上に表示する書籍表示部と、を設けるようにしたものである。本発明の第2の態様は、上述した第1の態様に係る電子書籍閲覧システムにおいて、端末活性化部が、端末活性化コード格納部に対して読出指示を与える機能を有し、端末活性化コード格納部が、この読出指示に応じて、端末識別コード格納部から端末識別コードDIDを読み出し、これを端末活性化部に送信する機能を有し、端末活性化部が、端末活性化コード格納部から送信されてきた端末識別コードDIDを端末登録部に与えるようにしたものである。本発明の第3の態様は、上述した第1または第2の態様に係る電子書籍閲覧システムにおいて、個々の端末装置とサーバ装置とが、ネットワークを介して接続可能となるように構成されており、サーバ装置は、ネットワークを介して端末装置にWebページを提供するとともに、このWebページを利用して端末装置からの入力を受け付ける機能をもったWebページ提供部を更に有し、個々の端末装置は、Webページを閲覧するとともに、Webページを利用してサーバ装置に対する入力を行う機能をもったWebページ閲覧部を更に有し、サーバ装置が、Webページ提供部が受け付けた入力に基づいて所定の処理を実行する機能を有するようにしたものである。本発明の第4の態様は、上述した第3の態様に係る電子書籍閲覧システムにおいて、ユーザ登録部が、Webページ提供部が受け付けた入力に基づいてユーザ管理識別コードUMIDを生成する処理を行い、端末登録部が、Webページ提供部が受け付けた入力に基づいて端末活性化コードADIDを生成する処理を行い、暗号化処理部が、Webページ提供部が受け付けた入力に基づいて提供対象となる電子書籍を特定し、ライセンス生成部が、Webページ提供部が受け付けた入力に基づいてユーザを特定し、データ送信部が、Webページ提供部が受け付けた入力に基づいて送信先を特定するようにしたものである。本発明の第5の態様は、上述した第4の態様に係る電子書籍閲覧システムにおいて、ユーザ登録部が、個々のユーザについて、ユーザ管理識別コードUMIDとともに、アカウントACCおよびパスワードPASSを格納する機能を有し、端末装置からWebページ提供部に対してアクセスがあった場合に、アカウントACCおよびパスワードPASSを利用して、アクセス元のユーザの認証を行うようにしたものである。本発明の第6の態様は、上述した第1~第5の態様に係る電子書籍閲覧システムにおいて、端末登録部が、同一のユーザ管理識別コードUMIDに対して、n個nは所定の自然数の端末識別コードDIDをそれぞれ対応させたn通りの組み合わせについて、それぞれ端末活性化コードADIDを生成する機能を有し、n1個目の端末識別コードDIDとの組み合わせについては、端末活性化コードADIDの生成を拒絶するようにしたものである。本発明の第7の態様は、上述した第1~第6の態様に係る電子書籍閲覧システムにおいて、端末装置が、データ格納部に格納されている所定の電子書籍についての暗号化データDOCおよびライセンスコードLを外部に読み出す機能と、外部から所定の電子書籍についての暗号化データDOCおよびライセンスコードLが与えられたときに、これをデータ格納部に書き込む機能と、を有するようにしたものである。本発明の第8の態様は、上述した第1~第7の態様に係る電子書籍閲覧システムにおいて、物理的な書籍の各ページの情報をスキャンして電子書籍の書籍データDOCを作成するスキャン装置を更に設け、暗号化処理部が、スキャン装置によって作成された書籍データDOCに基づいて暗号化データDOCを生成するようにしたものである。本発明の第9の態様は、上述した第8の態様に係る電子書籍閲覧システムにおいて、スキャン装置とサーバ装置との間を中継するとともに、端末装置とサーバ装置との間を中継する機能をもった中継装置を更に設け、スキャン装置が作成した書籍データDOCが中継装置を経由してサーバ装置へ送信されるようにし、ユーザ登録部が、中継装置からの入力指示に基づいてユーザ管理識別コードUMIDを生成する機能を有し、端末活性化部が、中継装置を経由して端末活性化コードADIDを端末装置に送信する機能を有するようにしたものである。本発明の第10の態様は、複数のユーザが利用する個々の端末装置に対して、電子書籍のデータを暗号化された状態で提供する電子書籍データ提供用のサーバ装置において、個々のユーザに対してユーザ管理識別コードUMIDを生成し、これを格納するユーザ登録部と、特定のユーザのユーザ管理識別コードUMIDとこの特定のユーザが利用する特定の端末装置の端末識別コードDIDとについて、ADID=UMIDXORDIDなる排他的論理和演算を行うことにより、上記特定の端末装置についての端末活性化コードADIDを生成する端末登録部と、上記特定の端末装置に対して、上記端末活性化コードADIDを送信する端末活性化部と、提供対象となる特定の電子書籍の書籍データDOCに対して固有の暗号化キーコードKEYを生成し、上記書籍データDOCを上記固有の暗号化キーコードKEYを用いて暗号化し、暗号化データDOCを生成する暗号化処理部と、上記特定のユーザのユーザ管理識別コードUMIDと上記固有の暗号化キーコードKEYとについて、L=UMIDXORKEYなる排他的論理和演算を行うことにより、上記特定の電子書籍についてのライセンスコードLを生成するライセンス生成部と、上記特定のユーザが利用する端末装置に対して、上記暗号化データDOCおよび上記ライセンスコードLを送信するデータ送信部と、を設けたものである。本発明の第11の態様は、上述した第10の態様に係る電子書籍データ提供用のサーバ装置を、コンピュータに専用プログラムを組み込むことにより構成したものである。本発明の第12の態様は、サーバ装置から暗号化された状態で提供された電子書籍のデータに基づいて、電子書籍を閲覧する電子書籍閲覧用の端末装置において、端末識別コードDIDを格納する端末識別コード格納部と、サーバ装置から送信されてきた端末活性化コードADIDを受信し、これを格納する端末活性化コード格納部と、サーバ装置から送信されてきた所定の電子書籍についての暗号化データDOCおよびライセンスコードLを受信し、これを格納するデータ格納部と、データ格納部に格納されている閲覧対象書籍についてのライセンスコードLと端末活性化コード格納部に格納されている端末活性化コードADIDとについて、M=LXORADIDなる排他的論理和演算を行うことにより中間コードMを求め、更に、この中間コードMと端末識別コード格納部に格納されている端末識別コードDIDとについて、KEY=MXORDIDなる排他的論理和演算を行うことにより暗号化キーコードKEYを復元するキー復元部と、データ格納部に格納されている閲覧対象書籍についての暗号化データDOCに対して、復元された暗号化キーコードKEYを用いた復号化処理を行うことにより、元の書籍データDOCを生成する復号化処理部と、ユーザによる閲覧対象書籍の指定指示を、キー復元部および復号化処理部に伝達し、復号化された書籍データDOCに基づいて、閲覧対象書籍の所定部分を画面上に表示する書籍表示部と、を設けるようにし、端末活性化コードADIDは、所定のユーザ管理識別コードUMIDと端末識別コードDIDとについて、ADID=UMIDXORDIDなる排他的論理和演算を行うことにより得られたコードであり、暗号化データDOCは、書籍表示部が表示可能な書籍データDOCに対して、所定の暗号化キーコードKEYを用いて暗号化されたデータであり、ライセンスコードLは、ユーザ管理識別コードUMIDと暗号化キーコードKEYとについて、L=UMIDXORKEYなる排他的論理和演算を行うことにより得られたコードであるようにしたものである。本発明の第13の態様は、上述した第12の態様に係る電子書籍閲覧用の端末装置を、コンピュータに専用プログラムを組み込むことにより構成したものである。本発明の第14の態様は、サーバ装置から、個々のユーザが利用する各端末装置に対して、暗号化された状態で電子書籍のデータを提供し、これを端末装置が復号化して表示する電子書籍提供方法において、サーバ装置が、個々のユーザに対してユーザ管理識別コードUMIDを生成し、これを格納するユーザ登録段階と、サーバ装置が、特定のユーザのユーザ管理識別コードUMIDとこの特定のユーザが利用する特定の端末装置に格納されている端末識別コードDIDとについて、ADID=UMIDXORDIDなる排他的論理和演算を行うことにより、上記特定の端末装置についての端末活性化コードADIDを生成する端末登録段階と、上記特定の端末装置が、サーバ装置が生成した端末活性化コードADIDを格納する端末活性化コード格納段階と、サーバ装置が、提供対象となる特定の電子書籍の書籍データDOCに対して固有の暗号化キーコードKEYを生成し、書籍データDOCを固有の暗号化キーコードKEYを用いて暗号化し、暗号化データDOCを生成する暗号化処理段階と、サーバ装置が、特定のユーザのユーザ管理識別コードUMIDと固有の暗号化キーコードKEYとについて、L=UMIDXORKEYなる排他的論理和演算を行うことにより、特定の電子書籍についてのライセンスコードLを生成するライセンス生成段階と、サーバ装置が、特定のユーザが利用する端末装置に対して、暗号化データDOCおよびライセンスコードLを送信するデータ送信段階と、上記特定の端末装置が、サーバ装置から送信されてきたライセンスコードLと端末活性化コードADIDとについて、M=LXORADIDなる排他的論理和演算を行うことにより中間コードMを求め、更に、この中間コードMと端末識別コードDIDとについて、KEY=MXORDIDなる排他的論理和演算を行うことにより暗号化キーコードKEYを復元するキー復元段階と、上記特定の端末装置が、サーバ装置から送信されてきた暗号化データDOCに対して、復元された暗号化キーコードKEYを用いた復号化処理を行うことにより、元の書籍データDOCを生成する復号化処理段階と、上記特定の端末装置が、復号化された書籍データDOCに基づいて、閲覧対象書籍の所定部分を画面上に表示する書籍表示段階と、を行うようにしたものである。本発明に係る電子書籍閲覧システムによれば、個々のユーザが予めユーザ登録と端末登録を行っておけば、登録したいずれの端末装置においても、暗号化データおよびライセンスコードに基づいて電子書籍の閲覧が可能になる。したがって、登録した複数の端末装置間でデータの使い回しが可能になり、ユーザの利便性は向上する。しかも、当該暗号化データおよびライセンスコードを、未登録の端末装置や他のユーザが登録した端末装置に複製したとしても、これらの端末装置での閲覧はできないため、十分な著作権管理を行うことができる。すなわち、登録した複数の端末装置間でのみ使い回しが可能な書籍データが提供されることになる。かくして、十分な著作権管理を行いつつ、複数の端末装置間で使い回しが可能な態様で、ユーザに電子書籍を提供し閲覧させることが可能になる。以下、本発明を図示する実施形態に基づいて説明する。<<<§1.基本的な実施形態の構成>>>図1は、本発明の基本的な実施形態に係る電子書籍閲覧システムの構成を示すブロック図である。図に一点鎖線で囲って示すとおり、この電子書籍閲覧システムは、サーバ装置100と端末装置200によって構成され、複数のユーザに電子書籍を閲覧させる機能を果たす。図に矩形のブロックとして示されているように、サーバ装置100および端末装置200は、複数の機能ブロックの集合体から構成される。ここで、各ブロック内に円もしくは楕円で示す要素は、当該ブロック内で生成されるデータもしくは当該ブロック内に格納されるデータを示している。図1には、便宜上、1台の端末装置200のみが示されているが、実際には、個々のユーザごとに、それぞれ1台もしくは複数台の端末装置が用意される。これらの各端末装置は、ネットワークNを介してサーバ装置100に対して接続することができる。ネットワークNは、LANなどの限定的なネットワークであってもかまわないが、実用上はインターネットを利用するのが好ましい。サーバ装置100は、ネットワークNを介して、各端末装置200に対して電子書籍を提供する機能を果たす。<1-1サーバ装置100の構成>サーバ装置100は、図示のとおり、ユーザ登録部110、端末登録部120、暗号化処理部130、ライセンス生成部140、Webページ提供部150、端末活性化部160、データ送信部170によって構成されている。実際には、これらの各構成要素は、汎用のサーバ用コンピュータに専用のプログラムを組み込むことによって構成することができる。ユーザ登録部110は、個々のユーザについての登録処理を行う機能を有する。具体的には、個々のユーザについて、まず、アカウントACCおよびパスワードPASSを定め、これを格納する。アカウントACCおよびパスワードPASSは、文字や数字コードからなるデータであり、ユーザが希望する任意のものを採用してもよいし、ユーザ登録部110が所定のアルゴリズムで自動生成し、これをユーザに通知するようにしてもよい。アカウントACCについては、個々のユーザごとにユニークなものを用いるようにし、重複しないようにする。本発明では、更に、個々のユーザに対してユーザ管理識別コードUMIDUserManagementIDが付与される。ユーザ登録部110は、所定のアルゴリズムに基づいて、個々のユーザに対してユーザ管理識別コードUMIDを自動生成し、これを格納する。ユーザ管理識別コードUMIDも、個々のユーザごとにユニークなものになるようにする。したがって、ユーザ管理識別コードUMIDの自動生成には、同一のコードが重複して生成されないようなアルゴリズムを採用する必要がある。結局、ユーザ登録部110内には、個々のユーザについて、アカウントACC,パスワードPASS,ユーザ管理識別コードUMIDが相互に紐付けされて格納される。ここで、アカウントACCおよびパスワードPASSは、ユーザに通知されるが、ユーザ管理識別コードUMIDは、ユーザには非通知であり、ユーザ登録部110内に秘密状態で格納される。これは、ユーザ管理識別コードUMIDが外部に知られると、本システムに対する不正利用が行われる可能性があるためである。ユーザ登録部110が生成したユーザ管理識別コードUMIDは、端末登録部120およびライセンス生成部140に与えられ、後述する各処理に利用される。一方、端末登録部120は、個々のユーザについて、それぞれ1台もしくは複数台の端末装置を登録する処理を行う。ユーザが端末装置の登録処理を行うには、ユーザ登録部110におけるユーザ登録処理が既に完了し、ユーザ管理識別コードUMIDが生成されていることが前提となる。具体的には、特定のユーザが利用する特定の端末装置についての登録処理は、当該特定のユーザのユーザ管理識別コードUMIDと当該特定のユーザが利用する特定の端末装置の端末識別コードDIDDeviceIDとについて、ADID=UMIDXORDIDなる排他的論理和演算を行うことにより、当該特定の端末装置についての端末活性化コードADIDActivatingDeviceIDを生成することによって行われる。ここで、端末識別コードDIDは、登録対象となる特定の端末装置に固有の識別コードであり、少なくとも本システムに登録されるすべての端末装置に関してユニークになるようなコードを用いるようにする。具体的には、各端末装置に内蔵されているCPUの製品番号シリアル番号や、各端末装置に内蔵されているネットワーク接続機器の固有番号MACアドレスなどを端末識別コードDIDとして利用すればよい。このように、端末識別コードDIDは、個々の端末装置に内蔵されている固有のコードであるから、後述するように、登録対象となる端末装置から読み出して利用することになる。一方、ユーザ管理識別コードUMIDは、ユーザ登録部110に格納されているものをそのまま利用すればよい。結局、端末登録部120は、ユーザ登録部110に格納されている特定のユーザのユーザ管理識別コードUMIDと当該特定のユーザが利用する特定の端末装置から読み出された端末識別コードDIDとの排他的論理和演算値として、当該特定の端末装置についての端末活性化コードADIDを生成する処理を行うことになる。後述するように、この端末活性化コードADIDは、当該特定の端末装置に書き込まれる。なお、端末活性化コードADIDは、端末装置に書き込まれた後は、必ずしもサーバ装置100内に保存しておく必要はないが、実用上は、端末装置への再書き込みなどの便宜を考慮し、端末登録部120に保存しておくのが好ましい。また、後述するように、1ユーザについて登録可能な端末装置の台数に制限を加える運用を採る場合には、端末登録部120が端末活性化コードADIDを生成するたびに、生成に用いたユーザ管理識別コードUMIDおよび端末識別コードDIDの組み合わせを端末登録部120に保存しておくようにする。暗号化処理部130は、特定のユーザへの提供対象となる特定の電子書籍の書籍データDOCに対して固有の暗号化キーコードKEYを生成し、当該書籍データDOCを当該固有の暗号化キーコードKEYを用いて、所定の暗号化アルゴリズムに基づく演算により暗号化し、暗号化データDOCを生成する機能を果たす。後述するように、こうして暗号化された暗号化データDOCは、当該特定のユーザが利用する端末装置へと提供され、この端末装置内で復号化される。復号化には、上記暗号化アルゴリズムに対応する所定の復号化アルゴリズムに基づく復号化演算を行うことになるが、当該復号化演算には、上記暗号化キーコードKEYが必要になり、暗号化キーコードKEYがなければ復号化を行うことはできない。暗号化処理部130は、個々のユーザへの提供対象となる書籍データDOCごとに固有の暗号化キーコードKEYを生成する。したがって、同一のユーザに提供する書籍データであっても、異なる電子書籍の書籍データについては異なる暗号化キーコードKEYを生成し、同一の書籍データであっても、異なるユーザに提供する書籍データについては異なる暗号化キーコードKEYを生成する。たとえば、乱数を用いて、書籍データDOCごとに任意の暗号化キーコードKEYを生成すればよい。なお、過去に生成した暗号化キーコードKEYと同一のコードが再度生成されることになっても、実用上は大きな支障は生じないが、不正利用を防止する観点からは、重複した暗号化キーコードKEYの生成はできるだけ避けるのが好ましい。このような暗号化キーコードKEYを用いた暗号化処理は、広く利用されている一般的な技術であるため、ここでは、この暗号化処理自体についての詳しい説明は省略する。暗号化処理部130で生成された暗号化キーコードKEYはライセンス生成部140に与えられ、暗号化データDOCは、データ送信部170に与えられる。暗号化キーコードKEYおよび暗号化データDOCは、必ずしも暗号化処理部130内に保存しておく必要はないが、電子書籍の提供履歴を残したい場合は、提供先となるユーザのユーザ管理識別コードUMIDとともに、暗号化キーコードKEYや暗号化データDOCを暗号化処理部130に保存蓄積するようにしてもよい。ライセンス生成部140は、暗号化処理部130が特定の書籍データDOCに対して暗号化処理を行い、暗号化データDOCを生成するたびに、当該暗号化データDOCに対応するライセンスコードLを生成する機能を果たす。ライセンスコードLは、当該暗号化データDOCの提供先となる特定のユーザのユーザ管理識別コードUMIDと、暗号化処理に用いた固有の暗号化キーコードKEYとについて、L=UMIDXORKEYなる排他的論理和演算を行うことにより得られる。ライセンス生成部140は、ユーザ登録部110に格納されている当該特定のユーザのユーザ管理識別コードUMIDと、暗号化処理部130から与えられた暗号化キーコードKEYとに基づく排他的論理和演算により、ライセンスコードLを生成し、これをデータ送信部170に与える。暗号化処理部130が生成した暗号化データDOCとライセンス生成部140が生成したライセンスコードLとは1対1に対応し、両者が、提供すべき電子書籍についての1組のデータとして端末装置200に送信される。ここに示す実施形態では、サーバ装置100と個々の端末装置200とが、ネットワークNインターネットを介して接続可能となるように構成されている。Webページ提供部150は、このネットワークNを介して端末装置200にWebページを提供するとともに、このWebページを利用して端末装置200からの入力を受け付ける機能を果たす。図に示すWDは、サーバ装置100と端末装置200との間でやりとりされるWeb通信データを示している。サーバ装置100の各構成要素は、このWebページ提供部150がWeb通信データWDとして受け付けた入力に基づいて所定の処理を実行することになる。図1において、Webページ提供部150から他の各ブロックへ伸びている矢印は、Webページ提供部150が受け付けた入力信号の流れを示している。たとえば、ユーザ登録部110は、Webページ提供部150が受け付けた入力に基づいて、新規登録を求めるユーザについて、アカウントACCおよびパスワードPASSを設定するとともに、ユーザ管理識別コードUMIDを生成する処理を行う。また、端末登録部120および端末活性化部160は、Webページ提供部150が受け付けた入力に基づいて端末活性化コードADIDを生成するために必要な処理を行う。Webページ提供部150は、所望の電子書籍の提供を希望するユーザからの提供要求を受け付ける機能も有しており、暗号化処理部130は、Webページ提供部が受け付けたこのような提供要求に基づいて提供対象となる電子書籍を特定し、当該電子書籍についての書籍データDOCを所定の格納場所図示されていない電子書籍の格納場所から取り出し、暗号化処理を行うことになる。また、ライセンス生成部140は、Webページ提供部150が受け付けた提供要求に基づいて、要求元のユーザを特定し、当該ユーザについてのユーザ管理識別コードUMIDをユーザ登録部110から読み出し、ライセンスLを生成する処理を行う。なお、前述したとおり、ユーザ登録部110には、登録済みのユーザについて、ユーザ管理識別コードUMIDとともにアカウントACC,パスワードPASSが格納されている。そこで、端末装置200からWebページ提供部150に対してアクセスがあった場合、ユーザ登録部110は、アカウントACCおよびパスワードPASSを利用して、アクセス元のユーザの認証を行う機能を有している。すなわち、登録ユーザは、Webページ提供部150に対するアクセスを開始する際に、アカウントACCおよびパスワードPASSの入力が要求され、ユーザ登録部110によって、入力されたアカウントACCおよびパスワードPASSの正当性が確認された場合にのみ、Webページ提供部150は、当該ユーザからの要求を正当なものとして取り扱うことになる。図1において、ユーザ登録部110とWebページ提供部150との間に双方向の矢印が描かれているのは、このようなユーザ認証のための情報のやりとりが行われることを示すためである。端末活性化部160は、端末登録部120による登録処理を補助する機能を有する。すなわち、既にユーザ登録を完了したユーザが、特定の端末装置を用いてWebページ提供部150に対してアクセスを行い、当該特定の端末装置についての登録要求を行った場合、Webページ提供部150から当該登録要求が端末活性化部160に伝えられ、端末活性化部160は、現在アクセス中の端末装置200の登録に必要な補助処理を行う。具体的には、まず、端末活性化部160は、ネットワークNを介して、現在アクセス中の端末装置200と交信し、端末活性化コード格納部220に対して、端末識別コードDIDを要求する読出指示を与える。後述するように、端末活性化コード格納部220は、当該読出指示に応じて、端末識別コードDIDを読み出し、これを端末活性化部160に送信する。そこで、端末活性化部160は、端末活性化コード格納部220から送信されてきた端末識別コードDIDを端末登録部120に与える。前述したとおり、端末登録部120は、この端末識別コードDIDとユーザ管理識別コードUMIDとの排他的論理和演算により、端末活性化コードADIDを生成し、これを端末活性化部160に与える処理を行う。端末活性化部160は、こうして与えられた端末活性化コードADIDを、端末活性化コード格納部220に送信する処理を行う。結局、端末活性化部160は、端末装置200から読み出された端末識別コードDIDを端末登録部120へ与え、これに応じて端末登録部120によって生成された端末活性化コードADIDを端末装置200へ返信する中継処理を行うことになる。データ送信部170は、暗号化処理部130から与えられた暗号化データDOCと、ライセンス生成部140から与えられたライセンスコードLとを、提供すべき電子書籍についての1組のデータとして、当該電子書籍の提供要求を行った端末装置200に送信する。前述したとおり、電子書籍の提供要求は、Webページ提供部150に対して行われるので、データ送信部170は、Webページ提供部150が受け付けた入力提供要求に基づいて送信先となる端末装置を特定することができる。結局、サーバ装置100は、複数のユーザが利用する個々の端末装置200に対して、電子書籍のデータを暗号化された状態で提供する電子書籍データ提供用のサーバ装置としての役割を果たし、個々のユーザに対してユーザ管理識別コードUMIDを生成し、これを格納するユーザ登録部110と、特定のユーザのユーザ管理識別コードUMIDと特定のユーザが利用する特定の端末装置の端末識別コードDIDとについて、ADID=UMIDXORDIDなる排他的論理和演算を行うことにより、特定の端末装置についての端末活性化コードADIDを生成する端末登録部120と、特定の端末装置に対して、端末活性化コードADIDを送信する端末活性化部160と、提供対象となる特定の電子書籍の書籍データDOCに対して固有の暗号化キーコードKEYを生成し、この書籍データDOCを当該固有の暗号化キーコードKEYを用いて暗号化し、暗号化データDOCを生成する暗号化処理部130と、特定のユーザのユーザ管理識別コードUMIDと固有の暗号化キーコードKEYとについて、L=UMIDXORKEYなる排他的論理和演算を行うことにより、特定の電子書籍についてのライセンスコードLを生成するライセンス生成部140と、特定のユーザが利用する端末装置200に対して、暗号化データDOCおよびライセンスコードLを送信するデータ送信部170と、ネットワークNを介して端末装置200にWebページを提供するとともに、このWebページを利用して端末装置200からの入力を受け付ける機能をもったWebページ提供部150と、を備えていることになる。<1-2端末装置200の構成>端末装置200は、個々のユーザがそれぞれ電子書籍の閲覧に利用するための装置であり、実際には、1ユーザが1台もしくは複数台の端末装置200を利用することになる。図1には、そのうちの1台の構成のみが代表として描かれている。図示のとおり、この端末装置200は、Webページ閲覧部210、端末活性化コード格納部220、データ格納部230、端末識別コード格納部240、キー復元部250、書籍表示部260、復号化処理部270によって構成されている。実際には、これらの各構成要素は、パソコン、タブレット型電子端末、スマートフォンなど、様々な汎用電子機器に専用のプログラムを組み込むことにより構成することができる。Webページ閲覧部210は、Webページ提供部150によって提供されるWebページを閲覧するとともに、このWebページを利用してサーバ装置100に対する入力を行う機能をもった構成要素である。実際には、パソコン、タブレット型電子端末、スマートフォンなどの電子機器のハードウエア構成要素と、これらに組み込まれたWebブラウザ用プログラムとによってWebページ閲覧部210を構成することができる。ユーザは、このWebブラウザを利用して、Webページ提供部150が提供するWebページを閲覧し、Webページの画面上で所定の入力操作を行うことにより、前述したようなユーザの登録処理、端末装置の登録処理、電子書籍の要求処理を行うことができる。端末識別コード格納部240は、端末識別コードDIDを格納する構成要素である。この端末識別コード格納部240は、端末装置200として利用する電子機器にもともと備わっている構成をそのまま流用することができる。既に述べたとおり、端末識別コードDIDは、個々の端末装置200に固有の識別コードであり、CPUの製品番号シリアル番号や、ネットワーク接続機器の固有番号MACアドレスなどを利用することができる。本発明を実施する場合、このような既存のコードをそのまま端末識別コードとして流用するのが好ましいが、もちろん、本発明の実施のためだけに用いる専用の固有コードを各端末装置に付与し、これを端末識別コードとして用いるようにしてもかまわない。その場合は、当該専用の固有コードの格納場所が端末識別コード格納部240として機能することになる。端末活性化コード格納部220は、端末活性化部160から与えられる読出指示に応じて、端末識別コード格納部240から端末識別コードDIDを読み出し、これを端末活性化部160に送信する機能と、端末活性化部160から送信されてきた端末活性化コードADIDを受信し、これを格納して保存する機能と、を有する構成要素である。前述したとおり、端末活性化コードADIDは、端末登録部120において端末装置を登録する際に生成するコードであるので、端末装置の登録処理を行うことによりはじめて書き込まれるコードということになる。別言すれば、この端末装置200は、端末活性化コード格納部220内に所定の端末活性化コードADIDが書き込まれた状態になってはじめて活性化される本発明に係るシステムにおいて、電子書籍の閲覧が可能な状態になる。データ格納部230は、データ送信部170から送信されてきた個々の電子書籍についての暗号化データDOCおよびライセンスコードLを受信し、これを格納する構成要素である。すなわち、サーバ装置100から提供される電子書籍をダウンロードして格納する機能を果たす。既に述べたとおり、ユーザがWebページ閲覧部210を介して、サーバ装置100に対して所望の電子書籍の提供要求を行うと、データ送信部170から、当該電子書籍についての1組のデータとして、暗号化データDOCおよびライセンスコードLが送信されてくる。このように、本発明では、サーバ装置100から端末装置200に提供される電子書籍は、暗号化データDOCとライセンスコードLとの組み合わせの形態となっており、データ格納部230には、このような組み合わせデータとして、電子書籍が格納される。図には便宜上、1組の電子書籍のみが格納されている状態が示されているが、実際には、データ格納部230には、ユーザが要求した多数の電子書籍のデータを格納することができる。キー復元部250、書籍表示部260、復号化処理部270は、データ格納部230内に格納されている電子書籍の中の特定の閲覧対象について、実際に閲覧を行う際に機能を果たす構成要素である。これらの構成要素の動作には、サーバ装置100の関与は不要である。したがって、サーバ装置100と端末装置200との間のネットワーク接続が切断された状態でも、ユーザは、データ格納部230内にダウンロードされた任意の電子書籍の閲覧を行うことが可能である。このように、本発明に係るシステムでは、ユーザが所望の電子書籍を閲覧する際に、端末装置200とサーバ装置100との接続状態を維持しておく必要はない。すなわち、端末装置200にダウンロード済みの電子書籍であれば、スタンドアローン状態でも閲覧が可能になるので、ユーザの使い勝手は良好である。書籍表示部260は、ユーザから閲覧対象書籍を指定する指示を入力し、当該指示をキー復元部250および復号化処理部270に伝達し、復号化処理部270によって復号化された書籍データDOCに基づいて、閲覧対象書籍の所定部分を画面上に表示する機能を果たす構成要素であり、端末装置200を構成する電子機器のディスプレイ装置および入力インターフェイスによって構成することができる。たとえば、データ格納部230内に格納されている電子書籍の一覧リストをディスプレイ装置の画面上に提示し、当該リスト上でのユーザの選択入力を、閲覧対象書籍を指定する指示として入力すればよい。また、通常、電子書籍は複数ページの情報から構成されており、閲覧対象書籍のどの部分を表示させるかという指示をユーザから受け、当該指示に基づいて、閲覧対象書籍の所定部分を画面上に表示する処理を行えばよい。キー復元部250は、閲覧対象書籍を復号化するために必要な暗号化キーコードKEYを復元する処理を行う。すなわち、キー復元部250は、データ格納部230に格納されている閲覧対象書籍についてのライセンスコードLと端末活性化コード格納部220に格納されている端末活性化コードADIDとについて、M=LXORADIDなる排他的論理和演算を行うことにより中間コードMを求め、更に、この中間コードMと端末識別コード格納部240に格納されている端末識別コードDIDとについて、KEY=MXORDIDなる排他的論理和演算を行うことにより暗号化キーコードKEYを復元する。こうして復元された暗号化キーコードKEYは、暗号化処理部130において暗号化データDOCの生成に用いられた暗号化キーコードKEYと同一のコードになるので、暗号化データDOCの復号化に利用することができる。一方、復号化処理部270は、データ格納部230に格納されている閲覧対象書籍についての暗号化データDOCに対して、キー復元部250が復元した暗号化キーコードKEYを用いた復号化処理を行うことにより、元の書籍データDOCを生成する処理を行う。この復号化処理には、暗号化処理部130における暗号化処理アルゴリズムに応じた復号化処理アルゴリズムが用いられる。かくして、ユーザが指定した閲覧対象書籍についての元の書籍データDOCが得られるので、書籍表示部260は、この書籍データDOCを用いて、ユーザが指定した所定部分を画面上に表示することができる。結局、端末装置200は、サーバ装置100から暗号化された状態で提供された電子書籍のデータに基づいて、電子書籍を閲覧する電子書籍閲覧用の端末装置としての役割を果たし、サーバ装置100が提供するWebページを閲覧するとともに、当該Webページを利用してサーバ装置100に対する入力を行う機能をもったWebページ閲覧部210と、端末識別コードDIDを格納する端末識別コード格納部240と、サーバ装置100から送信されてきた端末活性化コードADIDを受信し、これを格納する端末活性化コード格納部220と、サーバ装置100から送信されてきた所定の電子書籍についての暗号化データDOCおよびライセンスコードLを受信し、これを格納するデータ格納部230と、このデータ格納部230に格納されている閲覧対象書籍についてのライセンスコードLと端末活性化コード格納部220に格納されている端末活性化コードADIDとについて、M=LXORADIDなる排他的論理和演算を行うことにより中間コードMを求め、更に、この中間コードMと端末識別コード格納部240に格納されている端末識別コードDIDとについて、KEY=MXORDIDなる排他的論理和演算を行うことにより暗号化キーコードKEYを復元するキー復元部250と、データ格納部230に格納されている閲覧対象書籍についての暗号化データDOCに対して、復元された暗号化キーコードKEYを用いた復号化処理を行うことにより、元の書籍データDOCを生成する復号化処理部270と、ユーザによる閲覧対象書籍の指定指示を、キー復元部250および復号化処理部270に伝達し、復号化された書籍データDOCに基づいて、閲覧対象書籍の所定部分を画面上に表示する書籍表示部260と、を備えている。<1ー3キー復元の原理>ここでは、キー復元部250によって行われる演算により、正しい暗号化キーコードKEYが復元される基本原理を、図2および図3の式を参照しながら簡単に説明しておく。図2の式1に示すとおり、端末活性化コード220内に格納されている端末活性化コードADIDは、ADID=UMIDXORDIDなる排他的論理和演算を行うことにより得られるコードであり、図2の式2に示すとおり、データ格納部230内に格納されているライセンスコードLは、L=UMIDXORKEYなる排他的論理和演算を行うことにより得られるコードである。一方、キー復元部250は、図2の式3に示すとおり、M=LXORADIDなる排他的論理和演算を行うことにより中間コードMを求めることになるが、この式3のLおよびADIDに、それぞれ式2および式1を代入すると、M=UMIDXORKEYXORUMIDXORDIDなる式が導かれる。ところで、一般的な論理演算式では、任意の論理値A,B,Cについて、図3の式5に示すように、AXORBXORAXORC=BXORCなる公式が成り立つので、式3から、M=KEYXORDIDなる式が導かれる。キー復元部250は、この中間コードMを用いて、更に、図2の式4に示すとおり、KEY′=MXORDIDなる排他的論理和演算を行うことにより暗号化キーコードKEY′を復元することになる。なお、実際には、式4のKEY′は、式2のKEYと等しくなるが、ここでは、両者が等しくなることを説明する便宜上、式4の左辺のコードをKEY′と表記する。この式4の中間コードMに、上で導かれた式M=KEYXORDIDを代入すれば、KEY′=KEYXORDIDXORDIDが得られる。ところで、一般的な論理演算式では、任意の論理値A,Bについて、図3の式6に示すように、AXORBXORB=Aなる公式が成り立つので、図3の式4は、KEY′=KEYXORDIDXORDID=KEYとなり、KEY′=KEYが成り立つ。このように、式4のKEY′は、式2のKEYと等しくなり、キー復元部250によって復元された暗号化キーコードKEYは、暗号化処理部130で暗号化に用いられたものと同一のものになる。よって、復号化処理部270は、正しい暗号化キーコードKEYを用いて暗号化データDOCに対する復号化処理を実行することができる。<<<§2.具体的な運用の実例>>>ここでは、§1で述べた電子書籍閲覧システムを用いた具体的な運用の実例を示しながら、本発明の利点を説明する。本発明において、図2の式1によって定義される端末活性化コードADIDは、特定のユーザと特定の端末装置とを紐付けするための役割を果たし、図2の式2によって定義されるライセンスコードLは、特定のユーザと特定の暗号化キーとを紐付けするための役割を果たすことになる。そして、ライセンスコードLは、必ず暗号化データDOCに対応づけて提供されることになる。一方、登録済みの端末装置活性化された端末装置には、予め端末活性化コードADIDが格納されており、図2の式3に示すとおり、中間コードMの生成には、この端末活性化コードADIDが利用され、更に、図2の式4に示すとおり、暗号化キーコードKEYの復元には、格納されていた端末識別コードDIDが利用されるので、個々のユーザ宛に提供された電子書籍は、当該ユーザについて予め登録されている特定の端末装置を用いた場合にのみ閲覧が可能になる。しかも、同一のユーザについて複数台の端末装置の登録がなされていれば、当該ユーザ宛に提供された電子書籍のデータ暗号化データDOCおよびライセンスLを用いて、当該複数台の端末装置のいずれにおいても電子書籍の閲覧が可能になる。もちろん、別なユーザの端末装置での閲覧はできない。以下、このような効果が得られる点を、図4に示す具体的な運用実例を参照しながら説明する。図4は、図1に示す電子書籍閲覧システムに対して、2人のユーザ甲,乙についての登録が行われた状態を示すブロック図である。ここでは、ユーザ甲が4台の端末装置200A~200Dを所有し、ユーザ乙が2台の端末装置200E~200Fを所有している単純な例を述べる。また、説明の便宜上、サーバ装置100および各端末装置200A~200Fのブロック内には、実例の説明に必要なデータのみを図示することにする。ユーザ甲,乙は、まず、本システムを利用するにあたって、ユーザ登録を行う必要がある。ここでは、ユーザ甲が、端末装置200Aを用いて、ユーザ登録を行う場合を例にとってユーザ登録の手順を述べよう。はじめに、ユーザ甲は、端末装置200A内のWebページ閲覧部210に対して指示入力を行い、Webページ提供部150へアクセスする。具体的には、Webブラウザを用いて、Webページ提供部150が提供する所定のWebページのURLをアクセスすればよい。そして、このWebページ上で所定の入力を行い、アカウントACC甲およびパスワードPASS甲を定める。このとき、ユーザ登録部110の機能により、ユーザ甲についてのユーザ管理識別コードUMID甲が生成され、ユーザ登録部110には、ユーザ甲についての情報として、図示のとおり、アカウントACC甲,パスワードPASS甲,ユーザ管理識別コードUMID甲が格納されることになる。ここで、当該システムを利用するにあたって、特定のアカウントACC甲および特定のパスワードPASS甲が設定されたことはユーザ甲に通知されるが、ユーザ管理識別コードUMID甲は非通知にされる。これは、不正利用に対して十分なセキュリティを確保するための配慮である。こうしてユーザ登録が完了したユーザ甲は、以後、アカウントACC甲および特定のパスワードPASS甲を用いてWebページ送信部150へアクセスすることになり、ユーザ登録部110は、これらを用いてユーザ甲の認証を行うことになる。ユーザ乙についても同様にユーザ登録が行われ、ユーザ登録部110には、ユーザ乙についての情報として、図示のとおり、アカウントACC乙,パスワードPASS乙,ユーザ管理識別コードUMID乙が格納される。こうして、ユーザ登録が完了したら、続いて、各ユーザは本システムに利用する端末装置の登録活性化を行う。登録する端末装置は1台でもよいし、複数台でもよい。ここでは、ユーザ甲が、所有する4台の端末装置200A~200Dのうち、3台の端末装置200A~200Cについての登録を行い端末装置400Dは登録しない、ユーザ乙が、所有する2台の端末装置200E~200Fのすべてについての登録を行ったものとしよう。端末装置の登録を行うには、§1で述べたとおり、登録対象となる端末装置内のWebページ閲覧部210に対して指示入力を行い、Webページ提供部150へアクセスし、アカウントACCおよびパスワードPASSによる認証作業を経た後に、Webページ上で端末装置の登録指示を入力すればよい。これにより、端末活性化部160から端末活性化コード格納部220に対して、端末識別コードDIDの読出指示が与えられ、登録対象となる端末装置の端末識別コードDIDがサーバ装置100へと送信され、これに応じて返信されてきた端末活性化コードADIDが、端末活性化コード格納部220内に格納される。図4の端末登録部120内には、ユーザ甲が登録した3台の端末装置について生成された端末活性化コードADID甲,A,ADID甲,B,ADID甲,Cと、ユーザ乙が登録した2台の端末装置について生成された端末活性化コードADID乙,E,ADID乙,Fが示されている。ここで、たとえば、端末活性化コードADID甲,Aは、ユーザ管理識別コードUMID甲と、端末装置200A内に格納されていた端末識別コードDIDAとの排他的論理和として生成されたコードであり、端末装置200Aへと返信されて格納される。ユーザ甲は、4台目の端末装置200Dについての登録は行っていないので、図示のとおり、端末装置200D内には、端末識別コードDIDDは格納されているが、端末活性化コードADID甲,Dは格納されていない。すなわち、端末活性化コードADID甲,Dなるコードは、そもそも生成されておらず、端末装置200Dは活性化されていない。さて、このような準備段階を経てから、2人のユーザ甲,乙が、それぞれ所望の電子書籍の提供要求を出した場合を考えてみよう。ここでは、まず、ユーザ甲が、書籍コード1234が付与された電子書籍について提供要求を出した場合を考えてみる。ユーザ甲は、任意の端末装置からWebページ提供部150へアクセスし、アカウントACCおよびパスワードPASSによる認証作業を経た後に、所望の電子書籍の提供要求を入力すればよい。具体的には、Webページ提供部150に、提供可能な電子書籍の全リストをWebページ上に提示したり、検索により絞り込まれたリストを提示したりする機能をもたせておき、ユーザの選択操作により、提供対象となる書籍を特定できるようにしておけばよい。サーバ装置100は、特定の電子書籍についての提供要求を受けると、§1で詳述したとおり、当該提供要求に係る電子書籍の書籍データDOCを暗号化し、データ送信部170を介して、暗号データDOCおよびこれに対応するライセンスLを、提供要求を出した端末装置へと送信する処理を行う。なお、ここに示す運用例では、電子書籍の提供要求は、必ずしも登録済みの端末装置から行う必要はない。したがって、ユーザ甲は、未登録の端末装置200Dを用いてサーバ装置100にアクセスし、提供要求を行うことも可能である。未登録の端末装置200Dを用いたアクセスでも、アカウントACCおよびパスワードPASSを入力することが可能なので、サーバ装置100は、正規のユーザ甲からのアクセスであるとの認証を行うことができる。この場合、暗号データDOCおよびこれに対応するライセンスLは、未登録の端末装置200Dへ送信されてくることになるが、後述するように、未登録の端末装置200Dで電子書籍を閲覧することはできない。ここでは、説明の便宜上、2人のユーザ甲,乙が、書籍コード1234で示される同一の電子書籍についての提供要求を出した場合を考えてみる。図5は、図1に示すサーバ装置100において、書籍コード1234で示される電子書籍に対して行われる処理プロセスを示す図である。この場合、いずれのユーザからの要求に対しても、提供対象となる電子書籍の書籍データDOC1234に対して、暗号化処理を行った上で提供を行う点は同じであるが、提供対象となる暗号化データDOCおよびライセンスLの内容は異なる。すなわち、図5の左半分に示すとおり、ユーザ甲からの要求に対しては、暗号化キーコードKEY1が生成されたとえば、乱数を用いたランダムなコードでよい、この暗号化キーコードKEY1を用いた所定のアルゴリズムに基づく演算によって、暗号データDOC1234,KEY1が生成される。また、ユーザ管理識別コードUMID甲と暗号化キーコードKEY1との排他的論理和演算により、ライセンスL甲,KEY1が生成される。ユーザ甲が利用する端末装置には、こうして作成された暗号データDOC1234,KEY1とライセンスL甲,KEY1との組み合わせここでは、実提供データD1と呼ぶが、書籍コード1234で示される電子書籍についてのデータとして提供される。これに対して、図5の右半分に示すとおり、ユーザ乙からの要求に対しては、暗号化キーコードKEY2が生成されこれも乱数を用いたランダムなコードでよい、この暗号化キーコードKEY2を用いた所定のアルゴリズムユーザ甲からの要求時のアルゴリズムと同じアルゴリズムでよいに基づく演算によって、暗号データDOC1234,KEY2が生成される。また、ユーザ管理識別コードUMID乙と暗号化キーコードKEY2との排他的論理和演算により、ライセンスL乙,KEY2が生成される。ユーザ乙が利用する端末装置には、こうして作成された暗号データDOC1234,KEY2とライセンスL乙,KEY2との組み合わせここでは、実提供データD2と呼ぶが、書籍コード1234で示される電子書籍についてのデータとして提供される。もちろん、別な電子書籍については、全く別な実提供データが提供される。たとえば、2人のユーザ甲,乙が、書籍コード5678で示される同一の電子書籍についての提供要求を出した場合、図6に示すように、ユーザ甲からの要求に対しては、暗号データDOC5678,KEY3とライセンスL甲,KEY3との組み合わせからなる実提供データD3が提供され、ユーザ乙からの要求に対しては、暗号データDOC5678,KEY4とライセンスL乙,KEY4との組み合わせからなる実提供データD4が提供される。結局、2人のユーザ甲,乙が、書籍コード1234,5678で示される2冊の電子書籍の提供要求を出した場合、ユーザ甲の利用する端末装置のデータ格納部230内には、実提供データD1,D3が格納され、ユーザ乙の利用する端末装置のデータ格納部230内には、実提供データD2,D4が格納される。ところで、本発明を実施する場合、データ格納部230は、パソコン、タブレット型電子端末、スマートフォンなど、端末装置として利用する電子機器に備わっている記憶装置ハードディスク装置やメモリを利用して構成するのが一般的である。したがって、このような電子機器用のOSプログラムの機能を利用すれば、データ格納部230内の任意のデータを読み出したり、データ格納部230内に任意のデータを書き込んだりすることが可能である。そこで、ここでは、各端末装置200A~200Fが、データ格納部230に格納されている所定の電子書籍についての暗号化データDOCおよびライセンスコードL実提供データを外部に読み出す機能と、外部から所定の電子書籍についての暗号化データDOCおよびライセンスコードL実提供データが与えられたときに、これをデータ格納部230に書き込む機能と、を有しているものとしよう。この場合、図5および図6に示す実提供データD1~D4は、ユーザの操作により、特定の端末装置から自由に読み出したり、特定の端末装置に自由に書き込んだりすることが可能であり、任意の端末装置間で複製を行うことが可能になる。たとえば、ユーザ甲が、端末装置200Aを用いて、書籍コード1234で示される電子書籍の提供要求を出した場合、図5に示す実提供データD1が端末装置200Aのデータ格納部230に格納されることになるが、ユーザ甲は、この実提供データD1を、別な端末装置200B,200C,200Dに複製することが可能である。また、ユーザ甲は、この実提供データD1を、ユーザ乙が所有する端末装置E,Fに転送することも可能である。そこで、各端末装置200A~200Fに、この実提供データD1が格納された状態において、それぞれ書籍コード1234で示される電子書籍の閲覧が可能になるかどうかを考えてみよう。図7は、図4に示す端末装置200A,200B,200D,200Eに、図5に示す実提供データD1、すなわち、暗号化データDOC1234,KEY1およびライセンスコードL甲,KEY1の組み合わせを与えたときの処理プロセスを示す図である。まず、登録済みの端末装置200A実提供データD1のダウンロードに用いた端末装置についての閲覧プロセスを考えてみる。図7の第1段目に示されているとおり、この端末装置200Aについては、端末識別コード格納部240に格納されている端末識別コードDIDAと、端末活性化コード格納部220に格納されている端末活性化コードADID甲,Aとの整合性が確保されている矢印で示す符号Aが一致する。また、この端末活性化コードADID甲,Aと実提供データD1内のライセンスL甲,KEY1との整合性も確保されている矢印で示す符号甲が一致する。更に、このライセンスL甲,KEY1と実提供データD1内の暗号化データDOC1234,KEY1との整合性も確保されている矢印で示す符号KEY1が一致する。よって、キー復元部250は正しい暗号化キーコードKEY1を復元することができ、暗号化データDOC1234,KEY1に基づいて正しい書籍データDOC1234を復元することができる。次に、ユーザ甲が、端末装置200A内の実提供データD1を、別な登録済みの端末装置200Bに複製した場合において、この端末装置200Bについての閲覧プロセスを考えてみる。図7の第2段目に示されているとおり、端末装置200Bについては、端末識別コードDIDBと、端末活性化コードADID甲,Bとの整合性が確保されている矢印で示す符号Bが一致する。また、この端末活性化コードADID甲,Bと実提供データD1内のライセンスL甲,KEY1との整合性も確保されている矢印で示す符号甲が一致する。更に、このライセンスL甲,KEY1と実提供データD1内の暗号化データDOC1234,KEY1との整合性も確保されている矢印で示す符号KEY1が一致する。よって、キー復元部250は正しい暗号化キーコードKEY1を復元することができ、暗号化データDOC1234,KEY1に基づいて正しい書籍データDOC1234を復元することができる。これは、端末装置200Cにおいても同様である。続いて、ユーザ甲が、端末装置200A内の実提供データD1を、未登録の端末装置200Dに複製した場合において、この端末装置200Dについての閲覧プロセスを考えてみる。図7の第3段目に示されているとおり、端末装置200Dは、活性化がなされていないので、端末活性化コードADID甲,Dなるものが存在しない。よって、キー復元部250は暗号化キーコードKEY1を復元することができず、復号化処理部270は書籍データDOC1234を復元することができない。すなわち、ユーザ甲は、未登録の端末装置200Dでは、電子書籍の閲覧を行うことはできない。一方、ユーザ甲が所有する端末装置200A内の実提供データD1を、ユーザ乙が所有する端末装置200Eに複製した場合において、この端末装置200Bについての閲覧プロセスを考えてみる閲覧者はユーザ甲,乙のいずれでもよい。図7の第4段目に示されているとおり、端末装置200Eについては、端末識別コードDIDEと、端末活性化コードADID乙,Eとの整合性が確保されている矢印で示す符号Eが一致する。ところが、この端末活性化コードADID乙,Eと実提供データD1内のライセンスL甲,KEY1との整合性は確保されていない矢印で示す符号乙と甲が不一致になる。これは、端末装置200E内に格納されている端末活性化コードADID乙,Eが、ユーザ管理識別コードUMID乙を用いて生成されたコードであるのに対し、ライセンスL甲,KEY1が、ユーザ管理識別コードUMID甲を用いて生成されたコードであるためである。よって、キー復元部250は正しい暗号化キーコードKEY1を復元することができず、復号化処理部270は書籍データDOC1234を復元することができない。すなわち、端末装置200Eでは、実提供データD1に基づいて電子書籍の閲覧を行うことはできない。これは、端末装置200Fにおいても同様である。結局、ユーザ甲の提供要求に基づいて提供された実提供データD1は、ユーザ甲について登録された端末装置200A,200B,200Cによって閲覧することは可能であるが、未登録の端末装置200Dや、別なユーザ乙について登録された端末装置200E,200Fによっては、閲覧することができないことになる。すなわち、本発明に係る電子書籍閲覧システムによれば、各ユーザは、自己の名の下でダウンロードした実提供データであれば、自己の名の下に登録したいずれの端末装置においても閲覧可能になる。しかも、ダウンロードの作業に用いる端末装置は、必ずしも登録済みである必要はなく、上例の場合、ユーザ甲は、未登録の端末装置200Dを用いてダウンロードした実提供データD1を、登録済みの端末装置200A,200B,200Cによって閲覧することもできる。このように、予め登録した複数の端末装置間でデータの使い回しが可能になるため、ユーザの利便性は極めて良好である。また、実提供データ自体を複製することに何ら制約はないので、ユーザは自由にバックアップをとることもできる。したがって、たとえば、実提供データをネットワークを介して所定のデータ保管場所に預けておくようにすれば、登録済みの端末装置からいつでも実提供データをダウンロードして利用することができる。その一方で、他のユーザの名の下で登録された端末装置では閲覧ができないので、十分な著作権管理を行うことができる。このように、本発明によれば、登録した複数の端末装置間でのみ使い回しが可能な書籍データを提供することができるので、十分な著作権管理を行いつつ、複数の端末装置間で使い回しが可能な態様で、ユーザに電子書籍を提供し閲覧させることが可能になる。また、未登録の端末装置では閲覧ができないため、必要に応じて、ユーザごとに閲覧可能な端末装置の台数を制限することも可能である。このような台数制限を行う場合、端末登録部120に、同一のユーザ管理識別コードUMIDに対して、n個nは所定の自然数の端末識別コードDIDをそれぞれ対応させたn通りの組み合わせについて、それぞれ端末活性化コードADIDを生成する機能をもたせ、n1個目の端末識別コードDIDとの組み合わせについては、端末活性化コードADIDの生成を拒絶するように構成しておけばよい。より具体的には、端末登録部120が端末活性化コードADIDを生成するたびに、生成に用いたユーザ管理識別コードUMIDおよび端末識別コードDIDの組み合わせを端末登録部120に保存しておくようにし、特定のユーザ管理識別コードUMIDおよび特定の端末識別コードDIDの組み合わせに基づいて新たな登録を行う際には、当該特定のユーザ管理識別コードUMIDに関する登録台数がn台以下であることを確認するようにし、n台を超える登録については拒絶するように構成しておけばよい。もちろん、必要に応じて、許容台数nの値をユーザごとに変えるような設定も可能である。たとえば、各ユーザとの間の利用契約によってnの値を変えるような設定を行い、より高額な利用契約を締結したユーザに対しては、より大きなnを設定するような運用も可能である。<<<§3.本発明の変形例>>>図8は、本発明の変形例に係る電子書籍閲覧システムの構成を示すブロック図である。このシステムは、図1に示すシステムに、更に、中継装置300とスキャン装置400とを付加することにより、ユーザの蔵書を電子化するサービスを提供できるようにしたものである。スキャン装置400は、物理的な書籍501の各ページの情報をスキャンして電子書籍の書籍データDOCを作成する機能をもった装置である。書籍501の各ページの綴じしろを裁断して、1枚ずつの枚葉シートの状態にし、この枚葉シートを1枚ずつ送りながらスキャンする機能をもった装置をスキャン装置400として利用してもよいが、最近は、製本状態の書籍501のページを自動的にめくりながらスキャンを行う機能をもった装置も実用化されており、そのような装置をスキャン装置400として利用することも可能である。この変形例の場合、図1に示す暗号化処理部130は、スキャン装置400によって作成された書籍データDOCに基づいて暗号化データDOCを生成することになる。なお、図8に示す変形例には、スキャン装置400とサーバ装置100との間を中継するとともに、端末装置200とサーバ装置100との間を中継する機能をもった中継装置300が設けられている。したがって、スキャン装置400によって作成された書籍データDOCは、この中継装置300を経由してサーバ装置100へ送信される。この中継装置300は、たとえば、汎用のパソコンに専用のソフトウエアを組み込むことにより構成することができる。また、サーバ装置100内のユーザ登録部110が、中継装置300からの入力指示に基づいて、アカウントACCおよびパスワードPASSの設定やユーザ管理識別コードUMIDの生成処理を行い、端末活性化部160が、中継装置300を経由して端末活性化コードADIDを端末装置200に送信するようにしてもよい。スキャン装置400から中継装置300への書籍データDOCの受け渡しは、両者を接続するネットワーク経由で行ってもよいし、光学的記録媒体を媒介させた受け渡しにしてもかまわない。また、端末装置200と中継装置300との間のデータの受け渡しも、両者を接続するネットワーク経由で行ってもよいし、光学的記録媒体を媒介させた受け渡しにしてもかまわない。あるいは、中継装置300と端末装置200との間に導線による通信路、赤外線による通信路、電磁波による通信路などを形成し、これらの通信路を介してデータの受け渡しを行うことも可能である。この図8に示す変形例は、ユーザが所有する物理的な書籍501に基づいて電子書籍の書籍データを作成し、これをユーザの端末装置に提供する事業を展開するのに適したシステムである。たとえば、このような事業展開を行うための各営業店舗に、それぞれ中継装置300として機能するパソコンを設置しておけば、この営業店舗に来店したユーザに対して、ユーザ登録および端末登録といった事前準備のサービスを行うことができる。§1で述べた基本的な実施形態は、個々のユーザがネットワークNを介してサーバ装置100にアクセスし、Webページ上でユーザ登録や端末登録の作業を行う例であったが、図8に示す変形例では、このような登録作業を、営業店舗の係員に委ねることができる。すなわち、ユーザには、電子化の対象となる書籍501と端末装置200とを営業拠点に持参してもらうようにする。初めて来店したユーザについては、利用申請書に氏名や住所などの書誌事項とともに、希望アカウントやパスワードを記載してもらい、店舗の係員が、中継装置300を操作して、ユーザに代わってユーザ登録の作業を行うようにすればよい。また、この係員が、ユーザが持参した端末装置200を、上述した様々な方法を利用して中継装置300に接続し、中継装置300経由で端末識別コードDIDを読み出し、これをサーバ装置100へ転送する作業と、サーバ装置100側から送信されてきた端末活性化コードADIDを端末装置200に書き込む作業を行えば、ユーザに代わって端末装置200の登録作業を行うことができる。一方、この営業店舗にスキャン装置400が設置されている場合には、ユーザが持参した書籍501を、スキャン装置400が設置された作業場に納入し、直ちにスキャン作業を行い、書籍データDOCたとえば、PDFファイルを作成し、これを中継装置300を介してサーバ装置100へ送信することができる。サーバ装置100から中継装置300には、暗号データDOCおよびライセンスLからなる実提供データが送信されてくるので、係員は、これらを端末装置200に書き込むことができる。また、書籍501は、その場でユーザに返却できる。かくして、ユーザは、持参した端末装置200と書籍501をそのまま持ち帰ることができる。作業完了後の端末装置200は、既に活性化が行われた状態になっており、しかも書籍501を電子化することにより得られた実提供データが格納されているので、直ちに電子書籍として閲覧することができる。なお、スキャン装置400によるスキャン作業に時間がかかる場合や、スキャン装置400が設置されていない営業店舗の場合は、来店したユーザには活性化が完了した端末装置200のみを返却し、書籍501は一時的に預かるようにする。預かった書籍501について、スキャン作業が完了したら、これを郵送などの手段でユーザに返却するようにし、この返却便に、実提供データが格納されたCD,DVDなどの記録媒体を同封すればよい。なお、実提供データは、ネットワークNを介してユーザにダウンロードさせるようにしてもよい。スキャン装置400が設置されていない営業店舗の場合は、スキャン装置400が設置された処理拠点に書籍501を送付し、この処理拠点において、上記作業を行えばよい。ユーザが、新たな端末装置についての追加登録や、新たな書籍についての電子化を行いたい場合には、新たな端末装置や新たな書籍を営業店舗に持ち込み、係員にその旨の依頼を行えばよい。図9は、この図8に示す電子書籍閲覧システムを用いた電子書籍の提供プロセスを示す流れ図である。営業店舗にユーザが来店したら、まず、ステップS1において、新規に登録する事項があるか否かが判断される。登録事項がある場合には、ステップS2において、係員が中継装置300を利用して、上述した手順でユーザ登録もしくは端末登録を行う。続いて、ステップS3では、ユーザが持参した書籍501について、スキャン装置400によるスキャンが行われ、書籍データDOCが得られる。そして、ステップS4では、この書籍データDOCがサーバ装置100へと送信され、暗号データDOCおよびライセンスLからなる実提供データが作成される。最後に、ステップS5において、中継装置300から端末装置200に対して、実提供データの書き込みが行われる。もちろん、この図8に示す変形例においても、サーバ装置100と端末装置200とは、ネットワークNを介して接続されているので、ユーザは、§1で述べたように、ネットワークNを介してユーザ登録や端末登録を行うことも可能である。また、書籍501を郵送などの方法で営業店舗などに納品し、実提供データをネットワークNを介してダウンロードすることも可能である。そうすれば、ユーザは、営業店舗にわざわざ出向くことなく、この電子化サービスを受けることができる。これに対して、ユーザが営業店舗に出向くことを前提とした運用を行う場合には、サーバ装置100と端末装置200とをネットワークNで接続できるようにしておく必要はない。この場合、サーバ装置100と端末装置200とは、常に、中継装置300を介して接続されることになる。したがって、中継装置300に、端末識別コードDIDの読出機能や端末活性化コードADIDの書込機能を設けておけば、端末活性化部160や端末活性化コード格納部220の負担を軽減させることも可能である。すなわち、端末活性化部160には、端末登録部120が生成した端末活性化コードADIDが中継装置300を介して端末装置200に送信されるような機能を設けておくだけで足り、端末活性化コード格納部220に対して読出指示を与える機能を省略することができる。同様に、端末活性化コード格納部220には、端末活性化部160から送信されてきた端末活性化コードADIDを受信し、これを格納する機能を設けておくだけで足り、端末識別コード格納部240から端末識別コードDIDを読み出し、これを端末活性化部160に送信する機能を省略することができる。また、サーバ装置100と端末装置200とを、常に、中継装置300を介して接続する運用を採る場合、サーバ装置100に対する指示は、係員が中継装置300を操作して行うことになるので、Webページ提供部150およびWebページ閲覧部210を省略することができる。Webページを介さない別な方法によって、端末装置200からサーバ装置100に対して種々の指示を与える運用を採る場合も同様である。また、営業店舗において係員が会員証などによってユーザ認証を行うような運用を行う場合などでは、アカウントACCおよびパスワードPASSを用いたユーザ認証を行う必要がないので、ユーザ登録部110にアカウントACCおよびパスワードPASSを格納する必要はない。<<<§4.本発明に係る電子書籍提供方法>>>最後に、本発明を電子書籍提供方法として捉えた場合の基本手順を、図10の流れ図を参照しながら説明する。この電子書籍提供方法は、サーバ装置から、個々のユーザが利用する各端末装置に対して、暗号化された状態で電子書籍のデータを提供し、これを端末装置が復号化して表示する方法であり、事前準備プロセスと、書籍データ準備プロセスと、閲覧プロセスと、によって構成される。事前準備プロセスは、サーバ装置が、個々のユーザに対してユーザ管理識別コードUMIDを生成し、これを格納するユーザ登録段階ステップS11と、サーバ装置が、特定のユーザのユーザ管理識別コードUMIDと当該特定のユーザが利用する特定の端末装置に格納されている端末識別コードDIDとについて、ADID=UMIDXORDIDなる排他的論理和演算を行うことにより、当該特定の端末装置についての端末活性化コードADIDを生成する端末登録段階ステップS12と、当該特定の端末装置が、サーバ装置が生成した端末活性化コードADIDを格納する端末活性化コード格納段階ステップS13と、によって構成される。この事前準備プロセスにより、ユーザ登録および端末登録が行われ、登録した端末装置は活性化された状態になる。続く書籍データ準備プロセスは、サーバ装置が、提供対象となる特定の電子書籍の書籍データDOCに対して固有の暗号化キーコードKEYを生成し、書籍データDOCを固有の暗号化キーコードKEYを用いて暗号化し、暗号化データDOCを生成する暗号化処理段階ステップS14と、サーバ装置が、特定のユーザのユーザ管理識別コードUMIDと固有の暗号化キーコードKEYとについて、L=UMIDXORKEYなる排他的論理和演算を行うことにより、特定の電子書籍についてのライセンスコードLを生成するライセンス生成段階ステップS15と、サーバ装置が、特定のユーザが利用する端末装置に対して、暗号化データDOCおよびライセンスコードLを送信するデータ送信段階ステップS16と、によって構成される。この書籍データ準備プロセスにより、端末装置内に閲覧に必要な実提供データが準備されることになる。最後の閲覧プロセスは、端末装置が、サーバ装置から送信されてきたライセンスコードLと端末活性化コードADIDとについて、M=LXORADIDなる排他的論理和演算を行うことにより中間コードMを求め、更に、この中間コードMと端末識別コードDIDとについて、KEY=MXORDIDなる排他的論理和演算を行うことにより暗号化キーコードKEYを復元するキー復元段階ステップS17と、上記端末装置が、サーバ装置から送信されてきた暗号化データDOCに対して、復元された暗号化キーコードKEYを用いた復号化処理を行うことにより、元の書籍データDOCを生成する復号化処理段階ステップS18と、上記端末装置が、復号化された書籍データDOCに基づいて、閲覧対象書籍の所定部分を画面上に表示する書籍表示段階ステップS19と、によって構成される。このようなプロセスによって、電子書籍を提供すれば、ステップS16のデータ送信段階によって送信されたデータを、同一ユーザが登録した複数の端末装置間で使い回すことが可能になり、ユーザの利便性が向上する。しかも、未登録の端末装置や他のユーザが登録した端末装置での使い回しはできないため、十分な著作権管理を行うことができる。"