ウォークアップ印刷
【課題】ウォークアップ印刷を行う印刷システムを得る。
【解決手段】複数のユーザー用のコンピュータネットワークであって、サーバと、プリンタと、ネットワークユーザーが携帯するネットワークユーザー識別子と、プリンタに関連付けられているプリンタ識別子とを備え、使用時に、ネットワークユーザー識別子およびプリンタ識別子は、ネットワークユーザーの保留中のプリントアウトがネットワークユーザーの近くにあるプリンタに送信され印刷されるように相互にやり取りするコンピュータネットワークである。
【解決手段】複数のユーザー用のコンピュータネットワークであって、サーバと、プリンタと、ネットワークユーザーが携帯するネットワークユーザー識別子と、プリンタに関連付けられているプリンタ識別子とを備え、使用時に、ネットワークユーザー識別子およびプリンタ識別子は、ネットワークユーザーの保留中のプリントアウトがネットワークユーザーの近くにあるプリンタに送信され印刷されるように相互にやり取りするコンピュータネットワークである。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、印刷システム、ならびにとりわけ、インタラクティブペーパー、コンピュータパブリッシング、コンピュータアプリケーション、人間コンピュータインターフェイス、および情報家電を伴う印刷システムに関する。
[相互参照]
【表1】
【表2】
【表3】
【表4】
上記の同時係属出願の開示は、相互参照により本明細書に組み込まれる。いくつかの出願は、その整理番号により仮に識別される。これは、利用可能であれば対応するUSSNにより置き換えられる。
【背景技術】
【0002】
オフィス環境では、印刷すべき文書は、典型的には、ローカルコンピュータネットワークを介して、ネットワークに接続されている多数のプリンタのうちの1つに送信される。ノミネートされたプリンタは、通常、ユーザーにとって最も都合のよいプリンタであるが、ユーザーが印刷ジョブを送った直後に文書を回収しに行かない限り、印刷された文書はコレクショントレイ内に待機する。文書が機密文書であれば、そのプリンタのところを通る他の人にその内容が開示される危険性がある。
【発明の開示】
【0003】
第1の態様によれば、本発明は、複数のユーザーのためにコンピュータネットワークを実現し、コンピュータネットワークは、
サーバと、
プリンタと、
ネットワークユーザーが携帯するネットワークユーザー識別子と、
プリンタに関連付けられているプリンタ識別子とを備え、使用時に、
ネットワークユーザー識別子およびプリンタ識別子は、ネットワークユーザーの保留中のプリントアウトがネットワークユーザーの近くにあるプリンタに送信され印刷されるように相互にやり取りする。
【0004】
ユーザーがプリンタのところに来るまで印刷ジョブをネットワーク上に保留することにより、印刷文書は、ユーザーがその文書を回収しに来るまでコレクショントレイ内に置かれない。これにより、他者が機密文書を見る危険性が減じる。ネットワークに接続されているすべてのプリンタが個々のユーザーを識別するためのセンサを備えている場合、ユーザーは、プリンタを選択する(または既定のプリンタを指定する)必要はない。印刷ジョブは、オフィス内のユーザーの現在位置に関係なく最も都合のよいプリンタから収集することができる。
【0005】
Netpageシステムは、相互参照文書とともに以下の「詳細な説明」で包括的に説明される。このシステムでは、コンピュータに基づく、典型的にはネットワークに基づく情報およびアプリケーションとの用紙およびペンに基づくインターフェイスを使用する。ユーザーは、Netpage文書上のインタラクティブ要素をNetpageペンで「クリック」することにより印刷ジョブを要求することができ、したがって、印刷ジョブが要求されたときにネットワーク接続プリンタから、さらにはオフィスからも、離れていてもかまわない。本発明は、Netpageシステムに特に適合しており、この環境内での動作を特に参照しつつ説明される。しかし、本発明は、Netpageよりもかなり幅広い用途を有し、Netpage文書の印刷に制限または制約されないことは理解されるであろう。
【0006】
適宜、ネットワークは、プリンタ識別子のうちの1つにそれぞれ関連付けられている複数の前記プリンタと、
それぞれ異なるネットワークユーザーを一意に識別する複数の前記ネットワークユーザー識別子とを備える。
【0007】
適宜、ネットワークユーザー識別子のそれぞれは、トークンであり、プリンタ識別子のそれぞれは、トークンリーダーを持ち、これによりユーザーは、自分のトークンを複数のプリンタのうちの1つに関連付けられているトークンリーダーに提示し、そのプリンタを介したキューに入れられているプリントアウトの実際の印刷を要求する。
【0008】
適宜、トークンは、短距離RFIDタグ、スマートカード、または磁気ストライプカードである。
【0009】
適宜、トークンリーダーは、次に印刷を開始する関連付けられているプリンタの近くにそのユーザーがいることをサーバ上のウォークアップ処理アプリケーションに通知する。
【0010】
適宜、プリンタ識別子のそれぞれは、トークンであり、ネットワークユーザー識別子のそれぞれは、ユーザーに関連付けられているトークンリーダーを持つ。適宜、トークンリーダーは、光学センサを備える電子スタイラスであり、トークンは、符号化データが配置されるそれぞれのプリンタの表面であり、符号化データはそれぞれのユーザーの電子スタイラスの光学センサにより読取り可能である。
【0011】
適宜、保留プリントアウトは、サーバによりキュー内に保持され、それぞれの保留プリントアウトは、高い優先順位のプリントアウトが、キュー内の前の方の位置にあっても優先順位の低いプリントアウトの前に印刷されるような優先順位付けを持つ。
【0012】
適宜、トークンリーダーは、ユーザーがそのトークンをリーダーに提示したときにリーダーがそのトークンを読み取り、ユーザーとそのプリンタの両方を識別してサーバに指示するようにそれぞれのプリンタに関連付けられる。適宜、トークンは、ユーザーを明示的に識別する。適宜、トークンは、トークン識別子を持ち、サーバは、データベース検索を実行して、トークン識別子をユーザー識別子に翻訳する。適宜、トークンリーダーは、プリンタを明示的に識別する。適宜、リーダーは、リーダー識別子を持ち、サーバは、データベース検索を実行して、リーダー識別子をプリンタ識別子に翻訳する。
【0013】
適宜、トークンリーダーおよびプリンタは、電気的接続を有する別々のデバイスである。
【0014】
適宜、トークンリーダーは、プリンタ内に物理的に組み込まれる。適宜、リーダーは、ユーザーがトークンを提示していることをプリンタに知らせ、次いでプリンタは、ユーザーの保留プリントアウトを印刷のため明示的に取り出す。
【0015】
適宜、トークンは、セキュリティアクセスまたは識別バッジまたはカードである。
【発明を実施するための最良の形態】
【0016】
本発明の実施形態は、実施例により、付属の図面のみを参照しつつ説明される。
【0017】
上述のように、本発明は、譲受人のNetpageシステムに組み込むのに適している。この観点から、本発明は、より広いNetpageアーキテクチャの一コンポーネントとして説明されている。しかし、本発明は、他のコンピュータネットワークにも適用可能であることは容易に理解されるであろう。
【0018】
[Netpageアーキテクチャ]
[概要]
図1は、Netpageパブリッシャ、アプリケーション、サービス、およびデバイスの間のやり取りを示している。Netpage文書サービス1は、Netpageパブリッシャ3または他のNetpageアプリケーション4から文書2を受け入れ、Netpageプリンタ6を経由してプリントアウト5を生成する。プリントアウト5は、一連の用紙の片面または両面の一連のインプレッションからなる。文書2のグラフィックコンテンツを紙上に再現することに加えて、プリンタ6は、座標グリッドを不可視ミリメートルスケールのタグ7の配列の形で設定する(上で相互参照されている米国特許出願第10/309,358号を参照)。それぞれのタグは、インプレッション上のその位置の二次元座標とともにそのインプレッションの一意的な識別子を符号化する。タグがNetpageペン8により光学的撮像される場合(以下、および上で相互参照されている米国特許出願第10/815,636号を参照)、ペンは、対応するインプレッションだけでなく、そのインプレッションに関係するそれ独自の位置を識別することができる。ペン8のユーザーが座標グリッド7に関してペンを移動した場合、ペンは、位置のストリームを生成する。このストリームは、デジタルインク9と呼ばれる。デジタルインクストリームは、さらに、ペンが表面に接触したとき、および表面との接触を失ったときを記録し、これらのいわゆるペンダウンおよびペンアップイベントのそれぞれの対は、ペンを使用するユーザーが書くストロークを線引きする。
【0019】
Netpageタグパターン7は、典型的には、不可視赤外線インクを使用して印刷されるが、可視グラフィックコンテンツは、スペクトルの赤外線部分において透明であるカラーインクを使用して印刷される。Netpageペン8は、タグパターン7を邪魔しないように赤外線透過インクを利用する従来のマーキングペン先を組み込む。
【0020】
インプレッション識別子(タグ)は印刷されたインプレッションに自己を表すので、それらは、すべてのNetpageシステム間で一意になるように工学設計され、したがって、大域的割当てメカニズムに依存する。
【0021】
文書2は、コマンドおよびフォームデータ12を定義する入力記述11を含むことができる。コマンドは、ユーザーによりアクティブ化され得る命令であり、フォームは、ユーザーによる書込みが可能な指定フィールドを持つ。コマンドおよびフォームのフィールドは両方とも、アクティブゾーン、つまり、ユーザー入力を取り込むページの領域を持つ。
【0022】
Netpageデジタルインクサービス13は、Netpageペン8からデジタルインク9を受け入れる。ペンは、典型的には、短距離通信機能しか持たないため、それよりも長い距離にわたって通信できる機能を持つNetpageリレー14を介してデジタルインク9をNetpageデジタルインクサービス13に転送する。典型的なリレーは、携帯電話、PDA、およびパーソナルコンピュータを含む。
【0023】
デジタルインクサービス13は、デジタルインク9におけるインプレッション識別子7を使用して、対応するインプレッションおよび入力記述11を文書サービス1から取り出し、それぞれの個別デジタルインクストロークを入力記述11のフォームに割り当てようとする。ペン8のユーザーがフォームサブミットコマンドを指定したことが検出されると、フォームに割り当てられたデジタルインク9を解釈し、その結果得られたフォームデータ12をコマンドに関連付けられたアプリケーションにサブミットする。
【0024】
デジタルインクサービスが特定のインプレッションに関してペン入力を解釈できるようにするために、文書サービス1は、印刷するすべての入力記述11のコピーを保持する。
【0025】
ユーザーが任意に長い時間をかけてフォームに記入できるようにするために、デジタルインクサービス13は、少なくともデジタルインクが解釈され、アプリケーション4にサブミットされるまで、受け取るすべてのデジタルインク9のコピーを保持する。デジタルインクサービス13は、適宜、すべてのデジタルインク9を無期限に保持し、フォームコンテンツと文書注釈の両方のデジタルインク検索を可能にする。
【0026】
Netpageペン8、またはより単純なNetpageポインタを、携帯電話またはPDAなどのハンドヘルド型デバイスに直接組み込むことができる。逆に、ペンは、長距離通信機能を組み込むことができ、別にリレーを用意する必要はない。
【0027】
リレーデバイス14は、典型的には、インタラクティブディスプレイ15を組み込んでいるため、デジタルインクサービス13ではインタラクティブディスプレイ15をターゲットアプリケーション4に対して識別してアプリケーションがインタラクティブディスプレイと直接通信できるようにすることが可能であり、それにより、紙とペンを介して開始された対話操作が機能豊富な画面に基づく対話操作に到達し、一般的に、紙と画面の両方の媒体を最大限に活用する紙と画面に基づくハイブリッドアプリケーションの開発が可能になる。
【0028】
複数の分散デジタルインクサービス13が存在する場合、ペン8(またはそのリレー14)は、ネームサービスを使用して、ペン識別子と場合によってはインプレッション識別子に基づき、ターゲットデジタルインクサービスのネットワークアドレスを解決することができる。複数の分散文書サービス1が存在する場合、デジタルインクサービス13は、ネームサービスを使用して、インプレッション識別子に基づき、文書サービスのネットワークアドレスを解決する。
【0029】
上記の説明は、デジタルインクのフォームに基づく解釈およびその後フォームデータをアプリケーションに配信することを中心として述べられているが、デジタルインクサービスは、さらに、アプリケーションへのデジタルインクの配信のストリーミングもサポートする。これにより、アプリケーションは、ペン入力により直接的に応答することが可能になる。ストリーミングモードでは、デジタルインクサービスは、ストロークデジタルインクと介入「ホバー」デジタルインクの両方を配信し、アプリケーションがディスプレイを介してリアルタイムの位置フィードバックをユーザーに供給することができる。
【0030】
[オブジェクトモデル]
オブジェクトモデルは、Netpageサービスの外部インターフェイスに関係する論理モデルである。これは、実装モデルとして意図されていない。
【0031】
[文書]
図2は、視覚的記述16および入力記述11を含む文書2を示すクラス図である。与えられた文書に関して、いずれかの記述が空であってもよい。それぞれの文書2は、一意的に識別される18。
【0032】
視覚的記述16は、静的要素22および動的要素24を表す視覚的要素20の集まりである。静的要素は、テキストフロー26、イメージ28、グラフィックス30などを表す。動的要素24は以下で説明される。
【0033】
入力記述11は、フォーム32の集まりであり、それぞれ、コマンド36およびフィールド38を表す入力要素34の集まりからなる。フォーム32は、物理的にも論理的にも重なり合う場合があり、同じ入力要素34が複数のフォームに関与する場合がある。それぞれの入力要素34は、入力が取り込まれる領域を定義するゾーン40を有する。それぞれのフォーム32は、ターゲットアプリケーション42に関連付けられる。アプリケーション42は、フォーム32のサブミットを受け取る。アプリケーション42は、アドレス44により識別される。
【0034】
図3のクラス図に例示されているように、文書2は、それぞれのページ46にページ番号54が割り当てられている、一連の番号が振られたページからなる物理的構造を持つ。文書要素48は、それぞれ、その一連のページ内の特定の位置52に割り当てられている。単一文書要素48は多数のページ46にまたがることができるため、対応する数のページ要素50を持つことができ、それぞれ文書要素48の断片の位置52を定義する。
【0035】
[プリントアウト]
図4のクラス図を参照すると、プリントアウト5は、プリントアウトID 56を割り当てられた一連のインプレッション58から成り立っている。「N−up」印刷では、複数ページ46は、単一インプレッション58上に現れるが、「ポスター」印刷では、単一ページ46は、複数のインプレッション58にまたがることができる。ページインプレッション64では、変換66を使用してインプレッション58上のページ46の位置、スケール、および回転を表す。
【0036】
それぞれのインプレッション58は、インプレッションが印刷されるときにインプレッションの座標グリッドとともに符号化される一意的な識別子60により識別される。
【0037】
実際に印刷されると(または後述の「ウォークアップシナリオ」の保留印刷)、インプレッション58は、印刷が行われたプリンタ6と、もし知られていれば印刷を要求したユーザー62の両方に関連付けられる。
【0038】
図5に示されているように、ペン8は、単一ユーザー62により所有されるが、ユーザーは、ペン8をいくつでも所有することができる。したがって、ユーザー62は、ユーザーIDおよび他のユーザー詳細68を割り当てられ、同様に、それぞれペン8およびプリンタ6は、ペンIDと詳細70、およびプリンタIDと詳細72を有する。ユーザー62は、適宜、既定のプリンタ6を持つ。図6のクラス図は、一連のペンイベント76からなる、ペン8に関連付けられている単一デジタルインクストリーム74を例示している。それぞれのペンイベントは、ペン先力センサを使用してタイムスタンプ78が記録される。ストリーム74内の連続するセグメント80は、異なるインプレッション58に関係する。それぞれのセグメントには、番号82が割り当てられる。それぞれの一連のペンイベント76は、ペンダウンイベント84とペンアップイベント86との間の一連のペン位置イベント88である。これは、ペンのユーザーにより描かれるストロークを定義する。多くの場合、続く一連のストロークは、同じインプレッション58に関係し、通常は、セグメント境界は、ストローク境界に対応する。しかし、ストロークは、さらに、複数のインプレッション58を横断することができ、ストリーム74は、ストローク間の「ホバー」ペンイベントを含むことができる。
【0039】
図7のクラス図は、アプリケーションにサブミットされるフォームデータ12がフィールド値90の集まりからなることを示している。フォームデータ12は、プリントアウト5に現れる一意的なフォームインスタンス92に関連付けられている。アプリケーションは、フォームインスタンス92が(プリントアウトの一部として)最初に作成されるときにトランザクション識別子を指定することができる。トランザクション識別子94は、フォームデータ12と一緒にサブミットされ、これにより、ターゲットアプリケーションはそのデータを使用して一意的なトランザクションコンテキストのインデックスを作成することができる。
【0040】
デジタルインクサービス13(図1を参照)は、フォームが1度だけサブミットされ、有効期限が切れ、署名後凍結され、そして無効にされるフォームのライフサイクルをサポートする。フォームインスタンスは、フォームのライフサイクルに関してフォームのステータスを反映する。
【0041】
図8のクラス図に例示されているように、文書2は、さらに、動的要素24も含むことができる。それぞれの動的要素は、関連する動的オブジェクト96を持ち、さらにこれは、関連するオブジェクトデータ98および(典型的には型に特有の)オブジェクトアプリケーション99を持つ。動的要素24は、Netpageビューア(上で相互参照されている米国特許出願第09/722,175号を参照)などのデバイスを使用して適切にアクティブ化されるか、またはリレー14(図1を参照)に関連付けられたインタラクティブディスプレイ15などの任意のインタラクティブディスプレイ上でアクティブ化されるか、またはNetpage Explorer(後述)を介してアクティブ化されることができる。
【0042】
動的オブジェクトおよびその関係するアプリケーション実施例としては、例えば、オーディオクリップとオーディオプレイヤー、ビデオクリップとビデオプレイヤー、写真と写真ビューア、URLとWebブラウザ、編集可能文書とワードプロセッサなどがある。
【0043】
図9のクラス図に例示されているように、動的オブジェクト96は、さらに、例えば、インプレッションの仮想ビュー、またはインプレッション自体に「貼り付け」ることにより、既存のインプレッション上の任意の場所に動的にリンクさせることも可能である。
【0044】
図10は、ナビゲーション修飾子とともに、Netpage文書サービス1およびNetpageデジタルインクサービス13(図1を参照)により公称的に保持される3つのストアの間の関係を示している。
【0045】
文書ストア100、プリントアウトストア102、およびデジタルインクストア104とは別に、Netpageサービスは、登録ユーザー62、ペン8とプリンタ6、識別子割当て、およびサービスアドレス解決(図に示されていない)用の追加のストアを備えることができる。
【0046】
[機能]
以下の節で説明されるプロセスおよびストアは、実装を意図せず、機能を明らかにすることが意図されている。
【0047】
[フォーム入力]
図11は、図1よりもさらに詳しくNetpageシステム内のデータの基本的な流れを示している。文書サービス1では、アプリケーション4が文書2を提示し、文書2を印刷する印刷要求106を別に送信することができる。これは、文書ストア100内にそれぞれの提示された文書のコピーを保持し、文書ストア100内に、文書の入力記述がもしあればそのコピーを保持する。文書2を指定されたプリンタ6に出力すると、これは、プリントアウト5をプリントアウトストア102に記録する。
【0048】
デジタルインクサービス13は、リレー14を経由してペン8からデジタルインク9を受け入れ、受け取ったデジタルインクのコピーをデジタルインクストア104に保持する。デジタルインク9内のインプレッション識別子60を使用して、対応するインプレッション58および入力記述を文書サービス1から取り出す。次いで、それぞれの個別デジタルインクストロークを、ストロークの位置および程度ならびに入力要素のアクティブゾーンに応じて、コマンドまたはフォームフィールドなどの入力記述の一要素に割り当てる。ペン8のユーザーがフォームサブミットコマンドを指定したことが検出されると、それぞれのフィールドに割り当てられたデジタルインク9がフィールドの型に応じて解釈され108、その結果得られたフォームデータ12がコマンドに関連付けられているアプリケーション4にサブミットされる。例えば、デジタルインクサービス13は、チェックボックス内のマークをチェックマークとして解釈し、インテリジェント型文字認識機能を使用してテキストフィールド内の手書きテキストをテキスト文字列に変換し、署名フィールド内の手書き署名をペンのユーザーの記録されている署名と比較し、署名が一致すれば、ユーザーに代わってフォームデータにデジタル署名する。
【0049】
[インプレッションのリプリント]
Netpageシステムは、インプレッションを介して取り込まれた図面または手書きを含む、または含まないすでに印刷されているインプレッションのリプリントをサポートする。そのため、ソース独立の文書再現がサポートされる。図12は、アプリケーション4からのリプリント要求110への応答としてのデータの流れを例示している。文書サービス1で一組のインプレッション58をリプリントする場合、適宜、インプレッションを介して取り込まれた図面および手書きを含み、デジタルインクサービス13においてデジタルインクストア104から対応するデジタルインクを取り出す(可視性とアクセスを条件とする)。これは、新しいプリントアウトを記録し、リプリントされたインプレッション112に割り当てられたインプレッション識別子を記録する。
【0050】
[一般印刷]
Netpageシステムは、Netpage対応アプリケーションにより生成されたかどうかに関係なく、印刷された文書用の仮想ファイリングキャビネットとして機能する。Netpage対応アプリケーションは、文書内に入力記述を含めることができるという利点を有するが、非Netpage対応アプリケーションは、検索可能注釈およびソース独立リプリントをサポートする印刷された文書の恩恵を受ける。
【0051】
図13は、非Netpage対応アプリケーション114からの一般印刷要求への応答としてのデータの流れを例示している。Netpage対応プリンタドライバ116は、プラットフォーム特有の描画コマンド118を、文書サービス1に提示されるNetpage互換文書2に変換し、次いで、文書サービス1が指定されたプリンタ6を介して文書2を印刷する印刷要求106を送信する。
【0052】
図14は、プリンタが文書サービス1によりアクセス可能でない場合のデータの対応する流れを例示している。ここで、プリンタドライバ116は、それでも、文書2を文書サービス1に提示し、プリントアウト5をプリントアウトストア102に記録するが、文書2を指定されたプリンタ6を直接経由して実際に印刷する。
【0053】
[ウォークアップ印刷]
ユーザーが、従来のユーザーインターフェイスを介して文書の印刷を要求した場合、通常は、ターゲットプリンタを指定すると都合がよい。しかし、Netpageシステムでは、印刷は、印刷されたフォームを介してユーザー入力に対する応答として実行されることが多く、ターゲットプリンタを指定すると都合がよくない場合がある。1台のプリンタが用意されている家庭など、一部の環境では、所望のターゲットプリンタを推論することができる。複数のネットワーク接続プリンタが用意されているオフィスなど、他の環境では、所望のターゲットプリンタは、容易に推論できない場合がある。このような環境では、ユーザーがそこまで歩いていってターゲットプリンタを指定することができると有益である。
【0054】
図15は、ウォークアップ環境のデータの流れを示す。Netpageアプリケーション4からのすべての印刷(およびリプリント)要求120は、典型的には、遅らされる。遅延された印刷要求120に対する応答として、文書サービス1は、プリントアウト5をプリントアウトストア102内に記録し、インプレッションに関係する情報を取り込み、プリントアウトを要求側ユーザー用のプリントアウト保留キュー122内に入れる。
【0055】
可能な一構成では、それぞれのプリンタ6は、関連するトークンリーダー124を持ち、ユーザーは、トークン126をトークンリーダーに与え、プリンタ6を介してキューに入れられたプリントアウトの実際の印刷を要求する。トークン126は、短距離RFIDタグ、スマートカード、磁気ストライプカードなどとすることができる。トークンリーダー124は、文書サービス1を介して次に印刷を開始するプリンタの近くにそのユーザーがいることをウォークアップ処理アプリケーション128に通知する。
【0056】
他の可能な構成では、トークンリーダー124は、ユーザーに関連付けられ、トークン126は、プリンタ6に関連付けられる。例えば、トークンリーダー124は、ユーザーのNetpageペン8とすることができ、トークン124は、プリンタ上に配置されたタグパターンとすることができる。
【0057】
図16は、文書サービス1により保持される保留プリントアウトキュー122のクラス図を示している。それぞれの保留プリントアウト128は、優先度130を持ち、これにより、優先度の高いプリントアウトを、キュー内の前の方にあるが優先度の低いプリントアウトの前に印刷することができる。
【0058】
文書サービスは、Netpageタグで符号化されない、保持されている文書に対するウォークアップ印刷を行うために使用することができる。
【0059】
一般に、トークン126は、Netpageタグパターン、リニアバーコードまたは二次元バーコードが施されている表面または物体、磁気ストライプカード、スマートカードもしくは非接触型スマートカード、または無線IC(RFID)タグを含む、多数の受動的、半受動的、または能動的デバイスのうちのどれかとすることができる。リーダー124は、従来のバーコードリーダーまたはNetpage感知デバイスの場合のような走査レーザーまたは二次元イメージセンサを使用する光学式読取装置、磁気ストライプリーダー、スマートカードリーダー、またはRFIDリーダーなどの、トークン126の種類に一致するリーダーとすることができる。
【0060】
図18に例示されているように、第1の構成では、トークンリーダー124は、プリンタ6に関連付けられ、ユーザーは、トークン126をリーダーに提示する。リーダー124は、トークン126を読み取り、ウォークアップイベントをNetpageサーバ1に伝達する。ウォークアップイベントは、ユーザー62とプリンタ6の両方を識別する。トークン126およびウォークアップイベントは、ユーザー62を明示的に識別するか、またはサーバ側で、データベース検索を実行し、トークン識別子をユーザー識別子に翻訳する必要がある場合がある。リーダーおよびウォークアップイベントは、プリンタ6を明示的に識別するか、またはサーバ1側で、データベース検索を実行し、リーダー識別子をプリンタ識別子に翻訳する必要がある場合がある。サーバ1がユーザー62およびプリンタ6を識別した後、サーバ1は、そのユーザーの保留になっているプリントアウトを取り出し、印刷するプリンタに送信する。
【0061】
図18は、リーダー124およびプリンタ6を、物理的に関連付けられている別々のデバイスとして示している。リーダー124は、プリンタ6内に物理的に組み込むことができるさらに、プリンタに電気的に接続することもでき、プリンタはウォークアップイベントをサーバに配信する。それとは別に、同じようにして、プリンタ6は、ウォークアップイベント自体を解釈し、ユーザーの保留プリントアウトを印刷のため明示的に取り出すことができる。
【0062】
ユーザートークン126は、携帯電話、ペン、電子ペン(Netpageペン8など)、財布、セキュリティアクセスカードもしくはトークン、または識別バッジもしくはカードなどのユーザー62が携帯するポータブルデバイスに取り付けるか、または組み込むことができる。これは、さらに、スタンドアロンで、特定の目的を持つものとすることができる。
【0063】
Netpageペン8の場合、プリンタリーダー124は、ペンを受け取るためのリセプタクルを備えることができ、これにより、ペンは、リーダーと電気的に接触し、有線通信リンク(例えば、USB)を確立し、ユーザー識別子をリーダーに伝達する。
【0064】
図19に例示されているように、第2の構成では、トークンリーダー124は、ユーザー62に関連付けられ、ユーザーは、リーダーをトークン126に提示する。リーダー124は、トークン126を読み取り、ウォークアップイベントをNetpageサーバ1に伝達する。ウォークアップイベントは、ユーザー62とプリンタ6の両方を識別する。トークン126およびウォークアップイベントは、プリンタ6を明示的に識別するか、またはサーバ1側で、データベース検索を実行し、トークン識別子をプリンタ識別子に翻訳する必要がある場合がある。リーダー124およびウォークアップイベントは、ユーザー62を明示的に識別するか、またはサーバ1側で、データベース検索を実行し、リーダー識別子をユーザー識別子に翻訳する必要がある場合がある。サーバ1がユーザー62およびプリンタ6を識別した後、サーバ1は、そのユーザーの保留になっているプリントアウトを取り出し、印刷するプリンタに送信する。
【0065】
プリンタトークン126は、プリンタ6またはプリンタと同じ場所に配置されているデバイスに取り付けるか、または組み込むことができる。
【0066】
図20に例示されているように、ユーザー62がトークンリーダー125を提示した場合でも、ユーザーリーダー125がプリンタ上のトークンリーダー124(またはプリンタ自体)とサーバ1との間の通信リンクに頼るとさらに都合がよい場合があるが、それは、この通信リンクは、存在することが保証されているからである。図19のように、ユーザー62は、リーダー125をトークン127に提示する。リーダー125は、トークン127を読み取る。トークンから、プリンタ6への短距離通信リンクを決定する。これは、Bluetoothなどのパーソナルエリアネットワーク(PAN)無線リンク、無線USBもしくはZigBee、またはIEEE802.11(WiFi)などのローカルエリアネットワーク(LAN)無線リンクとすることができる。また、IrDAなどの短距離光リンクとすることもできる。リンクがターゲットアドレスを必要とする場合(Bluetoothの場合など)、トークンがターゲットアドレスを与える。例えば、プリンタ6上のトークン127がNetpageタグパターンを使用する場合、タグパターンは、インプレッションID、x−y位置などの代わりにターゲットアドレスを符号化し、そのようなものとしてフラグを立てる。リンクがターゲットアドレスを必要としない場合(IrDAの場合など)、トークン127は、単に、ユーザー識別子をプリンタのトークンリーダー126に伝達するようにユーザーのトークンリーダー126に知らせるだけである。ここでもまた、プリンタトークンがNetpageタグパターンを使用する場合、タグパターンはコマンドにフラグを立て、ユーザー識別子をプリンタリーダー124に伝達するようにする。ある範囲の通信リンクタイプがサポートされる場合、トークン127(例えば、タグパターン)は、特定のリンクタイプを識別することができる。プリンタリーダー124は、ユーザーリーダー125からユーザー識別子を受け取り、ウォークアップイベントをNetpageサーバ1に伝達する。サーバがユーザー62およびプリンタ6を識別した後、サーバ1は、そのユーザーの保留になっているプリントアウトを取り出し、印刷するプリンタに送信する。
【0067】
ユーザートークン126またはユーザーリーダー125が存在しない場合、ユーザー62は、ユーザー識別子またはジョブ識別子をプリンタ6に関連付けられているキーパッドに、オプションのパスワードとともにキー入力することができる。ユーザー62は、さらに、プリンタに関連付けられているディスプレイに基づく入力デバイスを使用してその識別またはその保留プリントアウトをユーザーまたはジョブのリストから選択することもできる。
【0068】
[Netpage Explorer]
上述のように、Netpageシステムは、印刷文書用の仮想ファイリングキャビネットとして動作する。したがって、Netpageシステムでは、ユーザーに対して、画面に基づくブラウザ−Netpage Explorer−を用意しており、文書サービスにより保持されているプリントアウトの集まりの閲覧および検索、またそのデジタルインクを含む、個々のプリントアウトを画面上で参照することができる。Netpage Explorerは、さらに、デジタルインクのストリーミングのリアルタイム表示もサポートし、さらに遠隔テレビ会議の基盤ともなる。
【0069】
上述のように、Netpageシステムは、文書内への動的オブジェクトの埋め込み、印刷インプレッション上の位置への動的オブジェクトの動的リンクをサポートする。Netpage Explorerは、印刷インプレッションの与えられる仮想ビューを介したそのようなオブジェクトの表示および対話操作とともに、そのようなオブジェクトの動的リンクをサポートする。
【0070】
[製品変更形態]
この節では、それぞれ異なるレベルのネットワーク分散およびアクセスを反映する3つのNetpage製品変更形態について説明する。図17は、パブリックインターネット133の分散サーバ群上で実行されているパブリックNetpageサービス134を使用し、パブリックインターネット133上でアプリケーション4およびユーザーに使用されるシステムを示している。図21は、プライベートイントラネット138の1つまたは複数のサーバ上で実行されているサービス136(例えば、プライベートNetpage文書およびデジタルインクサービス)を備え、プライベートイントラネット上でアプリケーション4およびユーザーに使用されるプライベートNetpageシステムを示している。図22は、単一のパーソナルコンピュータまたは他のパーソナルデバイス140上で実行されているサービス142を含むパーソナルNetpageシステムを示している。
【0071】
それぞれの場合において、雑誌広告、カタログ、パンフレット、および製品アイテムHyperlabelなどの印刷前のNetpageコンテンツは、典型的には、インターネット上で実行されているパブリックNetpage文書サービスによりホスティングされる。
【0072】
プライベートNetpageシステムでは、図21および22に暗示されているように、文書サービスがパブリックである場合でも、セキュリティおよびプライバシーの問題が、プライベートデジタルインクサービスを使用する動機となり得る。プライベート文書サービスは、さらに、パブリック文書サービスのキャッシングプロキシとしても動作可能である。
【0073】
より一般的に、セキュリティおよびプライバシーの問題は、文書サービスの普及と無関係に、制約されたデジタルインクサービス群にユーザーのデジタルインクをルーティングする動機となり得る。国際文書サービスとのやり取りの場合でも、政府が国民のデジタルインクを国のデジタルインクサーバにルーティングするよう義務付けている国もあり得る。したがって、Netpageペン(またはそのリレー)は、プライベートおよびパブリックの両方のデジタルインクサービスを知り、プライベートインプレッションに関連するデジタルインクを前者に、パブリックインプレッションに関連するデジタルインクを後者にルーティングすることができる。与えられたペンのデジタルインクがパブリックインプレッションに関係し、公称的にパブリックサーバ上でアクセス可能である場合であっても、このことは、インプレッションの所有者またはインプレッションの他のユーザーが自動的にその分デジタルインクへのアクセス権を獲得することを意味する必要はない。
【0074】
[Netpage表面符号化のセキュリティ]
[はじめに]
Netpageシステムは、表面符号化を使用して、他の場合には受動的である表面に、NetpageペンおよびNetpageビューアなどのNetpage感知デバイスと連動する対話機能を付与する。Netpage符号化表面を対話操作する場合、Netpage感知デバイスは、感知デバイスが移動する際の配置基準となる表面領域の識別と、その領域内にある感知デバイスの絶対的経路の両方を示すデジタルインクストリームを生成する。
【0075】
この節では、Netpage表面符号化のオプションの認証機能、および関連する認証プロトコルを定義する。
【0076】
[表面符号化のセキュリティ]
[表面符号化の背景]
Netpage表面符号化は、複数のタグの高密度平面状タイルからなる。それぞれのタグは、平面内のそのタグの位置を符号化する。それぞれのタグは、さらに、隣接するタグとともに、そのタグを含む領域の識別子を符号化する。
【0077】
この領域IDは、すべての領域にわたって一意である。Netpageシステムでは、この領域は、典型的には、1枚の用紙の片面などの、タグ付き表面の広がり全体に対応する。Hyperlabelシステムでは、この領域は、典型的には、製品アイテム全体の表面に対応し、領域IDは、一意的なアイテムIDに対応する。以下の説明で明らかになるように、アイテムおよびアイテムID(または単純にID)への参照は、領域IDに対応する。
【0078】
この表面符号化は、タグ全体の取得を保証できる十分な大きさの取得視野がタグを含む領域のIDの取得を十分保証できる大きさとなるように設計される。タグ自体の取得により、領域内のタグの二次元位置の取得とともに、他のタグ特有のデータの取得が保証される。したがって、表面符号化により、符号化表面との純粋にローカルなやり取りの際、例えば、ペンによる符号化表面上の「クリック」またはタップを行ったときに、感知デバイスは領域IDおよびタグ位置を取得することができる。
【0079】
[暗号法の背景]
暗号法は、記憶域内にある機密情報およびデータ送信中の機密情報の両方を保護し、トランザクションの当事者を認証するために使用される。広く使用されている暗号法には2つのクラス、秘密鍵暗号法と公開鍵暗号法がある。NetpageおよびHyperlabelシステムでは、両方のクラスの暗号法を使用する。秘密鍵暗号法は、対称暗号法とも呼ばれ、メッセージを暗号化および暗号解読に同じ鍵を使用する。メッセージ交換を望んでいる当事者2人は、まず最初に、秘密鍵を安全に交換する手はずを整えなければならない。
【0080】
公開鍵暗号法は、非対称暗号法とも呼ばれ、2つの暗号鍵を使用する。これらの2つの鍵は、一方の鍵を使用して暗号化されたメッセージが他方の鍵を使用しないと暗号解読できないような数学的関係にある。次いで、これらの鍵の一方を公開し、他方の鍵を秘密にする。これらは、それぞれ公開鍵および秘密鍵と呼ばれる。公開鍵は、秘密鍵の保有者を対象としてメッセージを暗号化するために使用される。公開鍵を使用して暗号化された後、メッセージは、秘密鍵を使用しないと暗号解読することができない。したがって、当事者2人は、最初に秘密鍵を交換せずにメッセージを安全に交換することができる。秘密鍵が安全であることを保証するために、秘密鍵の保有者は公開−秘密鍵対を生成するのが普通である。
【0081】
公開鍵暗号法は、電子署名を作成するために使用することができる。秘密鍵の保有者がメッセージの知られているハッシュを作成し、次いで、秘密鍵を使用してそのハッシュを暗号化した場合、その特定のメッセージに関して暗号化されたハッシュが秘密鍵の保有者の「署名」をなすことを、公開鍵を使用して暗号化されたハッシュを暗号解読し、そのメッセージと突き合わせてハッシュを検証することにより誰でも検証することができる。署名がメッセージに付加されている場合、メッセージの受信者は、メッセージが本物であること、およびデータ送信中に改ざんされていないことを検証することができる。
【0082】
秘密鍵は、さらに、電子署名を作成するためにも使用することができるが、秘密鍵を密かに知っている当事者であれば署名照合も実行できるという欠点を有する。
【0083】
公開鍵暗号法を機能させるには、偽装を防止する公開鍵を配布する方法がなければならない。これは、通常、証明書と証明機関を利用して行われる。証明機関は、信頼できる第三者であり、公開鍵と人または他の実体の識別との関連付けを認証する。証明機関は、識別文書などを調べることにより識別を検証し、次いで、識別詳細および公開鍵を含む電子証明書を作成して署名を入れる。証明機関を信頼する人であれば誰でも、それが本物である高い確実さで証明書内の公開鍵を使用することができる。これらは、公開鍵がよく知られている証明機関により証明書が実際に署名されたことを検証すればよいだけである。
【0084】
秘密鍵暗号法に匹敵するセキュリティを実現するために、公開鍵暗号法では、1桁大きい、つまり数100ビットと比較して数1000ビットの鍵長を使用する。
【0085】
暗号法の詳細な説明については、Schneier,B.,Applied Cryptography,Second Edition,John Wiley&Sons 1996を参照のこと。
【0086】
[セキュリティ要件]
以下の2つの関係する目的を持つようにアイテムセキュリティを定義する。
【0087】
−アイテムの認証を許可する
−アイテムの偽造を防止する
偽造が難しければ難しいほど、認証の信用性は高まる。
【0088】
アイテムが符号化される場合、Netpage表面符号化セキュリティは、以下の2つの対応する目的を持つ。
【0089】
−符号化されたアイテムの認証を許可する
−新規アイテムIDで符号化されたアイテムの偽造を防止する
ユーザーがアイテムの表面符号化の信憑性を調べられる場合、ユーザーは、アイテムの確かそうな信憑性に関して詳しい情報を得たうえで決定することができると思われる。
【0090】
新規IDに対し表面符号化を偽造することが困難である場合、本物の表面符号化でアイテムを偽造する扱いやすい唯一の方法は、既存のアイテムの表面符号化(したがってそのID)を複製することである。アイテムのIDが一意的である可能性があると他の手段によりユーザーが判定できる場合、ユーザーは、そのアイテムが本物であると仮定することができる。
【0091】
Netpage表面符号化により、純粋にローカルなやり取りの際に感知デバイスと符号化表面との間の意味のあるやり取りが可能になるため、表面符号化では、同様にローカルなやり取りの際に、つまり、感知デバイス視野のサイズを増やさずに、認証を行うことをサポートすることが望ましい。本物の符号化アイテムの作成者とそのようなアイテムの認証を行うことを望んでいる可能性のあるユーザーとの間に先験的な関係は存在しないので、作成者とユーザーとの間に信頼関係を要求することは望ましくない。例えば、作成者が、ユーザーと秘密署名鍵を共有することが必要であることは望ましくない。
【0092】
多くのユーザーが、アイテムの認証を行う目的で作成者により信頼されている認証機関にオンラインでアクセスすることに依存するのが妥当である。逆に、認証は、オンラインアクセスがない場合に行われるのが望ましい。
【0093】
[セキュリティの説明]
上の「暗号法の背景」で説明されているように、認証は、データとそのデータの署名との間の対応関係を検証することに依存する。署名の偽造が難しければ難しいほど、署名に基づく認証の信用性は高まる。
【0094】
アイテムIDは、一意的であり、したがって署名の基盤となる。オンライン認証アクセスが仮定される場合、署名は、単に、信頼できるオンライン認証機関にアクセス可能な認証データベース内のアイテムIDに関連付けられた乱数とすることができる。乱数は、決定論的(擬似ランダム)アルゴリズムまたは物理的確率過程を利用するなど好適な方法で生成することができる。鍵付きハッシュまたは暗号化ハッシュは、認証データベース内に追加の領域を設けずに済むため、乱数には好ましい場合がある。
【0095】
限られた場合において、データベース内にアイテムIDが単に存在するだけで本物であることを示すことになるため、署名は実際には必要とされない。しかし、署名の使用は、偽造者に実際に見えたアイテムを偽造者が偽造することを制限する。
【0096】
見られていないIDに対する署名の偽造を防ぐために、署名は、オンライン認証機関への繰り返しアクセスを介した網羅的検索を扱いにくくできる十分な大きさでなければならない。乱数ではなく鍵を使用して生成される場合、署名の長さも、偽造者が知られているID署名対から鍵を推定するのを十分防げる大きさでなければならない。数100ビットの署名は、秘密鍵を使用して生成されるかどうかに関係なく、安全と考えられる。
【0097】
表面符号化タグ構造内の空間が限られているため、タグ内に安全な署名を入れることは実用的でない。したがって、われわれは、複数のタグに署名の断片を分散させる気になった。それぞれの断片がIDと突き合わせて分離して検証することができる場合、感知デバイス視野を広げずに認証を行うことをサポートするという目標が達成される。署名のセキュリティは、それでも、1つの断片の長さではなく、署名の全長から得られるが、それは、ユーザーがどの断片の照合を選ぶかを偽造者側では予測できないからである。信頼できる認証機関は、常に、断片照合を実行し、断片照合は、信頼できる認証機関へのオンラインアクセスが利用できる場合には可能であることに留意されたい。
【0098】
断片照合は、断片識別を必要とする。断片は、明示的に番号付けするか、またはより経済的に、タグの連続タイリングにわたる署名の繰り返しを法とする、そのタグの二次元座標により識別することができる。
【0099】
ID自体の限られた長さは、他の脆弱性をもたらす。理想的には、少なくとも数100ビットでなければならない。NetpageおよびHyperlabel符号化方式では、96ビット以下である。この問題を解決するために、IDをパッディングすることができる。これが有効であるためには、パッディングは可変でなければならない、つまり、1つのIDと次のIDとで異なっていなければならない。理想的には、パッディングは、単に乱数であり、したがって、IDをインデックスとする認証データベースに格納されなければならない。パッディングがIDから決定論的に生成される場合、それは役立たない。秘密鍵署名のオフライン認証では、信頼できるオフライン認証デバイスを使用する必要がある。QAチップ(2002年4月16日に発行された米国特許第6,374,354号を参照)は、容量は限られているけれども、そのようなデバイスの基盤となる。QAチップは、内部メモリに安全に保持されている秘密鍵を使用して署名を検証するようにプログラムすることができる。しかし、このシナリオでは、ID毎のパッディングをサポートすることは実用的でなく、また極めて少ない秘密鍵でない限りサポートすることすら実用的でない。さらに、このようにしてプログラムされたQAチップは、選択メッセージ攻撃に弱い。これらの制約条件により、QAチップに基づく信頼できるオフライン認証をニッチアプリケーションに適用する可能性が制限される。
【0100】
一般に、特定の信頼できるオフライン認証デバイスの請求されているセキュリティであっても、安全なアイテムの作成者は、自分の秘密署名鍵をそのようなデバイスに預けることを嫌うこともあり得、これもまた、ニッチアプリケーションへのそのようなデバイスの適用性を制限する可能性がある。
【0101】
対照的に、公開鍵署名(つまり、対応する秘密鍵を使用して生成される)のオフライン認証は、実用性が高い。公開鍵を使用するオフライン認証デバイスは、公開鍵をいくつでも保有できることは自明であり、対応する公開署名鍵がないことが知られているIDに遭遇した場合に、一時的オンライン接続を介して、オンデマンドで、追加の公開鍵を取り出すように設計することができる。
【0102】
信頼できないオフライン認証は、その秘密署名鍵の排他的制御を保持することができるため安全なアイテムの大半の作成者にとって魅力的なものである可能性が高い。
【0103】
公開鍵署名のオフライン認証の欠点は、最小の視野で認証をサポートしたいというわれわれの希望に反して、署名全体を符号化から取得しなければならない点である。公開鍵署名のオフライン認証の対応する利点は、公開署名鍵を使用して署名を暗号解読することで、IDとそのパッディングの両方が生成されるためIDパッディングへのアクセスがもはや必要なくなり、パッディングを無視できるという点である。
【0104】
分散された署名全体の取得は、特に面倒なものではない。符号化表面全体にわたるハンドヘルド型感知デバイスのランダムまたはリニアスワイプにより、署名の断片すべてを即座に取得することができる。感知デバイスは、全断片集合を取得し、認証を完了したときにユーザーに通知するように容易にプログラムすることができる。走査レーザーも、署名のすべての断片を容易に取得することができる。両方の種類のデバイスは、タグが署名の存在を示している場合のみ認証を実行するようにプログラムすることができる。
【0105】
公開鍵署名は、ランダムに生成されたか、秘密鍵を使用して生成されたかに関係なく、署名と同じ方法で、断片をどれかを介して、オンラインで認証することができることに留意されたい。信頼できるオンライン認証機関は、秘密鍵およびIDパッディングを使用してオンデマンドで署名を生成するか、または認証データベース内に署名を明示的に格納することができる。後者のアプローチでは、IDパッディングを格納する必要がなくなる。
【0106】
また、署名に基づく認証は、信頼できる認証機関へのオンラインアクセスが利用できる場合であっても断片に基づく認証の代わりに使用することができることにも留意されたい。
【0107】
[セキュリティ仕様]
[ID別セットアップ範囲]
−公開−秘密署名鍵対を生成する
−ID範囲でインデックスが作成された鍵対を格納する
[ID別セットアップ]
−IDパッディングを生成する
−ID別に秘密署名鍵を取り出す
−秘密鍵を使用してIDおよびパッディングを暗号化することにより署名を生成する
−IDでインデックスが作成されたデータベース内に署名を格納する
−複数のタグにわたって繰り返しにより署名を符号化する
[オンライン(断片に基づく)認証(ユーザー)]
−タグからIDを取得する
−タグから位置および署名断片を取得する
−位置から断片番号を生成する
−IDにより信頼できる認証機関を検索する
−ID、断片、および断片番号を信頼できる認証機関に送信する
[オンライン(断片に基づく)認証(信頼できる認証機関)]
−ID、断片、および断片番号をユーザーから受信する
−ID別にデータベースから署名を取り出す
−与えられた断片と署名とを比較する
−認証結果をユーザーに報告する
[オフライン(署名に基づく)認証(ユーザー)]
−タグからIDを取得する
−タグから位置および署名断片を取得する
−断片から署名を生成する
−ID別に公開署名鍵を取り出す
−公開鍵を使用して署名を暗号解読する
−取得されたIDと暗号解読されたIDとを比較する
−認証結果をユーザーに報告する
[Netpage表面符号化]
[はじめに]
この節では、Netpageシステム(上の「Netpageアーキテクチャ」で説明されている)により使用される表面符号化を定義し、他の場合には受動的である表面に、NetpageペンおよびNetpageビューアなどのNetpage感知デバイスと連動する対話機能を付与する。
【0108】
Netpage符号化表面を対話操作する場合、Netpage感知デバイスは、感知デバイスが移動する際の表面領域の識別と、その領域内にある感知デバイスの絶対的経路の両方を示すデジタルインクストリームを生成する。
【0109】
[表面符号化]
Netpage表面符号化は、複数のタグの高密度平面状タイルからなる。それぞれのタグは、平面内のそのタグの位置を符号化する。それぞれのタグは、さらに、隣接するタグとともに、そのタグを含む領域の識別子を符号化する。Netpageシステムでは、この領域は、典型的には、1枚の用紙の片面などの、タグ付き表面の広がり全体に対応する。
【0110】
それぞれのタグは、2種類の要素を含むパターンにより表される。第1の種類の要素は、ターゲットである。ターゲットにより、タグは符号化表面のイメージ内に配置され、タグの遠近法的歪みを推論できる。第2の種類の要素は、マクロドットである。それぞれのマクロドットは、ビットの値を、その有無により符号化する。
【0111】
パターンは、光学結像系により、特に近赤外線の狭帯域応答を使用する光学系により収集できるような方法で符号化表面上に表現される。パターンは、典型的には、狭帯域近赤外線インクを使用して表面上に印刷される。
【0112】
[タグ構造]
図23は、完全なタグ200の構造を示している。4つの黒丸202は、それぞれターゲットである。タグ200、およびパターン全体は、物理的レベルにおいて、四重の回転対称を有する。
【0113】
それぞれの正方形の領域は、シンボル204を表し、それぞれのシンボルは、4ビットの情報を表す。タグ構造内に示されているそれぞれのシンボル204は、一意的なラベル216を持つ。それぞれのラベル216は、アルファベットのプレフィックスと数字のサフィックスを有する。
【0114】
図24は、シンボル204の構造を示している。これは、4つのマクロドット206を含み、それぞれは、存在する(1)または存在しない(0)により1ビットの値を表す。
【0115】
マクロドット206の間隔は、この明細書全体を通してパラメータsにより指定される。これは、1インチ当たり1600ドットのピッチで印刷される9つのドットに基づいて、143μmの公称値を持つ。しかし、パターンを生成するために使用されるデバイスの能力に応じて、定義された上下限の範囲内で変化させることができる。
【0116】
図25は、9つの隣接シンボル204からなる配列208を示している。マクロドット206の間隔は、シンボル208内とシンボル208の間の両方において一様である。
【0117】
図26は、シンボル204内のビットの順序付けを示している。
【0118】
ビットゼロ210は、シンボル204内の最下位ビットであり、ビット3 212は、最上位ビットである。この順序付けは、シンボル204の配向付けに相対的である。タグ200内の特定のシンボル204の配向は、タグ図(例えば、図23を参照)内のシンボルのラベル216の配向により示される。一般に、タグ200の特定のセグメント内のすべてのシンボル204の配向は、同じであり、タグの中心に最も近いシンボルの底辺と一致する。
【0119】
マクロドット206のみが、パターン内のシンボル204の表現の一部である。シンボル204の正方形の輪郭214は、本明細書では、タグ204の構造をより明確に示すために使用される。図27は、例示されているように、すべてのビット206がセットされているタグ200の実際のパターンを示している。実際には、タグ200のすべてのビット206がセットできるわけではないことに留意されたい。
【0120】
マクロドット206は、公称的には、公称直径(5/9)sの円である。しかし、パターンを生成するために使用されるデバイスの能力に応じて、サイズを±10%の範囲内で変化させることができる。
【0121】
ターゲット202は、公称的には、公称直径(17/9)sの円である。しかし、パターンを生成するために使用されるデバイスの能力に応じて、サイズを±10%の範囲内で変化させることができる。
【0122】
パターンを生成するために使用されるデバイスの能力に応じて、タグパターンのスケールを最大±10%まで変化させることができる。公称スケールからの偏差は、タグデータ内に記録され、これにより、位置サンプルの正確な生成を行うことができる。
【0123】
[タググループ]
タグ200は、複数のタググループ218にわけて配列される。それぞれのタググループは、正方形に配列された4つのタグを含む。それぞれのタグ200は、可能な4つのタグタイプのうちの1つであり、それぞれ、タググループタグ18内の位置に応じてラベル付けされる。タグタイプラベル220は、図28に示されているように、00、10、01、および11である。
【0124】
図29は、タググループがタグの連続的タイリング、つまりタグパターン222でどのように繰り返されるかを示している。このタイリングにより、4つの隣接するタグ200の集まりがそれぞれのタイプ220の1つのタグを含むことが保証される。
【0125】
[コードワード]
タグは、4つの完全なコードワードを含む。4つのコードワードのレイアウトは、図30に示されている。それぞれのコードワードは、パンクチャード24項(8,5)リードソロモン符号のコードワードである。コードワードは、A、B、C、およびDのラベルが付けられる。それぞれのコードワードの断片は、タグ200全体に分散される。
【0126】
これらのコードワードのうち2つは、タグ200に対し一意である。これらは、ローカルコードワード224と呼ばれ、AおよびBのラベルが付けられる。したがって、タグ200は、そのタグに一意的な最大40ビットまでの情報を符号化する。
【0127】
残り2つのコードワードは、タグタイプに対し一意的であり、タグ222の連続的タイリング内では同じタイプのすべてのタグに共通である。これらは、グローバルコードワード226と呼ばれ、CおよびDのラベルが付けられ、タグタイプが下付き文字として付加される。したがって、タググループ218は、タグの連続的タイリング内のすべてのタググループに共通の最大160ビットまでの情報を符号化する。
【0128】
[リードソロモン符号化]
コードワードは、パンクチャード24項(8,5)リードソロモン符号を使用して符号化される。24項(8,5)リードソロモン符号は、それぞれのコードワード内の20データビット(つまり、5個の4ビットシンボル)および12冗長ビット(つまり、3個の4ビットシンボル)を符号化する。その誤り検出能力は、シンボル3つ分である。その誤り訂正能力は、シンボル1つ分である。
【0129】
図31は、データ座標230を符号化する5つのシンボルと冗長性座標232を符号化する3つのシンボルを持つ8個のシンボル204からなるコードワード228を示している。コードワード座標は、係数順序でインデックスが付けられ、データビット順序付けは、コードワードビット順序付けに従う。
【0130】
パンクチャード24項(8,5)リードソロモン符号は、パンクチャード24項(15,5)リードソロモン符号から7個の冗長性座標が取り除かれた符号である。取り除かれた座標は、最上位冗長性座標である。
【0131】
符号は、以下の原始多項式を持つ。
【0132】
(式1)p(x)=x4+x+1
符号は、以下の生成多項式を持つ。
【0133】
(式2)g(x)=(x+α)(x+α2)...(x+α10)
リードソロモン符号の詳細については、参照に入り本明細書に組み込まれる、Wicker,S.B.and V.K.Bhargava,eds.,Reed−Solomon Codes and Their Applications,IEEE Press,1994を参照されたい。
【0134】
[タグ座標空間]
タグ座標空間は、それぞれxおよびyというラベルが付けられた2つの直交軸を有する。正のx軸が右を指している場合、正のy軸は下を指している。
【0135】
表面符号化では、特定のタグ付き表面上のタグ座標空間原点の位置を指定せず、また表面に関するタグ座標空間の向きも指定しない。この情報は、アプリケーションに特有のものである。例えば、タグ付き表面が1枚の用紙である場合、タグをその紙に印刷するアプリケーションは、実際のオフセットおよび配向を記録することができ、これらは、表面に関してその後取り込まれるデジタルインクを正規化するために使用することができる。
【0136】
タグ内に符号化された位置は、数ユニットのタグで定義される。慣例により、位置は、原点に最も近いターゲットの中心の位置とみなされる。
【0137】
[タグ情報内容]
表1は、表面符号化に埋め込まれる情報フィールドを定義したものである。表2では、これらのフィールドがコードワードにマップされる仕方を定義している。
【表5】
図32は、タグ200、およびアクティブ領域マップ内でその対応するビットインデックをラベルとしてそれぞれ付けられた8個のすぐそばの隣接要素を示す図である。アクティブ領域マップは、対応するタグがアクティブ領域のメンバであるかどうかを示す。アクティブ領域は、取り込まれた入力が解釈のため対応するNetpageサーバに即座に転送されなければならない領域である。また、これにより、Netpage感知デバイスは、その入力が直ちに有効になることをユーザーに知らせることができる。
【表6】
タグタイプは、ローカルコードワードの利用が最大になるようにグローバルコードワード内に移動させることができることに留意されたい。したがって、さらに大きな座標および/または16ビットデータ断片が可能になる(座標精度に関連して潜在的に構成可能な形で)。しかし、これは、領域ID復号化からの位置復号化の独立性を減じるため、この時点では明細書に含まれていなかった。
【0138】
[埋め込みデータ]
領域フラグ内の「region includes data」フラグがセットされた場合、表面符号化は、埋め込みデータを含む。データは、複数の連続タグデータ断片内に符号化され、収まる限り何回でも表面符号化において複製される。
【0139】
埋め込みデータは、埋め込みデータを含む表面符号化のランダムおよび部分的走査が、データ全体を十分取り出せるような方法で符号化される。走査システムは、取り出された断片からデータを組立て直し、誤りなく十分な断片が取り出された場合にユーザーに報告する。
【0140】
表3に示されているように、200ビットのデータブロックは、160ビットのデータを符号化する。ブロックデータは、5×5の正方形に配列された25個のタグの連続的グループのデータ断片内に符号化される。タグは、整数座標が5で割ったタグの座標であるブロックに属する。それぞれのブロック内では、データは、増大するy座標内で増大するx座標とともにタグ内に配列される。
【0141】
データ断片は、アクティブ領域マップが存在するブロックから欠落している場合がある。しかし、欠落データ断片は、ブロックの他のコピーから回復可能である可能性が高い。
【0142】
任意のサイズのデータは、四角形に配列されたブロックの連続的集合からなるスーパーブロック内に符号化される。スーパーブロックのサイズは、それぞれのブロック内に符号化される。ブロックは、整数座標がスーパーブロックのサイズで割ったブロックの座標であるスーパーブロックに属する。それぞれのスーパーブロック内では、データは、増大するy座標内で増大するx座標とともにブロック内に配列される。
【0143】
スーパーブロックは、収まる限り何回でも表面符号化で複製され、部分的には表面符号化のエッジにそって行われることを含む。
【0144】
スーパーブロック内に符号化されたデータは、より正確なタイプ情報、より正確なサイズ情報、およびより広範囲にわたる誤り検出および/または訂正データを含むことができる。
【表7】
[領域IDの暗号化署名]
領域フラグ内の「region is signed」フラグがセットされた場合、表面符号化は、領域IDの160ビット暗号化署名を含む。署名は、1ブロックのスーパーブロック内に符号化される。
【0145】
オンライン環境では、署名断片を、領域IDとともに使用して、署名の正当性を検証することができる。オフライン環境では、複数のタグを読み取ることにより署名全体を復元し、次いで、対応する公開署名鍵を使用して正当性を検証することができる。これについては、上記の「Netpage Surface Coding Security」の節でさらに詳しく説明されている。
【0146】
[MIMEデータ]
埋め込みデータタイプが「MIME」の場合、スーパーブロックは、RFC2045(Freed,N.,and N.Borenstein,“Multipurpose Internet Mail Extensions(MIME)−Part One:Format of Internet Message Bodies”、RFC 2045,November 1996)、RFC 2046(see Freed,N.,and N.Borenstein,“Multipurpose Internet Mail Extensions(MIME)−Part Two:Media Types”,RFC 2046,November 1996)、および関連するRFCによるMultipurpose Internet Mail Extensions(MIME)データを含む。MIMEデータは、ヘッダとその後に続く本文とからなる。ヘッダは、先頭に8ビット文字列長さが付加された、可変長テキスト文字列として符号化される。本文は、先頭にビッグエンディアン形式の16ビットサイズが付加された可変長タイプ特有のオクテットストリームとして符号化される。
【0147】
RFC2046で説明されている基本的最上位媒体タイプには、テキスト、イメージ、オーディオ、ビデオ、およびアプリケーションが含まれる。RFC 2425(Howes,T.,M.Smith and F.Dawson,“A MIME Content−Type for Directory Information”,RFC 2045,September 1998を参照)およびRFC 2426(Dawson,F.,and T.Howes,“vCard MIME Directory Profile”,RFC 2046,September 1998を参照)では、例えば、ビジネスカード上に表示され得る連絡先情報を符号化するのに好適なディレクトリ情報のテキストサブタイプについて説明している。
【0148】
[符号化および印刷の考慮事項]
プリントエンジンコントローラ(PEC)は、2つの固定(1ページ毎に)24項(15,5)リードソロモンコードワードおよび6つの可変(タグ毎に)24項(15,5)リードソロモンコードワードの符号化をサポートする。さらに、PECは、レイアウトは一定である(1ページ毎に)が、可変コードワードデータはユニットセル毎に変わる場合がある長方形のユニットセルを介してタグのレンダリングをサポートする。PECでは、ユニットセルがページ移動の方向に重なり合うことを許さない。
【0149】
PECと互換性のあるユニットセルは、4つのタグからなる単一タググループを含む。タググループは、タググループに一意的であるがタググループ内で4回複製される単一Aコードワード、および4つの一意的なBコードワードを含む。これらは、PECの6つのサポートされている可変コードワードのうちの5つを使用して符号化することができる。タググループは、さらに、8つの固定されたCおよびDコードワードも含む。これらのうちの1つは、PEC可変コードワードのうちの残り1つを使用して符号化することができ、さらに2つは、PECの2つの固定されたコードワードを使用して符号化することができ、残り5つは、PECに供給されるタグ形式構造(TFS)に符号化され、事前にレンダリングすることができる。
【0150】
PECでは、TFS行毎に32個の一意的ビットアドレスの限界を課す。ユニットセルの内容は、この限界を考慮したものとなっている。PECは、さらに、TFSの幅に384の限界も課している。ユニットセルの内容は、この限界を考慮したものとなっている。妥当なページサイズについては、Aコードワード内の可変座標ビットの個数は、控えめであり、ルックアップテーブルを介して符号化を扱いやすいものにしている。ルックアップテーブルを介したBコードワードの符号化も可能と思われる。リードソロモン符号はシステマティックであるため、冗長性データのみがルックアップテーブル内に出現すればよいことに留意されたい。
【0151】
[イメージ処理および復号化の考慮事項]
タグ全体の取得を保証するのに必要な最小撮像視野は、39.6s(つまり、(2x(12+2))√2s)の直径を有し、表面符号化と視野との間の任意のアライメントを行うことができる。マクロドット間隔を143μmとすると、これは、5.7mmの必要な視野を与える。
【0152】
表4は、イメージセンササイズが128ピクセル分であると仮定した場合の、異なるサンプリングレートに対する本発明の表面符号化で達成可能なピッチ範囲を示している。
【表8】
本発明の表面符号化が与えられた場合、対応する復号化手順は以下の通りである。
【0153】
−完全なタグのターゲットを特定する
−ターゲットからそれぞれの変換を推論する
−タグの4つのコードワードのうちの1つをサンプリングし、復号化する
−コードワードタイプ、したがってタグ配向を決定する
−必要なローカル(AおよびB)コードワードをサンプリングし、復号化する
−コードワード冗長性は、12ビットのみであり、したがって誤り検出のみである
−復号化後誤りフラグ不正位置サンプル
−タグ配向を参照しつつ、タグx−y位置を決定する
−配向されたターゲットから3Dタグ変換を推論する
−タグx−y位置および3D変換からペン先x−y位置を決定する
−アクティブ領域マップを参照しつつペン先位置のアクティブ領域ステータスを決定する
−ペン先アクティブ領域ステータスに基づいてローカルフィードバックを生成する
−Aコードワードからタグタイプを決定する
−必要なグローバル(CおよびD)コードワークをサンプリングし、復号化する(タグタイプを参照しつつ、ウィンドウアライメントを法として)
−コードワード冗長性は12ビットしかないが、誤りを訂正し、その後のCRC検証で間違った誤り訂正を検出する
−タググループデータCRCを検証する
−復号化後誤りフラグ不正領域IDサンプル
−符号化タイプを決定し、不明な符号化を拒否する
−領域フラグを決定する
−領域IDを決定する
−領域ID、ペン先x−y位置、デジタルインクのペン先アクティブ領域ステータスを符号化する
−領域フラグに基づいてデジタルインクを経路指定する
領域ID復号化は、位置復号化と同じ速度では行われないことに留意されたい。
【0154】
コードワードの復号化は、コードワードがすでに知られている適切なコードワードと同一であることが判明した場合に回避することができることに留意されたい。
【0155】
上記の説明は、単に例示しているだけであり、当業者であれば、本発明の幅広い概念の精神および範囲から逸脱しない多くの変更形態および修正形態を容易に理解するであろう。
【図面の簡単な説明】
【0156】
【図1】Netpageパブリッシャとアプリケーション、Netpageサービス、およびNetpageデバイスとの間のデータの流れを示す図である。
【図2】Netpage文書内のコンテンツタイプの範囲を示す図である。
【図3】ナンバリングされた一連のページからなる物理的構造を持つNetpage文書を示す図である。
【図4】一連のインプレッションからなるプリントアウトを示す図である。
【図5】ペンおよび既定のプリンタとともにユーザーを示す図である。
【図6】デジタルインクストリームで記録されたペンイベントを示す図である。
【図7】アプリケーションにサブミットされるフォームデータを示す図である。
【図8】文書要素として使用する動的要素を示す図である。
【図9】既存のインプレッションにリンクされている動的オブジェクトを示す図である。
【図10】文書、プリントアウト、およびデジタルインクストアの間の関係を示す図である。
【図11】図1よりもさらに詳しいNetpageシステム内のデータの基本的な流れを示す図である。
【図12】インプレッションのリプリントに関連するデータの流れを示す図である。
【図13】印刷に関連するデータの流れを示す図である。
【図14】分岐した一般的なデータ印刷の流れを示す図である。
【図15】ウォークアップ印刷に関連するデータの流れを示す図である。
【図16】プリントアウトキューの設定に関連するデータの流れを示す図である。
【図17】Netpageシステム内で可能なネットワーク分散およびアクセスのさまざまなレベルを示す図である。
【図18】ユーザーがプリンタに関連付けられているリーダーにより読み取られるトークンを持っている場合のデータの流れを示す図である。
【図19】ユーザーがプリンタに関連付けられているトークンを読み取るためのリーダーを持っている場合のデータの流れを示す図である。
【図20】ユーザーが、プリンタトークンを読み取るが、プリンタリーダーを使用してNetpageサーバに接続するリーダーを持っている場合のデータの流れを示す図である。
【図21】プライベートホスティング型ネットワークとパブリックホスティング型ネットワークとの間のデータの流れを示す図である。
【図22】PCまたはデバイスホスティング型Netpageシステムを示す図である。
【図23】完全なタグの構造を示す図である。
【図24】シンボルユニットセルを示す図である。
【図25】9つのシンボルユニットセルを示す図である。
【図26】シンボル内のビット順序付けを示す図である。
【図27】すべてのビットがセットされているタグを示す図である。
【図28】4つのタグタイプからなるタググループを示す図である。
【図29】タググループの連続タイリングを示す図である。
【図30】コードワードA、B、C、およびDとタグとのインターリービングを示す図である。
【図31】コードワードレイアウトを示す図である。
【図32】タグ、およびその対応するビットインデックスをラベルとして付けた8個のすぐそばの隣接要素を示す図である。
【技術分野】
【0001】
本発明は、印刷システム、ならびにとりわけ、インタラクティブペーパー、コンピュータパブリッシング、コンピュータアプリケーション、人間コンピュータインターフェイス、および情報家電を伴う印刷システムに関する。
[相互参照]
【表1】
【表2】
【表3】
【表4】
上記の同時係属出願の開示は、相互参照により本明細書に組み込まれる。いくつかの出願は、その整理番号により仮に識別される。これは、利用可能であれば対応するUSSNにより置き換えられる。
【背景技術】
【0002】
オフィス環境では、印刷すべき文書は、典型的には、ローカルコンピュータネットワークを介して、ネットワークに接続されている多数のプリンタのうちの1つに送信される。ノミネートされたプリンタは、通常、ユーザーにとって最も都合のよいプリンタであるが、ユーザーが印刷ジョブを送った直後に文書を回収しに行かない限り、印刷された文書はコレクショントレイ内に待機する。文書が機密文書であれば、そのプリンタのところを通る他の人にその内容が開示される危険性がある。
【発明の開示】
【0003】
第1の態様によれば、本発明は、複数のユーザーのためにコンピュータネットワークを実現し、コンピュータネットワークは、
サーバと、
プリンタと、
ネットワークユーザーが携帯するネットワークユーザー識別子と、
プリンタに関連付けられているプリンタ識別子とを備え、使用時に、
ネットワークユーザー識別子およびプリンタ識別子は、ネットワークユーザーの保留中のプリントアウトがネットワークユーザーの近くにあるプリンタに送信され印刷されるように相互にやり取りする。
【0004】
ユーザーがプリンタのところに来るまで印刷ジョブをネットワーク上に保留することにより、印刷文書は、ユーザーがその文書を回収しに来るまでコレクショントレイ内に置かれない。これにより、他者が機密文書を見る危険性が減じる。ネットワークに接続されているすべてのプリンタが個々のユーザーを識別するためのセンサを備えている場合、ユーザーは、プリンタを選択する(または既定のプリンタを指定する)必要はない。印刷ジョブは、オフィス内のユーザーの現在位置に関係なく最も都合のよいプリンタから収集することができる。
【0005】
Netpageシステムは、相互参照文書とともに以下の「詳細な説明」で包括的に説明される。このシステムでは、コンピュータに基づく、典型的にはネットワークに基づく情報およびアプリケーションとの用紙およびペンに基づくインターフェイスを使用する。ユーザーは、Netpage文書上のインタラクティブ要素をNetpageペンで「クリック」することにより印刷ジョブを要求することができ、したがって、印刷ジョブが要求されたときにネットワーク接続プリンタから、さらにはオフィスからも、離れていてもかまわない。本発明は、Netpageシステムに特に適合しており、この環境内での動作を特に参照しつつ説明される。しかし、本発明は、Netpageよりもかなり幅広い用途を有し、Netpage文書の印刷に制限または制約されないことは理解されるであろう。
【0006】
適宜、ネットワークは、プリンタ識別子のうちの1つにそれぞれ関連付けられている複数の前記プリンタと、
それぞれ異なるネットワークユーザーを一意に識別する複数の前記ネットワークユーザー識別子とを備える。
【0007】
適宜、ネットワークユーザー識別子のそれぞれは、トークンであり、プリンタ識別子のそれぞれは、トークンリーダーを持ち、これによりユーザーは、自分のトークンを複数のプリンタのうちの1つに関連付けられているトークンリーダーに提示し、そのプリンタを介したキューに入れられているプリントアウトの実際の印刷を要求する。
【0008】
適宜、トークンは、短距離RFIDタグ、スマートカード、または磁気ストライプカードである。
【0009】
適宜、トークンリーダーは、次に印刷を開始する関連付けられているプリンタの近くにそのユーザーがいることをサーバ上のウォークアップ処理アプリケーションに通知する。
【0010】
適宜、プリンタ識別子のそれぞれは、トークンであり、ネットワークユーザー識別子のそれぞれは、ユーザーに関連付けられているトークンリーダーを持つ。適宜、トークンリーダーは、光学センサを備える電子スタイラスであり、トークンは、符号化データが配置されるそれぞれのプリンタの表面であり、符号化データはそれぞれのユーザーの電子スタイラスの光学センサにより読取り可能である。
【0011】
適宜、保留プリントアウトは、サーバによりキュー内に保持され、それぞれの保留プリントアウトは、高い優先順位のプリントアウトが、キュー内の前の方の位置にあっても優先順位の低いプリントアウトの前に印刷されるような優先順位付けを持つ。
【0012】
適宜、トークンリーダーは、ユーザーがそのトークンをリーダーに提示したときにリーダーがそのトークンを読み取り、ユーザーとそのプリンタの両方を識別してサーバに指示するようにそれぞれのプリンタに関連付けられる。適宜、トークンは、ユーザーを明示的に識別する。適宜、トークンは、トークン識別子を持ち、サーバは、データベース検索を実行して、トークン識別子をユーザー識別子に翻訳する。適宜、トークンリーダーは、プリンタを明示的に識別する。適宜、リーダーは、リーダー識別子を持ち、サーバは、データベース検索を実行して、リーダー識別子をプリンタ識別子に翻訳する。
【0013】
適宜、トークンリーダーおよびプリンタは、電気的接続を有する別々のデバイスである。
【0014】
適宜、トークンリーダーは、プリンタ内に物理的に組み込まれる。適宜、リーダーは、ユーザーがトークンを提示していることをプリンタに知らせ、次いでプリンタは、ユーザーの保留プリントアウトを印刷のため明示的に取り出す。
【0015】
適宜、トークンは、セキュリティアクセスまたは識別バッジまたはカードである。
【発明を実施するための最良の形態】
【0016】
本発明の実施形態は、実施例により、付属の図面のみを参照しつつ説明される。
【0017】
上述のように、本発明は、譲受人のNetpageシステムに組み込むのに適している。この観点から、本発明は、より広いNetpageアーキテクチャの一コンポーネントとして説明されている。しかし、本発明は、他のコンピュータネットワークにも適用可能であることは容易に理解されるであろう。
【0018】
[Netpageアーキテクチャ]
[概要]
図1は、Netpageパブリッシャ、アプリケーション、サービス、およびデバイスの間のやり取りを示している。Netpage文書サービス1は、Netpageパブリッシャ3または他のNetpageアプリケーション4から文書2を受け入れ、Netpageプリンタ6を経由してプリントアウト5を生成する。プリントアウト5は、一連の用紙の片面または両面の一連のインプレッションからなる。文書2のグラフィックコンテンツを紙上に再現することに加えて、プリンタ6は、座標グリッドを不可視ミリメートルスケールのタグ7の配列の形で設定する(上で相互参照されている米国特許出願第10/309,358号を参照)。それぞれのタグは、インプレッション上のその位置の二次元座標とともにそのインプレッションの一意的な識別子を符号化する。タグがNetpageペン8により光学的撮像される場合(以下、および上で相互参照されている米国特許出願第10/815,636号を参照)、ペンは、対応するインプレッションだけでなく、そのインプレッションに関係するそれ独自の位置を識別することができる。ペン8のユーザーが座標グリッド7に関してペンを移動した場合、ペンは、位置のストリームを生成する。このストリームは、デジタルインク9と呼ばれる。デジタルインクストリームは、さらに、ペンが表面に接触したとき、および表面との接触を失ったときを記録し、これらのいわゆるペンダウンおよびペンアップイベントのそれぞれの対は、ペンを使用するユーザーが書くストロークを線引きする。
【0019】
Netpageタグパターン7は、典型的には、不可視赤外線インクを使用して印刷されるが、可視グラフィックコンテンツは、スペクトルの赤外線部分において透明であるカラーインクを使用して印刷される。Netpageペン8は、タグパターン7を邪魔しないように赤外線透過インクを利用する従来のマーキングペン先を組み込む。
【0020】
インプレッション識別子(タグ)は印刷されたインプレッションに自己を表すので、それらは、すべてのNetpageシステム間で一意になるように工学設計され、したがって、大域的割当てメカニズムに依存する。
【0021】
文書2は、コマンドおよびフォームデータ12を定義する入力記述11を含むことができる。コマンドは、ユーザーによりアクティブ化され得る命令であり、フォームは、ユーザーによる書込みが可能な指定フィールドを持つ。コマンドおよびフォームのフィールドは両方とも、アクティブゾーン、つまり、ユーザー入力を取り込むページの領域を持つ。
【0022】
Netpageデジタルインクサービス13は、Netpageペン8からデジタルインク9を受け入れる。ペンは、典型的には、短距離通信機能しか持たないため、それよりも長い距離にわたって通信できる機能を持つNetpageリレー14を介してデジタルインク9をNetpageデジタルインクサービス13に転送する。典型的なリレーは、携帯電話、PDA、およびパーソナルコンピュータを含む。
【0023】
デジタルインクサービス13は、デジタルインク9におけるインプレッション識別子7を使用して、対応するインプレッションおよび入力記述11を文書サービス1から取り出し、それぞれの個別デジタルインクストロークを入力記述11のフォームに割り当てようとする。ペン8のユーザーがフォームサブミットコマンドを指定したことが検出されると、フォームに割り当てられたデジタルインク9を解釈し、その結果得られたフォームデータ12をコマンドに関連付けられたアプリケーションにサブミットする。
【0024】
デジタルインクサービスが特定のインプレッションに関してペン入力を解釈できるようにするために、文書サービス1は、印刷するすべての入力記述11のコピーを保持する。
【0025】
ユーザーが任意に長い時間をかけてフォームに記入できるようにするために、デジタルインクサービス13は、少なくともデジタルインクが解釈され、アプリケーション4にサブミットされるまで、受け取るすべてのデジタルインク9のコピーを保持する。デジタルインクサービス13は、適宜、すべてのデジタルインク9を無期限に保持し、フォームコンテンツと文書注釈の両方のデジタルインク検索を可能にする。
【0026】
Netpageペン8、またはより単純なNetpageポインタを、携帯電話またはPDAなどのハンドヘルド型デバイスに直接組み込むことができる。逆に、ペンは、長距離通信機能を組み込むことができ、別にリレーを用意する必要はない。
【0027】
リレーデバイス14は、典型的には、インタラクティブディスプレイ15を組み込んでいるため、デジタルインクサービス13ではインタラクティブディスプレイ15をターゲットアプリケーション4に対して識別してアプリケーションがインタラクティブディスプレイと直接通信できるようにすることが可能であり、それにより、紙とペンを介して開始された対話操作が機能豊富な画面に基づく対話操作に到達し、一般的に、紙と画面の両方の媒体を最大限に活用する紙と画面に基づくハイブリッドアプリケーションの開発が可能になる。
【0028】
複数の分散デジタルインクサービス13が存在する場合、ペン8(またはそのリレー14)は、ネームサービスを使用して、ペン識別子と場合によってはインプレッション識別子に基づき、ターゲットデジタルインクサービスのネットワークアドレスを解決することができる。複数の分散文書サービス1が存在する場合、デジタルインクサービス13は、ネームサービスを使用して、インプレッション識別子に基づき、文書サービスのネットワークアドレスを解決する。
【0029】
上記の説明は、デジタルインクのフォームに基づく解釈およびその後フォームデータをアプリケーションに配信することを中心として述べられているが、デジタルインクサービスは、さらに、アプリケーションへのデジタルインクの配信のストリーミングもサポートする。これにより、アプリケーションは、ペン入力により直接的に応答することが可能になる。ストリーミングモードでは、デジタルインクサービスは、ストロークデジタルインクと介入「ホバー」デジタルインクの両方を配信し、アプリケーションがディスプレイを介してリアルタイムの位置フィードバックをユーザーに供給することができる。
【0030】
[オブジェクトモデル]
オブジェクトモデルは、Netpageサービスの外部インターフェイスに関係する論理モデルである。これは、実装モデルとして意図されていない。
【0031】
[文書]
図2は、視覚的記述16および入力記述11を含む文書2を示すクラス図である。与えられた文書に関して、いずれかの記述が空であってもよい。それぞれの文書2は、一意的に識別される18。
【0032】
視覚的記述16は、静的要素22および動的要素24を表す視覚的要素20の集まりである。静的要素は、テキストフロー26、イメージ28、グラフィックス30などを表す。動的要素24は以下で説明される。
【0033】
入力記述11は、フォーム32の集まりであり、それぞれ、コマンド36およびフィールド38を表す入力要素34の集まりからなる。フォーム32は、物理的にも論理的にも重なり合う場合があり、同じ入力要素34が複数のフォームに関与する場合がある。それぞれの入力要素34は、入力が取り込まれる領域を定義するゾーン40を有する。それぞれのフォーム32は、ターゲットアプリケーション42に関連付けられる。アプリケーション42は、フォーム32のサブミットを受け取る。アプリケーション42は、アドレス44により識別される。
【0034】
図3のクラス図に例示されているように、文書2は、それぞれのページ46にページ番号54が割り当てられている、一連の番号が振られたページからなる物理的構造を持つ。文書要素48は、それぞれ、その一連のページ内の特定の位置52に割り当てられている。単一文書要素48は多数のページ46にまたがることができるため、対応する数のページ要素50を持つことができ、それぞれ文書要素48の断片の位置52を定義する。
【0035】
[プリントアウト]
図4のクラス図を参照すると、プリントアウト5は、プリントアウトID 56を割り当てられた一連のインプレッション58から成り立っている。「N−up」印刷では、複数ページ46は、単一インプレッション58上に現れるが、「ポスター」印刷では、単一ページ46は、複数のインプレッション58にまたがることができる。ページインプレッション64では、変換66を使用してインプレッション58上のページ46の位置、スケール、および回転を表す。
【0036】
それぞれのインプレッション58は、インプレッションが印刷されるときにインプレッションの座標グリッドとともに符号化される一意的な識別子60により識別される。
【0037】
実際に印刷されると(または後述の「ウォークアップシナリオ」の保留印刷)、インプレッション58は、印刷が行われたプリンタ6と、もし知られていれば印刷を要求したユーザー62の両方に関連付けられる。
【0038】
図5に示されているように、ペン8は、単一ユーザー62により所有されるが、ユーザーは、ペン8をいくつでも所有することができる。したがって、ユーザー62は、ユーザーIDおよび他のユーザー詳細68を割り当てられ、同様に、それぞれペン8およびプリンタ6は、ペンIDと詳細70、およびプリンタIDと詳細72を有する。ユーザー62は、適宜、既定のプリンタ6を持つ。図6のクラス図は、一連のペンイベント76からなる、ペン8に関連付けられている単一デジタルインクストリーム74を例示している。それぞれのペンイベントは、ペン先力センサを使用してタイムスタンプ78が記録される。ストリーム74内の連続するセグメント80は、異なるインプレッション58に関係する。それぞれのセグメントには、番号82が割り当てられる。それぞれの一連のペンイベント76は、ペンダウンイベント84とペンアップイベント86との間の一連のペン位置イベント88である。これは、ペンのユーザーにより描かれるストロークを定義する。多くの場合、続く一連のストロークは、同じインプレッション58に関係し、通常は、セグメント境界は、ストローク境界に対応する。しかし、ストロークは、さらに、複数のインプレッション58を横断することができ、ストリーム74は、ストローク間の「ホバー」ペンイベントを含むことができる。
【0039】
図7のクラス図は、アプリケーションにサブミットされるフォームデータ12がフィールド値90の集まりからなることを示している。フォームデータ12は、プリントアウト5に現れる一意的なフォームインスタンス92に関連付けられている。アプリケーションは、フォームインスタンス92が(プリントアウトの一部として)最初に作成されるときにトランザクション識別子を指定することができる。トランザクション識別子94は、フォームデータ12と一緒にサブミットされ、これにより、ターゲットアプリケーションはそのデータを使用して一意的なトランザクションコンテキストのインデックスを作成することができる。
【0040】
デジタルインクサービス13(図1を参照)は、フォームが1度だけサブミットされ、有効期限が切れ、署名後凍結され、そして無効にされるフォームのライフサイクルをサポートする。フォームインスタンスは、フォームのライフサイクルに関してフォームのステータスを反映する。
【0041】
図8のクラス図に例示されているように、文書2は、さらに、動的要素24も含むことができる。それぞれの動的要素は、関連する動的オブジェクト96を持ち、さらにこれは、関連するオブジェクトデータ98および(典型的には型に特有の)オブジェクトアプリケーション99を持つ。動的要素24は、Netpageビューア(上で相互参照されている米国特許出願第09/722,175号を参照)などのデバイスを使用して適切にアクティブ化されるか、またはリレー14(図1を参照)に関連付けられたインタラクティブディスプレイ15などの任意のインタラクティブディスプレイ上でアクティブ化されるか、またはNetpage Explorer(後述)を介してアクティブ化されることができる。
【0042】
動的オブジェクトおよびその関係するアプリケーション実施例としては、例えば、オーディオクリップとオーディオプレイヤー、ビデオクリップとビデオプレイヤー、写真と写真ビューア、URLとWebブラウザ、編集可能文書とワードプロセッサなどがある。
【0043】
図9のクラス図に例示されているように、動的オブジェクト96は、さらに、例えば、インプレッションの仮想ビュー、またはインプレッション自体に「貼り付け」ることにより、既存のインプレッション上の任意の場所に動的にリンクさせることも可能である。
【0044】
図10は、ナビゲーション修飾子とともに、Netpage文書サービス1およびNetpageデジタルインクサービス13(図1を参照)により公称的に保持される3つのストアの間の関係を示している。
【0045】
文書ストア100、プリントアウトストア102、およびデジタルインクストア104とは別に、Netpageサービスは、登録ユーザー62、ペン8とプリンタ6、識別子割当て、およびサービスアドレス解決(図に示されていない)用の追加のストアを備えることができる。
【0046】
[機能]
以下の節で説明されるプロセスおよびストアは、実装を意図せず、機能を明らかにすることが意図されている。
【0047】
[フォーム入力]
図11は、図1よりもさらに詳しくNetpageシステム内のデータの基本的な流れを示している。文書サービス1では、アプリケーション4が文書2を提示し、文書2を印刷する印刷要求106を別に送信することができる。これは、文書ストア100内にそれぞれの提示された文書のコピーを保持し、文書ストア100内に、文書の入力記述がもしあればそのコピーを保持する。文書2を指定されたプリンタ6に出力すると、これは、プリントアウト5をプリントアウトストア102に記録する。
【0048】
デジタルインクサービス13は、リレー14を経由してペン8からデジタルインク9を受け入れ、受け取ったデジタルインクのコピーをデジタルインクストア104に保持する。デジタルインク9内のインプレッション識別子60を使用して、対応するインプレッション58および入力記述を文書サービス1から取り出す。次いで、それぞれの個別デジタルインクストロークを、ストロークの位置および程度ならびに入力要素のアクティブゾーンに応じて、コマンドまたはフォームフィールドなどの入力記述の一要素に割り当てる。ペン8のユーザーがフォームサブミットコマンドを指定したことが検出されると、それぞれのフィールドに割り当てられたデジタルインク9がフィールドの型に応じて解釈され108、その結果得られたフォームデータ12がコマンドに関連付けられているアプリケーション4にサブミットされる。例えば、デジタルインクサービス13は、チェックボックス内のマークをチェックマークとして解釈し、インテリジェント型文字認識機能を使用してテキストフィールド内の手書きテキストをテキスト文字列に変換し、署名フィールド内の手書き署名をペンのユーザーの記録されている署名と比較し、署名が一致すれば、ユーザーに代わってフォームデータにデジタル署名する。
【0049】
[インプレッションのリプリント]
Netpageシステムは、インプレッションを介して取り込まれた図面または手書きを含む、または含まないすでに印刷されているインプレッションのリプリントをサポートする。そのため、ソース独立の文書再現がサポートされる。図12は、アプリケーション4からのリプリント要求110への応答としてのデータの流れを例示している。文書サービス1で一組のインプレッション58をリプリントする場合、適宜、インプレッションを介して取り込まれた図面および手書きを含み、デジタルインクサービス13においてデジタルインクストア104から対応するデジタルインクを取り出す(可視性とアクセスを条件とする)。これは、新しいプリントアウトを記録し、リプリントされたインプレッション112に割り当てられたインプレッション識別子を記録する。
【0050】
[一般印刷]
Netpageシステムは、Netpage対応アプリケーションにより生成されたかどうかに関係なく、印刷された文書用の仮想ファイリングキャビネットとして機能する。Netpage対応アプリケーションは、文書内に入力記述を含めることができるという利点を有するが、非Netpage対応アプリケーションは、検索可能注釈およびソース独立リプリントをサポートする印刷された文書の恩恵を受ける。
【0051】
図13は、非Netpage対応アプリケーション114からの一般印刷要求への応答としてのデータの流れを例示している。Netpage対応プリンタドライバ116は、プラットフォーム特有の描画コマンド118を、文書サービス1に提示されるNetpage互換文書2に変換し、次いで、文書サービス1が指定されたプリンタ6を介して文書2を印刷する印刷要求106を送信する。
【0052】
図14は、プリンタが文書サービス1によりアクセス可能でない場合のデータの対応する流れを例示している。ここで、プリンタドライバ116は、それでも、文書2を文書サービス1に提示し、プリントアウト5をプリントアウトストア102に記録するが、文書2を指定されたプリンタ6を直接経由して実際に印刷する。
【0053】
[ウォークアップ印刷]
ユーザーが、従来のユーザーインターフェイスを介して文書の印刷を要求した場合、通常は、ターゲットプリンタを指定すると都合がよい。しかし、Netpageシステムでは、印刷は、印刷されたフォームを介してユーザー入力に対する応答として実行されることが多く、ターゲットプリンタを指定すると都合がよくない場合がある。1台のプリンタが用意されている家庭など、一部の環境では、所望のターゲットプリンタを推論することができる。複数のネットワーク接続プリンタが用意されているオフィスなど、他の環境では、所望のターゲットプリンタは、容易に推論できない場合がある。このような環境では、ユーザーがそこまで歩いていってターゲットプリンタを指定することができると有益である。
【0054】
図15は、ウォークアップ環境のデータの流れを示す。Netpageアプリケーション4からのすべての印刷(およびリプリント)要求120は、典型的には、遅らされる。遅延された印刷要求120に対する応答として、文書サービス1は、プリントアウト5をプリントアウトストア102内に記録し、インプレッションに関係する情報を取り込み、プリントアウトを要求側ユーザー用のプリントアウト保留キュー122内に入れる。
【0055】
可能な一構成では、それぞれのプリンタ6は、関連するトークンリーダー124を持ち、ユーザーは、トークン126をトークンリーダーに与え、プリンタ6を介してキューに入れられたプリントアウトの実際の印刷を要求する。トークン126は、短距離RFIDタグ、スマートカード、磁気ストライプカードなどとすることができる。トークンリーダー124は、文書サービス1を介して次に印刷を開始するプリンタの近くにそのユーザーがいることをウォークアップ処理アプリケーション128に通知する。
【0056】
他の可能な構成では、トークンリーダー124は、ユーザーに関連付けられ、トークン126は、プリンタ6に関連付けられる。例えば、トークンリーダー124は、ユーザーのNetpageペン8とすることができ、トークン124は、プリンタ上に配置されたタグパターンとすることができる。
【0057】
図16は、文書サービス1により保持される保留プリントアウトキュー122のクラス図を示している。それぞれの保留プリントアウト128は、優先度130を持ち、これにより、優先度の高いプリントアウトを、キュー内の前の方にあるが優先度の低いプリントアウトの前に印刷することができる。
【0058】
文書サービスは、Netpageタグで符号化されない、保持されている文書に対するウォークアップ印刷を行うために使用することができる。
【0059】
一般に、トークン126は、Netpageタグパターン、リニアバーコードまたは二次元バーコードが施されている表面または物体、磁気ストライプカード、スマートカードもしくは非接触型スマートカード、または無線IC(RFID)タグを含む、多数の受動的、半受動的、または能動的デバイスのうちのどれかとすることができる。リーダー124は、従来のバーコードリーダーまたはNetpage感知デバイスの場合のような走査レーザーまたは二次元イメージセンサを使用する光学式読取装置、磁気ストライプリーダー、スマートカードリーダー、またはRFIDリーダーなどの、トークン126の種類に一致するリーダーとすることができる。
【0060】
図18に例示されているように、第1の構成では、トークンリーダー124は、プリンタ6に関連付けられ、ユーザーは、トークン126をリーダーに提示する。リーダー124は、トークン126を読み取り、ウォークアップイベントをNetpageサーバ1に伝達する。ウォークアップイベントは、ユーザー62とプリンタ6の両方を識別する。トークン126およびウォークアップイベントは、ユーザー62を明示的に識別するか、またはサーバ側で、データベース検索を実行し、トークン識別子をユーザー識別子に翻訳する必要がある場合がある。リーダーおよびウォークアップイベントは、プリンタ6を明示的に識別するか、またはサーバ1側で、データベース検索を実行し、リーダー識別子をプリンタ識別子に翻訳する必要がある場合がある。サーバ1がユーザー62およびプリンタ6を識別した後、サーバ1は、そのユーザーの保留になっているプリントアウトを取り出し、印刷するプリンタに送信する。
【0061】
図18は、リーダー124およびプリンタ6を、物理的に関連付けられている別々のデバイスとして示している。リーダー124は、プリンタ6内に物理的に組み込むことができるさらに、プリンタに電気的に接続することもでき、プリンタはウォークアップイベントをサーバに配信する。それとは別に、同じようにして、プリンタ6は、ウォークアップイベント自体を解釈し、ユーザーの保留プリントアウトを印刷のため明示的に取り出すことができる。
【0062】
ユーザートークン126は、携帯電話、ペン、電子ペン(Netpageペン8など)、財布、セキュリティアクセスカードもしくはトークン、または識別バッジもしくはカードなどのユーザー62が携帯するポータブルデバイスに取り付けるか、または組み込むことができる。これは、さらに、スタンドアロンで、特定の目的を持つものとすることができる。
【0063】
Netpageペン8の場合、プリンタリーダー124は、ペンを受け取るためのリセプタクルを備えることができ、これにより、ペンは、リーダーと電気的に接触し、有線通信リンク(例えば、USB)を確立し、ユーザー識別子をリーダーに伝達する。
【0064】
図19に例示されているように、第2の構成では、トークンリーダー124は、ユーザー62に関連付けられ、ユーザーは、リーダーをトークン126に提示する。リーダー124は、トークン126を読み取り、ウォークアップイベントをNetpageサーバ1に伝達する。ウォークアップイベントは、ユーザー62とプリンタ6の両方を識別する。トークン126およびウォークアップイベントは、プリンタ6を明示的に識別するか、またはサーバ1側で、データベース検索を実行し、トークン識別子をプリンタ識別子に翻訳する必要がある場合がある。リーダー124およびウォークアップイベントは、ユーザー62を明示的に識別するか、またはサーバ1側で、データベース検索を実行し、リーダー識別子をユーザー識別子に翻訳する必要がある場合がある。サーバ1がユーザー62およびプリンタ6を識別した後、サーバ1は、そのユーザーの保留になっているプリントアウトを取り出し、印刷するプリンタに送信する。
【0065】
プリンタトークン126は、プリンタ6またはプリンタと同じ場所に配置されているデバイスに取り付けるか、または組み込むことができる。
【0066】
図20に例示されているように、ユーザー62がトークンリーダー125を提示した場合でも、ユーザーリーダー125がプリンタ上のトークンリーダー124(またはプリンタ自体)とサーバ1との間の通信リンクに頼るとさらに都合がよい場合があるが、それは、この通信リンクは、存在することが保証されているからである。図19のように、ユーザー62は、リーダー125をトークン127に提示する。リーダー125は、トークン127を読み取る。トークンから、プリンタ6への短距離通信リンクを決定する。これは、Bluetoothなどのパーソナルエリアネットワーク(PAN)無線リンク、無線USBもしくはZigBee、またはIEEE802.11(WiFi)などのローカルエリアネットワーク(LAN)無線リンクとすることができる。また、IrDAなどの短距離光リンクとすることもできる。リンクがターゲットアドレスを必要とする場合(Bluetoothの場合など)、トークンがターゲットアドレスを与える。例えば、プリンタ6上のトークン127がNetpageタグパターンを使用する場合、タグパターンは、インプレッションID、x−y位置などの代わりにターゲットアドレスを符号化し、そのようなものとしてフラグを立てる。リンクがターゲットアドレスを必要としない場合(IrDAの場合など)、トークン127は、単に、ユーザー識別子をプリンタのトークンリーダー126に伝達するようにユーザーのトークンリーダー126に知らせるだけである。ここでもまた、プリンタトークンがNetpageタグパターンを使用する場合、タグパターンはコマンドにフラグを立て、ユーザー識別子をプリンタリーダー124に伝達するようにする。ある範囲の通信リンクタイプがサポートされる場合、トークン127(例えば、タグパターン)は、特定のリンクタイプを識別することができる。プリンタリーダー124は、ユーザーリーダー125からユーザー識別子を受け取り、ウォークアップイベントをNetpageサーバ1に伝達する。サーバがユーザー62およびプリンタ6を識別した後、サーバ1は、そのユーザーの保留になっているプリントアウトを取り出し、印刷するプリンタに送信する。
【0067】
ユーザートークン126またはユーザーリーダー125が存在しない場合、ユーザー62は、ユーザー識別子またはジョブ識別子をプリンタ6に関連付けられているキーパッドに、オプションのパスワードとともにキー入力することができる。ユーザー62は、さらに、プリンタに関連付けられているディスプレイに基づく入力デバイスを使用してその識別またはその保留プリントアウトをユーザーまたはジョブのリストから選択することもできる。
【0068】
[Netpage Explorer]
上述のように、Netpageシステムは、印刷文書用の仮想ファイリングキャビネットとして動作する。したがって、Netpageシステムでは、ユーザーに対して、画面に基づくブラウザ−Netpage Explorer−を用意しており、文書サービスにより保持されているプリントアウトの集まりの閲覧および検索、またそのデジタルインクを含む、個々のプリントアウトを画面上で参照することができる。Netpage Explorerは、さらに、デジタルインクのストリーミングのリアルタイム表示もサポートし、さらに遠隔テレビ会議の基盤ともなる。
【0069】
上述のように、Netpageシステムは、文書内への動的オブジェクトの埋め込み、印刷インプレッション上の位置への動的オブジェクトの動的リンクをサポートする。Netpage Explorerは、印刷インプレッションの与えられる仮想ビューを介したそのようなオブジェクトの表示および対話操作とともに、そのようなオブジェクトの動的リンクをサポートする。
【0070】
[製品変更形態]
この節では、それぞれ異なるレベルのネットワーク分散およびアクセスを反映する3つのNetpage製品変更形態について説明する。図17は、パブリックインターネット133の分散サーバ群上で実行されているパブリックNetpageサービス134を使用し、パブリックインターネット133上でアプリケーション4およびユーザーに使用されるシステムを示している。図21は、プライベートイントラネット138の1つまたは複数のサーバ上で実行されているサービス136(例えば、プライベートNetpage文書およびデジタルインクサービス)を備え、プライベートイントラネット上でアプリケーション4およびユーザーに使用されるプライベートNetpageシステムを示している。図22は、単一のパーソナルコンピュータまたは他のパーソナルデバイス140上で実行されているサービス142を含むパーソナルNetpageシステムを示している。
【0071】
それぞれの場合において、雑誌広告、カタログ、パンフレット、および製品アイテムHyperlabelなどの印刷前のNetpageコンテンツは、典型的には、インターネット上で実行されているパブリックNetpage文書サービスによりホスティングされる。
【0072】
プライベートNetpageシステムでは、図21および22に暗示されているように、文書サービスがパブリックである場合でも、セキュリティおよびプライバシーの問題が、プライベートデジタルインクサービスを使用する動機となり得る。プライベート文書サービスは、さらに、パブリック文書サービスのキャッシングプロキシとしても動作可能である。
【0073】
より一般的に、セキュリティおよびプライバシーの問題は、文書サービスの普及と無関係に、制約されたデジタルインクサービス群にユーザーのデジタルインクをルーティングする動機となり得る。国際文書サービスとのやり取りの場合でも、政府が国民のデジタルインクを国のデジタルインクサーバにルーティングするよう義務付けている国もあり得る。したがって、Netpageペン(またはそのリレー)は、プライベートおよびパブリックの両方のデジタルインクサービスを知り、プライベートインプレッションに関連するデジタルインクを前者に、パブリックインプレッションに関連するデジタルインクを後者にルーティングすることができる。与えられたペンのデジタルインクがパブリックインプレッションに関係し、公称的にパブリックサーバ上でアクセス可能である場合であっても、このことは、インプレッションの所有者またはインプレッションの他のユーザーが自動的にその分デジタルインクへのアクセス権を獲得することを意味する必要はない。
【0074】
[Netpage表面符号化のセキュリティ]
[はじめに]
Netpageシステムは、表面符号化を使用して、他の場合には受動的である表面に、NetpageペンおよびNetpageビューアなどのNetpage感知デバイスと連動する対話機能を付与する。Netpage符号化表面を対話操作する場合、Netpage感知デバイスは、感知デバイスが移動する際の配置基準となる表面領域の識別と、その領域内にある感知デバイスの絶対的経路の両方を示すデジタルインクストリームを生成する。
【0075】
この節では、Netpage表面符号化のオプションの認証機能、および関連する認証プロトコルを定義する。
【0076】
[表面符号化のセキュリティ]
[表面符号化の背景]
Netpage表面符号化は、複数のタグの高密度平面状タイルからなる。それぞれのタグは、平面内のそのタグの位置を符号化する。それぞれのタグは、さらに、隣接するタグとともに、そのタグを含む領域の識別子を符号化する。
【0077】
この領域IDは、すべての領域にわたって一意である。Netpageシステムでは、この領域は、典型的には、1枚の用紙の片面などの、タグ付き表面の広がり全体に対応する。Hyperlabelシステムでは、この領域は、典型的には、製品アイテム全体の表面に対応し、領域IDは、一意的なアイテムIDに対応する。以下の説明で明らかになるように、アイテムおよびアイテムID(または単純にID)への参照は、領域IDに対応する。
【0078】
この表面符号化は、タグ全体の取得を保証できる十分な大きさの取得視野がタグを含む領域のIDの取得を十分保証できる大きさとなるように設計される。タグ自体の取得により、領域内のタグの二次元位置の取得とともに、他のタグ特有のデータの取得が保証される。したがって、表面符号化により、符号化表面との純粋にローカルなやり取りの際、例えば、ペンによる符号化表面上の「クリック」またはタップを行ったときに、感知デバイスは領域IDおよびタグ位置を取得することができる。
【0079】
[暗号法の背景]
暗号法は、記憶域内にある機密情報およびデータ送信中の機密情報の両方を保護し、トランザクションの当事者を認証するために使用される。広く使用されている暗号法には2つのクラス、秘密鍵暗号法と公開鍵暗号法がある。NetpageおよびHyperlabelシステムでは、両方のクラスの暗号法を使用する。秘密鍵暗号法は、対称暗号法とも呼ばれ、メッセージを暗号化および暗号解読に同じ鍵を使用する。メッセージ交換を望んでいる当事者2人は、まず最初に、秘密鍵を安全に交換する手はずを整えなければならない。
【0080】
公開鍵暗号法は、非対称暗号法とも呼ばれ、2つの暗号鍵を使用する。これらの2つの鍵は、一方の鍵を使用して暗号化されたメッセージが他方の鍵を使用しないと暗号解読できないような数学的関係にある。次いで、これらの鍵の一方を公開し、他方の鍵を秘密にする。これらは、それぞれ公開鍵および秘密鍵と呼ばれる。公開鍵は、秘密鍵の保有者を対象としてメッセージを暗号化するために使用される。公開鍵を使用して暗号化された後、メッセージは、秘密鍵を使用しないと暗号解読することができない。したがって、当事者2人は、最初に秘密鍵を交換せずにメッセージを安全に交換することができる。秘密鍵が安全であることを保証するために、秘密鍵の保有者は公開−秘密鍵対を生成するのが普通である。
【0081】
公開鍵暗号法は、電子署名を作成するために使用することができる。秘密鍵の保有者がメッセージの知られているハッシュを作成し、次いで、秘密鍵を使用してそのハッシュを暗号化した場合、その特定のメッセージに関して暗号化されたハッシュが秘密鍵の保有者の「署名」をなすことを、公開鍵を使用して暗号化されたハッシュを暗号解読し、そのメッセージと突き合わせてハッシュを検証することにより誰でも検証することができる。署名がメッセージに付加されている場合、メッセージの受信者は、メッセージが本物であること、およびデータ送信中に改ざんされていないことを検証することができる。
【0082】
秘密鍵は、さらに、電子署名を作成するためにも使用することができるが、秘密鍵を密かに知っている当事者であれば署名照合も実行できるという欠点を有する。
【0083】
公開鍵暗号法を機能させるには、偽装を防止する公開鍵を配布する方法がなければならない。これは、通常、証明書と証明機関を利用して行われる。証明機関は、信頼できる第三者であり、公開鍵と人または他の実体の識別との関連付けを認証する。証明機関は、識別文書などを調べることにより識別を検証し、次いで、識別詳細および公開鍵を含む電子証明書を作成して署名を入れる。証明機関を信頼する人であれば誰でも、それが本物である高い確実さで証明書内の公開鍵を使用することができる。これらは、公開鍵がよく知られている証明機関により証明書が実際に署名されたことを検証すればよいだけである。
【0084】
秘密鍵暗号法に匹敵するセキュリティを実現するために、公開鍵暗号法では、1桁大きい、つまり数100ビットと比較して数1000ビットの鍵長を使用する。
【0085】
暗号法の詳細な説明については、Schneier,B.,Applied Cryptography,Second Edition,John Wiley&Sons 1996を参照のこと。
【0086】
[セキュリティ要件]
以下の2つの関係する目的を持つようにアイテムセキュリティを定義する。
【0087】
−アイテムの認証を許可する
−アイテムの偽造を防止する
偽造が難しければ難しいほど、認証の信用性は高まる。
【0088】
アイテムが符号化される場合、Netpage表面符号化セキュリティは、以下の2つの対応する目的を持つ。
【0089】
−符号化されたアイテムの認証を許可する
−新規アイテムIDで符号化されたアイテムの偽造を防止する
ユーザーがアイテムの表面符号化の信憑性を調べられる場合、ユーザーは、アイテムの確かそうな信憑性に関して詳しい情報を得たうえで決定することができると思われる。
【0090】
新規IDに対し表面符号化を偽造することが困難である場合、本物の表面符号化でアイテムを偽造する扱いやすい唯一の方法は、既存のアイテムの表面符号化(したがってそのID)を複製することである。アイテムのIDが一意的である可能性があると他の手段によりユーザーが判定できる場合、ユーザーは、そのアイテムが本物であると仮定することができる。
【0091】
Netpage表面符号化により、純粋にローカルなやり取りの際に感知デバイスと符号化表面との間の意味のあるやり取りが可能になるため、表面符号化では、同様にローカルなやり取りの際に、つまり、感知デバイス視野のサイズを増やさずに、認証を行うことをサポートすることが望ましい。本物の符号化アイテムの作成者とそのようなアイテムの認証を行うことを望んでいる可能性のあるユーザーとの間に先験的な関係は存在しないので、作成者とユーザーとの間に信頼関係を要求することは望ましくない。例えば、作成者が、ユーザーと秘密署名鍵を共有することが必要であることは望ましくない。
【0092】
多くのユーザーが、アイテムの認証を行う目的で作成者により信頼されている認証機関にオンラインでアクセスすることに依存するのが妥当である。逆に、認証は、オンラインアクセスがない場合に行われるのが望ましい。
【0093】
[セキュリティの説明]
上の「暗号法の背景」で説明されているように、認証は、データとそのデータの署名との間の対応関係を検証することに依存する。署名の偽造が難しければ難しいほど、署名に基づく認証の信用性は高まる。
【0094】
アイテムIDは、一意的であり、したがって署名の基盤となる。オンライン認証アクセスが仮定される場合、署名は、単に、信頼できるオンライン認証機関にアクセス可能な認証データベース内のアイテムIDに関連付けられた乱数とすることができる。乱数は、決定論的(擬似ランダム)アルゴリズムまたは物理的確率過程を利用するなど好適な方法で生成することができる。鍵付きハッシュまたは暗号化ハッシュは、認証データベース内に追加の領域を設けずに済むため、乱数には好ましい場合がある。
【0095】
限られた場合において、データベース内にアイテムIDが単に存在するだけで本物であることを示すことになるため、署名は実際には必要とされない。しかし、署名の使用は、偽造者に実際に見えたアイテムを偽造者が偽造することを制限する。
【0096】
見られていないIDに対する署名の偽造を防ぐために、署名は、オンライン認証機関への繰り返しアクセスを介した網羅的検索を扱いにくくできる十分な大きさでなければならない。乱数ではなく鍵を使用して生成される場合、署名の長さも、偽造者が知られているID署名対から鍵を推定するのを十分防げる大きさでなければならない。数100ビットの署名は、秘密鍵を使用して生成されるかどうかに関係なく、安全と考えられる。
【0097】
表面符号化タグ構造内の空間が限られているため、タグ内に安全な署名を入れることは実用的でない。したがって、われわれは、複数のタグに署名の断片を分散させる気になった。それぞれの断片がIDと突き合わせて分離して検証することができる場合、感知デバイス視野を広げずに認証を行うことをサポートするという目標が達成される。署名のセキュリティは、それでも、1つの断片の長さではなく、署名の全長から得られるが、それは、ユーザーがどの断片の照合を選ぶかを偽造者側では予測できないからである。信頼できる認証機関は、常に、断片照合を実行し、断片照合は、信頼できる認証機関へのオンラインアクセスが利用できる場合には可能であることに留意されたい。
【0098】
断片照合は、断片識別を必要とする。断片は、明示的に番号付けするか、またはより経済的に、タグの連続タイリングにわたる署名の繰り返しを法とする、そのタグの二次元座標により識別することができる。
【0099】
ID自体の限られた長さは、他の脆弱性をもたらす。理想的には、少なくとも数100ビットでなければならない。NetpageおよびHyperlabel符号化方式では、96ビット以下である。この問題を解決するために、IDをパッディングすることができる。これが有効であるためには、パッディングは可変でなければならない、つまり、1つのIDと次のIDとで異なっていなければならない。理想的には、パッディングは、単に乱数であり、したがって、IDをインデックスとする認証データベースに格納されなければならない。パッディングがIDから決定論的に生成される場合、それは役立たない。秘密鍵署名のオフライン認証では、信頼できるオフライン認証デバイスを使用する必要がある。QAチップ(2002年4月16日に発行された米国特許第6,374,354号を参照)は、容量は限られているけれども、そのようなデバイスの基盤となる。QAチップは、内部メモリに安全に保持されている秘密鍵を使用して署名を検証するようにプログラムすることができる。しかし、このシナリオでは、ID毎のパッディングをサポートすることは実用的でなく、また極めて少ない秘密鍵でない限りサポートすることすら実用的でない。さらに、このようにしてプログラムされたQAチップは、選択メッセージ攻撃に弱い。これらの制約条件により、QAチップに基づく信頼できるオフライン認証をニッチアプリケーションに適用する可能性が制限される。
【0100】
一般に、特定の信頼できるオフライン認証デバイスの請求されているセキュリティであっても、安全なアイテムの作成者は、自分の秘密署名鍵をそのようなデバイスに預けることを嫌うこともあり得、これもまた、ニッチアプリケーションへのそのようなデバイスの適用性を制限する可能性がある。
【0101】
対照的に、公開鍵署名(つまり、対応する秘密鍵を使用して生成される)のオフライン認証は、実用性が高い。公開鍵を使用するオフライン認証デバイスは、公開鍵をいくつでも保有できることは自明であり、対応する公開署名鍵がないことが知られているIDに遭遇した場合に、一時的オンライン接続を介して、オンデマンドで、追加の公開鍵を取り出すように設計することができる。
【0102】
信頼できないオフライン認証は、その秘密署名鍵の排他的制御を保持することができるため安全なアイテムの大半の作成者にとって魅力的なものである可能性が高い。
【0103】
公開鍵署名のオフライン認証の欠点は、最小の視野で認証をサポートしたいというわれわれの希望に反して、署名全体を符号化から取得しなければならない点である。公開鍵署名のオフライン認証の対応する利点は、公開署名鍵を使用して署名を暗号解読することで、IDとそのパッディングの両方が生成されるためIDパッディングへのアクセスがもはや必要なくなり、パッディングを無視できるという点である。
【0104】
分散された署名全体の取得は、特に面倒なものではない。符号化表面全体にわたるハンドヘルド型感知デバイスのランダムまたはリニアスワイプにより、署名の断片すべてを即座に取得することができる。感知デバイスは、全断片集合を取得し、認証を完了したときにユーザーに通知するように容易にプログラムすることができる。走査レーザーも、署名のすべての断片を容易に取得することができる。両方の種類のデバイスは、タグが署名の存在を示している場合のみ認証を実行するようにプログラムすることができる。
【0105】
公開鍵署名は、ランダムに生成されたか、秘密鍵を使用して生成されたかに関係なく、署名と同じ方法で、断片をどれかを介して、オンラインで認証することができることに留意されたい。信頼できるオンライン認証機関は、秘密鍵およびIDパッディングを使用してオンデマンドで署名を生成するか、または認証データベース内に署名を明示的に格納することができる。後者のアプローチでは、IDパッディングを格納する必要がなくなる。
【0106】
また、署名に基づく認証は、信頼できる認証機関へのオンラインアクセスが利用できる場合であっても断片に基づく認証の代わりに使用することができることにも留意されたい。
【0107】
[セキュリティ仕様]
[ID別セットアップ範囲]
−公開−秘密署名鍵対を生成する
−ID範囲でインデックスが作成された鍵対を格納する
[ID別セットアップ]
−IDパッディングを生成する
−ID別に秘密署名鍵を取り出す
−秘密鍵を使用してIDおよびパッディングを暗号化することにより署名を生成する
−IDでインデックスが作成されたデータベース内に署名を格納する
−複数のタグにわたって繰り返しにより署名を符号化する
[オンライン(断片に基づく)認証(ユーザー)]
−タグからIDを取得する
−タグから位置および署名断片を取得する
−位置から断片番号を生成する
−IDにより信頼できる認証機関を検索する
−ID、断片、および断片番号を信頼できる認証機関に送信する
[オンライン(断片に基づく)認証(信頼できる認証機関)]
−ID、断片、および断片番号をユーザーから受信する
−ID別にデータベースから署名を取り出す
−与えられた断片と署名とを比較する
−認証結果をユーザーに報告する
[オフライン(署名に基づく)認証(ユーザー)]
−タグからIDを取得する
−タグから位置および署名断片を取得する
−断片から署名を生成する
−ID別に公開署名鍵を取り出す
−公開鍵を使用して署名を暗号解読する
−取得されたIDと暗号解読されたIDとを比較する
−認証結果をユーザーに報告する
[Netpage表面符号化]
[はじめに]
この節では、Netpageシステム(上の「Netpageアーキテクチャ」で説明されている)により使用される表面符号化を定義し、他の場合には受動的である表面に、NetpageペンおよびNetpageビューアなどのNetpage感知デバイスと連動する対話機能を付与する。
【0108】
Netpage符号化表面を対話操作する場合、Netpage感知デバイスは、感知デバイスが移動する際の表面領域の識別と、その領域内にある感知デバイスの絶対的経路の両方を示すデジタルインクストリームを生成する。
【0109】
[表面符号化]
Netpage表面符号化は、複数のタグの高密度平面状タイルからなる。それぞれのタグは、平面内のそのタグの位置を符号化する。それぞれのタグは、さらに、隣接するタグとともに、そのタグを含む領域の識別子を符号化する。Netpageシステムでは、この領域は、典型的には、1枚の用紙の片面などの、タグ付き表面の広がり全体に対応する。
【0110】
それぞれのタグは、2種類の要素を含むパターンにより表される。第1の種類の要素は、ターゲットである。ターゲットにより、タグは符号化表面のイメージ内に配置され、タグの遠近法的歪みを推論できる。第2の種類の要素は、マクロドットである。それぞれのマクロドットは、ビットの値を、その有無により符号化する。
【0111】
パターンは、光学結像系により、特に近赤外線の狭帯域応答を使用する光学系により収集できるような方法で符号化表面上に表現される。パターンは、典型的には、狭帯域近赤外線インクを使用して表面上に印刷される。
【0112】
[タグ構造]
図23は、完全なタグ200の構造を示している。4つの黒丸202は、それぞれターゲットである。タグ200、およびパターン全体は、物理的レベルにおいて、四重の回転対称を有する。
【0113】
それぞれの正方形の領域は、シンボル204を表し、それぞれのシンボルは、4ビットの情報を表す。タグ構造内に示されているそれぞれのシンボル204は、一意的なラベル216を持つ。それぞれのラベル216は、アルファベットのプレフィックスと数字のサフィックスを有する。
【0114】
図24は、シンボル204の構造を示している。これは、4つのマクロドット206を含み、それぞれは、存在する(1)または存在しない(0)により1ビットの値を表す。
【0115】
マクロドット206の間隔は、この明細書全体を通してパラメータsにより指定される。これは、1インチ当たり1600ドットのピッチで印刷される9つのドットに基づいて、143μmの公称値を持つ。しかし、パターンを生成するために使用されるデバイスの能力に応じて、定義された上下限の範囲内で変化させることができる。
【0116】
図25は、9つの隣接シンボル204からなる配列208を示している。マクロドット206の間隔は、シンボル208内とシンボル208の間の両方において一様である。
【0117】
図26は、シンボル204内のビットの順序付けを示している。
【0118】
ビットゼロ210は、シンボル204内の最下位ビットであり、ビット3 212は、最上位ビットである。この順序付けは、シンボル204の配向付けに相対的である。タグ200内の特定のシンボル204の配向は、タグ図(例えば、図23を参照)内のシンボルのラベル216の配向により示される。一般に、タグ200の特定のセグメント内のすべてのシンボル204の配向は、同じであり、タグの中心に最も近いシンボルの底辺と一致する。
【0119】
マクロドット206のみが、パターン内のシンボル204の表現の一部である。シンボル204の正方形の輪郭214は、本明細書では、タグ204の構造をより明確に示すために使用される。図27は、例示されているように、すべてのビット206がセットされているタグ200の実際のパターンを示している。実際には、タグ200のすべてのビット206がセットできるわけではないことに留意されたい。
【0120】
マクロドット206は、公称的には、公称直径(5/9)sの円である。しかし、パターンを生成するために使用されるデバイスの能力に応じて、サイズを±10%の範囲内で変化させることができる。
【0121】
ターゲット202は、公称的には、公称直径(17/9)sの円である。しかし、パターンを生成するために使用されるデバイスの能力に応じて、サイズを±10%の範囲内で変化させることができる。
【0122】
パターンを生成するために使用されるデバイスの能力に応じて、タグパターンのスケールを最大±10%まで変化させることができる。公称スケールからの偏差は、タグデータ内に記録され、これにより、位置サンプルの正確な生成を行うことができる。
【0123】
[タググループ]
タグ200は、複数のタググループ218にわけて配列される。それぞれのタググループは、正方形に配列された4つのタグを含む。それぞれのタグ200は、可能な4つのタグタイプのうちの1つであり、それぞれ、タググループタグ18内の位置に応じてラベル付けされる。タグタイプラベル220は、図28に示されているように、00、10、01、および11である。
【0124】
図29は、タググループがタグの連続的タイリング、つまりタグパターン222でどのように繰り返されるかを示している。このタイリングにより、4つの隣接するタグ200の集まりがそれぞれのタイプ220の1つのタグを含むことが保証される。
【0125】
[コードワード]
タグは、4つの完全なコードワードを含む。4つのコードワードのレイアウトは、図30に示されている。それぞれのコードワードは、パンクチャード24項(8,5)リードソロモン符号のコードワードである。コードワードは、A、B、C、およびDのラベルが付けられる。それぞれのコードワードの断片は、タグ200全体に分散される。
【0126】
これらのコードワードのうち2つは、タグ200に対し一意である。これらは、ローカルコードワード224と呼ばれ、AおよびBのラベルが付けられる。したがって、タグ200は、そのタグに一意的な最大40ビットまでの情報を符号化する。
【0127】
残り2つのコードワードは、タグタイプに対し一意的であり、タグ222の連続的タイリング内では同じタイプのすべてのタグに共通である。これらは、グローバルコードワード226と呼ばれ、CおよびDのラベルが付けられ、タグタイプが下付き文字として付加される。したがって、タググループ218は、タグの連続的タイリング内のすべてのタググループに共通の最大160ビットまでの情報を符号化する。
【0128】
[リードソロモン符号化]
コードワードは、パンクチャード24項(8,5)リードソロモン符号を使用して符号化される。24項(8,5)リードソロモン符号は、それぞれのコードワード内の20データビット(つまり、5個の4ビットシンボル)および12冗長ビット(つまり、3個の4ビットシンボル)を符号化する。その誤り検出能力は、シンボル3つ分である。その誤り訂正能力は、シンボル1つ分である。
【0129】
図31は、データ座標230を符号化する5つのシンボルと冗長性座標232を符号化する3つのシンボルを持つ8個のシンボル204からなるコードワード228を示している。コードワード座標は、係数順序でインデックスが付けられ、データビット順序付けは、コードワードビット順序付けに従う。
【0130】
パンクチャード24項(8,5)リードソロモン符号は、パンクチャード24項(15,5)リードソロモン符号から7個の冗長性座標が取り除かれた符号である。取り除かれた座標は、最上位冗長性座標である。
【0131】
符号は、以下の原始多項式を持つ。
【0132】
(式1)p(x)=x4+x+1
符号は、以下の生成多項式を持つ。
【0133】
(式2)g(x)=(x+α)(x+α2)...(x+α10)
リードソロモン符号の詳細については、参照に入り本明細書に組み込まれる、Wicker,S.B.and V.K.Bhargava,eds.,Reed−Solomon Codes and Their Applications,IEEE Press,1994を参照されたい。
【0134】
[タグ座標空間]
タグ座標空間は、それぞれxおよびyというラベルが付けられた2つの直交軸を有する。正のx軸が右を指している場合、正のy軸は下を指している。
【0135】
表面符号化では、特定のタグ付き表面上のタグ座標空間原点の位置を指定せず、また表面に関するタグ座標空間の向きも指定しない。この情報は、アプリケーションに特有のものである。例えば、タグ付き表面が1枚の用紙である場合、タグをその紙に印刷するアプリケーションは、実際のオフセットおよび配向を記録することができ、これらは、表面に関してその後取り込まれるデジタルインクを正規化するために使用することができる。
【0136】
タグ内に符号化された位置は、数ユニットのタグで定義される。慣例により、位置は、原点に最も近いターゲットの中心の位置とみなされる。
【0137】
[タグ情報内容]
表1は、表面符号化に埋め込まれる情報フィールドを定義したものである。表2では、これらのフィールドがコードワードにマップされる仕方を定義している。
【表5】
図32は、タグ200、およびアクティブ領域マップ内でその対応するビットインデックをラベルとしてそれぞれ付けられた8個のすぐそばの隣接要素を示す図である。アクティブ領域マップは、対応するタグがアクティブ領域のメンバであるかどうかを示す。アクティブ領域は、取り込まれた入力が解釈のため対応するNetpageサーバに即座に転送されなければならない領域である。また、これにより、Netpage感知デバイスは、その入力が直ちに有効になることをユーザーに知らせることができる。
【表6】
タグタイプは、ローカルコードワードの利用が最大になるようにグローバルコードワード内に移動させることができることに留意されたい。したがって、さらに大きな座標および/または16ビットデータ断片が可能になる(座標精度に関連して潜在的に構成可能な形で)。しかし、これは、領域ID復号化からの位置復号化の独立性を減じるため、この時点では明細書に含まれていなかった。
【0138】
[埋め込みデータ]
領域フラグ内の「region includes data」フラグがセットされた場合、表面符号化は、埋め込みデータを含む。データは、複数の連続タグデータ断片内に符号化され、収まる限り何回でも表面符号化において複製される。
【0139】
埋め込みデータは、埋め込みデータを含む表面符号化のランダムおよび部分的走査が、データ全体を十分取り出せるような方法で符号化される。走査システムは、取り出された断片からデータを組立て直し、誤りなく十分な断片が取り出された場合にユーザーに報告する。
【0140】
表3に示されているように、200ビットのデータブロックは、160ビットのデータを符号化する。ブロックデータは、5×5の正方形に配列された25個のタグの連続的グループのデータ断片内に符号化される。タグは、整数座標が5で割ったタグの座標であるブロックに属する。それぞれのブロック内では、データは、増大するy座標内で増大するx座標とともにタグ内に配列される。
【0141】
データ断片は、アクティブ領域マップが存在するブロックから欠落している場合がある。しかし、欠落データ断片は、ブロックの他のコピーから回復可能である可能性が高い。
【0142】
任意のサイズのデータは、四角形に配列されたブロックの連続的集合からなるスーパーブロック内に符号化される。スーパーブロックのサイズは、それぞれのブロック内に符号化される。ブロックは、整数座標がスーパーブロックのサイズで割ったブロックの座標であるスーパーブロックに属する。それぞれのスーパーブロック内では、データは、増大するy座標内で増大するx座標とともにブロック内に配列される。
【0143】
スーパーブロックは、収まる限り何回でも表面符号化で複製され、部分的には表面符号化のエッジにそって行われることを含む。
【0144】
スーパーブロック内に符号化されたデータは、より正確なタイプ情報、より正確なサイズ情報、およびより広範囲にわたる誤り検出および/または訂正データを含むことができる。
【表7】
[領域IDの暗号化署名]
領域フラグ内の「region is signed」フラグがセットされた場合、表面符号化は、領域IDの160ビット暗号化署名を含む。署名は、1ブロックのスーパーブロック内に符号化される。
【0145】
オンライン環境では、署名断片を、領域IDとともに使用して、署名の正当性を検証することができる。オフライン環境では、複数のタグを読み取ることにより署名全体を復元し、次いで、対応する公開署名鍵を使用して正当性を検証することができる。これについては、上記の「Netpage Surface Coding Security」の節でさらに詳しく説明されている。
【0146】
[MIMEデータ]
埋め込みデータタイプが「MIME」の場合、スーパーブロックは、RFC2045(Freed,N.,and N.Borenstein,“Multipurpose Internet Mail Extensions(MIME)−Part One:Format of Internet Message Bodies”、RFC 2045,November 1996)、RFC 2046(see Freed,N.,and N.Borenstein,“Multipurpose Internet Mail Extensions(MIME)−Part Two:Media Types”,RFC 2046,November 1996)、および関連するRFCによるMultipurpose Internet Mail Extensions(MIME)データを含む。MIMEデータは、ヘッダとその後に続く本文とからなる。ヘッダは、先頭に8ビット文字列長さが付加された、可変長テキスト文字列として符号化される。本文は、先頭にビッグエンディアン形式の16ビットサイズが付加された可変長タイプ特有のオクテットストリームとして符号化される。
【0147】
RFC2046で説明されている基本的最上位媒体タイプには、テキスト、イメージ、オーディオ、ビデオ、およびアプリケーションが含まれる。RFC 2425(Howes,T.,M.Smith and F.Dawson,“A MIME Content−Type for Directory Information”,RFC 2045,September 1998を参照)およびRFC 2426(Dawson,F.,and T.Howes,“vCard MIME Directory Profile”,RFC 2046,September 1998を参照)では、例えば、ビジネスカード上に表示され得る連絡先情報を符号化するのに好適なディレクトリ情報のテキストサブタイプについて説明している。
【0148】
[符号化および印刷の考慮事項]
プリントエンジンコントローラ(PEC)は、2つの固定(1ページ毎に)24項(15,5)リードソロモンコードワードおよび6つの可変(タグ毎に)24項(15,5)リードソロモンコードワードの符号化をサポートする。さらに、PECは、レイアウトは一定である(1ページ毎に)が、可変コードワードデータはユニットセル毎に変わる場合がある長方形のユニットセルを介してタグのレンダリングをサポートする。PECでは、ユニットセルがページ移動の方向に重なり合うことを許さない。
【0149】
PECと互換性のあるユニットセルは、4つのタグからなる単一タググループを含む。タググループは、タググループに一意的であるがタググループ内で4回複製される単一Aコードワード、および4つの一意的なBコードワードを含む。これらは、PECの6つのサポートされている可変コードワードのうちの5つを使用して符号化することができる。タググループは、さらに、8つの固定されたCおよびDコードワードも含む。これらのうちの1つは、PEC可変コードワードのうちの残り1つを使用して符号化することができ、さらに2つは、PECの2つの固定されたコードワードを使用して符号化することができ、残り5つは、PECに供給されるタグ形式構造(TFS)に符号化され、事前にレンダリングすることができる。
【0150】
PECでは、TFS行毎に32個の一意的ビットアドレスの限界を課す。ユニットセルの内容は、この限界を考慮したものとなっている。PECは、さらに、TFSの幅に384の限界も課している。ユニットセルの内容は、この限界を考慮したものとなっている。妥当なページサイズについては、Aコードワード内の可変座標ビットの個数は、控えめであり、ルックアップテーブルを介して符号化を扱いやすいものにしている。ルックアップテーブルを介したBコードワードの符号化も可能と思われる。リードソロモン符号はシステマティックであるため、冗長性データのみがルックアップテーブル内に出現すればよいことに留意されたい。
【0151】
[イメージ処理および復号化の考慮事項]
タグ全体の取得を保証するのに必要な最小撮像視野は、39.6s(つまり、(2x(12+2))√2s)の直径を有し、表面符号化と視野との間の任意のアライメントを行うことができる。マクロドット間隔を143μmとすると、これは、5.7mmの必要な視野を与える。
【0152】
表4は、イメージセンササイズが128ピクセル分であると仮定した場合の、異なるサンプリングレートに対する本発明の表面符号化で達成可能なピッチ範囲を示している。
【表8】
本発明の表面符号化が与えられた場合、対応する復号化手順は以下の通りである。
【0153】
−完全なタグのターゲットを特定する
−ターゲットからそれぞれの変換を推論する
−タグの4つのコードワードのうちの1つをサンプリングし、復号化する
−コードワードタイプ、したがってタグ配向を決定する
−必要なローカル(AおよびB)コードワードをサンプリングし、復号化する
−コードワード冗長性は、12ビットのみであり、したがって誤り検出のみである
−復号化後誤りフラグ不正位置サンプル
−タグ配向を参照しつつ、タグx−y位置を決定する
−配向されたターゲットから3Dタグ変換を推論する
−タグx−y位置および3D変換からペン先x−y位置を決定する
−アクティブ領域マップを参照しつつペン先位置のアクティブ領域ステータスを決定する
−ペン先アクティブ領域ステータスに基づいてローカルフィードバックを生成する
−Aコードワードからタグタイプを決定する
−必要なグローバル(CおよびD)コードワークをサンプリングし、復号化する(タグタイプを参照しつつ、ウィンドウアライメントを法として)
−コードワード冗長性は12ビットしかないが、誤りを訂正し、その後のCRC検証で間違った誤り訂正を検出する
−タググループデータCRCを検証する
−復号化後誤りフラグ不正領域IDサンプル
−符号化タイプを決定し、不明な符号化を拒否する
−領域フラグを決定する
−領域IDを決定する
−領域ID、ペン先x−y位置、デジタルインクのペン先アクティブ領域ステータスを符号化する
−領域フラグに基づいてデジタルインクを経路指定する
領域ID復号化は、位置復号化と同じ速度では行われないことに留意されたい。
【0154】
コードワードの復号化は、コードワードがすでに知られている適切なコードワードと同一であることが判明した場合に回避することができることに留意されたい。
【0155】
上記の説明は、単に例示しているだけであり、当業者であれば、本発明の幅広い概念の精神および範囲から逸脱しない多くの変更形態および修正形態を容易に理解するであろう。
【図面の簡単な説明】
【0156】
【図1】Netpageパブリッシャとアプリケーション、Netpageサービス、およびNetpageデバイスとの間のデータの流れを示す図である。
【図2】Netpage文書内のコンテンツタイプの範囲を示す図である。
【図3】ナンバリングされた一連のページからなる物理的構造を持つNetpage文書を示す図である。
【図4】一連のインプレッションからなるプリントアウトを示す図である。
【図5】ペンおよび既定のプリンタとともにユーザーを示す図である。
【図6】デジタルインクストリームで記録されたペンイベントを示す図である。
【図7】アプリケーションにサブミットされるフォームデータを示す図である。
【図8】文書要素として使用する動的要素を示す図である。
【図9】既存のインプレッションにリンクされている動的オブジェクトを示す図である。
【図10】文書、プリントアウト、およびデジタルインクストアの間の関係を示す図である。
【図11】図1よりもさらに詳しいNetpageシステム内のデータの基本的な流れを示す図である。
【図12】インプレッションのリプリントに関連するデータの流れを示す図である。
【図13】印刷に関連するデータの流れを示す図である。
【図14】分岐した一般的なデータ印刷の流れを示す図である。
【図15】ウォークアップ印刷に関連するデータの流れを示す図である。
【図16】プリントアウトキューの設定に関連するデータの流れを示す図である。
【図17】Netpageシステム内で可能なネットワーク分散およびアクセスのさまざまなレベルを示す図である。
【図18】ユーザーがプリンタに関連付けられているリーダーにより読み取られるトークンを持っている場合のデータの流れを示す図である。
【図19】ユーザーがプリンタに関連付けられているトークンを読み取るためのリーダーを持っている場合のデータの流れを示す図である。
【図20】ユーザーが、プリンタトークンを読み取るが、プリンタリーダーを使用してNetpageサーバに接続するリーダーを持っている場合のデータの流れを示す図である。
【図21】プライベートホスティング型ネットワークとパブリックホスティング型ネットワークとの間のデータの流れを示す図である。
【図22】PCまたはデバイスホスティング型Netpageシステムを示す図である。
【図23】完全なタグの構造を示す図である。
【図24】シンボルユニットセルを示す図である。
【図25】9つのシンボルユニットセルを示す図である。
【図26】シンボル内のビット順序付けを示す図である。
【図27】すべてのビットがセットされているタグを示す図である。
【図28】4つのタグタイプからなるタググループを示す図である。
【図29】タググループの連続タイリングを示す図である。
【図30】コードワードA、B、C、およびDとタグとのインターリービングを示す図である。
【図31】コードワードレイアウトを示す図である。
【図32】タグ、およびその対応するビットインデックスをラベルとして付けた8個のすぐそばの隣接要素を示す図である。
【特許請求の範囲】
【請求項1】
複数のユーザー用のコンピュータネットワークであって、
サーバと、
プリンタと、
ネットワークユーザーが携帯するネットワークユーザー識別子と、
前記プリンタに関連付けられているプリンタ識別子とを備え、使用時に、
前記ネットワークユーザー識別子および前記プリンタ識別子は、前記ネットワークユーザーの保留中のプリントアウトが前記ネットワークユーザーの近くにあるプリンタに送信され印刷されるように相互にやり取りするコンピュータネットワーク。
【請求項2】
前記ネットワークは、
複数の前記プリンタであって、各プリンタが前記プリンタ識別子にそれぞれ関連付けられている、当該複数の前記プリンタと、
複数の前記ネットワークユーザー識別子であって、各ネットワークユーザー識別子が異なるネットワークユーザーを一意に識別する、当該複数の前記ネットワークユーザー識別子と、
を備える請求項1に記載のコンピュータネットワーク。
【請求項3】
前記ネットワークユーザー識別子のそれぞれは、トークンであり、前記プリンタ識別子のそれぞれは、トークンリーダーを持ち、これにより前記ユーザーは、自分のトークンを前記複数のプリンタのうちの1つに関連付けられている前記トークンリーダーに提示し、前記プリンタを介したキューに入れられているプリントアウトの実際の印刷を要求する請求項2に記載のコンピュータネットワーク。
【請求項4】
前記トークンは、短距離RFIDタグ、スマートカード、または磁気ストライプカードである請求項3に記載のコンピュータネットワーク。
【請求項5】
前記トークンリーダーは、次に印刷を開始する前記関連付けられているプリンタの近くに前記ユーザーがいることを前記サーバに通知する請求項4に記載のコンピュータネットワーク。
【請求項6】
前記プリンタ識別子のそれぞれは、トークンであり、前記ネットワークユーザー識別子のそれぞれは、前記ユーザーに関連付けられているトークンリーダーを持つ請求項2に記載のコンピュータネットワーク。
【請求項7】
前記トークンリーダーは、光学センサを備える電子スタイラスであり、前記トークンは、符号化データが配置されるそれぞれの前記プリンタの表面であり、前記符号化データはそれぞれのユーザーの電子スタイラスの前記光学センサにより読取り可能である請求項6に記載のコンピュータネットワーク。
【請求項8】
前記保留プリントアウトは、前記サーバによりキュー内に保持され、それぞれの保留プリントアウトは、高い優先順位のプリントアウトが、キュー内の前の方の位置にあっても優先順位の低いプリントアウトの前に印刷されるような優先順位付けを持つ請求項1に記載のコンピュータネットワーク。
【請求項9】
前記トークンリーダーは、前記ユーザーがトークンを前記リーダーに提示するときに前記サーバに対して前記ユーザーと前記プリンタの両方を識別する請求項3に記載のコンピュータネットワーク。
【請求項10】
前記トークンは、前記ユーザーを明示的に識別する請求項9に記載のコンピュータネットワーク。
【請求項11】
前記トークンは、トークン識別子を持ち、前記サーバは、データベース検索を実行して、前記トークン識別子をユーザー識別子に翻訳する請求項9に記載のコンピュータネットワーク。
【請求項12】
前記トークンリーダーは、前記プリンタを明示的に識別する請求項9に記載のコンピュータネットワーク。
【請求項13】
前記リーダーは、リーダー識別子を持ち、前記サーバは、データベース検索を実行して、前記リーダー識別子をプリンタ識別子に翻訳する請求項9に記載のコンピュータネットワーク。
【請求項14】
前記トークンリーダーおよび前記プリンタは、電気的接続を有する別々のデバイスである請求項3に記載のコンピュータネットワーク。
【請求項15】
前記トークンリーダーは、前記プリンタ内に物理的に組み込まれる請求項3に記載のコンピュータネットワーク。
【請求項16】
前記トークンリーダーは、前記ユーザーがトークンを提示していることを前記プリンタに知らせ、次いで前記プリンタは、前記ユーザーの保留プリントアウトを印刷のため明示的に取り出す請求項3に記載のコンピュータネットワーク。
【請求項17】
前記トークンは、セキュリティアクセスまたは識別バッジもしくはカードである請求項3に記載のコンピュータネットワーク。
【請求項1】
複数のユーザー用のコンピュータネットワークであって、
サーバと、
プリンタと、
ネットワークユーザーが携帯するネットワークユーザー識別子と、
前記プリンタに関連付けられているプリンタ識別子とを備え、使用時に、
前記ネットワークユーザー識別子および前記プリンタ識別子は、前記ネットワークユーザーの保留中のプリントアウトが前記ネットワークユーザーの近くにあるプリンタに送信され印刷されるように相互にやり取りするコンピュータネットワーク。
【請求項2】
前記ネットワークは、
複数の前記プリンタであって、各プリンタが前記プリンタ識別子にそれぞれ関連付けられている、当該複数の前記プリンタと、
複数の前記ネットワークユーザー識別子であって、各ネットワークユーザー識別子が異なるネットワークユーザーを一意に識別する、当該複数の前記ネットワークユーザー識別子と、
を備える請求項1に記載のコンピュータネットワーク。
【請求項3】
前記ネットワークユーザー識別子のそれぞれは、トークンであり、前記プリンタ識別子のそれぞれは、トークンリーダーを持ち、これにより前記ユーザーは、自分のトークンを前記複数のプリンタのうちの1つに関連付けられている前記トークンリーダーに提示し、前記プリンタを介したキューに入れられているプリントアウトの実際の印刷を要求する請求項2に記載のコンピュータネットワーク。
【請求項4】
前記トークンは、短距離RFIDタグ、スマートカード、または磁気ストライプカードである請求項3に記載のコンピュータネットワーク。
【請求項5】
前記トークンリーダーは、次に印刷を開始する前記関連付けられているプリンタの近くに前記ユーザーがいることを前記サーバに通知する請求項4に記載のコンピュータネットワーク。
【請求項6】
前記プリンタ識別子のそれぞれは、トークンであり、前記ネットワークユーザー識別子のそれぞれは、前記ユーザーに関連付けられているトークンリーダーを持つ請求項2に記載のコンピュータネットワーク。
【請求項7】
前記トークンリーダーは、光学センサを備える電子スタイラスであり、前記トークンは、符号化データが配置されるそれぞれの前記プリンタの表面であり、前記符号化データはそれぞれのユーザーの電子スタイラスの前記光学センサにより読取り可能である請求項6に記載のコンピュータネットワーク。
【請求項8】
前記保留プリントアウトは、前記サーバによりキュー内に保持され、それぞれの保留プリントアウトは、高い優先順位のプリントアウトが、キュー内の前の方の位置にあっても優先順位の低いプリントアウトの前に印刷されるような優先順位付けを持つ請求項1に記載のコンピュータネットワーク。
【請求項9】
前記トークンリーダーは、前記ユーザーがトークンを前記リーダーに提示するときに前記サーバに対して前記ユーザーと前記プリンタの両方を識別する請求項3に記載のコンピュータネットワーク。
【請求項10】
前記トークンは、前記ユーザーを明示的に識別する請求項9に記載のコンピュータネットワーク。
【請求項11】
前記トークンは、トークン識別子を持ち、前記サーバは、データベース検索を実行して、前記トークン識別子をユーザー識別子に翻訳する請求項9に記載のコンピュータネットワーク。
【請求項12】
前記トークンリーダーは、前記プリンタを明示的に識別する請求項9に記載のコンピュータネットワーク。
【請求項13】
前記リーダーは、リーダー識別子を持ち、前記サーバは、データベース検索を実行して、前記リーダー識別子をプリンタ識別子に翻訳する請求項9に記載のコンピュータネットワーク。
【請求項14】
前記トークンリーダーおよび前記プリンタは、電気的接続を有する別々のデバイスである請求項3に記載のコンピュータネットワーク。
【請求項15】
前記トークンリーダーは、前記プリンタ内に物理的に組み込まれる請求項3に記載のコンピュータネットワーク。
【請求項16】
前記トークンリーダーは、前記ユーザーがトークンを提示していることを前記プリンタに知らせ、次いで前記プリンタは、前記ユーザーの保留プリントアウトを印刷のため明示的に取り出す請求項3に記載のコンピュータネットワーク。
【請求項17】
前記トークンは、セキュリティアクセスまたは識別バッジもしくはカードである請求項3に記載のコンピュータネットワーク。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【図31】
【図32】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【図31】
【図32】
【公表番号】特表2008−508621(P2008−508621A)
【公表日】平成20年3月21日(2008.3.21)
【国際特許分類】
【出願番号】特願2007−524130(P2007−524130)
【出願日】平成17年8月1日(2005.8.1)
【国際出願番号】PCT/AU2005/001123
【国際公開番号】WO2006/012678
【国際公開日】平成18年2月9日(2006.2.9)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.Bluetooth
2.ZIGBEE
【出願人】(303024600)シルバーブルック リサーチ ピーティワイ リミテッド (150)
【Fターム(参考)】
【公表日】平成20年3月21日(2008.3.21)
【国際特許分類】
【出願日】平成17年8月1日(2005.8.1)
【国際出願番号】PCT/AU2005/001123
【国際公開番号】WO2006/012678
【国際公開日】平成18年2月9日(2006.2.9)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.Bluetooth
2.ZIGBEE
【出願人】(303024600)シルバーブルック リサーチ ピーティワイ リミテッド (150)
【Fターム(参考)】
[ Back to top ]