(57)【特許請求の範囲】
【請求項１】
マークアップ言語を用いて作成したマークアップ文書を記憶するとともに、前記マークアップ文書を配信する文書配信装置と、
前記マークアップ文書の文字に対応するフォントで構成した配信フォントファイルを記憶するとともに、前記配信フォントファイルを配信するフォント配信装置と、
前記マークアップ文書の配信を前記文書配信装置に要求する文書配信要求手段、前記マークアップ文書に基づいて前記配信フォントファイルの配信を前記フォント配信装置に要求するフォント配信要求手段、前記マークアップ文書及び前記配信フォントファイルを記憶する記憶手段、並びに前記マークアップ文書を表示する表示手段を備えた文書閲覧装置と、
前記各装置を相互に接続する通信回線とで構成したフォント配信システムであって、
複数の前記フォントを記憶するフォント記憶手段と、前記マークアップ文書における前記文字を示す文字情報及び書体名を示す書体情報に対応する前記フォントを、前記フォント記憶手段から抽出して列挙格納したフォントファイルを生成するフォントファイル生成手段と、前記フォントファイルに基づいて前記配信フォントファイルを生成する配信フォントファイル生成手段とで構成するとともに、前記通信回線と接続したフォント生成装置と、
前記通信回線を介して前記文書閲覧装置に所定の情報を配信する所定情報配信装置とを備え、
前記フォント生成装置の前記配信フォントファイル生成手段を、
前記フォントファイルを所定の分割数で分割して、複数の前記分割フォントデータを生成するファイル分割処理と、
前記分割フォントデータを難読化する難読化情報を前記分割フォントデータに付加して、複数の前記配信フォントファイルを生成する難読化処理とを実行する構成とし、
前記マークアップ文書の前記文字を前記フォントで閲覧可能にして前記表示手段に出力する前記文書閲覧装置の閲覧制御手段を、
複数の前記配信フォントファイルを、前記所定の情報に基づいて、前記難読化情報と前記分割フォントデータとに分離する分離処理と、
複数の前記分割フォントデータを結合する結合処理とを実行する構成とし、
前記フォント生成装置に、
前記所定の情報の配信を要求する要求命令文を生成する命令文生成手段を備え、
前記文書閲覧装置に、
前記要求命令文を登録した前記マークアップ文書における前記要求命令文に基づいて、前記所定の情報の配信を前記所定情報配信装置に要求する所定情報要求手段を備えた
フォント配信システム。
【請求項２】
前記配信フォントファイルの前記難読化情報を、
前記マークアップ文書に登録されるとともに、前記フォントを特定する登録フォント情報で構成し、
前記文書閲覧装置の前記閲覧制御手段に、
前記マークアップ文書の前記文字を前記フォントで閲覧可能にする所定の文字列を、前記登録フォント情報に基づいて前記マークアップ文書に追記する追記処理を備えた
請求項１に記載のフォント配信システム。
【請求項３】
前記配信フォントファイルの前記難読化情報を、
ランダムな文字列で構成したダミー情報と、
前記ダミー情報によって前記登録フォント情報を難読化した難読登録フォント情報とで構成し、
前記文書閲覧装置の前記分離処理を、
前記所定の情報に基づいて、前記難読登録フォント情報と、前記ダミー情報と、前記分割フォントデータとに分離する構成とし、
前記文書閲覧装置の前記閲覧制御手段に、
分離した前記難読登録フォント情報を、前記ダミー情報に基づいて前記登録フォント情報に復元する復元処理を備えた
請求項２に記載のフォント配信システム。
【請求項４】
前記配信フォントファイルの前記難読化情報を、
ランダムな文字列で構成したダミー情報で構成した
請求項１に記載のフォント配信システム。
【請求項５】
前記フォントファイルを示すフォントファイル情報、及び前記フォントに対する使用制限を示す制限情報を関連づけて登録したフォントテーブルを記憶するテーブル記憶手段と、
前記フォントテーブルに基づいて、前記フォントの使用可否を判定する使用判定手段とで構成するとともに、前記通信回線に接続された認証装置を備え、
前記使用判定手段を、
前記フォントファイル情報に基づいて、前記フォントテーブルの前記制限情報を参照する参照処理と、
前記制限情報が制限されていない情報を示す場合、前記フォントの使用を許可する許可情報を前記文書閲覧装置に送信する応答処理とを実行する構成とし、
前記文書閲覧装置の前記閲覧制御手段を、
前記フォントファイル情報に基づいて、前記フォントに対する使用制限を前記認証装置に問い合わせる問合せ処理を備えるとともに、
前記許可情報を取得した場合、前記分離処理及び前記結合処理を実行する構成とした
請求項１から請求項４のいずれか１つに記載のフォント配信システム。
【請求項６】
マークアップ言語を用いて作成したマークアップ文書を記憶するとともに、前記マークアップ文書を配信する文書配信装置と、
前記マークアップ文書の文字に対応するフォントで構成した配信フォントファイルを記憶するとともに、前記配信フォントファイルを配信するフォント配信装置と、
前記マークアップ文書の配信を前記文書配信装置に要求する文書配信要求手段、前記マークアップ文書に基づいて前記配信フォントファイルの配信を前記フォント配信装置に要求するフォント配信要求手段、前記マークアップ文書及び前記配信フォントファイルを記憶する記憶手段、並びに前記マークアップ文書を表示する表示手段を備えた文書閲覧装置と、
前記各装置を相互に接続する通信回線とで構成したシステムを用いたフォント配信方法であって、
複数の前記フォントを記憶するフォント記憶手段と、前記マークアップ文書における前記文字を示す文字情報及び書体名を示す書体情報に対応する前記フォントを、前記フォント記憶手段から抽出して列挙格納したフォントファイルを生成するフォントファイル生成手段と、前記フォントファイルに基づいて前記配信フォントファイルを生成する配信フォントファイル生成手段とで構成するとともに、前記通信回線と接続したフォント生成装置の前記配信フォントファイル生成手段が、
前記フォントファイルを所定の分割数で分割して、複数の前記分割フォントデータを生成するとともに、前記分割フォントデータを難読化する難読化情報を前記分割フォントデータに付加して、複数の前記配信フォントファイルを生成し、
前記フォント生成装置の命令文生成手段が、前記所定の情報の配信を要求する要求命令文を生成し、
前記文書閲覧装置の所定情報要求手段が、
前記要求命令文を登録した前記マークアップ文書における前記要求命令文に基づいて、前記所定の情報の配信を、前記通信回線を介して前記所定の情報を配信する所定情報配信装置に要求し、
前記文書閲覧装置の閲覧制御手段が、
複数の前記配信フォントファイルを、前記所定の情報に基づいて、前記難読化情報と前記分割フォントデータとに分離するとともに、分離した複数の前記分割フォントデータを結合して前記フォントを取得し、前記マークアップ文書の前記文字を取得した前記フォントで閲覧可能にして前記表示手段に出力する
フォント配信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、例えばＨＴＭＬ文書にスタイルシート言語タグで指定された書体名に対応するフォントをウェブサーバーから配信するようなフォント配信システム、及びフォント配信方法に関する。
【背景技術】
【０００２】
文書作成者が文書作成装置を操作して、所望するフォントを用いて作成した電子文書を、閲覧者の文書閲覧装置で表示する際、文書作成装置と同一のフォントを保有していなければ、文書閲覧装置は、文書作成者の所望するフォントで電子文書を表示することができない。  
このような電子文書としては、例えば通信回線を介してウェブサーバーから文書閲覧装置に配信され、ウェブサイトとして閲覧されるＨＴＭＬ文書がある。
【０００３】
そこで、文書作成者の意図通りにＨＴＭＬ文書を文書閲覧装置で閲覧可能にするために、ＨＴＭＬ文書から抽出した文字に対応するフォント群であるサブセットフォントを作成して配信することで、文書閲覧装置において、文書作成者の意図通りのフォントでＨＴＭＬ文書を閲覧可能にするフォント配信システムが提案されている。
【０００４】
例えば、文書閲覧装置がＨＴＭＬ文書に登録されたＵＲＬ指定ファイルを取得する。その後、文書閲覧装置は、ＵＲＬ指定ファイルに登録された文字コード及びスタイルに基づいて、ＨＴＭＬ文書からスタイル毎の文字列を抽出する。さらに、文書閲覧装置は、抽出したスタイルに対応するフォントのうち、保持していないフォントの配信をフォントサーバーに対して要求する。
【０００５】
文書閲覧装置からの要求に対して、フォントサーバーは、スタイルに対応するフォントと文字コードとにも基づいて、記憶している複数のフォントから抽出したフォント群を示すサブセットフォントを生成して、文書閲覧装置に配信する。
【０００６】
そして、サブセットフォントを取得した文書閲覧装置は、ＨＴＭＬ文書の文字をブラウザで設定されたフォントではなく、サブセットフォントのフォントに置き換えて表示することで、文書作成者の意図通りにＨＴＭＬ文書を閲覧可能にするとされている（特許文献１参照）。
【０００７】
さらに、昨今では、通信回線速度の向上や文書閲覧装置の性能向上により、サブセットフォントを取得するとともに、フォントを置換して表示するまでに要する時間が短縮され、閲覧者は、デザイン性が向上したウェブサイトをストレスなく閲覧することができるようになった。
【０００８】
ところが、上述したＨＴＭＬ文書とサブセットフォントとで構成されたウェブサイトを閲覧すると、次回以降の表示をより効率良く行うために、文書閲覧装置は、例えばキャッシュフォルダなどにサブセットフォントを記憶するようにしている。  
このため、悪意を持った閲覧者が、文書閲覧装置に記憶されたサブセットフォントのようなフォントファイルを安易に複製して、文書作成者の意図しない用途でフォントが不正に利用するおそれがあった。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２０１２−１５５６８１号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
本発明は、上述の問題に鑑み、文字の表示に要する時間を犠牲にすることなく、フォントの不正利用を抑制することができるフォント配信システム、及びフォント配信方法を提供することを目的とする。
【課題を解決するための手段】
【００１１】
この発明は、マークアップ言語を用いて作成したマークアップ文書を記憶するとともに、前記マークアップ文書を配信する文書配信装置と、前記マークアップ文書の文字に対応するフォントで構成した配信フォントファイルを記憶するとともに、前記配信フォントファイルを配信するフォント配信装置と、前記マークアップ文書の配信を前記文書配信装置に要求する文書配信要求手段、前記マークアップ文書に基づいて前記配信フォントファイルの配信を前記フォント配信装置に要求するフォント配信要求手段、前記マークアップ文書及び前記配信フォントファイルを記憶する記憶手段、並びに前記マークアップ文書を表示する表示手段を備えた文書閲覧装置と、前記各装置を相互に接続する通信回線とで構成したフォント配信システム、及びフォント配信方法であって、複数の前記フォントを記憶するフォント記憶手段と、前記マークアップ文書における前記文字を示す文字情報及び書体名を示す書体情報に対応する前記フォントを、前記フォント記憶手段から抽出して列挙格納したフォントファイルを生成するフォントファイル生成手段と、前記フォントファイルに基づいて前記配信フォントファイルを生成する配信フォントファイル生成手段とで構成するとともに、前記通信回線と接続したフォント生成装置と、前記通信回線を介して前記文書閲覧装置に所定の情報を配信する所定情報配信装置とを備え、前記フォント生成装置の前記配信フォントファイル生成手段を、前記フォントファイルを所定の分割数で分割して、複数の前記分割フォントデータを生成するファイル分割処理と、前記分割フォントデータを難読化する難読化情報を前記分割フォントデータに付加して、複数の前記配信フォントファイルを生成する難読化処理とを実行する構成とし、前記マークアップ文書の前記文字を前記フォントで閲覧可能にして前記表示手段に出力する前記文書閲覧装置の閲覧制御手段を、複数の前記配信フォントファイルを、前記所定の情報に基づいて、前記難読化情報と前記分割フォントデータとに分離する分離処理と、複数の前記分割フォントデータを結合する結合処理とを実行する構成とし、前記フォント生成装置に、前記所定の情報の配信を要求する要求命令文を生成する命令文生成手段を備え、前記文書閲覧装置に、前記要求命令文を登録した前記マークアップ文書における前記要求命令文に基づいて、前記所定の情報の配信を前記所定情報配信装置に要求する所定情報要求手段を備えたことを特徴とする。
【００１２】
上記マークアップ言語は、ＨＴＭＬ言語、あるいはＸＨＴＭＬ言語などとすることができる。  
上記マークアップ文書は、ＨＴＭＬ文書、あるいはＨＴＭＬ文書とスタイルシート言語で記述されたスタイルシートとで構成される１つの文書なとどすることができる。
【００１３】
上記文字は、マークアップ文書における本文やタイトルを示す文字などとすることができる。  
上記フォントは、明朝体やゴシック体などの書体で形成された文字書体、あるいは文字を明朝体やゴシック体などの書体で再現するためのフォントプログラムなどとすることができる。  
上記文書配信装置及び上記フォント配信装置は、同一の装置、あるいは異なる装置とすることができる。
【００１４】
上記難読化情報は、ランダムな文字列、フォントファイルを特定するフォントファミリ名などの情報、これらを所定の演算方法によって難読化した情報などとすることができる。  
上記所定の情報は、難読化情報と分割フォントデータとを区別する情報、難読化情報のデータ長、フォントファイルを特定するフォントファミリ名などとすることができ、マークアップ文書に予め記述した情報、通信回線を介して文書閲覧装置に配信されるプログラム内に登録された情報、あるいはその両方とすることができる。
【００１５】
上記所定情報配信装置は、文書配信装置、フォント配信装置、あるいは認証装置のいずれかの装置、あるいは独立した異なる装置などとすることができる。 
上記要求命令文は、スクリプト言語などで記述された文字列とすることができる。
【００１６】
この発明により、文字の表示に要する時間を犠牲にすることなく、フォントの不正利用を抑制することができる。  
具体的には、フォントファイルを複数の配信フォントファイルに分割して配信することで、フォント配信システム、及びフォント配信方法は、悪意を持った閲覧者によるフォントファイルの特定を困難にすることができる。
【００１７】
さらに、分割フォントデータに難読化情報を付加しているため、フォント配信システム、及びフォント配信方法は、配信フォントファイルの解析を困難にすることができる。
【００１８】
このため、仮に難読化情報を含む配信フォントファイルを結合したとしても、文書閲覧装置は、結合された配信フォントファイルをフォントファイルとして認識することができない。これにより、フォント配信システム、及びフォント配信方法は、悪意を持った閲覧者による安易な複製を抑制することができる。
【００１９】
加えて、フォント配信システム、及びフォント配信方法は、例えば、分割フォントデータを暗号化して配信した場合に比べて、マークアップ文書の文字を閲覧可能にするまでの処理時間を短くすることができる。
【００２０】
より詳しくは、例えば、分割フォントデータを暗号鍵によって暗号化した場合、悪意を持った閲覧者によるフォントファイルの不正利用を確実に抑制することできる。  
しかしながら、暗号化した分割フォントデータを復号する際、文書閲覧装置は、暗号化された分割フォントデータから復号鍵を抽出する処理と、復号鍵に基づいて復号する処理と、分割フォントデータを結合する処理とを実行する必要がある。
【００２１】
このため、暗号化した分割フォントデータでは、文書閲覧装置において、取得したマークアップ文書の文字を作成者の意図通りのフォントで閲覧可能にするまでの処理時間が長くなるという問題がある。
【００２２】
これに対して、フォント配信システム、及びフォント配信方法は、文書閲覧装置において、所定の情報に基づいて難読化情報と分割フォントデータとを分離する分離処理と、複数の分割フォントデータを結合する結合処理とを実行するだけで、配信フォントファイルを効率よく、かつ暗号化した場合に比べて少ない工程数で使用可能にすることができる。
【００２３】
すなわち、フォント配信システム、及びフォント配信方法は、暗号化した場合に比べて文字の表示に要する処理時間を短くすることができる。  
従って、フォント配信システム、及びフォント配信方法は、文字の表示に要する処理時間を犠牲にすることなく、フォントの不正利用を抑制することができる。
【００２４】
さらに、本発明は、複数のフォントを記憶するフォント記憶手段と、マークアップ文書における文字を示す文字情報及び書体名を示す書体情報に対応するフォントを、フォント記憶手段から抽出して列挙格納したフォントファイルを生成するフォントファイル生成手段と、フォントファイルに基づいて配信フォントファイルを生成する配信フォントファイル生成手段とで構成するとともに、通信回線と接続したフォント生成装置を備え、配信フォントファイル生成手段を、フォントファイルを所定の分割数で分割して、複数の分割フォントデータを生成するファイル分割処理と、分割フォントデータに難読化情報を付加して、複数の配信フォントファイルを生成する難読化処理とを実行する構成としたことを特徴とする。
【００２５】
これにより、フォント配信システムは、文字の表示に要する処理時間を犠牲にすることなく、フォントの不正利用を抑制できる複数の配信フォントファイルを生成して配信することができる。
【００２６】
加えて、本発明は、通信回線を介して文書閲覧装置に所定の情報を配信する所定情報配信装置を備え、フォント生成装置に、所定の情報の配信を要求する要求命令文を生成する命令文生成手段を備え、文書閲覧装置に、要求命令文を登録したマークアップ文書における要求命令文に基づいて、所定の情報の配信を所定情報配信装置に要求する所定情報要求手段を備えたことを特徴とする。
【００２７】
これにより、フォント配信システムは、フォントの不正利用をより抑制するとともに、文書作成者の利便性を向上することができる。 
具体的には、フォント生成装置において要求命令文を生成するため、フォント配信システムは、文書作成者によるマークアップ文書への所定の情報の記述を不要にできるとともに、マークアップ文書への要求命令文の登録を容易にすることができる。このため、フォント配信システムは、文書作成者の利便性を向上することができる。
【００２８】
さらに、文書閲覧装置が所定の情報を所定情報配信装置から取得できるため、フォント配信システムは、悪意を持った閲覧者によってマークアップ文書を分析され、所定の情報が特定されることを防止できる。これにより、フォント配信システムは、悪意を持った閲覧者によって、配信フォントファイルから分割フォントデータが分離、結合されることを抑制できる。 
従って、フォント配信システムは、フォントの不正利用をより抑制するとともに、文書作成者の利便性を向上することができる。
【００２９】
この発明の態様として、前記配信フォントファイルの前記難読化情報を、前記マークアップ文書に登録されるとともに、前記フォントを特定する登録フォント情報で構成し、前記文書閲覧装置の前記閲覧制御手段に、前記マークアップ文書の前記文字を前記フォントで閲覧可能にする所定の文字列を、前記登録フォント情報に基づいて前記マークアップ文書に追記する追記処理を備えることができる。
【００３０】
上記登録フォント情報は、ＨＴＭＬ文書においてフォントを特定するフォントファミリ名などとすることができる。  
上記所定の文字列は、ＨＴＭＬ文書において、フォントファミリ名に対応するフォントのエンコード形式などを、例えばスタイルシート言語タグなどで指定した文字列とすることができる。
【００３１】
この発明により、フォント配信システムは、フォントの不正利用をより抑制することができる。  
具体的には、追記処理によって所定の文字列をマークアップ文書に追記することで、文書閲覧装置は、初めてマークアップ文書の文字を作成者の意図通りのフォントで表示することができる。換言すると、マークアップ文書は、作成者の意図通りのフォントで文字を表示するのに必要な情報が不足した状態で作成、配信され、文書閲覧装置において、所定の文字列が追記されることで、作成者の意図通りのフォントで文字を表示するのに必要な情報を有する文書となる。
【００３２】
このため、例えば、スタイルシート、及びスタイルシートのＵＲＬを登録したＨＴＭＬファイルとで構成したＨＴＭＬ文書に対して、文書閲覧装置が所定の文字列をスタイルシートに追記する場合、フォント配信システムは、悪意を持った閲覧者が取得したＨＴＭＬファイルを解析しても、スタイルシートに追記した所定の文字列が特定されることを抑制できる。
【００３３】
これにより、悪意を持った閲覧者が配信フォントファイルからフォントファイルを再生成できたとしても、フォント配信システムは、悪意を持った閲覧者が作成したマークアップ文書の文字を、複製したフォントファイルのフォントで閲覧可能にすることを困難にできる。  
従って、フォント配信システムは、所定の文字列をマークアップ文書に追記する追記処理によって、フォントの不正利用をより抑制することができる。
【００３４】
また、この発明の態様として、前記配信フォントファイルの前記難読化情報を、ランダムな文字列で構成したダミー情報と、前記ダミー情報によって前記登録フォント情報を難読化した難読登録フォント情報とで構成し、前記文書閲覧装置の前記分離処理を、前記所定の情報に基づいて、前記難読登録フォント情報と、前記ダミー情報と、前記分割フォントデータとに分離する構成とし、前記文書閲覧装置の前記閲覧制御手段に、分離した前記難読登録フォント情報を、前記ダミー情報に基づいて前記登録フォント情報に復元する復元処理を備えることができる。
【００３５】
上記難読登録フォント情報は、例えばダミー情報と登録フォント情報との対比による登録フォント情報の置換、ダミー情報と登録フォント情報との四則演算などによって算出された値などとすることができる。
【００３６】
この発明により、フォント配信システムは、フォントの不正利用をより確実に抑制することができる。  
具体的には、フォント配信システムは、ダミー情報によって登録フォント情報をより難読化することができる。すなわち、難読化情報の解析がより困難となるため、フォント配信システムは、悪意を持った閲覧者によって登録フォント情報が抽出されることを防止できる。
【００３７】
これにより、難読化情報と分割フォントデータとを分離できたとしても、フォント配信システムは、所定の文字列がマークアップ文書に追記されることを阻止できる。このため、フォント配信システムは、悪意を持った閲覧者による配信フォントファイルの安易な複製や不正利用を抑制することができる。
【００３８】
そして、ダミー情報に基づいて難読登録フォント情報を復元するため、フォント配信システムは、難読登録フォント情報の復元に必要な情報を、文書閲覧装置が通信回線を介して外部から取得する手間を省くことができる。
【００３９】
さらに、例えば、ダミー情報と登録フォント情報との簡単な四則演算などによって難読登録フォント情報を構成することで、フォント配信システムは、登録フォント情報への復元に要する処理時間の増加を抑制することができる。このため、フォント配信システムは、登録フォント情報を暗号化した場合に比べて、登録フォント情報の復元に要する処理時間を犠牲にすることがない。
【００４０】
従って、フォント配信システムは、難読化情報をより難読化することで、文字の表示に要する処理時間を犠牲にすることなく、フォントの不正利用をより確実に抑制することができる。
【００４１】
また、この発明の態様として、前記配信フォントファイルの前記難読化情報を、ランダムな文字列で構成したダミー情報で構成することができる。  
この発明により、フォント配信システムは、文字の表示に要する処理時間を犠牲にすることなく、フォントの不正利用を抑制することができる。
【００４２】
具体的には、ダミー情報を含むことで、仮に配信フォントファイルを単純に結合したとしても、フォント配信システムは、文書閲覧装置がフォントファイルとして認識することを防止できる。このため、悪意を持った閲覧者が、複製した配信フォントファイルを結合しても、フォントファイルとして使用されることを抑制できる。
【００４３】
さらに、ダミー情報をランダムな文字列とすることで、配信フォントファイルの構造の特定を困難にすることができる。このため、悪意を持った閲覧者が、複製した配信フォントファイルから分割フォントデータを特定することを困難にすることができる。
【００４４】
加えて、所定の情報に基づいてダミー情報を配信フォントファイルから分離して、分割フォントデータを抽出できるため、フォント配信システムは、マークアップ文書の文字を容易に閲覧可能にすることができる。  
従って、フォント配信システムは、難読化情報をダミー情報で構成することで、文字の表示に要する処理時間を犠牲にすることなく、フォントの不正利用を抑制することができる。
【００４５】
また、この発明の態様として、前記フォントファイルを示すフォントファイル情報、及び前記フォントに対する使用制限を示す制限情報を関連づけて登録したフォントテーブルを記憶するテーブル記憶手段と、前記フォントテーブルに基づいて、前記フォントの使用可否を判定する使用判定手段とで構成するとともに、前記通信回線に接続された認証装置を備え、前記使用判定手段を、前記フォントファイル情報に基づいて、前記フォントテーブルの前記制限情報を参照する参照処理と、前記制限情報が制限されていない情報を示す場合、前記フォントの使用を許可する許可情報を前記文書閲覧装置に送信する応答処理とを実行する構成とし、前記文書閲覧装置の前記閲覧制御手段を、前記フォントファイル情報に基づいて、前記フォントに対する使用制限を前記認証装置に問い合わせる問合せ処理を備えるとともに、前記許可情報を取得した場合、前記分離処理及び前記結合処理を実行する構成とすることができる。
【００４６】
上記フォントに対する使用制限とは、フォントファイルの使用期限による制限、サービスの有効期限による制限、マークアップ文書の閲覧回数による制限、あるいは使用料金の支払い状況による制限などとすることができる。  
上記認証装置は、独立した装置、あるいは配信フォントファイルを生成するフォント生成装置と同一の装置などとすることができる。
【００４７】
この発明により、フォント配信システムは、文書作成者によるフォントの不正利用を抑制することができる。  
具体的には、フォント配信システムは、文書閲覧装置における問合せ処理により、フォントの使用に関する認証を認証装置に対して要求することができる。
【００４８】
そして、許可情報を取得した場合、文書閲覧装置は、配信フォントファイルから分割フォントデータを分離するとともに、分割フォントデータを結合することができる。すなわち、認証装置を備えたフォント配信システムは、配信フォントファイルに対する利用制限を設定することができる。
【００４９】
これにより、例えば、マークアップ文書を作成した文書作成者が月額料金を納めていない場合、フォント配信システムは、文書作成者が使用しているフォントが継続して使用されることを制限できる。  
従って、フォント配信システムは、配信フォントファイルに対する利用制限を設定することで、文書作成者によるフォントの不正利用を抑制することができる。
【発明の効果】
【００５０】
本発明により、文字の表示に要する時間を犠牲にすることなく、フォントの不正利用を抑制することができるフォント配信システム、及びフォント配信方法を提供することができる。
【図面の簡単な説明】
【００５１】
【図１】フォント配信システムにおける構成を示す構成図。
【図２】フォント配信システムにおける内部構成を示すブロック図。
【図３】配信フォントファイルを説明する説明図。
【図４】登録テーブルにおける構成を示すテーブル構成図。
【図５】文書作成装置、認証サーバー、及びウェブサーバーにおける各種情報の受け渡しを示すシーケンス図。
【図６】認証サーバーにおける配信フォント生成処理の動作を示すフローチャート。
【図７】認証サーバー、ウェブサーバー、及び文書閲覧装置における各種情報の受け渡しを示すシーケンス図。
【図８】文書閲覧装置における文書閲覧処理の動作を示すフローチャート。
【図９】認証サーバーにおける認証処理の動作を示すフローチャート。
【図１０】文書閲覧処理における復元処理の動作を示すフローチャート。
【発明を実施するための形態】
【００５２】
この発明の一実施形態を以下図面と共に説明する。  
まず、本実施例におけるフォント配信システム１について、図１から図４を用いて詳しく説明する。  
なお、図１はフォント配信システム１における構成図を示し、図２はフォント配信システム１における内部構成のブロック図を示し、図３は配信フォントファイル群２５を説明する説明図を示し、図４は登録テーブル３５におけるテーブル構成図を示している。
【００５３】
フォント配信システム１は、図１に示すように、後述するＨＴＭＬ文書２４などの作成に用いる文書作成装置１０と、ＨＴＭＬ文書２４などの記憶及び配信に用いるウェブサーバー２０と、ＨＴＭＬ文書２４の表示に必要なフォント群の生成に用いる認証サーバー３０と、ＨＴＭＬ文書２４の閲覧に用いる文書閲覧装置４０とで構成され、それぞれ通信回線２を介して相互に通信可能に接続している。  
通信回線２は、ＬＡＮ回線、専用回線、インターネット回線などで構成している。
【００５４】
文書作成装置１０は、図１及び図２に示すように、操作部１１、表示部１２、記憶部１３、回線接続部１４、及び作成制御部１５で構成している。  
操作部１１は、キーボード１１ａやマウス１１ｂで構成し、作成者による入力操作を受け付ける機能を有している。  
表示部１２は、ＣＲＴあるいは液晶ディスプレイなどで構成し、各種情報を表示する機能を有している。
【００５５】
記憶部１３は、ハードディスクあるいは不揮発性メモリなどで構成し、各種情報を書き込んで記憶する機能と、各種情報を読み出す機能とを有している。  
回線接続部１４は、有線ＬＡＮカードあるいは無線ＬＡＮ子機などで構成し、通信回線２に接続する機能と、通信回線２を介してウェブサーバー２０、及び認証サーバー３０と各種情報の送受信を行う機能とを有している。
【００５６】
作成制御部１５は、ＣＰＵ及びメモリなどをハード構成と、プログラム及びデータなどのソフト構成とで構成し、作成者が文書作成装置１０を操作してＨＴＭＬ文書２４の作成を行う作成操作等の各種処理機能や、所定のバスを介して接続された各部の動作を制御する機能を有している。
【００５７】
ウェブサーバー２０は、図２に示すように、配信データ記憶部２１、回線接続部２２、及び配信制御部２３で構成している。  
配信データ記憶部２１は、ハードディスクあるいは不揮発性メモリなどで構成し、各種情報を書き込んで記憶する機能と、各種情報を読み出す機能とを有している。
【００５８】
この配信データ記憶部２１には、文書作成装置１０で作成され、後述する文書閲覧装置４０のＷＥＢブラウザ（図示省略）で閲覧可能な複数のＨＴＭＬ文書２４と、ＨＴＭＬ文書２４に関連付けられた配信フォントファイル群２５とを記憶している。
【００５９】
ＨＴＭＬ文書２４は、ＨＴＭＬ言語で記述されたＨＴＭＬファイル２６と、ＨＴＭＬファイル２６に関連付けられたスタイルシート２７、及びイメージファイル（図示省略）などで構成している。  
ＨＴＭＬファイル２６は、タイトルや本文を示す文字、ＨＴＭＬ言語やスタイルシート言語などで記述されたスタイルを指定するタグ、スタイルシート２７の読み込むタグ、及びイメージを指定するタグなどで構成している。
【００６０】
このＨＴＭＬファイル２６には、作成者の意図通りの書体で文字を再現するために必要なフォントを指定するフォントファミリ名などがスタイルシート言語タグで記述されるとともに、外部プログラムの配信を要求する要求命令文などがＪａｖａＳｃｒｉｐｔ（登録商標）で記述されている。
【００６１】
スタイルシート２７は、スタイルシート言語で記述されるとともに、ＨＴＭＬファイル２６のタグによってＷＥＢブラウザに読み込まれる外部ファイルであって、ＨＴＭＬファイル２６の文字やレイアウトなどのスタイルを指定するタグで構成している。
【００６２】
配信フォントファイル群２５は、ＨＴＭＬ文書２４に関連付けられるとともに、文書閲覧装置４０に配信される第１配信フォントファイル２８と、第２配信フォントファイル２９とで構成している。  
第１配信フォントファイル２８、及び第２配信フォントファイル２９は、ＨＴＭＬファイル２６における文字を示す文字コード、及びフォントファミリ名に基づいて構成されたフォント群であるサブセットフォント５０から生成されている。
【００６３】
より詳しくは、第１配信フォントファイル２８は、図３（ａ）に示すように、フォント情報２８１、キーワード情報２８２、及びｓａｌｔ情報２８３を列挙格納した難読化情報２８４と、第１分割フォントデータ２８５とで構成している。
【００６４】
フォント情報２８１は、サブセットフォント５０を特定する情報、例えば、グリフ数やフォントファミリ名を示す情報などを、ｓａｌｔ情報２８３によって難読化して構成している。なお、フォント情報２８１の生成については、後ほど詳しく説明する。
【００６５】
キーワード情報２８２は、難読化情報２８４において、フォント情報２８１と、ｓａｌｔ情報２８３とのデータ位置を区別するための情報であって、例えば「＠ｗｅｂｆｏｎｔ」などの適宜のワードで構成している。  
ｓａｌｔ情報２８３は、乱数を発生させる関数によって決定した１０から１６文字のランダムな文字列で構成している。
【００６６】
第１分割フォントデータ２８５は、図３（ｂ）に示すように、ＨＴＭＬファイル２６の文字を示す文字コードに対応するフォントを、作成者によって指定されたフォントファミリ名に対応する書体ファイルから抽出するとともに、列挙格納したサブセットフォント５０を、任意の位置で２つに分割生成したうちの一方で構成している。
【００６７】
第２配信フォントファイル２９は、図３（ａ）に示すように、ｓａｌｔ情報２９１と、第２分割フォントデータ２９２とで構成している。  
ｓａｌｔ情報２９１は、第１配信フォントファイル２８のｓａｌｔ情報２８３と同一の情報ため、詳細な説明を省略する。  
第２分割フォントデータ２９２は、図３（ｂ）に示すように、サブセットフォント５０を任意の位置で２つに分割生成したうちの他方で構成している。
【００６８】
回線接続部２２は、有線ＬＡＮカードあるいは無線ＬＡＮ子機などで構成し、通信回線２に接続する機能と、通信回線２を介して文書作成装置１０、認証サーバー３０、及び文書閲覧装置４０と各種情報の送受信を行う機能とを有している。
【００６９】
配信制御部２３は、ＣＰＵ及びメモリなどをハード構成と、プログラム及びデータなどのソフト構成とで構成し、文書作成装置１０、認証サーバー３０、及び文書閲覧装置４０との各種情報の受け渡し等に係る各種処理機能や、所定のバスを介して接続された各部の動作を制御する機能を有している。
【００７０】
認証サーバー３０は、図２に示すように、フォント記憶部３１、テーブル記憶部３２、回線接続部３３、及び認証制御部３４とで構成している。  
フォント記憶部３１は、ハードディスクあるいは不揮発性メモリなどで構成し、各種情報を書き込んで記憶する機能と、各種情報を読み出す機能とを有している。
【００７１】
このフォント記憶部３１には、仮名文字用のフォント群である仮名書体ファイル（図示省略）、漢字用のフォント群である漢字書体ファイル（図示省略）、英字用のフォント群である英字書体ファイル（図示省略）、及び数字用のフォント群である数字書体ファイル（図示省略）などの書体ファイルを記憶している。なお、フォントは、所定の大きさのアウトライン形式で、かつ明朝体やゴシック体などの書体で文字を再現するためのフォントプログラムとする。
【００７２】
テーブル記憶部３２は、ハードディスクあるいは不揮発性メモリなどで構成し、各種情報を書き込んで記憶する機能と、各種情報を読み出す機能とを有している。このテーブル記憶部３２には、配信フォントファイル群２５を特定する情報などを登録した登録テーブル３５と、配信フォントファイル群２５の生成サービスを利用する作成者を特定する契約情報テーブル３６などを記憶している。
【００７３】
登録テーブル３５は、図４に示すように、プランＩＤ欄３５１、フォントファミリ名欄３５２、グリフ数欄３５３、ＵＲＬ欄３５４、ｓａｌｔ欄３５５、配信フォントファイル名欄３５６、及び利用制限欄３５７を関連付けて登録している。
【００７４】
プランＩＤ欄３５１は、サブセットフォント５０及び配信フォントファイル群２５を特定する番号を示すプランＩＤを登録している。このプランＩＤは、生成したサブセットフォント５０及び配信フォントファイル群２５毎に設定管理されている。
【００７５】
フォントファミリ名欄３５２は、ＨＴＭＬファイル２６にスタイルシート言語タグで指定されるフォントファミリ名を登録している。  
グリフ数欄３５３は、サブセットフォント５０に格納されたグリフの数を示すグリフ数を登録している。
【００７６】
ＵＲＬ欄３５４は、ＨＴＭＬ文書２４、及び配信フォントファイル群２５をＷＥＢブラウザで閲覧する際に必要なウェブサーバー２０のＵＲＬを登録している。  
ｓａｌｔ欄３５５は、ｓａｌｔ情報２８３，２９１における文字列の文字数であるｓａｌｔ文字数を登録している。  
配信フォントファイル名欄３５６は、ＨＴＭＬ文書２４に基づいて生成された第１配信フォントファイル２８、及び第２配信フォントファイル２９のファイル名を登録している。
【００７７】
利用制限欄３５７は、配信フォントファイル群２５の利用に関する制限の有無を示す利用制限情報を登録している。例えば、料金の支払いが滞っていた場合、利用制限欄３５７に「利用制限あり」を示す利用制限情報を登録する。
【００７８】
契約情報テーブル３６は、詳細な図示を省略するが、作成者を特定する固有の番号である契約者ＩＤや、作成者の氏名、メールアドレス、クレジットカード情報、料金の支払状況、サービスの有効期限、及び作成者が作成した配信フォントファイル群２５を特定する固有の番号であるプランＩＤなどを関連付けて登録している。
【００７９】
回線接続部３３は、有線ＬＡＮカードあるいは無線ＬＡＮ子機などで構成し、通信回線２に接続する機能と、通信回線２を介して文書作成装置１０、ウェブサーバー２０、及び文書閲覧装置４０と各種情報の送受信を行う機能とを有している。
【００８０】
認証制御部３４は、ＣＰＵ及びメモリなどをハード構成と、プログラム及びデータなどのソフト構成とで構成し、文書作成装置１０、ウェブサーバー２０、及び文書閲覧装置４０との各種情報の受け渡し等に係る各種処理機能や、所定のバスを介して接続された各部の動作を制御する機能を有している。
【００８１】
文書閲覧装置４０は、図１及び図２に示すように、操作部４１、表示部４２、記憶部４３、回線接続部４４、及び閲覧制御部４５とで構成している。  
操作部４１は、キーボード４１ａやタッチパッド４１ｂで構成し、閲覧者による入力操作を受け付ける機能を有している。  
表示部４２は、液晶ディスプレイで構成し、各種情報を表示する機能を有している。
【００８２】
記憶部４３は、ハードディスクあるいは不揮発性メモリなどで構成し、各種情報を書き込んで記憶する機能と各種情報を読み出す機能とを有している。  
回線接続部４４は、有線ＬＡＮカードあるいは無線ＬＡＮ子機などで構成し、通信回線２に接続する機能と、通信回線２を介してウェブサーバー２０、及び認証サーバー３０と各種情報の送受信を行う機能とを有している。
【００８３】
閲覧制御部４５は、ＣＰＵ及びメモリなどをハード構成と、プログラム及びデータなどのソフト構成とで構成し、ウェブサーバー２０、及び認証サーバー３０との各種情報の受け渡し等に係る各種処理機能や、所定のバスを介して接続された各部の動作を制御する機能を有している。
【００８４】
以上のような構成のフォント配信システム１において、作成者が文書作成装置１０を操作して作成したＨＴＭＬ文書２４に基づいて、配信フォントファイル群２５を生成する際のフォント配信システム１の動作について図５から図６を用いて説明する。
【００８５】
なお、図５は文書作成装置１０、認証サーバー３０、及びウェブサーバー２０における各種情報の受け渡しのシーケンス図を示し、図６は認証サーバー３０における配信フォント生成処理の動作のフローチャートを示している。
【００８６】
まず、図５に示すように、文書作成装置１０において、ＨＴＭＬ文書２４を作成した作成者が、文書作成装置１０を操作して起動したＷＥＢブラウザ（図示省略）のＵＲＬ欄に、認証サーバー３０における配信フォントファイルの生成機能を呼び出すＵＲＬを入力する。そして、作成制御部１５は、ＵＲＬ送信処理を実行し（ステップＳ１０１）、入力されたＵＲＬを示すＵＲＬ情報を認証サーバー３０に送信する。なお、ＨＴＭＬ文書２４のＨＴＭＬファイル２６には、作成者の意図通りの書体で文字を再現するために必要なフォントを指定するフォントファミリ名がスタイルシート言語タグで記述されているものとする。
【００８７】
ＵＲＬ情報を取得すると、認証サーバー３０の認証制御部３４は、送信フォーム配信処理を開始する（ステップＳ１０２）。詳しくは、認証制御部３４は、ＨＴＭＬ文書２４の指定などを作成者に促す送信フォームを示す送信フォーム情報を、通信回線２を介して文書作成装置１０に送信する。
【００８８】
送信フォーム情報を取得すると、文書作成装置１０の作成制御部１５は、送信フォーム情報をメモリに一時記憶したのち、送信フォーム情報に基づいてフォント生成要求処理を開始する（ステップＳ１０３）。詳しくは、作成制御部１５は、送信フォーム情報に基づいて、契約者ＩＤ、ＨＴＭＬ文書２４、及びＨＴＭＬ文書２４を保存する保存先のＵＲＬの入力を促すメニュー画面（図示省略）をＷＥＢブラウザ上に表示させる。
【００８９】
そして、作成者がメニュー画面に従って、契約者ＩＤ、ＨＴＭＬ文書２４、ＨＴＭＬ文書２４のＵＲＬを入力して送信ボタンを押下すると、作成制御部１５は、契約者ＩＤ、ＨＴＭＬ文書２４、ＵＲＬをフォント生成情報として、通信回線２を介して認証サーバー３０に送信する。  
フォント生成情報を取得すると、認証サーバー３０の認証制御部３４は、配信フォントファイルを生成する配信フォント生成処理を開始する（ステップＳ１０４）。
【００９０】
配信フォント生成処理を開始すると、認証制御部３４は、図６に示すように、取得したＨＴＭＬ文書２４を解析する文書解析処理を開始する（ステップＳ１２１）。具体的には、認証制御部３４は、取得したＨＴＭＬファイル２６からタイトルや本文の文字を示す文字コード、及びフォントファミリ名を抽出する。
【００９１】
その後、認証制御部３４は、サブセット生成処理を開始し（ステップＳ１２２）、取得したフォントファミリ名に該当する書体ファイルをフォント記憶部３１から読み出すとともに、読み出した書体ファイルから文字コードに対応するフォントを抽出する。
【００９２】
そして、認証制御部３４は、抽出したフォントを文字コードと関連付けて列挙格納したサブセットフォント５０を出力する。この際、認証制御部３４は、サブセットフォント５０のグリフ数を算出するとともに、サブセットフォント５０に対するプランＩＤを生成する。
【００９３】
サブセットフォント５０を生成すると、認証制御部３４は、サブセットフォント５０を分割するサブセット分割処理を開始する（ステップＳ１２３）。この際、認証制御部３４は、サブセットフォント５０を所定のデータ位置において２つに分割し、これをそれぞれ第１分割フォントデータ２８５、及び第２分割フォントデータ２９２とする。
【００９４】
第１分割フォントデータ２８５、及び第２分割フォントデータ２９２を生成すると、認証制御部３４は、難読化情報２８４を生成する難読化情報生成処理を開始する（ステップＳ１２４）。詳しくは、認証制御部３４は、乱数関数によって１０から１６の間でランダムな整数値を１つ発生させる。この整数値をｓａｌｔ文字数とし、認証制御部３４は、ｓａｌｔ文字数分のランダムな文字列を生成して、ｓａｌｔ情報２８３，２９１として出力する。
【００９５】
さらに、認証制御部３４は、サブセット生成処理で取得したグリフ数、及びＨＴＭＬファイル２６から取得したフォントファミリ名を結合して結合文字列を生成する。そして、認証制御部３４は、結合文字列の文字を示す文字コードと、ｓａｌｔ情報２８３における文字を示す文字コードとを１文字ずつ論理積や排他的論理和による演算で置換してフォント情報２８１として出力する。  
その後、認証制御部３４は、フォント情報２８１、キーワード情報２８２、及びｓａｌｔ情報２８３をこの順番で結合して難読化情報２８４を生成する。
【００９６】
難読化情報２８４を生成すると、認証制御部３４は、フォントファイル生成処理を開始する（ステップＳ１２５）。詳しくは、認証制御部３４は、難読化情報２８４と第１分割フォントデータ２８５とを、この順番で結合して第１配信フォントファイル２８として出力する。
【００９７】
さらに、認証制御部３４は、ｓａｌｔ情報２９１と第２分割フォントデータ２９２とを、この順番で結合して第２配信フォントファイル２９として出力する。この際、認証制御部３４は、第１配信フォントファイル２８及び第２配信フォントファイル２９のファイル名をランダムな文字列に変換して出力する。
【００９８】
第１配信フォントファイル２８及び第２配信フォントファイル２９を生成すると、認証制御部３４は、テーブル登録処理を開始する（ステップＳ１２６）。詳述すると、認証制御部３４は、テーブル記憶部３２に記憶した登録テーブル３５、及び契約情報テーブル３６を読み出して、上述した処理で取得した各種情報をそれぞれ登録する。
【００９９】
例えば、登録テーブル３５において、認証制御部３４は、サブセット生成処理で取得したプランＩＤをプランＩＤ欄３５１に登録し、ＨＴＭＬファイル２６から取得したフォントファミリ名をフォントファミリ名欄３５２に登録しサブセット生成処理で取得したグリフ数をグリフ数欄３５３に登録し、フォント生成情報から取得したＵＲＬをＵＲＬ欄３５４に登録する。
【０１００】
さらに、認証制御部３４は、難読化情報生成処理で出力したｓａｌｔ文字数をｓａｌｔ欄３５５に登録し、第１配信フォントファイル２８、及び第２配信フォントファイル２９のファイル名を配信フォントファイル名欄３５６に登録し、契約情報テーブル３６に基づいて利用制限の有無を利用制限欄３５７に登録する。  
加えて、契約情報テーブル３６において、認証制御部３４は、フォント生成情報から取得した契約者ＩＤと、サブセット生成処理で取得したプランＩＤとを関連付けて登録する。
【０１０１】
その後、認証制御部３４は、配信フォントファイル群２５を復元する復元プログラムの配信を要求する要求命令文を生成する要求命令文生成処理を開始する（ステップＳ１２７）。  
なお、詳細な図示を省略するが、この要求命令文は、プランＩＤが関連付けられて登録されるとともに、ＨＴＭＬファイル２６に記述することで、プランＩＤに基づいて復元プログラムの配信を要求する文字列であって、ＪａｖａＳｃｒｉｐｔで生成されている。
【０１０２】
要求命令文を生成すると、認証制御部３４は、応答情報送信処理を開始し（ステップＳ１２８）、生成した第１配信フォントファイル２８、第２配信フォントファイル２９、及び要求命令文を応答情報として、通信回線２を介して文書作成装置１０に送信する。その後、認証制御部３４は、配信フォント生成処理を終了する。
【０１０３】
図５に戻り、応答情報を取得すると、文書作成装置１０の作成制御部１５は、ＷＥＢブラウザを介して、第１配信フォントファイル２８及び第２配信フォントファイル２９を記憶部１３に保存するよう促すメッセージ、及び要求命令文を表示するとともに、ＨＴＭＬファイル２６に追記するよう促すメッセージを表示する。
【０１０４】
その後、作成者は、文書作成装置１０を操作して、第１配信フォントファイル２８及び第２配信フォントファイル２９を記憶部１３に保存するとともに、ＨＴＭＬファイル２６における所定の箇所に要求命令文を追記する。
【０１０５】
そして、作成者の操作によって、文書作成装置１０の作成制御部１５は、ＨＴＭＬ文書２４、及び配信フォントファイル群２５を、ウェブサーバー２０に送信登録する文書送信処理を開始する（ステップＳ１０５）。この際、作成制御部１５は、ＨＴＭＬ文書２４、第１配信フォントファイル２８、及び第２配信フォントファイル２９を関連付けて登録情報として、通信回線２を介してウェブサーバー２０に送信する。
【０１０６】
ＨＴＭＬ文書２４、第１配信フォントファイル２８、及び第２配信フォントファイル２９を取得すると、ウェブサーバー２０の配信制御部２３は、文書登録処理を開始して（ステップＳ１０６）、取得したＨＴＭＬ文書２４、第１配信フォントファイル２８、及び第２配信フォントファイル２９を配信データ記憶部２１に記憶する。
【０１０７】
このようにして、フォント配信システム１は、ＨＴＭＬ文書２４に基づいて、第１配信フォントファイル２８及び第２配信フォントファイル２９からなる配信フォントファイル群２５を生成するとともに、ＨＴＭＬ文書２４及び配信フォントファイル群２５を配信可能にする。
【０１０８】
次に、文書閲覧装置４０を閲覧者が操作してＨＴＭＬ文書２４を閲覧する際におけるフォント配信システム１の動作について図７から図１０を用いて詳しく説明する。  
なお、図７は認証サーバー３０、ウェブサーバー２０、及び文書閲覧装置４０における各種情報の受け渡しのシーケンス図を示し、図８は文書閲覧装置４０における文書閲覧処理の動作のフローチャートを示し、図９は認証サーバー３０における認証処理の動作のフローチャートを示し、図１０は文書閲覧処理における復元処理の動作のフローチャートを示している。
【０１０９】
まず、図７に示すように、文書閲覧装置４０において、ＨＴＭＬ文書２４の閲覧を希望する閲覧者の操作によって起動したＷＥＢブラウザ（図示省略）のＵＲＬ欄に、ウェブサーバー２０にアクセスするＵＲＬが入力されると、閲覧制御部４５は、入力されたＵＲＬをＵＲＬ情報として、通信回線２を介してウェブサーバー２０に送信するＵＲＬ送信処理を実行する（ステップＳ１１１）。
【０１１０】
ＵＲＬ情報を取得すると、ウェブサーバー２０の配信制御部２３は、文書配信処理を実行して（ステップＳ１１２）、取得したＵＲＬ情報に対応するＨＴＭＬ文書２４を配信データ記憶部２１から読み出して文書情報として、通信回線２を介して文書閲覧装置４０に送信する。
【０１１１】
文書情報を取得すると、文書閲覧装置４０の閲覧制御部４５は、文書情報をＨＴＭＬ文書２４として記憶部４３に記憶するとともに、ＨＴＭＬ文書２４を解析してＷＥＢブラウザで閲覧可能にする文書閲覧処理を実行する（ステップＳ１１３）。
【０１１２】
文書閲覧処理を開始すると、文書閲覧装置４０の閲覧制御部４５は、図８に示すように、ＨＴＭＬファイル２６に登録された要求命令文に基づいて、復元プログラムの配信を要求する復元プログラム要求処理を開始する（ステップＳ１３１）。詳しくは、閲覧制御部４５は、要求命令文から取得したプランＩＤを関連付けた復元プログラム要求情報を、通信回線２を介して認証サーバー３０に送信する。
【０１１３】
復元プログラム要求情報を取得すると、認証サーバー３０の認証制御部３４は、図７に示すように、認証処理を開始する（ステップＳ１１４）。  
認証処理を開始すると、認証制御部３４は、図９に示すように、テーブル参照処理を開始する(ステップＳ１４１)。詳しくは、認証制御部３４は、テーブル記憶部３２の登録テーブル３５を参照して、取得したプランＩＤと一致するプランＩＤ欄３５１のプランＩＤを検索する。
【０１１４】
そして、認証制御部３４は、プランＩＤ欄３５１のプランＩＤに関連付けられて登録しているｓａｌｔ欄３５５のｓａｌｔ文字数、ＵＲＬ欄３５４のＵＲＬ、配信フォントファイル名欄３５６のファイル名、及び利用制限欄３５７の利用制限情報を読み出す。
【０１１５】
その後、認証制御部３４は、プランＩＤに対して利用制限の有無を判定する（ステップＳ１４２）。利用制限がなければ（ステップＳ１４２：Ｎｏ）、認証制御部３４は、復元プログラム生成処理を開始し（ステップＳ１４３）、第１配信フォントファイル２８及び第２配信フォントファイル２９の取得と、復元とを文書閲覧装置４０において行う復元プログラムを生成する。
【０１１６】
この際、認証制御部３４は、登録テーブル３５から取得したｓａｌｔ文字数、ＵＲＬ、及び配信フォントファイル名と、キーワード情報とを関連付けて、復元プログラムを生成する。  
なお、この復元プログラムは、例えば、ＪａｖａＳｃｒｉｐｔで記述されたスクリプトコードであって、ＷＥＢブラウザ上で実行されるプログラムである。
【０１１７】
復元プログラムを生成すると、認証制御部３４は、復元プログラム配信処理を開始し（ステップＳ１４４）、生成した復元プログラムを通信回線２を介して文書閲覧装置４０に配信する。復元プログラムを配信すると、認証制御部３４は、認証処理を終了する。
【０１１８】
一方、ステップＳ１４２において、利用制限がある場合（ステップＳ１４２：Ｙｅｓ）、認証制御部３４は、エラー処理を開始し（ステップＳ１４５）、復元プログラムを生成することなく、認証処理を終了する。
【０１１９】
図８のステップＳ１３１に戻り、復元プログラム要求処理を完了すると、文書閲覧装置４０の閲覧制御部４５は、復元プログラムを取得したか否かを判定する（ステップＳ１３２）。復元プログラムを取得すると（ステップＳ１３２：Ｙｅｓ）、閲覧制御部４５は、復元プログラムをメモリに一時記憶したのち、復元プログラムをＷＥＢブラウザ上で実行する。
【０１２０】
その後、閲覧制御部４５は、復元プログラムに基づいて、フォント配信要求処理を開始する（ステップＳ１３３）。詳しくは、閲覧制御部４５は、復元プログラムに格納された配信フォントファイル名に基づいて、第１配信フォントファイル２８及び第２配信フォントファイル２９からなる配信フォントファイル群２５の配信を要求するフォント要求情報を、通信回線２を介してウェブサーバー２０に送信する。
【０１２１】
フォント要求情報を取得すると、ウェブサーバー２０の配信制御部２３は、図７に示すように、フォント配信処理を開始し（ステップＳ１１５）、配信データ記憶部２１に記憶している第１配信フォントファイル２８及び第２配信フォントファイル２９を配信フォントファイル群２５として、通信回線２を介して文書閲覧装置４０に送信する。
【０１２２】
図８に戻り、文書閲覧装置４０の閲覧制御部４５は、フォント配信要求処理を完了すると、配信フォントファイル群２５を取得したか否かを判定する（ステップＳ１３４）。配信フォントファイル群２５を取得していなければ（ステップＳ１３４：Ｎｏ）、閲覧制御部４５は、配信フォントファイル群２５を取得するまで一定時間、処理を待機する。
【０１２３】
一方、配信フォントファイル群２５を取得すると（ステップＳ１３４：Ｙｅｓ）、閲覧制御部４５は、取得した配信フォントファイル群２５、すなわち第１配信フォントファイル２８及び第２配信フォントファイル２９を記憶部４３に記憶する。
【０１２４】
その後、閲覧制御部４５は、復元プログラムに基づいて、記憶部４３から読み出した第１配信フォントファイル２８及び第２配信フォントファイル２９を復元する復元処理を開始する（ステップＳ１３５）。
【０１２５】
復元処理を開始すると、閲覧制御部４５は、図１０に示すように、復元プログラムに格納されたＵＲＬと、ＷＥＢブラウザが取得しているＵＲＬとが一致する否かを判定する（ステップＳ１５１）。
【０１２６】
ＵＲＬが一致している場合（ステップＳ１５１：Ｙｅｓ）、閲覧制御部４５は、復元プログラムに格納されたキーワード情報に基づいて、第１配信フォントファイル２８を検索して、キーワード情報２８２の位置を検出するキーワード検出処理を開始する（ステップＳ１５２）。
【０１２７】
その後、閲覧制御部４５は、第１配信フォントファイル２８及び第２配信フォントファイル２９から第１分割フォントデータ２８５及び第２分割フォントデータ２９２を分離する分離処理を開始する。
【０１２８】
より詳しくは、閲覧制御部４５は、復元プログラムに基づいて、第１配信フォントファイル２８からフォント情報２８１を分離する第１段階分離処理を開始する（ステップＳ１５３）。この際、閲覧制御部４５は、検出したキーワード情報２８２を起点にして前方に位置するデータ、すなわちフォント情報２８１を分離するとともに、難読化情報２８４におけるキーワード情報２８２も分離する。なお、閲覧制御部４５は、分離したフォント情報２８１をメモリに一時記憶する。
【０１２９】
フォント情報２８１及びキーワード情報２８２を分離すると、閲覧制御部４５は、復元プログラムに基づいて、ｓａｌｔ情報２８３、２９１を分離する第２段階分離処理を開始する（ステップＳ１５４）。
【０１３０】
詳しくは、閲覧制御部４５は、フォント情報２８１及びキーワード情報２８２を分離した第１配信フォントファイル２８の先頭から復元プログラムに格納されたｓａｌｔ文字数に対応するデータ長を分離して、第１分割フォントデータ２８５を抽出する。  
さらに、閲覧制御部４５は、第２配信フォントファイル２９の先頭から復元プログラムに格納されたｓａｌｔ文字数に対応するデータ長を分離して、第２分割フォントデータ２９２を抽出する。
【０１３１】
第２段階分離処理を完了すると、閲覧制御部４５は、復元プログラムに基づいて結合処理を開始し（ステップＳ１５５）、第１分割フォントデータ２８５と第２分割フォントデータ２９２とをこの順番で結合したデータをメモリに一時記憶する。すなわち、閲覧制御部４５は、第１分割フォントデータ２８５と第２分割フォントデータ２９２とを結合して取得したフォントをメモリに一時記憶する。
【０１３２】
第１分割フォントデータ２８５と第２分割フォントデータ２９２とを結合すると、閲覧制御部４５は、復元プログラムに基づいてフォント情報復元処理を開始する（ステップＳ１５６）。詳しくは、閲覧制御部４５は、第１配信フォントファイル２８から分離したｓａｌｔ情報２８３とフォント情報２８１との演算によって、グリフ数及びフォントファミリ名を結合した結合文字列に復元する。
【０１３３】
フォント情報２８１から結合文字列を復元すると、閲覧制御部４５は、復元プログラムに基づいてＨＴＭＬファイル２６に所定の文字列を追記するＨＴＭＬファイル追記処理を開始する（ステップＳ１５７）。
【０１３４】
詳しくは、閲覧制御部４５は、ＨＴＭＬファイル２６におけるフォントファミリ名の記述箇所を、結合文字列から取得したフォントファミリ名で特定する。そして、閲覧制御部４５は、フォントファミリ名の記述箇所に対して、ＨＴＭＬファイル２６の文字をメモリに一時記憶したフォントで表示するために必要な所定の文字列を、スタイルシート言語タグを用いて追記する。
【０１３５】
例えば、閲覧制御部４５は、ＨＴＭＬファイル２６におけるフォントファミリ名の記述箇所に、メモリに一時記憶したフォントのエンコード形式などを、スタイルシート言語タグを用いて追記する。あるいは、閲覧制御部４５は、ＨＴＭＬファイル２６におけるフォントファミリ名の記述箇所に、ＨＴＭＬファイル２６の文字をメモリに一時記憶したフォントで表示するのに必要な文字列であって、不足している文字列を、スタイルシート言語タグを用いて追記する。  
ＨＴＭＬファイル追記処理を完了すると、閲覧制御部４５は、復元処理を終了して、処理を図８のステップＳ１３５に戻す。
【０１３６】
なお、図１０のステップＳ１５１において、ＵＲＬが一致しなければ（ステップＳ１５１：Ｎｏ）、閲覧制御部４５は、エラー処理を開始して（ステップＳ１５８）、所望するフォントを取得できなかったことを示す復元エラー情報を出力したのち、復元処理を終了する。
【０１３７】
図８のステップＳ１３５に戻り、閲覧制御部４５は、復元プログラムに基づいて、復元エラー情報を取得したか否かを判定する（ステップＳ１３６）。復元エラー情報を取得していなければ（ステップＳ１３６：Ｎｏ）、閲覧制御部４５は、置換表示処理を開始し（ステップＳ１３７）、ＨＴＭＬファイル２６の文字をメモリに一時記憶したフォントで閲覧可能に再現してＷＥＢブラウザに表示させる。その後、閲覧制御部４５は、文書閲覧処理を終了する。
【０１３８】
図８のステップＳ１３２において、一定時間の間に復元プログラムを取得しなければ（ステップＳ１３２：Ｎｏ）、あるいはステップＳ１３６において、復元エラー情報を取得していれば（ステップＳ１３６：Ｙｅｓ）、閲覧制御部４５は、通常表示処理を開始し（ステップＳ１３８）、ＨＴＭＬファイル２６に記述された代替フォントファミリ名のフォント、あるいはＷＥＢブラウザに予め設定された書体名のフォントで、ＨＴＭＬファイル２６の文字を閲覧可能にしてＷＥＢブラウザに表示させる。その後、閲覧制御部４５は、文書閲覧処理を終了する。
【０１３９】
ＷＥＢブラウザにＨＴＭＬ文書２４を表示させると、復元プログラムに基づいて、閲覧制御部４５は、図７に示すように、ログ情報送信処理を開始し（ステップＳ１１６）、プランＩＤ、結合文字列から取得したグリフ数、及びフォントファミリ名を関連付けたログ情報を、通信回線２を介して認証サーバー３０に送信する。  
ログ情報を取得すると、認証サーバー３０の認証制御部３４は、ログ登録処理を開始し（ステップＳ１１７）、プランＩＤ、グリフ数、フォントファミリ名を関連付けて配信フォントファイル群２５の配信実績として所定のログテーブル（図示省略）に記憶する。
【０１４０】
以上のような動作を実現するフォント配信システム１、及びフォント配信方法は、文字の表示に要する時間を犠牲にすることなく、フォントの不正利用を抑制することができる。
【０１４１】
具体的には、サブセットフォント５０を第１配信フォントファイル２８及び第２配信フォントファイル２９に分割して配信することで、フォント配信システム１、及びフォント配信方法は、悪意を持った閲覧者によるサブセットフォント５０の特定を困難にすることができる。
【０１４２】
さらに、第１分割フォントデータ２８５に難読化情報２８４を付加するとともに、第２分割フォントデータ２９２にｓａｌｔ情報２９１を付加しているため、フォント配信システム１、及びフォント配信方法は、第１配信フォントファイル２８及び第２配信フォントファイル２９の解析を困難にすることができる。
【０１４３】
このため、仮に難読化情報２８４を含む第１配信フォントファイル２８とｓａｌｔ情報２９１を含む第２配信フォントファイル２９とを結合したとしても、文書閲覧装置４０は、結合された第１配信フォントファイル２８及び第２配信フォントファイル２９を、サブセットフォント５０として認識することができない。これにより、フォント配信システム１、及びフォント配信方法は、悪意を持った閲覧者による安易な複製を抑制することができる。  
【０１４４】
加えて、フォント配信システム１、及びフォント配信方法は、例えば、第１分割フォントデータ及び第２分割フォントデータを暗号化して配信した場合に比べて、ＨＴＭＬ文書２４の文字を閲覧可能にするまでの処理時間を短くすることができる。
【０１４５】
より詳しくは、例えば、暗号化した第１分割フォントデータ及び第２分割フォントデータを復号する際、文書閲覧装置４０は、暗号化された第１分割フォントデータ及び第２分割フォントデータから復号鍵を抽出する処理と、復号鍵に基づいて復号する処理と、第１分割フォントデータ及び第２分割フォントデータを結合する処理とを実行する必要がある。
【０１４６】
このため、暗号化した第１分割フォントデータ及び第２分割フォントデータでは、文書閲覧装置４０において、取得したＨＴＭＬ文書２４の文字を作成者の意図通りのフォントで閲覧可能にするまでの処理時間が長くなるという問題がある。
【０１４７】
これに対して、フォント配信システム１、及びフォント配信方法は、文書閲覧装置４０において、分離処理と結合処理とを実行するだけで、第１配信フォントファイル２８及び第２配信フォントファイル２９を効率よく、かつ暗号化した場合に比べて少ない工程数でメモリに一時記憶することができる。
【０１４８】
すなわち、フォント配信システム１、及びフォント配信方法は、暗号化した場合に比べて文字の表示に要する処理時間を短くすることができる。  
従って、フォント配信システム１、及びフォント配信方法は、文字の表示に要する処理時間を犠牲にすることなく、フォントの不正利用を抑制することができる。
【０１４９】
また、通信回線２と接続した認証サーバー３０の認証制御部３４を、サブセット分割処理と、難読化情報生成処理と、フォントファイル生成処理とを実行する構成としたことにより、フォント配信システム１は、文字の表示に要する処理時間を犠牲にすることなく、フォントの不正利用を抑制できる第１配信フォントファイル２８及び第２配信フォントファイル２９を生成して配信することができる。
【０１５０】
また、フォント情報２８１から復元された結合文字列のフォントファミリ名に基づいてＨＴＭＬファイル追記処理を、文書閲覧装置４０の閲覧制御部４５が実行することにより、フォント配信システム１は、フォントの不正利用をより抑制することができる。
【０１５１】
具体的には、ＨＴＭＬファイル追記処理よって、所定の文字列をＨＴＭＬ文書２４に追記することで、文書閲覧装置４０は、初めてＨＴＭＬ文書２４の文字をメモリに一時記憶したフォントで表示することができる。換言すると、ＨＴＭＬ文書２４は、メモリに一時記憶したフォントで文字を表示するのに必要な情報が不足した状態で作成、配信され、文書閲覧装置４０において、所定の文字列が追記されることで、メモリに一時記憶したフォントで文字を表示するのに必要な情報を有するＨＴＭＬ文書２４となる。
【０１５２】
これにより、悪意を持った閲覧者が第１配信フォントファイル２８及び第２配信フォントファイル２９からサブセットフォント５０を再生成できたとしても、フォント配信システム１は、悪意を持った閲覧者が作成したＨＴＭＬ文書２４の文字を、複製したサブセットフォント５０のフォントで閲覧可能にすることを困難にできる。
【０１５３】
従って、フォント配信システム１は、所定の文字列をＨＴＭＬ文書２４に追記するＨＴＭＬファイル追記処理によって、フォントの不正利用をより抑制することができる。
【０１５４】
また、文書閲覧装置４０の第１段階分離処理、及び第２段階分離処理によって、フォント情報２８１、ｓａｌｔ情報２８３、及び第１分割フォントデータ２８５に第１配信フォントファイル２８を分離するとともに、フォント情報復元処理によって、フォント情報２８１をグリフ数、フォントファミリ名に復元することにより、フォント配信システム１は、フォントの不正利用をより確実に抑制することができる。
【０１５５】
具体的には、フォント配信システム１は、ｓａｌｔ情報２８３によってグリフ数及びフォントファミリ名からなる結合文字列をより難読化することができる。すなわち、難読化情報２８４の解析がより困難となるため、フォント配信システム１は、悪意を持った閲覧者によってグリフ数やフォントファミリ名が抽出されることを防止できる。
【０１５６】
これにより、難読化情報２８４と第１分割フォントデータ２８５とを分離できたとしても、フォント配信システム１は、所定の文字列がＨＴＭＬファイル２６に追記されることを阻止できる。このため、フォント配信システム１は、悪意を持った閲覧者による配信フォントファイル群２５の安易な複製や不正利用を抑制することができる。
【０１５７】
そして、ｓａｌｔ情報２８３に基づいてフォント情報２８１を復元するため、フォント配信システム１は、フォント情報２８１の復元に必要な情報を、文書閲覧装置４０が通信回線２を介して外部から取得する手間を省くことができる。
【０１５８】
さらに、例えば、ｓａｌｔ情報２８３と結合文字列との簡単な四則演算などによってフォント情報２８１を生成することで、フォント配信システム１は、結合文字列への復元に要する処理時間の増加を抑制することができる。このため、フォント配信システム１は、結合文字列を暗号化した場合に比べて、結合文字列の復元に要する処理時間を犠牲にすることがない。
【０１５９】
従って、フォント配信システム１は、難読化情報２８４をより難読化することで、文字の表示に要する処理時間を犠牲にすることなく、フォントの不正利用をより確実に抑制することができる。
【０１６０】
また、第２配信フォントファイル２９のｓａｌｔ情報２９１により、フォント配信システム１は、文字の表示に要する処理時間を犠牲にすることなく、フォントの不正利用を抑制することができる。
【０１６１】
具体的には、第２配信フォントファイル２９にｓａｌｔ情報２９１を含むことで、仮に第１配信フォントファイル２８及び第２配信フォントファイル２９を単純に結合したとしても、フォント配信システム１は、文書閲覧装置４０がフォントサブセット５０として認識することを防止できる。
【０１６２】
このため、悪意を持った閲覧者が、複製した第１配信フォントファイル２８及び第２配信フォントファイル２９を結合しても、サブセットフォント５０として使用されることを抑制できる。
【０１６３】
さらに、ｓａｌｔ情報２９１をランダムな文字列とすることで、第２配信フォントファイル２９の構造の特定を困難にすることができる。このため、悪意を持った閲覧者が、複製した第１配信フォントファイル２８及び第２配信フォントファイル２９から第１分割フォントデータ２８５及び第２分割フォントデータ２９２を特定することを困難にすることができる。
【０１６４】
加えて、ｓａｌｔ文字数に基づいてｓａｌｔ情報２９１を第２配信フォントファイル２９から分離して、第２分割フォントデータ２９２を抽出できるため、フォント配信システム１は、ＨＴＭＬ文書２４の文字を容易に閲覧可能にすることができる。
【０１６５】
従って、フォント配信システム１は、ｓａｌｔ情報２９１を第２分割フォントデータ２９２に付加することで、文字の表示に要する処理時間を犠牲にすることなく、フォントの不正利用を抑制することができる。
【０１６６】
また、認証サーバー３０の認証制御部３４を、登録テーブル参照処理と、利用制限がない場合、復元プログラムを文書閲覧装置４０に送信する復元プログラム配信処理とを実行する構成とし、文書閲覧装置４０の閲覧制御部４５に、プランＩＤに基づいて、フォントに対する利用制限を認証サーバー３０に問い合わせる復元プログラム要求処理を備え、閲覧制御部４５を、復元プログラムを取得した場合、分離処理及び結合処理を実行する構成としたことにより、フォント配信システム１は、作成者によるフォントの不正利用を抑制することができる。
【０１６７】
具体的には、フォント配信システム１は、文書閲覧装置４０における復元プログラム要求処理により、フォントの使用に関する認証を認証サーバー３０に対して要求することができる。
【０１６８】
そして、復元プログラムを取得した場合、文書閲覧装置４０は、第１配信フォントファイル２８及び第２配信フォントファイル２９をから第１分割フォントデータ２８５及び第２分割フォントデータ２９２を分離するとともに、これらを結合することができる。すなわち、フォント配信システム１は、配信された第１配信フォントファイル２８及び第２配信フォントファイル２９に対する利用制限を設定することができる。
【０１６９】
これにより、例えば、ＨＴＭＬ文書２４を作成した作成者が月額料金を納めていない場合、フォント配信システム１は、作成者が使用しているフォントが継続して使用されることを制限できる。  
従って、フォント配信システム１は、第１配信フォントファイル２８及び第２配信フォントファイル２９に対する利用制限を設定することで、作成者によるフォントの不正利用を抑制することができる。
【０１７０】
また、認証サーバー３０の認証制御部３４が、キーワード情報を格納した復元プログラムの配信を要求する要求命令文を生成し、文書閲覧装置４０の閲覧制御部４５が、ＨＴＭＬ文書２４の要求命令文に基づいて、復元プログラムの配信を認証サーバー３０に要求することにより、フォント配信システム１は、フォントの不正利用をより抑制するとともに、作成者の利便性を向上することができる。
【０１７１】
具体的には、認証サーバー３０において要求命令文を生成するため、フォント配信システム１は、作成者によるＨＴＭＬ文書２４へのキーワード情報２８２の記述を不要にできるとともに、ＨＴＭＬファイル２６への要求命令文の登録を容易にすることができる。このため、フォント配信システム１は、作成者の利便性を向上することができる。
【０１７２】
さらに、文書閲覧装置４０がキーワード情報を認証サーバー３０から取得できるため、フォント配信システム１は、悪意を持った閲覧者によってＨＴＭＬ文書２４を分析され、キーワード情報２８２が特定されることを防止できる。これにより、フォント配信システム１は、悪意を持った閲覧者によって、第１配信フォントファイル２８及び第２配信フォントファイル２９から第１分割フォントデータ２８５及び第２分割フォントデータ２９２９が分離、結合されることを抑制できる。  
従って、フォント配信システム１は、フォントの不正利用をより抑制するとともに、作成者の利便性を向上することができる。
【０１７３】
この発明の構成と、上述の実施形態との対応において、
この発明のマークアップ文書は、実施形態のＨＴＭＬ文書２４に対応し、
以下同様に、
文書配信装置は、ウェブサーバー２０に対応し、
配信フォントファイルは、第１配信フォントファイル２８、及び第２配信フォントファイル２９に対応し、
フォント配信装置は、ウェブサーバー２０に対応し、
文書配信要求手段、フォント配信要求手段、及び閲覧制御手段は、閲覧制御部４５に対応し、
記憶手段は、記憶部４３に対応し、
表示手段は、表示部４２に対応し、
フォントファイルは、サブセットフォント５０に対応し、
分割フォントデータは、第１分割フォントデータ２８５、及び第２分割フォントデータ２９２に対応し、
難読化情報は、難読化情報２８４、及びｓａｌｔ情報２９１に対応し、
所定の情報は、復元プログラムに格納されたキーワード情報、ｓａｌｔ文字数に対応し、
分離処理は、ステップＳ１５２からステップＳ１５４に対応し、
結合処理は、ステップＳ１５５に対応し、
フォント記憶手段は、フォント記憶部３１に対応し、
文字情報は、文字コードに対応し、
書体情報は、フォントファミリ名に対応し、
フォントファイル生成手段、及び配信フォントファイル生成手段は、認証制御部３４に対応し、
フォント生成装置は、認証サーバー３０に対応し、
ファイル分割処理は、ステップＳ１２３に対応し、
難読化処理は、ステップＳ１２４からステップＳ１２５に対応し、
登録フォント情報は、グリフ数及びフォントファミリ名からなる結合文字列に対応し、
追記処理は、ステップＳ１５７に対応し、
ダミー情報は、ｓａｌｔ情報２８３，２９１に対応し、
難読登録フォント情報は、フォント情報２８１に対応し、
復元処理は、ステップＳ１５６に対応し、
フォントファイル情報は、プランＩＤに対応し、
制限情報は、利用制限情報に対応し、
フォントテーブルは、登録テーブル３５に対応し、
テーブル記憶手段は、テーブル記憶部３２に対応し、
使用判定手段は、認証制御部３４に対応し、
認証装置は、認証サーバー３０に対応し、
参照処理は、ステップＳ１４１に対応し、
許可情報は、復元プログラムに対応し、
応答処理は、ステップＳ１４３からステップＳ１４４に対応し、
問合せ処理は、ステップＳ１３１に対応し、
所定情報配信装置は、認証サーバー３０に対応し、
命令文生成手段は、認証制御部３４に対応し、
所定情報要求手段は、閲覧制御部４５に対応するが、
この発明は、上述の実施形態の構成のみに限定されるものではなく、多くの実施の形態を得ることができる。
【０１７４】
例えば、ＨＴＭＬ文書２４を配信するとともに、配信フォントファイル群２５の配信するウェブサーバー２０としたが、これに限定せず、ＨＴＭＬ文書２４を配信するサーバーと、配信フォントファイル群２５を配信するサーバーとを別々に設けてもよい。
【０１７５】
また、フォントをフォントプログラムとしたが、これに限定せず、明朝体やゴシック体などの書体で形成された文字書体であってもよい。  
また、作成者がメニュー画面に従ってＨＴＭＬ文書２４を指定し認証サーバー３０に送信したが、これに限定せず、例えば、ＨＴＭＬファイル２６及びスタイルシート２７を予め１つのファイルに圧縮した圧縮ファイルを認証サーバー３０に送信するようにしてもよい。
【０１７６】
また、サブセットフォント５０から第１配信フォントファイル２８及び第２配信フォントファイル２９を生成したが、これに限定せず、仮名書体ファイルなどの書体ファイルから第１配信フォントファイル及び第２配信フォントファイルを生成してもよい。  
また、サブセットフォント５０を２つに分割したが、これに限定せず、適宜の数で分割してもよい。
【０１７７】
また、第１分割フォントデータ２８５に難読化情報２８４を付加し、第２分割フォントデータ２９２にｓａｌｔ情報２９１を付加したが、これに限定せず、第１分割フォントデータ２８５にｓａｌｔ情報２９１を付加し、第２分割フォントデータ２９２に難読化情報２８４を付加してもよい。あるいは、第１分割フォントデータ２８５、及び第２分割フォントデータ２９２にそれぞれ難読化情報２８４を付加してもよい。もしくは、第１分割フォントデータ２８５、及び第２分割フォントデータ２９２にそれぞれｓａｌｔ情報２９１を付加してもよい。
【０１７８】
また、フォント情報２８１、キーワード情報２８２、及びｓａｌｔ情報２８３の順で難読化情報２８４を構成したが、これに限定せず、適宜の順番としてもよい。  
また、グリフ数及びフォントファミリ名からなる結合文字列をｓａｌｔ情報２８３で難読化して難読化情報２８４を構成したが、これに限定せず、ｓａｌｔ情報２８３、あるいは結合文字列とｓａｌｔ情報２８３だけであってもよい。さらに、結合文字列でなく、フォントファミリ名などサブセットフォント５０を特定できる情報であれば適宜の情報としてもよい。
【０１７９】
また、キーワード情報２８２によって、フォント情報２８１とｓａｌｔ情報２８３とを区別したが、これに限定せず、難読化情報２８４の先頭からのデータ長によってフォント情報２８１とｓａｌｔ情報２８３とを区別する構成としてもよい。この際、復元プログラムには、フォント情報２８１のデータ長を示す情報と、ｓａｌｔ情報２８３のデータ長を示す情報とを格納する。
【０１８０】
また、復元プログラムにキーワード情報を格納して配信したが、これに限定せず、ＨＴＭＬファイル２６、あるいはスタイルシート２７にキーワード情報を予め記述してもよい。  
配信フォントファイル群２５を生成するとともに、利用制限の有無によって復元プログラムを配信する認証サーバー３０としたが、これに限定せず、配信フォントファイル群２５を生成するサーバーと、復元プログラムを配信するサーバーとを別々に設けてもよい。
【０１８１】
また、文書閲覧装置４０を、ＨＴＭＬファイル２６の要求命令文に基づいて、復元プログラムの配信を認証サーバー３０に要求するとともに、取得した復元プログラムに基づいて配信フォントファイル群２５を取得する構成とし、認証サーバー３０を、利用制限がない場合、復元プログラムを文書閲覧装置４０に配信する構成としたが、これに限定せず、文書閲覧装置４０を、ＨＴＭＬファイル２６に基づいて配信フォントファイル群２５を取得したのち、要求命令文に基づいて復元プログラムの配信を認証サーバー３０に要求する構成とし、認証サーバー３０を、利用制限がない場合、復元プログラムを文書閲覧装置４０に配信する構成としてもよい。
【０１８２】
あるいは、文書閲覧装置４０を、ＨＴＭＬファイル２６に基づいて、復元プログラムと配信フォントファイル群２５とを取得したのち、復元プログラムに基づいて認証サーバー３０にフォントの使用を問い合わせて、利用制限がない場合、第１段階分離処理、第２段階分離処理、及び結合処理を実行する構成としてもよい。
【０１８３】
キーワード情報を格納した復元プログラムを認証サーバー３０から配信する構成としたが、これに限定せず、復元プログラムに相当する記述をＨＴＭＬ文書２４に記述してもよい。  
あるいはキーワード情報を格納した復元プログラムをウェブサーバー２０から配信する構成としてもよい。これにより、例えば、自社サーバーにおいて復元プログラムの生成やメンテナンスを所望する企業など要望に容易に応じることができる。
【０１８４】
また、第１配信フォントファイル２８及び第２配信フォントファイル２９から第１分割フォントデータ２８５及び第２分割フォントデータ２９２を分離する分離処理として、第１配信フォントファイル２８からフォント情報２８１を分離する第１段階分離処理と、ｓａｌｔ情報２８３、２９１を分離する第２段階分離処理とで説明したが、これに限定せず、第１配信フォントファイル２８から難読化情報２８４を分離するとともに、第２配信フォントファイル２９からｓａｌｔ情報２９１を分離する第１段階分離処理と、難読化情報２８４をフォント情報２８１、キーワード情報２８２、及びｓａｌｔ情報２８３に分離する第２段階分離処理としてもよい。
【０１８５】
また、文書閲覧装置４０において、ウェブサーバー２０から取得した第１配信フォントファイル２８及び第２配信フォントファイル２９を記憶部４３に記憶したが、これに限定せず、取得した第１配信フォントファイル２８及び第２配信フォントファイル２９をメモリに一時記憶してもよい。さらに、閲覧者の操作によって、ＨＴＭＬ文書２４の閲覧が終了すると、文書閲覧装置４０が記憶している第１配信フォントファイル２８及び第２配信フォントファイル２９を削除するようにしてもよい。
【０１８６】
また、第１分割フォントデータ２８５と第２分割フォントデータ２９２とを結合してメモリに一時記憶したが、これに限定せず、第１分割フォントデータ２８５と第２分割フォントデータ２９２とを結合して１つのフォントファイル、すなわちサブセットフォント５０を再生成し、文書閲覧装置４０の記憶部４３に記憶する、あるいはメモリに一時記憶するようにしてもよい。
【０１８７】
また、ＨＴＭＬファイル追記処理において、ＨＴＭＬファイル２６に所定の文字列を追記したが、これに限定せず、スタイルシート２７に所定の文字列を追記する構成としてもよい。これにより、フォント配信システム１は、悪意を持った閲覧者が取得したＨＴＭＬファイル２６を解析しても、スタイルシート２７に追記した所定の文字列が特定されることを抑制できる。
【０１８８】
また、配信フォントファイル群２５の利用に関する制限として、料金の支払いが滞っていた場合について説明したが、これに限定せず、例えば、サービスの有効期限が超過した場合、利用制限欄３５７に「利用制限あり」を示す利用制限情報を登録してもよい。
【０１８９】
あるいは、ＨＴＭＬ文書２４の閲覧回数が所定の回数を超過した場合、利用制限欄３５７に「利用制限あり」を示す利用制限情報を登録してもよい。この際、図７のログ登録処理（ステップＳ１１７）において、ログ情報を取得した回数を、ＨＴＭＬ文書２４の閲覧回数としてプランＩＤ毎に記憶する。これにより、例えば、閲覧回数に応じた利用料金の設定、及び利用制限を容易に行うことができる。
【符号の説明】
【０１９０】
１…フォント配信システム
２…通信回線
２０…ウェブサーバー
２４…ＨＴＭＬ文書
２８…第１配信フォントファイル
２９…第２配信フォントファイル
３０…認証サーバー
３１…フォント記憶部
３２…テーブル記憶部
３４…認証制御部
３５…登録テーブル
４０…文書閲覧装置
４２…表示部
４３…記憶部
４５…閲覧制御部
５０…サブセットフォント
２８１…フォント情報
２８４…難読化情報
２８５…第１分割フォントデータ
２９１…ｓａｌｔ情報
２９２…第２分割フォントデータ
【図１】
0005974024.tif 000002
【図２】
0005974024.tif 000003
【図３】
0005974024.tif 000004
【図４】
0005974024.tif 000005
【図５】
0005974024.tif 000006
【図６】
0005974024.tif 000007
【図７】
0005974024.tif 000008
【図８】
0005974024.tif 000009
【図９】
0005974024.tif 000010
【図１０】
0005974024.tif 000011