(57)【要約】【課題】構成機器が動的に変化するネットワークにおいて、腕時計などの入力・表示装置が限定された機器を含む機器間で、特定のサーバを仮定しない任意の機器同士によるデータ同期を実現する。【解決手段】複数機器間データ同期処理のための通信方法において、マスター機器がスレーブ機器に前記データ同期処理グループ証明書と優先度とを送出し該スレーブ機器を前記グループのメンバとして登録し、あるスレーブ機器と別の１台以上のスレーブ機器との間で互いが前記グループに属するか否かを前記証明書を用いて判断し該グループに属すると判断されたスレーブ機器間で前記優先度に従った前記データ同期処理をし、前記グループに属するスレーブ機器同士で互いの優先度を交換する。【選択図】  図１
2007122736.tif 000002
【特許請求の範囲】
【請求項１】
複数の機器間で任意のデータに関するデータ同期処理を、無線あるいは有線のネットワー
クを用いて行うための通信方法において、
ユーザによりマスターとして指定されたマスター機器が、該ユーザにより該マスターの
スレーブとして指定されたスレーブ機器に、該スレーブ機器が前記データ同期処理を行う
グループに属することを示す証明書と、該スレーブ機器が前記データ同期処理を行う際に
用いるべき優先度とを送出し、該スレーブ機器を、前記データ同期処理を行うグループの
メンバとして登録する機器登録ステップと、
あるスレーブ機器と、該あるスレーブ機器と無線あるいは有線により通信可能な状態で
ある別の１台以上のスレーブ機器との間で、該あるスレーブ機器と該別のスレーブ機器と
が前記データ同期処理を行うグループに属するか否かを前記証明書を用いて判断し、該グ
ループに属すると判断されたスレーブ機器間で、前記優先度に従った前記データ同期処理
を無線あるいは有線の通信により行うデータ同期ステップと、
前記データ同期処理を行うグループに属するスレーブ機器同士で互いの優先度を交換す
る優先度交換ステップとを具備することを特徴とする通信方法。
【請求項２】
前記優先度交換ステップは、前記優先度交換ステップを実行するためのモードに設定され
た２台の機器外に、前記優先度交換ステップを実行するためのモードに設定された他の機
器が存在しないことを確認した後に行われることを特徴とする請求項１記載の通信方法。
【請求項３】
ユーザによりマスターとして指定された場合には、該ユーザにより自装置のスレーブとし
て指定された機器に、該スレーブがデータ同期処理を行うグループに属することを示す証
明書と、該スレーブが前記データ同期処理を行う際に用いるべき優先度とを発行し、送信
する手段と、
ユーザによりスレーブとして指定された場合には、自装置が前記データ同期処理を行う
グループに属することを示す証明書と、自装置が前記データ同期処理を行う際に用いるべ
き優先度とを、該ユーザにより自装置のマスターとして指定された機器から受信し、記憶
する手段と、
自装置と無線あるいは有線により通信可能な状態である別の１台以上のスレーブ機器が
、前記データ同期処理を行うグループに属するか否かを該スレーブ機器が有する証明書を
用いて判断し、該グループに属すると判断されたスレーブ機器との間で、前記優先度に従
った前記データ同期処理を無線あるいは有線の通信により行う手段と、
ユーザにより前記スレーブとして指定された場合、前記自装置と、前記データ同期処理
を行うグループに属する他のスレーブ機器との間で、互いの優先度を交換する優先度交換
手段とを具備することを特徴とする電子機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は複数の機器間でデータ同期処理を行うための通信方法および電子機器に関し、
特に機器構成が動的に変化するような有線または無線のネットワークに適したデータ同期
処理を行えるように改良された通信方法および電子機器に関する。
【背景技術】
【０００２】
一般に、パーソナルコンピュータ（ＰＣ）や携帯情報機器などの電子機器間では、同じ
データをオフィスの他に自宅や外出先でも使用できるようにするために、複製データを用
いたデータの共有が行われている。共有された複数のデータの整合性を維持するための技
術としては、データ同期が知られている。例えばパーソナルコンピュータ（ＰＣ）と携帯
情報機器の間で住所録やスケジュールなどの個人データを共有したいような場合には、各
機器にデータの複製が作成される。
【０００３】
それらのデータに対して変更などがあった場合に、それら機器間で変更データをやり取り
することによってデータの一貫性を保つ方法がデータ同期である。
【０００４】
データ同期のための代表的なコンピュータプログラムとしては、Ｉｎｔｅｌｌｉ  Ｓｙ
ｎｃ（Ｉｎｔｅｌｌｉ  Ｓｙｎｃ  ユーザーズガイド  Ｒｅｖ３．１  Ｐｕｍａ  ＴＥＣ
ＨＮＯＬＯＧＹ  １９９９）が知られている。これは、ＰＣとＰＣの間、もしくはＰＣと
携帯情報機器の間でデータの同期化を実現するものである。このプログラムは、１台のＰ
Ｃと１台の携帯情報機器間、あるいは２台のＰＣと１台の携帯情報機器間、あるいは１台
のＰＣと複数台の携帯情報機器間、という構成で、データ同期化の設定を行うことができ
るが、この場合、実際のデータ同期に際しては、構成機器のいずれか１台がサーバとなり
、そのサーバの役割を果たす機器と他の機器との間で同期化が行われる。
【非特許文献１】Ｉｎｔｅｌｌｉ  Ｓｙｎｃ（Ｉｎｔｅｌｌｉ  Ｓｙｎｃ  ユーザーズガイド  Ｒｅｖ３．１  Ｐｕｍａ  ＴＥＣＨＮＯＬＯＧＹ  １９９９）
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、この方式の場合、データ同期時には、サーバの役割を果たす機器が常にデータ
同期処理に参加する必要があるので、３台以上の機器に対して複製データを持たせた場合
には、サーバを除く他の２台の機器間でデータ同期を行うことはできないという制約があ
る。このため、例えばオフィス内のネットワークに接続されたＰＣをサーバとして使用し
、その複製データを２台の携帯情報機器に持たせた場合においては、外出先などで一方の
携帯情報機器内にある更新後の複製データを他の携帯情報機器で使用したい場合であって
も、それら携帯情報機器のみではデータ同期処理を行うことができない。
【０００６】
また、従来のデータ同期方法は、基本的にはケーブルによる１対１の接続、モデムによ
るサーバとの間の１対１の接続、あるいは赤外線によるサーバとの間の１対１の接続、を
前提としている。これは、データ同期のための通信相手を一意に特定できるようにするた
めである。
【０００７】
しかし、バス型の有線ネットワークや、指向性のない無線のネットワークにおいてデー
タ同期を行う場合には、１対１の接続の場合とは異なり、ネットワーク上の機器の中から
データ同期の相手をなんらかの方法で一意に識別する必要がある。特に、機器構成が動的
に変化するような有線または無線のネットワークの場合には、各機器のネットワークアド
レスは固定ではなく、ネットワーク接続時等にネットワークアドレスが動的に付与される
場合が多い。このため、通信相手のネットワークアドレスは、データ同期のための通信相
手を特定するための静的な識別情報として使用することができない。よって、機器構成が
動的に変化するような有線または無線のネットワークにおいてもデータ同期の相手を一意
に識別できようにするための新たな技術が要求されている。
【０００８】
そしてまた、１対１での接続においては仮定されないことであるが、バス型の有線ネッ
トワークや、指向性のない無線ネットワークにおいては、データ同期対象の機器以外の機
器、例えば、悪意ある第三者も同じネットワーク内に存在する可能性がある。このため、
データの秘匿性を確保し、同時に成りすまし等によるデータ漏洩を防ぐことも必要となる
。特に、無線ネットワークにおいては、無線の届く範囲内に機器を配置するだけでその機
器を容易にネットワークに入れることができてしまう可能性が高いため、秘匿化のための
対策は重要となる。また、悪意が無くとも、無線の届く範囲内に存在する同期化対象以外
の他の機器のデータが、無線による機器間のデータ同期処理により誤って変更されてしま
うという危険もある。
【０００９】
また、逆にこれらのネットワークにおいては、データ同期時に必ずしも全てのデータ同
期相手が揃っているというわけではなく、機器の電源が入っていない場合や、無線の届か
ない通信圏外である機器等に対してはデータ同期を行うことはできない。
【００１０】
また、通常、データ同期に先立って行う設定として、データ同期相手に対する通信の設
定、同期データの種類に関する設定、データ競合時の解決方法の設定が必要となるが、こ
れらの設定は、従来では、ＰＣや携帯情報機器の表示装置に表示された設定画面を通じて
、ユーザが直接に該ＰＣや携帯情報機器の入力装置を操作してデータを入力することによ
って行われている。これはつまり、設定機器には、少なくとも携帯情報機器程度の表示装
置および入力装置が必要であることを意味している。そのため、従来の方法では、例えば
腕時計のような、機器の大きさの制約や、その他機器固有の制約から、限られた入力装置
、表示装置しか持たない機器においては、データ同期の設定を行うことは非常に困難とな
る。
【００１１】
本発明は上述の事情に鑑みてなされたものであり、限られた入力装置および表示装置し
か持たない機器に対してもデータ同期のための設定が可能で、且つ機器構成が動的に変化
するような有線または無線のネットワークにおいても任意の機器間で安全にデータ同期の
ための通信を行うことが可能な通信方法および電子機器を提供することを目的とする。
【課題を解決するための手段】
【００１２】
上述の課題を解決するため、本発明は、複数の機器間で任意のデータに関するデータ同
期処理を、無線あるいは有線のネットワークを用いて行うための通信方法において、ユー
ザによりマスターとして指定されたマスター機器が、該ユーザにより該マスターのスレー
ブとして指定されたスレーブ機器に、該スレーブ機器が前記データ同期処理を行うグルー
プに属することを示す証明書と、該スレーブ機器が前記データ同期処理を行う際に用いる
べき優先度とを送出し、該スレーブ機器を、前記データ同期処理を行うグループのメンバ
として登録する機器登録ステップと、あるスレーブ機器と、該あるスレーブ機器と無線あ
るいは有線により通信可能な状態である別の１台以上のスレーブ機器との間で、該あるス
レーブ機器と該別のスレーブ機器とが前記データ同期処理を行うグループに属するか否か
を前記証明書を用いて判断し、該グループに属すると判断されたスレーブ機器間で、前記
優先度に従った前記データ同期処理を無線あるいは有線の通信により行うデータ同期ステ
ップと、前記データ同期処理を行うグループに属するスレーブ機器同士で互いの優先度を
交換する優先度交換ステップとを具備することを特徴とする。
【００１３】
この通信方法においては、実際にデータ同期処理を行うデータ同期ステップとは別に、
データ同期を行う機器を特定するための機器登録ステップが設けられており、この機器登
録ステップにて、マスターとして指定された機器からスレーブとして指定された機器に証
明書と優先度を送出することにより、そのスレーブ機器をデータ同期処理を行うグループ
のメンバとして登録することができる。各メンバに証明書と優先度を持たせることにより
、同一のデータ同期処理グループに登録された機器同士であれば、たとえマスターがいな
くても、スレーブ機器間のみで簡単にデータ同期を行うことができる。
【００１４】
この場合、グループに属するスレーブ同士であるか否かについては、無線あるいは有線
により通信可能な状態のスレーブ機器間で証明書を交換することにより確認されるので、
マスターが存在せずとも、確実且つ安全にスレーブ機器同士でのデータ同期を行うことが
できる。スレーブ間のデータ同期処理で競合が生じた場合には、機器登録ステップにて各
スレーブに割り当てられた優先度によりその競合を解決することができる。したがって、
各スレーブは自身に割り当てられた証明書と優先度のみを保持すれば良く、データ同期の
ための通信相手に関する情報等の設定は一切不要となる。よって、限られた入力装置およ
び表示装置しか持たない機器についても同期対象の機器として使用することができる。さ
らに、機器構成が動的に変化するような有線または無線のネットワークなどのように、デ
ータ同期の通信相手を静的に特定するための情報を持つことが困難な環境下で使用する場
合であっても、デー同期の相手となる機器を確実に特定することが可能となる。
【００１５】
データ同期ステップは、スレーブ同士のみならず、データ同期処理を行う同一のグルー
プに属することを示す証明書を持つ、１台のマスターと１台以上の任意のスレーブ機器と
の間で行うこともできる。
【００１６】
また、マスターおよびスレーブの指定は機器単位で行う必要はなく、データ同期対象と
すべきデータ毎に、任意の機器をそのデータの同期処理グループのマスターまたはスレー
ブとして指定することができる。一台の機器があるデータについてはその同期処理グルー
プのスレーブとして機能し、別のデータについてはその同期処理グループのマスターとし
て機能しても良いし、また一台の機器が異なる２つのデータに対応する２つの同期処理グ
ループそれぞれのスレーブとして機能してもよい。
【００１７】
このようにマスターおよびスレーブを同期対象のデータ毎に個々に指定した場合には、
機器登録ステップも、各データについてそのデータ同期処理の対象とすべきデータのデー
タ同期処理グループのマスターとして指定された機器と該マスターのスレーブとして指定
された機器との間で実行される。このため、証明書および優先度の送出についても、その
送出もとのマスターと送出先のスレーブはデータ毎に設定されることになり、データ毎に
証明書および優先度の設定が行われる。
【００１８】
また、上述の機器登録ステップおよびデータ同期ステップに加え、マスター権限引き継
ぎステップを設けることにより、現在のデータ同期処理グループの機能・構成をそのまま
維持した状態で、マスターの機能のみを他の機器に移すことができる。よって、新たに購
入した機器をマスターとして使用したり、外出先などでのマスターとしての使用を目的に
、一時的にスレーブ機器をマスターとして使用する等の運用が可能となる。
【００１９】
また、スレーブ機器間同士で互いの優先度を交換する優先度交換ステップをさらに設け
ることが好ましい。これにより、機器登録ステップで登録された優先度を後で変更するこ
とができるようになり、より柔軟にスレーブ機器同士間でのデータ同期処理を実現できる
。
【００２０】
マスター権限引き継ぎステップおよび優先度交換ステップについても、安全性を考慮し
て、マスター権限引き継ぎステップまたは優先度交換ステップを実行するためのモードに
設定された２つの機器以外に、そのモードに設定された他の機器が存在しないことを確認
した後に行うことが好ましい。
【００２１】
また、同期処理グループのメンバの変更等を容易に実現できるようにするため、マスタ
ー機器またはスレーブ機器を、データ同期処理を行うグループの登録から解除する機器登
録解除ステップをさらに設けることが好ましい。スレーブ機器の機器登録解除ステップに
ついてはそのスレーブ機器単独で行えばよいが、マスター機器の機器登録解除ステップに
ついては、マスター機器の機器登録解除ステップと連動して、そのマスター機器と通信可
能な状態にあるスレーブ機器の機器登録解除ステップも一緒に実行させるようにすること
が望ましい。これにより、一度の操作で、マスターを含む複数の機器を登録解除すること
が可能となる。
【発明の効果】
【００２２】
本発明によれば、限られた入力装置および表示装置しか持たない機器に対してもデータ
同期のための設定が可能で、且つ機器構成が動的に変化するような有線または無線のネッ
トワークにおいても任意の機器間で安全にデータ同期のための通信を行うことが可能とな
る。更に、機器間で設定情報をやりとりする際には、特定の２台のみで同時に設定操作を
行い、設定機器が２台であることを保証してから情報のやりとりを行うことで、安全に設
定を行うことができる。
【発明を実施するための最良の形態】
【００２３】
以下、図面を参照して、本発明の一実施形態に係るデータ同期処理のための通信方法に
ついて説明する。
【００２４】
（データ同期ネットワーク）
データ同期とは、複製された複数の情報のまとまりに対して、各々独立して非同期にそ
の情報の一部が更新されていく場合に、それら複製された複数の情報が同じになるように
する処理のことである。例えば今Ａという機器の持っている情報のまとまり（データセッ
ト）を、Ｂという機器に複製したとする。この時、ＡのデータセットとＢのデータセット
を同一に保つ処理が同期処理となる。前回同期処理が行われた時刻よりも後に、Ａのもっ
ているデータセットの、一部のデータフィールドが変更されると、Ｂの対応するデータフ
ィールドが、次の同期処理時に更新される。
【００２５】
もしも前回の同期処理以降、ＡとＢの同じデータフィールドに対して変更が加えられる
と、このデータフィールドを同一にするためには、データ同期処理時に、どちらのデータ
フィールドの値を優先するかを選択する必要がある。このように同じデータフィールドの
データに対して、前回の同期処理時以降に、複数の機器で変更が加えられた状態を、デー
タの競合という。
【００２６】
本実施形態では、情報機器間のデータ同期処理は無線あるいは有線のネットワークを介
して行われる。ここで、無線あるいは有線を使ってデータ通信をし得る情報機器のうち、
データ同期を行いたい機器同士で構成されるネットワークを、データ同期ネットワークと
呼ぶこととする。つまり、データ同期処理を行うべき機器同士から構成されるデータ同期
処理グループが、データ同期ネットワークである。この場合、データ同期ネットワークの
構成の単位は、必ずしも機器毎である必要はなく、データ同期をすることが可能なデータ
セット毎にデータ同期ネットワークを構成することができる。つまり、各情報機器は、そ
の中で管理し得るデータセットの数だけ、データ同期ネットワークの構成要素になり得る
。
【００２７】
また、情報機器は、腕時計のような限られた用途に用いられる機器でも良いし、パーソ
ナルコンピュータのような複数の機能をもつ機器でも良い。またこれら情報機器は、その
大きさや、入出力装置、表示装置等の形態や機能等にしばられるものではない。データ同
期ネットワークは複数の情報機器で構成されるが、あるデータ同期ネットワークを構成す
る機器をそのデータ同期ネットワークのメンバと呼ぶ。
【００２８】
データ同期ネットワークは恒常的な概念である。データ同期処理が行われる都度、デー
タ同期ネットワークが構成されるのではなく、あらかじめ構成したデータ同期ネットワー
クのメンバに対してデータ同期処理が行われる。
【００２９】
（データ同期ネットワークによる通信）
データ同期ネットワークにおける通信方法は、機器登録ステップと、データ同期ステッ
プから構成される。これを示したのが図１である。
【００３０】
機器登録ステップは、データ同期ネットワークにメンバを追加する際に行うステップで
ある。この機器登録ステップでは、ユーザによりマスターとして指定された機器から、ユ
ーザが新たにスレーブとして登録したい機器に対して、証明書と優先度とが送出される。
証明書は、それを受け取った機器がマスターと同じデータ同期処理グループ（データ同期
ネットワーク）に属することを示すものである。優先度は、それを受け取った機器がデー
タ同期処理を行う場合に使用するものであり、データ競合の解決に用いられる。
【００３１】
データ同期ステップは、データ同期ネットワークを構成するメンバの中の、任意の複数
のメンバ同士がデータの同期処理を行うステップである。
【００３２】
図１において、Ｍはデータ同期ネットワークのマスターである。マスターＭは、データ
同期ネットワークの中心であり、一つのデータ同期ネットワーク中に一つのみ存在し、そ
のデータ同期ネットワークにメンバを追加する権限を持つ。Ｓ1 〜Ｓ4 はデータ同期ネッ
トワークのスレーブである。スレーブは、一つのデータ同期ネットワークに一つ以上存在
し、そのデータ同期ネットワークのマスターＭとの間で、後述するデータ同期メンバの登
録処理を行うことで、そのデータ同期ネットワークのメンバとなる。
【００３３】
マスターおよびスレーブの指定は必ずしも機器単位で行う必要はなく、データ同期対象
とすべきデータセット毎に、任意の機器をそのデータセットに対応するデータ同期ネット
ワークのマスターまたはスレーブとして指定することができる。一台の機器があるデータ
についてはそのデータ同期ネットワークのスレーブとして機能し、別のデータについては
そのデータ同期ネットワークのマスターとして機能しても良いし、また一台の機器が異な
る２つのデータに対応する２つのデータ同期ネットワークそれぞれのスレーブとして機能
してもよい。
【００３４】
（機器登録ステップ）
機器登録ステップは、データ同期ネットワークのマスターとなる機器と、そのデータ同
期ネットワークに新規に参加するスレーブとなる機器とが１対１で通信を行うことによっ
て実行される。マスターＭに、はじめのスレーブＳ1 を登録した段階でデータ同期ネット
ワークの構成メンバの数は２となり、以後マスターＭと新規に登録したいスレーブＳ2 〜
Ｓ4それぞれとの間で、同様に機器登録ステップを行うことで、データ同期ネットワーク
の構成メンバは増えて行く。機器登録ステップはデータ同期の都度行われるのではなく、
一度機器登録を行うと、以後明示的に解除を行わない限り、登録された機器はデータ同期
ネットワークのメンバであり続ける。
【００３５】
（データ同期ステップ）
データ同期ステップでは、データ同期ネットワークに属しているメンバ機器間のデータ
を同期化する。ここでは、すべてのメンバが一度にデータ同期処理を行っても良いし、任
意のメンバが任意の台数でデータ同期処理を行っても良い。またデータ同期処理時の機器
構成はマスターＭが含まれていても良いし、スレーブ同士だけの場合にも、データ同期処
理を行うことができる。各々別のメンバで構成される２つの同期処理は各々任意の時点で
独立に行うことができ、またそれら２つの同期処理が別の場所で同時に行われても良い。
【００３６】
例えば、図１に示されているように、データ同期ネットワークを構成するメンバがマス
ターＭとスレーブＳ1 だけの場合には、データ同期ステップはそれら２台の機器、つまり
マスターＭとスレーブＳ1 の間でのみ実行されるが、スレーブＳ２ が新たにメンバとし
て登録された状態においては、データ同期ステップは、マスターＭとスレーブＳ1 との間
のみならず、マスターＭとスレーブＳ２ との間、スレーブＳ1 とスレーブＳ２ との間、
あるいはマスターＭとスレーブＳ1，Ｓ２ から構成される全てのメンバ間で、実行するこ
ともできる。
【００３７】
（各メンバの構成）
次に、図２および図３を参照して、マスターおよびスレーブの各機器に設定する情報お
よび機能構成について説明する。
【００３８】
各機器が保持する設定情報には、識別データ、証明データ、優先度データ、カウンタの
値がある。
【００３９】
識別データとは、あるデータ同期ネットワークにおいてメンバを一意に特定するための
データであり、証明データを生成する鍵として使用される。この識別データは、ある機器
をデータ同期ネットワークのスレーブとして登録させるとき、あるいは後述のマスター宣
言によってある機器をマスターとして動作させるときに、それら各機器内で生成される。
【００４０】
証明データとは、前述した証明書に相当するものであり、あるデータ同期ネットワーク
に所属していることを証明するために用いられる。
【００４１】
例えば、データ同期時に、同一のデータ同期ネットワークに属している機器同士である
かどうかの認証と、認証後の同期データの暗号化を、公開鍵暗号方式で行う場合を想定す
る。この時、識別データと証明データは、認証と暗号化の仕組みの中で次のように用いら
れる。
【００４２】
まず、マスター、スレーブの各々は秘密鍵と公開鍵を生成する。これら秘密鍵と公開鍵
のペアが各機器の識別データとなる。他の機器に識別データを送信する際には、識別デー
タの一部である公開鍵のみを送信する。データ同期ネットワークの登録時には、スレーブ
が自身の識別データとして公開鍵をマスターに渡すと、マスターは、このスレーブの公開
鍵を自分の秘密鍵で暗号化したものを証明書として返し、更にマスターの公開鍵をスレー
ブに渡す。これによって、スレーブは自分の秘密鍵と公開鍵、そしてマスターに証明して
もらった証明書とマスターの公開鍵を持つ。ここで、この証明書とマスターの公開鍵を合
わせて証明データとする。
【００４３】
実際の認証と暗号化の際には、認証を行う側の機器は相手の証明書を受け取ると、これ
を自分の持っているマスターの公開鍵で復号化し、正しく復号化できれば相手側の機器が
同じデータ同期ネットワークに属していることになる。その後、復号化したデータから相
手の公開鍵を抜き出して、この相手の公開鍵で同期データを暗号化して送信すれば、安全
にデータのやり取りを行うことができる。
【００４４】
なお、証明データはデータ同期ネットワークに属していることを確実に証明できるもの
であればよく、上述の方法に限らず、他の良く知られた様々な方法にて生成してもよい。
【００４５】
優先度データは、前述したようにデータ同期の競合解決時に利用されるものであり、競
合解決のための順序関係（つまり優先順位）を決定するためのデータである。
【００４６】
カウンタの値は、マスターがこれまで登録したスレーブの数をカウントし、次のスレー
ブの登録時に、そのスレーブに対する優先度を決定するために使用されるデータである。
マスターの優先度は最も高い値“１”である。そして、スレーブの登録の度にカウンタの
値はカウントアップされ、登録の順に優先度“２”、“３”、……がスレーブに対して与
えられていく。カウンタはマスターのみが使用する。
【００４７】
データセット毎にデータ同期ネットワークを構成する場合、証明データ、識別データ、
優先度データ、カウンタの値はそれら各データセット毎に用意され、管理される。すなわ
ち、複数のデータセットを持つ機器においては、証明データ、識別データ、優先度データ
、カウンタの値は一次元的に管理するのではなく、図２のように二次元的、つまりデータ
セット毎に管理される。図２は、「アドレス帳」、「時刻」、「メール」の３種類のデー
タセットそれぞれに対応する３つのデータ同期ネットワークが構成されている場合の例を
示している。この場合、これら３種類のデータセットを持つ機器においては、マスター／
スレーブのどちらとして動作するのかを示す情報が、データセット毎に対応づけて管理さ
れる。カウンタの値は、マスターとして動作するデータ同期ネットワークのデータセット
に対してのみ有効となる。また、前述の機器登録ステップはデータ同期ネットワーク毎に
行われるので、証明データ、識別データ、優先度データ、カウンタの値は、それぞれデー
タセット毎に独立したものとなる。識別データを構成する秘密鍵と公開鍵は例えば乱数な
どを用いることにより、機器登録ステップ毎に生成されるが、機器登録ステップでメンバ
となったデータ同期グループから抜けるまで、その識別データの値は保持され続ける。
【００４８】
このように、データセット毎にデータ同期ネットワークの設定情報を管理する場合にお
いては、後述するデータ同期メンバの登録、データ同期処理、マスター宣言、データ同期
メンバの解除、マスター引き継ぎ、優先度交換、の各機能を行う場合には、その機能の呼
び出しの前に、図２の行方向のデータセットの中から対象となるデータセットをユーザに
選択させるようなステップが実行されることになる。
【００４９】
図３には、各機器の機能構成が示されている。この機器の構成は、マスター機器にもス
レーブ機器にもなり得る機器構成の一例である。
【００５０】
図３に示されているように、各機器には、通信部１１、通信制御部１２、機器入出力部
１３、機器入出力制御部１４、認証部１５、データ同期ネットワーク設定管理部１６、デ
ータ同期処理部１７、および同期データ記憶部１８が設けられている。
【００５１】
通信部１１は他の機器との間の通信を無線又は有線のネットワークによって行う部分で
あり、他の機器へのデータの送信、他の機器からのデータの受信を行う。無線ネットワー
クとしては、例えばＢｌｕｅｔｏｏｔｈ（登録商標。以下同様）などの、電波を用いた指
向性のないネットワークを利用することができる。また、有線のネットワークとしてはイ
ーサネット（登録商標。以下同様）などのバス型のＬＡＮを利用することができる。無線
、有線のどちらにおいても、ネットワークの機器構成は静的に決定されている必要はなく
、機器構成が動的に変化するようなネットワークに適用することができる。
【００５２】
通信制御部１２は通信部１１によるデータの送受信を制御するものであり、通信部１１
で受け取ったデータと要求を判断する機能、機器入出力制御部１４との間で処理要求およ
び応答を授受する機能、通信部１１へデータの送受信を要求する機能、認証部１５、デー
タ同期ネットワーク設定管理部１６、データ同期処理部１７それぞれとの間で要求と応答
を授受する機能を有している。
【００５３】
機器入出力部１３は、自機器の入力装置、表示装置である。
【００５４】
機器入出力制御部１４は、機器入出力部１３に対するデータと要求の送受信の制御を行
う部分であり、機器入出力部１３で受け取ったデータと要求を判断する機能、通信制御部
１２への処理要求機能、通信制御部１２からの処理要求受け取り機能、同期データ記憶部
１８に対するデータ書き込み、読み取り、削除などの処理を行う管理機能、データ同期ネ
ットワーク設定管理部１６に対しての要求と応答を行う機能からなる。
【００５５】
認証部１５は、通信制御部１２からの認証要求に対して、他の機器から受け取った証明
データを、データ同期ネットワーク設定管理部１６を通じて証明データ管理部１６１の持
つ自機器の証明データと照らし合わせて認証し、他の機器が自分の属しているデータ同期
ネットワークに属しているかどうか、すなわち双方がデータ同期処理を行う同一のグルー
プに属しているかどうかを判断する。
【００５６】
データ同期ネットワーク設定管理部１６は、データ同期ネットワークの設定全般の管理
を行う部分であり、証明データ管理部１６１および優先度管理部１６２を有している。デ
ータ同期ネットワーク設定管理部１６は、証明データ管理部１６１および優先度管理部１
６２を用いて自身の設定状態を管理しており、通信制御部１２、認証部１５、機器入出力
制御部１４、データ同期処理部１７と、優先度管理部１６２および証明データ管理部１６
１との間の、データ受け渡しや処理要求の受け渡しを行う。
【００５７】
証明データ管理部１６１は、自機器のマスターによって証明された証明データを格納す
る領域、および証明データの元となる識別データを格納する領域を持ち、証明データおよ
びその証明データを作成するための識別データの管理を行う。
【００５８】
これはデータ同期ネットワーク設定管理部１６からの要求により、証明データの元となる
識別データおよび証明データを生成、削除、設定する機能からなる。
【００５９】
優先度管理部１６２は、自機器の優先度データを格納する領域と、マスターにおいて優
先度を発行する際に変更されるカウンタの値を格納する領域、そしてカウンタ装置を持ち
、データ同期ネットワーク設定管理部１６からの優先度データの生成、設定、削除、受け
渡しの要求を処理する機能と、カウンタ装置のリセット、インクリメントを行う機能から
なる。
【００６０】
データ同期処理部１７は、同期対象のデータセット（同期データ）に対して同期処理を
行う部分であり、同期データ記憶部１８に対する読み取り、書き込み、削除などを行う機
能と、自機器の優先度と他の同期機器の優先度を加味してデータ競合を解決する機能と、
通信制御部１２からの要求を処理しデータの受け渡しを行う機能からなる。
【００６１】
同期データ記憶部１８は、同期データが格納される部分であり、データを格納するため
の領域を持つ。
【００６２】
この機器の構成は、マスター機器にもスレーブ機器にもなり得る機器構成の一例である
が、スレーブにしかすることができない機器（メンバ）があっても良いし、またマスター
にしかすることができない機器（メンバ）があっても良い。その場合にはそれぞれ、スレ
ーブにのみ必要な機能や構成、マスターにのみ必要な機能や構成を省いた構成をとること
ができる。例えば、証明データの生成機能、カウンタ装置およびその制御機能などは、マ
スターとして動作可能な機器にのみ設ければ良く、スレーブとしてのみ機能する機器には
不要である。
【００６３】
ではここから、データ同期ネットワークの管理、運用について説明する。
【００６４】
はじめに、図４を参照して、データ同期ネットワーク内の各機器が持つ全機能について
説明する。
【００６５】
データ同期ネットワークを構成することのできる機器には、全部で６つの機能があり、
他の機器との通信を行わずに処理される機能と、ある機器と別の機器との間の１対１の通
信を必要とする機能と、１対複数での通信を伴う機能とがある。「マスター宣言」機能は
、他の機器との通信を行わずに処理されるスタンドアロンの機能であり、「データ同期メ
ンバの登録」、「マスター引き継ぎ」、「優先度交換」機能は、１対１の通信を伴って処
理される機能である。「データ同期処理」機能は、２台以上の機器間で行われる処理であ
り、「データ同期メンバの解除」機能は、スレーブにおいてはスタンドアロンの処理であ
り、マスターにおいては、場合により１台以上のスレーブとの通信を伴って処理される機
能である。以下、各機能の詳細を説明する。
【００６６】
（１）「データ同期メンバの登録」
データ同期ネットワークに新たなメンバを追加する場合に、「データ同期メンバの登録
」処理を行う。この処理は、前述の機器登録ステップを実現するためのものであり、デー
タ同期ネットワークのマスターと、新規にスレーブとして追加したいメンバとの間とでデ
ータ通信をすることで行われる。マスターと登録するメンバは、共に電源が入っている状
態で、なお且つお互いに無線又は有線のネットワークを介して通信できる状態であること
を条件とする。ユーザは、該マスターと、該登録したいメンバに対して、各々「データ同
期メンバの登録」機能を呼び出す。それに続いて、該マスターと該登録したいメンバの各
々をデータ同期登録モードに入れる。データ同期登録モードに入るためには、例えばマス
ターと新規メンバのそれぞれで、登録ボタンをユーザが押し続けて、通信の有効な範囲内
に、データ同期登録モードの機器が２台のみ存在する場合にのみ登録を許可するといった
、ユーザインタラクションと他の機器に対する排他制御を併用して、登録時のセキュリテ
ィ認証とする。
【００６７】
データ同期登録モードの機器が２台のみであるか否かは、例えばマスターからのブロー
ドキャストに対する応答を調べることによって検出することができる。
【００６８】
また通信の有効な範囲内とは、無線ネットワークにおいては無線の届く範囲内を意味す
るが、有線ネットワークにおいては、ブロードキャストが有効となる例えばサブネットな
どの限られたネットワークエリアを意味する。つまり、第３者による通信の傍受などの危
険がある範囲内に、メンバ登録対象の機器とマスターとの２台の機器以外にデータ同期登
録モードに設定された他の機器が存在しないことを条件に、データ同期メンバの登録処理
が開始される。
【００６９】
ではここで、データ同期メンバの登録を行う機能の詳細について、説明することとする
。はじめに、データ同期メンバの登録処理に伴って行われる、マスターとスレーブの通信
処理を図５に示す。
【００７０】
まず、マスターとスレーブの双方で、データ同期メンバの登録要求を相手に送信し、そ
の後マスターはスレーブに対して自分がマスターである旨の通知を行う。スレーブは通知
を受け取ると、識別データをマスターに送信し、マスターはこれを使って生成した証明デ
ータと、優先度データとをスレーブに送信し、通信処理は完了する。
【００７１】
次に、各機器における処理ステップを詳しくみていくこととする。マスター機器が、ス
レーブ機器をデータ同期ネットワークのメンバとして登録する時のマスターの処理ステッ
プを、図６に示し、図３と合わせて説明する。
【００７２】
まず、ユーザによる「データ同期メンバの登録」機能の呼び出しが、機器入出力制御部
１４に伝えられると（ステップＳ１１）、現在のデータ同期ネットワークの設定を、デー
タ同期ネットワーク設定管理部１６にて判断する（ステップＳ１２）。自機器が、後述す
るマスター宣言の機能によって、マスターに設定されているならば、ユーザに登録処理の
実行要求を促し、スレーブに設定されている時は処理を終了する。何も設定されていない
場合には、後述の新規登録メンバとしての動作を行う。
【００７３】
ユーザからの登録処理の実行要求を、機器入出力部にて受け取ると（ステップＳ１３）
、通信部１１よりデータ同期メンバの登録要求をブロードキャスト送信し（ステップＳ１
４）、通信部１１にて新規メンバからの登録要求を待ち受ける。登録要求が一定の時間な
かった場合には、処理はタイムアウトで終了する。新規メンバからの登録要求を受け取る
と（ステップＳ１５）、登録機器が自機器と新規メンバの２台のみであるかを判断する（
ステップＳ１６）。つまり、相手機器との間でデータ同期メンバの登録要求を送信し合い
、データ同期メンバの登録要求を送信してきた相手機器が１台のみであれば、登録機器が
自機器と新規メンバの２台のみであると判定される。
【００７４】
この時点で登録状態の機器が自機器と、新規メンバの２台のみでなかった場合には（ス
テップＳ１６のＮＯ）、処理を終了し、２台のみであった場合には（ステップＳ１６のＹ
ＥＳ）、新規メンバに対して自分がマスターである旨を通信部１１より通知する（ステッ
プＳ１７）。その後新規メンバからの証明データの元になる識別データを、通信部１１よ
り受け取ると（ステップＳ１８）、このデータを元にして証明データと新規メンバに渡す
優先度データを、データ同期ネットワーク設定管理部１６にて生成し（ステップＳ１９，
Ｓ２０）、更に登録機器の台数をカウントするカウンタの値を１増加させる（ステップＳ
２１）。
【００７５】
そして最後に、生成した証明データと、優先度データを新規メンバに通信部１１より送
信する（ステップＳ２２，Ｓ２３）。優先度データは、ここではカウンタの値を直接用い
ているが、発行の都度異なった値を生成し、それら生成した値の間で優劣を一意に判断で
きるような、順序関係を定義できるものであれば、どのような方式で優先度を決定しても
良い。
【００７６】
次に、新規にデータ同期ネットワークに参加したい機器（メンバ）が、マスター機器に
データ同期ネットワークのメンバとして登録される時の新規メンバの処理ステップを、図
７に示し、図３と合わせて説明する。
【００７７】
まず、機器入出力部１３が、ユーザによる「データ同期メンバの登録」要求を受け取る
と、図６の場合と同様に、データ同期ネットワーク設定管理部１６において、現在のデー
タ同期ネットワークの設定を判断する。自機器がマスターとして設定されている場合には
上述のマスターによる「データ同期メンバの登録」となる。自機器がすでにスレーブとし
て設定されている場合には終了する。データ同期ネットワークの設定がまだなされていな
いならば、ユーザに登録処理の実行要求を促す。ユーザが、登録処理の実行要求を、機器
入出力部１３に対して行うと（ステップＳ３１）、通信部１１より登録要求を送信し（ス
テップＳ３２）、更に通信部１１において、マスターからの応答を待ち受ける。マスター
からの応答がない場合はタイムアウトで終了する。応答を受け取ると（ステップＳ３３）
、登録状態の機器が自機器と、マスターの２台のみであるかを判断し（ステップＳ３４）
、２台のみであった場合には、相手からのマスター通知を待ち受けることにより、相手が
マスターであることを確認した後（ステップＳ３５）、証明データの元となる識別データ
をデータ同期ネットワーク設定管理部１６において生成し、これをマスターに送信する（
ステップＳ３６，Ｓ３７）。
【００７８】
その後マスターから証明データと優先度データを通信部にて待ち受け、これらを受信す
ると、データ同期ネットワーク設定管理部を通じて証明データと優先度データを設定し、
登録処理が完了する（ステップＳ３８，Ｓ３９）。
【００７９】
データ同期メンバの登録処理に際しては、証明データと優先度を発行するマスターと、
登録される新規メンバとの間で、同じ種類のデータセットを持つ必要があり、尚かつ異な
る種類のデータセット同士を登録しようとした場合には、登録が行えなくなるようにする
必要がある。この照合ステップは、図６の「データ同期メンバの登録要求送信」時、およ
び図７の「データ同期メンバの登録要求送信」時に、例えば予めデータセット毎にアドレ
ス帳ならば０１、時刻ならば０２、スケジュールならば０３、というように識別子を付け
ておき、この識別子をマスターと新規メンバ間で送信し合い、同じ識別子であるかどうか
を判断することによって行うことができる。
【００８０】
一度、あるデータ同期ネットワークに属するマスターとスレーブが同じ種類のデータセ
ットを持つことが保証されれば、データ同期処理など、他の機能を使用する際には、同じ
データ同期ネットワークに属するかどうかの認証が行われるので、異なる種類のデータセ
ットが混在する状態は起こり得ない。それはたとえ複数のデータセットを持つ機器であっ
ても、その機器内のデータセットは、それぞれ全く別の、独立したデータ同期ネットワー
クを構成しているため、異種のデータセットと、処理が混同されることはない。
【００８１】
（２）データ同期処理
次にデータ同期処理について説明する。
【００８２】
データ同期メンバの登録処理によりデータ同期ネットワークの各メンバに証明データと
優先度データが与えられると、実際のデータ同期処理は、最低限この２つの情報を用いて
、任意のメンバ間で行うことができる。
【００８３】
同期処理時には、初めにお互いが同じデータ同期ネットワークに属するメンバであるか
を認証し、その後データ同期を行う。互いに競合しないデータは、メンバ間でそれぞれマ
ージされ、いくつかのデータに関して競合が起きた場合には、競合が起きたメンバ中で一
番優先度の高いメンバのデータが競合解決のデータとして採用される。
【００８４】
今、図８に示すように、Ａ，Ｂ，Ｃ，Ｄ，Ｅの５つのメンバで構成され、Ａがマスター
となるようなデータ同期ネットワークがあったとする。
【００８５】
すべてのメンバが揃っている状態でデータ同期処理が行われる場合、まずお互いに自分
の証明データを相手に渡し、相手から証明データを受け取り、互いが同じデータ同期ネッ
トワークのメンバであるかを認証する。この時、証明データの受け渡しおよび認証は、例
えば、すべてのメンバがすべての相手と証明データをやり取りして、個々のメンバがそれ
ぞれ受け取った証明データを使って認証するという方法がある。つまりＡからＥのメンバ
の中で、異なる２メンバの同士の組み合わせ分だけ、証明データのやり取りと、認証をし
ても良い。
【００８６】
またあるいは、例えば図９のように、優先度の一番高いメンバ（ここではＡ）と、他の
メンバとの間でのみ証明データをやり取りしてもよい。つまりＡとＢ、ＡとＣ、ＡとＤ、
ＡとＥのようにあるメンバがサーバの役割をして認証を行う方法である。ＡからＥの各メ
ンバが、それぞれ同じデータ同期ネットワークのメンバであると認証された後、実際のデ
ータ同期の処理は、優先度の一番高いメンバ（ここではＡ）が、他のすべてのメンバとあ
るデータフィールドの同期データをやり取りし、競合の判定、優先度による競合の解決、
データの更新を行って、次のデータフィールドの同期データへと順次処理していくことが
できる。
【００８７】
データ同期処理時の競合は、例えば図１０のように、あるデータフィールドｘについて
、Ａ，Ｃ，Ｅは前回の同期処理時から変更されておらず、Ｂ，Ｄのメンバのもつあるデー
タが共に更新されている場合等に生じる。そしてこの時、このデータ（ｃｏｎｆｌｉｃｔ
ｄａｔａ）の競合を解決する手段は、Ｂ，Ｄの中でもっとも高い優先度をもつＢのデー
タを採用することである。なぜなら５つのメンバのうちで一番優先度の高いメンバはＡで
あるが、データが変更されているメンバはＢとＤのみであるからである。ただしここで、
データが変更されていてもいなくても、一番優先度の高いメンバＡのデータで同期処理時
の競合解決を行うようにしても良い。
【００８８】
次にこのデータ同期ネットワークのメンバであるＡ，Ｂ，Ｃのみがデータ同期する場合
について考えてみる。このような状況は、例えばＤ，Ｅの電源が入っていないとか、Ａ，
Ｂ，Ｃのみを外に持ち出した等の状況が考えられる。認証してデータ同期するところまで
は上記と同様であり、Ｂ，Ｃのもつあるデータが競合したとする（Ｂ，Ｃのもつ同じデー
タフィールドのデータが前回の同期以降に更新された状態）。この時競合はＢ，Ｃの中で
より高い優先度を持つメンバのデータで解決され、その結果、Ａ，Ｂ，Ｃのデータは同期
状態となる。また別の場所で、残っているＤ，Ｅのみがデータ同期する場合を考えてみる
と、Ａ，Ｂ，Ｃの場合と同様に、競合が発生した場合は、Ｄ，Ｅの中でより優先度の高い
データで競合が解決され、ＤとＥはデータ同期状態となる。
【００８９】
以上のように、データ同期処理は、データ同期処理を行う同一のグループに属すること
を示す証明書を持つ、１台のマスターと１台以上の任意のスレーブ機器との間のみならず
、スレーブ同士の間でも行うことができる。この場合でも、無線あるいは有線により通信
可能な状態の機器間で証明データを交換することにより同一のデータ同期グループに属す
るもの同士であることが確認されるので、相手を一意に特定するための専用の情報を持つ
ことなく、証明データのみで安全にデータ同期を行うことができる。
【００９０】
データ同期処理は、例えば
（ａ）データ同期処理モードに設定された機器から、通信可能な範囲内に存在する他の
機器にデータ同期処理要求をブロードキャストで送信し、
（ｂ）それら機器間で証明書を交換して、同じデータ同期ネットワークに属する機器同
士であるか否かを相互に認証し、
（ｃ）同じデータ同期ネットワークに属する機器同士であれば、対応するデータセット
についてのデータ同期処理を各々の優先度に従って実行する
という手順で行うことができる。
【００９１】
この場合、図６、図７で説明したデータ同期メンバの登録処理のようにマスターと新規
登録対象メンバの２台のみという制限はなく、通信可能な範囲内にそれぞれに存在し、且
つ同一データ同期ネットワークに属する２台以上の任意の機器間でデータ同期処理を行う
ことができる。同期させたい機器全てをユーザによりデータ同期処理モードに設定しても
よいし、１台の機器のみをデータ同期処理モードに設定し、その機器からデータ同期処理
要求を受けた他の機器をその要求に応じて自動的にデータ同期処理モードに移行させるよ
うにしても良い。
【００９２】
また、実際のデータ同期処理に際しては、データ同期ネットワークが設定されたデータ
セットの中でデータ同期処理を行うべきデータセットをユーザが指定しても良いし、或い
はデータ同期ネットワークが設定された全てのデータセットのそれぞれについて、同一の
データ同期ネットワークに属するか否かを判断し、同一のデータ同期ネットワークに属す
ることが確認されたデータセットについて、それらの同期処理を一度に実行することも可
能である。認証データはデータ同期ネットワークが設定されたデータセット毎に存在する
ので、例えば全ての認証データを交換し合うことで、相手の機器と自機器が共に属してい
るデータ同期ネットワークを調べることができる。もちろん、データセット毎に用意され
た識別子を送り合うことによって、認証すべきデータ同期ネットワークを特定するように
しても良い。
【００９３】
（３）マスター宣言
次に自機器をデータ同期ネットワークのマスターとして設定する「マスター宣言」の機
能について説明する。
【００９４】
データ同期ネットワークを新規に構築する場合、マスターとなるメンバを決定する必要
があるが、これを実現するのが「マスター宣言」の機能である。「マスター宣言」は、ど
のデータ同期ネットワークにも属していないデータセットを持つメンバのみが、自分がこ
れから作るデータ同期ネットワークのマスターになるという設定をすることができる。こ
の時、設定はスタンドアロンで行われ、他のメンバとの通信は行われない。
【００９５】
既存のデータ同期ネットワークにおいて、該データ同期ネットワークに属さないメンバ
や、スレーブであったメンバの「データ同期メンバの解除」を行って、該データ同期ネッ
トワークに、後からマスターを追加するために「マスター宣言」をすることはできない。
その場合には、「マスター宣言」を行ったメンバをマスターとする、まったく別の新しい
データ同期ネットワークが定義される。「マスター宣言」はいつでも新しいデータ同期ネ
ットワークを作成する場合のみに使用される。
【００９６】
新規メンバを、「マスター宣言」によって新たなデータ同期ネットワークのマスターに
する、「マスター宣言」の処理ステップを図１１に示す。
【００９７】
まず、ユーザが機器入出力部１３を通じて「マスター宣言」の機能呼び出し操作をある
データセットに対して行うと（ステップＳ４１）、そのデータセットについて、自機器に
おける現在のデータ同期ネットワークの設定をデータ同期ネットワーク設定管理部１６で
判断する（ステップＳ４２）。既にマスターであるか、あるいはスレーブとして設定され
ている場合には処理を終了する。もしデータ同期ネットワークの定義がなされていない状
態であるならば、まずデータ同期ネットワークの識別データをデータ同期ネットワーク設
定管理部１６で生成し（ステップＳ４３）、これを元に自機器に対する証明データを生成
する（ステップＳ４４）。
【００９８】
更にデータ同期ネットワーク設定管理部１６において、優先度カウンタをリセットして
、自分の優先度としてカウンタの初期の値を優先度データに設定した後（ステップＳ４５
，Ｓ４６）、カウンタを更新し処理を終了する。
【００９９】
（４）データ同期メンバの解除
データ同期ネットワークから登録メンバを解除する際に、「データ同期メンバの解除」
を行う。この動作はマスターとスレーブで異なった役割を持つため、スレーブの場合とマ
スターの場合についてそれぞれ説明する。
【０１００】
まず、スレーブをデータ同期ネットワークのメンバから解除する場合であるが、例えば
あるデータ同期ネットワークに参加しているスレーブをその同期ネットワークのメンバか
ら除外した状態で使用する場合や、スレーブを廃棄する場合などに、この機能を使用する
。「データ同期メンバの解除」は、スタンドアロンの動作であり、マスターや他の機器と
の通信は必要としない。またそれによって既存のデータ同期ネットワークに影響が及ぶこ
ともない。唯一、解除されたスレーブの持っていた優先度データは「データ同期メンバの
登録」で再利用されることはないため欠番となるが、これによってデータ同期ネットワー
クの一貫性が壊れるものではない。
【０１０１】
ここでスレーブにおいて「データ同期メンバの解除」を行う場合の処理ステップを図１
２に示す。
【０１０２】
まず、ユーザによりあるデータセットについての「データ同期メンバの解除」要求が機
器入出力部１３になされると（ステップＳ５１）、そのデータセットについて、自機器に
おける現在のデータ同期ネットワークの設定状態をデータ同期ネットワーク設定管理部１
６にて判断する（ステップＳ５２）。そして自機器がスレーブである時には、データ同期
ネットワーク設定管理部１６の該当する優先度データ、証明データ、識別データを消去す
る（ステップＳ５３，Ｓ５４，Ｓ５５）。
【０１０３】
マスターをデータ同期ネットワークのメンバから解除する場合は、「データ同期メンバ
の解除」が行われる際に、データ同期ネットワークのスレーブのうち、マスターと現在通
信可能なメンバが存在すれば、このスレーブもデータ同期ネットワークのメンバから解除
される。これはマスターを他のメンバに引き継ぐことなしに、データ同期ネットワークの
メンバから解除するという状況が、通常はデータ同期ネットワークの設定自体を解除した
い場合であることからである。また通信可能なスレーブのみが、同時にデータ同期ネット
ワークから解除されるのは、マスターがデータ同期ネットワークのメンバを把握できない
ことと、スレーブの買い替え、廃棄、故障、盗難など、あるいは単に他の場所においてあ
ることにより、データ同期ネットワークの全メンバが揃う状況は必ずしも仮定されないこ
とからである。この場合、その場にいなかったスレーブは以前のデータ同期ネットワーク
に参加したままであるが、その場にいなかったスレーブ同士で引き続きデータ同期をする
こともできる。ただし、この場合はマスターが既にいない状態であるため、新規にデータ
同期メンバの登録を行って、データ同期ネットワークのメンバを増やすことはできない。
【０１０４】
マスターにおいて、「データ同期メンバの解除」を行う場合の処理ステップを図１３に
示す。ユーザによりあるデータセットについての「データ同期メンバの解除」要求が機器
入出力部１３へ出されると、図１２で説明したように、データ同期ネットワーク設定管理
部において、そのデータセットについて、自機器における現在のデータ同期ネットワーク
の設定状態が判断される。自機器がマスターである場合には、現在通信可能なスレーブを
検索する（ステップＳ６１）。これは例えば、ブロードキャストによって送信したデータ
に対するスレーブからの応答などによって判断すればよい。そしてその後、現在通信可能
な範囲にいるスレーブに対して、マスターの証明データと、「データ同期メンバの解除」
要求を送信する（ステップＳ６２，Ｓ６３）。
【０１０５】
この要求を受け取ったスレーブは、マスターの証明データを使って認証を行い、その後
スレーブにおける「データ同期メンバの解除」と同様に自身の設定を解除する。
【０１０６】
マスターはその後、自機器の優先度データ、証明データ、識別データ、カウンタの値を
消去し、カウンタのリセットを行って処理を終了する（ステップＳ６４〜Ｓ６７）。
【０１０７】
（５）マスター引き継ぎ
「マスター引き継ぎ」の機能は、既存のデータ同期ネットワークにおいて、データ同期
ネットワークはそのままの状態で存続させ、マスターである権利のみを現マスターから他
のメンバに委譲する処理である。これは例えば、新しく購入した機器を既存のデータ同期
ネットワークのマスターにしたい場合、マスターであった機器を廃棄する場合、マスター
である機器を買い換えたい場合、移動できないデスクトップＰＣなどをマスターにしてい
るが、外出先にて「データ同期メンバの登録」を一時的に行いたい場合など、データ同期
ネットワークの機能、構成をそのままに、マスターを他の機器に移したい場合に使用する
。これは既存のデータ同期ネットワークにおけるスレーブとマスターの権限を交換するも
のであるが、「データ同期メンバの登録」と組み合わせて自動化することでデータ同期ネ
ットワークのメンバでないメンバに対して、マスター権限の委譲を行っても良い。
【０１０８】
この処理ではまず、マスターと、マスターを引き継ぐスレーブの各々の機器で、「マス
ターの引き継ぎ」機能を呼び出す。そして、「データ同期メンバの登録」と同様な方法で
、マスターの保持している設定情報をスレーブに移し、スレーブに保持している設定情報
をマスターに移す。マスターとスレーブ１台の情報をそのまま交換し、また個々のメンバ
は互いに他の機器に関する情報を持っていないことから、他のデータ同期ネットワークの
メンバには影響を与える事はなく、「データ同期メンバの登録」と同様に安全且つ簡単に
処理を行うことができる。
【０１０９】
ではここで、「マスター引き継ぎ」機能の詳細について、説明することとする。はじめ
に、「マスター引き継ぎ」の処理に伴って行われる、マスターとスレーブの通信処理を図
１４を用いて説明する。
【０１１０】
まず、マスターとスレーブ双方で、マスター引き継ぎ要求を相手に送信し、要求を受け
取ると双方で機器認証のための証明データを送信する。認証処理後、マスターはスレーブ
に識別データ、優先度データ、カウンタ値を送信し、スレーブは優先度データ、識別デー
タを送信して、通信処理は完了する。
【０１１１】
次に、各機器における処理ステップを詳しくみていくこととする。図１５は「マスター
引き継ぎ」機能のマスター側における処理ステップを示したものであり、図３とあわせて
説明する。
【０１１２】
まず、機器入出力部１３がユーザからの「マスター引き継ぎ」要求を受け取ると（ステ
ップＳ７１）、自機器において現在のデータ同期ネットワークの設定を、データ同期ネッ
トワーク設定管理部１６で判断する（ステップＳ７２）。マスターである場合には、引き
続きユーザから処理実行の要求を機器入出力部１３で待ち受ける。機器入出力部１３で処
理実行要求を受け取ると（ステップＳ７３）、通信部１１よりマスター引き継ぎの処理要
求をブロードキャスト送信する（ステップＳ７４）。そして通信部１１にて、相手機器か
らの引き継ぎの処理要求を待ち受け、相手機器からの要求が到着すると（ステップＳ７５
）、現在処理実行状態の機器が自機器と、該相手機器のみであることを通信部１１および
通信制御部１２で判断する（ステップＳ７６）。
【０１１３】
２台のみであった場合には（ステップＳ７６のＹＥＳ）、該相手機器に証明データを通
信部１１から送信する。なお証明データの送信と、処理実行状態の機器数を判断するステ
ップの順序は、逆でもかまわない。そして、相手機器からの証明データを通信部１１にて
受け取ると（ステップＳ７８）、相手機器の認証を認証部１５およびデータ同期ネットワ
ーク設定管理部１６にて行い、相手機器がマスターと同一のデータ同期ネットワークに存
在する機器であることを確認する（ステップＳ７９）。認証が失敗した場合は終了し（ス
テップＳ７９のＮＯ）、成功した場合には（ステップＳ７９のＹＥＳ）、データ同期ネッ
トワーク設定管理部１６と通信制御部１２、通信部１１にて、スレーブに対して自機器の
持っている識別データ、優先度データ、カウンタの値を送信する（ステップＳ８０，Ｓ８
１，Ｓ８２）。その後スレーブからの優先度データ、識別データを通信部１１で受け取り
（ステップＳ８３，Ｓ８４）、データ同期ネットワーク設定管理部１６にて、スレーブか
ら受け取った優先度データ、証明データ、識別データを自身の優先度データ、証明データ
、識別データとして設定し（ステップＳ８５）、カウンタをリセットして処理は終了する
（ステップＳ８６）。
【０１１４】
なお、自機器の持っている優先度データ、カウンタの値、証明データ、識別データを送
信するタイミングと、スレーブからの優先度データ、証明データ、識別データを受け取る
タイミングは任意の順序で良い。
【０１１５】
スレーブ側の動作もおおむねマスター側の動作と同様になるが、この処理ステップを図
１６に示す。
【０１１６】
まず、機器入出力部１３が、ユーザからの「マスター引き継ぎ」要求を受け取ると、図
１５で説明したように、自機器において現在のデータ同期ネットワークの設定をデータ同
期ネットワーク設定管理部で判断する。設定がなされていない場合には終了し、マスター
である場合には、前述のマスターの動作となる。スレーブであると判断された場合には、
ユーザからのマスター引き継ぎの処理実行要求を機器入出力部１３で待ち受け、機器入出
力部１３がこれを受け取ると（ステップＳ９１）、通信部１１にて、マスター引き継ぎ要
求をブロードキャスト送信する（ステップＳ９２）。そして、マスターからの引き継ぎ要
求を待ち受け、引き継ぎ要求を受け取ると（ステップＳ９２）、現在「マスター引き継ぎ
」の実行状態である機器の数を、通信部１１および通信制御部１２で判断し（ステップＳ
９４）、処理実行状態である機器が自機器の他に１台のみであった場合には（ステップＳ
９４のＹＥＳ）、以下の処理に進む。
【０１１７】
まず、マスターとの間で証明データを授受する（ステップＳ９５，Ｓ９６）。
【０１１８】
そして、認証部１５およびデータ同期ネットワーク設定管理部１６にて、相手の認証を行
う（ステップＳ９７）。認証後、通信相手が自分の属するデータ同期ネットワークのマス
ターでない場合には処理は終了し（ステップＳ９７のＮＯ）、マスターである場合には（
ステップＳ９７のＹＥＳ）、マスターの持っている優先度データ、カウンタの値、識別デ
ータを通信部１１より受信する（ステップＳ９９，Ｓ１００，Ｓ１０１）。その後自機器
の持っている、優先度データ、識別データを通信部１１より送信した後（ステップＳ１０
１，Ｓ１０２）、受信したマスターの識別データ、証明データ、優先度データ、カウンタ
の値をデータ同期設定管理部１６にて自身のデータとして設定し（ステップＳ１０３，Ｓ
１０４）、処理は終了する。
【０１１９】
なお、データ同期ネットワークのマスターとして機能するデータセットを複数持つ機器
の場合には、マスター引き継ぎ処理は、ユーザから指定された特定のデータセットに関す
る設定情報についてのみ行うようにしても良い。もちろん、引き継ぎ先のスレーブ機器も
複数のデータセットを有するものであれば、マスター機器の持つ全てのデータセットに関
するマスター権限をスレーブ機器に一度に引き継がせるようにすることもできる。
【０１２０】
（６）優先度交換
「優先度交換」機能は、２つのスレーブ間で、自分の持っている優先度をお互いに交換
するものである。データ同期時に競合が起こると、より優先度の高いスレーブのデータで
解決される。また優先度はマスターから登録順に与えられるため、後から登録したスレー
ブのデータを、先に登録したスレーブのデータよりも優先させたい場合が生じ得る。優先
度をデータ同期メンバの登録時に選択できるようにしても良いが、マスターあるいはスレ
ーブに優先度を選択するための表示インターフェースが必要となるため、ここでは登録順
に番号が振られることとする。「優先度交換」の時にも、セキュリティ上の理由から、「
データ同期メンバの登録」や「マスター引き継ぎ」の場合と同様に、設定機器が２つであ
る時にのみ、処理がなされるものとする。
【０１２１】
でははじめに、スレーブ同士で優先度を交換する場合の通信処理ステップを図１７を用
いて説明する。
【０１２２】
まず、優先度を交換したいスレーブ同士が、共に優先度交換要求を相手に送信し、要求
を受け取ると双方で証明データを送信し合う。同一データ同期グループに属するスレーブ
機器同士であることが確認された後、双方が優先度データを交換して通信処理は終了する
。
【０１２３】
次に、優先度を交換する各スレーブ機器における「優先度交換」の処理ステップを図１
８に示す。
【０１２４】
まず、機器入出力部１３がユーザからの「優先度交換」要求を受け取ると（ステップＳ
１０１）、自機器において現在のデータ同期ネットワークの設定をデータ同期ネットワー
ク設定管理部１６にて判断する。設定がなされていない場合、またマスターである場合に
は処理は終了し、スレーブの場合にはユーザからの処理実行要求を機器入出力部１３で待
ち受ける。機器入出力部１３が処理実行要求を受け取ると（ステップＳ１０３）、通信部
１１にて「優先度交換」の処理要求をブロードキャスト送信し、優先度を交換する相手か
らの「優先度交換」の処理要求を待ち受ける。そして、相手から「優先度交換」の処理要
求を受け取ると（ステップＳ１０５）、現在「優先度交換」の実行状態である機器数を通
信部１１からのデータによって通信制御部１２で判断し（ステップＳ１０６）、「優先度
交換」の実行状態である機器が、自機器の他に１台のみであった場合に（ステップＳ１０
６のＹＥＳ）、データ同期ネットワーク設定管理部１６、通信制御部１２、通信部１１に
よって、証明データの送受信を行う（ステップＳ１０７，Ｓ１０８）。もし実行状態であ
る機器が通信可能な範囲内に３台以上あるならば（ステップＳ１０６のＮＯ）、処理を終
了する。
【０１２５】
証明データの送受信後、通信部１１にて受信した認証データを元に、認証部１５とデー
タ同期ネットワーク設定管理部１６で認証を行う（ステップＳ１０９）。相手機器が、同
じデータ同期ネットワークのメンバであると証明されたら（ステップＳ１０９のＹＥＳ）
、自優先度データの送信と、相手の優先度データの受信を行い（ステップＳ１１０，Ｓ１
１１）、データ同期ネットワーク設定管理部１６にて、各々自分の優先度を、受け取った
優先度で書き換え終了する（ステップＳ１１２）。
【０１２６】
なお、データ同期ネットワークのスレーブとして機能するデータセットを複数持つ機器
の場合には、ユーザから優先度交換が指定されたデータセットに対して図１８の処理を行
えばよい。
【０１２７】
（７）機器設定の方法
「データ同期メンバの登録」、「優先度交換」、「マスターの引き継ぎ」の各処理時に
は、設定に伴って行われるデータ通信の安全性を確保する必要がある。
【０１２８】
そのため、実際の設定データをやり取りする前に、設定を行う２台の機器を共に処理実行
要求の状態に移行させ、処理実行要求の状態にある機器が、通信可能な範囲内に２台のみ
であるかどうかによって、設定を続行するかを決定する。この一連の処理をもう少し詳し
く説明する。
【０１２９】
まずこの処理に付随して各機器は、設定モードと実行モードを持つ。設定モードは「デ
ータ同期メンバの登録」、「優先度の変更」、「マスターの引き継ぎ」といった呼び出し
機能を特定する役割を持つ。そして実行モードは、設定モードで呼び出された機能の実際
の処理を開始し、必要であれば設定相手とのデータ通信を行う役割を持つ。ここでこの実
行モードが処理実行要求の状態ということになる。
【０１３０】
「データ同期メンバの登録」、「優先度の変更」、「マスターの引き継ぎ」をしたい場
合、図１９のように、ユーザはまず設定を行う２つの機器（機器１と機器２）を設定モー
ドへと移行させる。すると各機器では、呼び出された機能がなんであるかを判断し、その
機能が自機器の現在の設定において、有効な機能であるかを調べる。例えば「データ同期
メンバの登録」を行いたい場合には、呼び出された機能が「データ同期メンバの登録」で
あること、そして自分がマスターであるか、スレーブであるか、何も設定されていないの
かを調べる。呼び出された機能が有効な機能であれば、実行モードへ移行できるが、実行
モードへの移行にもユーザの介入を必要とする。
【０１３１】
ユーザは２台の機器を同じ機能に対する実行モードへ同時（厳密には１秒程度の誤差Δ
ｔを許容する）に移行させる。実行モードにおいて相手との通信が確立される前の段階で
は、各機器は他の機器から実行モードであることを示すデータを待ち受け、それと同時に
実行モードであることを告げるデータを伝送路に送出する。このデータの送出は、例えば
一定時間間隔でデータのブロードキャスト送信を繰り返せば良い。それぞれの機器で相手
の実行モードであることを示すデータを受け取ると、他にこのモードである機器は存在せ
ず、なおかつ機器１と機器２が通信しようとしていることを互いに確認した後、設定情報
の通信を開始する。設定情報の通信に際しては、例えば前述した公開鍵暗号方式などの暗
号方式を用いて、他の機器に設定情報が漏洩しないような暗号化を施すことができる。他
に実行モードの機器が存在する場合には、設定情報に関する通信は一切行わず、処理は中
断し終了する。
【０１３２】
ここまで、データ同期ネットワークの構成法と、各機器が持つ機能について説明してき
た。次にデータ同期ネットワークを構成する機器の具体的な実現例について見ていくこと
とする。
【０１３３】
図２０は、本通信方法のための仕組みを腕時計に適用した例であり、図２１は携帯情報
機器に適用した例である。
【０１３４】
図２０の腕時計においては、データ同期に関わる部分は、２つのボタンと、４つの表示
部である。ボタンについては、データ同期ネットワークの設定を行うための各機能の実行
要求とデータ同期処理の開始の指示を行うために用いられる左上のボタンと、データ同期
ネットワークの設定を行う各機能を選択する左下のボタンとがある。そして表示部につい
ては、データ同期ネットワークの設定を行う各機能を表示するモード表示部と、マスター
／スレーブを表す「Ｍ」または「Ｓ」の文字を表示する表示部と、優先度データの数値を
示す表示部と、データ同期ネットワークの設定が現在なされているかどうかを示す表示部
がある。では、使用法の説明のために、「データ同期メンバの登録」と「データ同期処理
」の２つの代表的な機能の実行手続きについて考察する。
【０１３５】
まず、「データ同期メンバの登録」であるが、はじめに、左下のボタンを使って、「デ
ータ同期メンバの登録」のモードを呼び出す。この時、モード表示部には「データ同期メ
ンバの登録」の機能を呼び出したことが表示される。次にこの呼び出しが有効であれば、
左上のボタンを押しつづけ、「データ同期メンバの登録」に対する要求実行を行う。この
例で、この腕時計があるマスターに対してメンバ登録してもらうのであれば、マスターと
なる機器においても同様の手続きを行い、両機器が要求実行状態の間に、前述した「デー
タ同期メンバの登録」処理が成功すると、登録処理は完了する。「データ同期処理」の場
合には、最初に左上のボタンを押すことによって、同期処理開始の機能が実行され、腕時
計と通信可能な範囲内に存在し、且つ同期処理の実行が可能な、同じデータ同期ネットワ
ークに属する機器が１台以上いれば、データ同期の処理が実際に開始される。データ同期
処理の開始は、このようにデータ同期ネットワークに属している機器のうち、どれか一台
がその機能を呼び出すことによって実行されてもよいし、またあるいは、実際にその時デ
ータ同期処理を行いたいすべての機器が、同時にデータ同期処理開始の機能を呼び出すこ
とによって、実行されるようにしても良い。
【０１３６】
腕時計のもつデータセットは通常は時刻データ（時計データ）のみであるので、腕時計
との間でデータ同期処理を行う対象となる機器は、腕時計と通信可能な範囲内に存在する
機器の中で、時刻データ（時計データ）についてのデータ同期ネットワークに属する機器
となる。
【０１３７】
図２１には、携帯情報機器のデータ同期設定の画面例が示されている。これは、時計デ
ータに関するデータ同期設定画面の例である。この画面は、左上部に設けられた各機能を
呼び出すための「設定メニュー」と、現在の設定状態を表示する設定状態の表示部と、そ
して右下部に設けられたデータ同期処理開始の実行ボタンとから構成される。現在この携
帯情報機器と通信可能な範囲内に存在して、同期処理の実行が可能な、同じデータ同期ネ
ットワークに属する機器とデータ同期を行いたい場合には、右下部の同期ボタンを押すこ
とによってデータ同期処理の機能が呼び出される。また、設定メニューの「データ同期メ
ンバの登録」を選択することによって、データ同期メンバの登録画面が表示され、この画
面に備えられた実行ボタンを押しつづけることによって、前述の腕時計の例と同様に、デ
ータ同期メンバの登録の機能を実行することができる。
【０１３８】
以上のように、本実施形態の通信方法によれば、データ同期の通信相手に関する設定情
報を持つ必要が無く、基本的には証明書（証明データ）と優先度のみで安全・確実にデー
タ同期処理を行うことができる。しかも、同期処理開始を指示するだけで、通信可能な範
囲内に存在する他の機器との間で、同一データ同期グループに属するデータセットについ
ての同期処理が自動実行されるので、腕時計や携帯電話などのように限られたユーザイン
ターフェイスしか持たず、通信相手に関する設定が困難な機器においても、機器構成が動
的に変換するようなネットワーク環境下で容易にデータ同期を行うことができる。また、
マスターが存在せずとも、任意のスレーブ同士間でデータ同期処理を行うことができるの
で、特に、外出先で無線を用いて通信するような機器への適用に好適である。
【０１３９】
なお、以上説明した本実施形態の通信方法は、コンピュータプログラムによって実現す
ることができるので、そのコンピュータプログラムをコンピュータ読み取り可能なＣＤ−
ＲＯＭなどの記録媒体に記録してコンピュータに導入したり、あるいはＲＯＭなどの記録
媒体に記録して電子機器に組み込むだけで、通常の電子機器にて本実施形態と同様の効果
を得ることが可能となる。
【図面の簡単な説明】
【０１４０】
【図１】本発明の一実施形態に係る通信方法で用いられる機器登録ステップとデータ同期ステップを説明するための図。
【図２】同実施形態で用いられる各機器の設定情報の一例を示す図。
【図３】同実施形態で用いられる各機器の構成を示すブロック図。
【図４】同実施形態で用いられる各機器に用意される機能を設定時の通信形態によって分類した図。
【図５】同実施形態のデータ同期メンバ登録処理におけるマスターとスレーブのデータのやりとりを示す図。
【図６】同実施形態のデータ同期メンバ登録処理におけるマスターの処理手順を示すフローチャート。
【図７】同実施形態のデータ同期メンバ登録処理におけるスレーブの処理手順を示すフローチャート。
【図８】同実施形態における証明データ受け渡しおよび同期処理時の通信形態の一例を示す図。
【図９】同実施形態における証明データ受け渡しおよび同期処理時の通信形態の他の例を示す図。
【図１０】同実施形態におけるデータ競合時の処理例を示す図。
【図１１】同実施形態におけるマスター宣言処理の処理手順を示すフローチャート。
【図１２】同実施形態のデータ同期メンバ解除処理におけるスレーブの処理手順を示すフローチャート。
【図１３】同実施形態のデータ同期メンバ解除処理におけるマスターの処理手順を示すフローチャート。
【図１４】同実施形態のマスター引き継ぎ処理におけるマスターとスレーブのデータのやりとりを示す図。
【図１５】同実施形態のマスター引き継ぎ処理におけるマスターの処理手順を示すフローチャート。
【図１６】同実施形態のマスター引き継ぎ処理におけるスレーブの処理手順を示すフローチャート。
【図１７】同実施形態における優先度交換時の機器間のデータのやりとりを示す図。
【図１８】同実施形態の優先度交換処理における機器の処理手順を示すフローチャート。
【図１９】同実施形態に適用される設定モードと実行モードのタイミングを示す図。
【図２０】同実施形態の通信方法が適用される腕時計のインターフェースの一例を示す図。
【図２１】同実施形態の通信方法が適用される携帯情報端末のインターフェースの一例を示す図。
【符号の説明】
【０１４１】
１１…通信部
１２…通信制御部
１３…機器入出力部
１４…機器入出力制御部
１５…認証部
１６…データ同期ネットワーク設定管理部
１７…データ同期処理部
１８…同期データ記憶部
【図１】
2007122736.tif 000003
【図２】
2007122736.tif 000004
【図３】
2007122736.tif 000005
【図４】
2007122736.tif 000006
【図５】
2007122736.tif 000007
【図６】
2007122736.tif 000008
【図７】
2007122736.tif 000009
【図８】
2007122736.tif 000010
【図９】
2007122736.tif 000011
【図１０】
2007122736.tif 000012
【図１１】
2007122736.tif 000013
【図１２】
2007122736.tif 000014
【図１３】
2007122736.tif 000015
【図１４】
2007122736.tif 000016
【図１５】
2007122736.tif 000017
【図１６】
2007122736.tif 000018
【図１７】
2007122736.tif 000019
【図１８】
2007122736.tif 000020
【図１９】
2007122736.tif 000021
【図２０】
2007122736.tif 000022
【図２１】
2007122736.tif 000023