図面 (/)

技術 情報処理装置、コンピュータプログラム、および情報処理方法

出願人 地方独立行政法人東京都立産業技術研究センター
発明者 大平倫宏
出願日 2011年2月10日 (10年4ヶ月経過) 出願番号 2011-026993
公開日 2012年9月6日 (8年9ヶ月経過) 公開番号 2012-169732
状態 特許登録済
技術分野 イメージ処理・作成 画像処理 FAX原画の編集
主要キーワード TL形式 コントロールチップ 取出処理 実数データ 指数部 所定ビット長 頂点間 コントローラチップ
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2012年9月6日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (7)

課題

次元図形を構成する複数の頂点に対応する複数の頂点データを有する3次元図形データに対する電子透かしなどの付加情報の埋め込みにおいて、データの改ざんが検出されやすくする。

解決手段

図形データ23における複数の頂点データのうちの少なくとも1つの頂点データについて、その頂点データにおける一座標浮動小数点実数データ仮数部の一部に付加情報を埋め込み、その頂点データにおける別座標の浮動小数点実数データの仮数部の一部に、少なくともその仮数部の残りの部分と付加情報とから一方向性関数により得られる符号を埋め込む。

概要

背景

次元図形を構成する複数の頂点に対応する複数の頂点データを有する3次元図形データに対して電子透かしを埋め込む技術が提案されている(例えば非特許文献1,2参照)。

非特許文献1に記載の技術では、電子透かしの埋込処理において、頂点が挿入頂点(mark vertex)、調節頂点(adjusting vertex)などに分類され、挿入頂点の頂点データ(x1,x2,x3)のx1座標に、挿入頂点であることを示す情報が埋め込まれ、x2座標に電子透かしが埋め込まれ、x3座標に電子透かしのハッシュ値が埋め込まれる。

x2座標に電子透かしを埋め込みx3座標にハッシュ値を埋め込む際には、まず、挿入頂点に隣接する頂点のx2座標値の重心とx3座標値の重心が計算され、それらの値と、電子透かしの値およびハッシュ値とから一意に得られる値が頂点データのx2座標およびx3座標にそれぞれ代入される。そして、x2座標への電子透かしの埋め込みおよびx3座標へのハッシュ値の埋め込みに起因して発生するx2座標値の重心の変動とx3座標値の重心の変動を補償するために、調節頂点の位置(x2座標値およびx3座標値)が調節される。

そして、電子透かしの取出処理において、各頂点の頂点データのx1座標の値に基づいて挿入頂点が特定され、挿入頂点の頂点データのx2座標およびx3座標から電子透かしおよびハッシュ値を取り出し、取り出した電子透かしのハッシュ値を計算し、計算したハッシュ値と取り出したハッシュ値とを比較して認証が行う。計算したハッシュ値と取り出したハッシュ値とが同一であれば、改ざんがないと判断され、認証に成功する。

しかし、この方法では、頂点データの各座標が浮動小数点実数データである場合、丸め誤差などの演算誤差が発生するため、改ざんがない場合でも、電子透かしの取出処理において、計算したハッシュ値と取り出したハッシュ値とが一致しないことがあり、実用的ではない。

非特許文献2に記載の技術では、電子透かしの埋込処理において、互いに隣接しないように挿入頂点(mark vertex)が指定され、挿入頂点の頂点データ(x1,x2,x3)におけるx1座標の浮動小数点実数データ仮数部の一部に、挿入頂点であることを示す情報が埋め込まれ、x2座標の浮動小数点実数データの仮数部の一部に電子透かしが埋め込まれ、x3座標の浮動小数点実数データの仮数部の一部に電子透かしのハッシュ値が埋め込まれる。

x2座標に電子透かしを埋め込みx3座標にハッシュ値を埋め込む際には、まず、挿入頂点に隣接する頂点のx2座標値の浮動小数点実数データの仮数部の一部についての重心とx3座標値の浮動小数点実数データの仮数部の一部について重心が計算され、それらの値と電子透かしの値およびハッシュ値との間のビット演算により得られる排他的論理和が頂点データのx2座標およびx3座標にそれぞれ代入される。

そして、電子透かしの取出処理において、各頂点の頂点データのx1座標の値に基づいて挿入頂点が特定され、挿入頂点の頂点データのx2座標およびx3座標からビット演算で電子透かしおよびハッシュ値を取り出し、取り出した電子透かしのハッシュ値を計算し、計算したハッシュ値と取り出したハッシュ値とを比較して認証が行う。計算したハッシュ値と取り出したハッシュ値とが同一であれば、改ざんがないと判断され、認証に成功する。

非特許文献2に記載の技術では、ビット演算で挿入頂点のx2座標およびx3座標に対する電子透かしおよびハッシュ値の埋め込みおよび取り出しが行われるため、上述のような浮動小数点演算の丸め誤差などの演算誤差が発生しない。

概要

次元形を構成する複数の頂点に対応する複数の頂点データを有する3次元形データに対する電子透かしなどの付加情報の埋め込みにおいて、データの改ざんが検出されやすくする。 形データ23における複数の頂点データのうちの少なくとも1つの頂点データについて、その頂点データにおける一座標の浮動小数点実数データの仮数部の一部に付加情報を埋め込み、その頂点データにおける別座標の浮動小数点実数データの仮数部の一部に、少なくともその仮数部の残りの部分と付加情報とから一方向性関数により得られる符号を埋め込む。

目的

本発明は、上記の問題に鑑みてなされたものであり、3次元図形を構成する複数の頂点に対応する複数の頂点データを有する3次元図形データに対する電子透かしなどの付加情報の埋め込みにおいて、データの改ざんが検出されやすくなるようにする情報処理装置コンピュータプログラム、および情報処理方法を得ることを目的とする

効果

実績

技術文献被引用数
0件
牽制数
0件

この技術が所属する分野

(分野番号表示ON)※整理標準化データをもとに当社作成

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

次元図形を構成する複数の頂点に対応する複数の頂点データを有する3次元図形データを記憶する記憶手段と、前記記憶手段から前記3次元図形データを読み出し、前記複数の頂点データのうちの少なくとも1つの頂点データについて、その頂点データにおける一座標浮動小数点実数データ仮数部の一部に付加情報を埋め込み、その頂点データにおける別座標の浮動小数点実数データの仮数部の一部に、少なくとも前記仮数部の残りの部分と前記付加情報とから一方向性関数により得られる符号を埋め込む情報埋込手段と、を備えることを特徴とする情報処理装置

請求項2

前記複数の頂点の一部または全部を、挿入頂点調節頂点、および孤立頂点分類する頂点分類手段を備え、前記挿入頂点は、前記調節頂点と対になり、前記頂点データに前記付加情報を埋め込む頂点であり、前記調節頂点は、前記挿入頂点と対になり、前記挿入頂点への前記付加情報の埋め込みに起因して発生する所定のパラメータ値の変動を補償するために座標値を変更させられる頂点であり、前記孤立頂点は、隣接する頂点がすべて前記調節頂点であり、前記頂点データに前記付加情報を埋め込む頂点であり、前記情報埋込手段は、前記挿入頂点の前記頂点データにおける残りの座標の浮動小数点実数データの仮数部の一部に、前記挿入頂点であることを示す所定の第1識別値を埋め込み、前記孤立頂点の前記頂点データにおける残りの座標の浮動小数点実数データの仮数部の一部に、当該頂点が前記孤立頂点であることを示す所定の第2識別値を埋め込み、前記第2識別値は、前記第1識別値とは異なること、を特徴とする請求項1記載の情報処理装置。

請求項3

前記複数の頂点の一部または全部を、挿入頂点および調節頂点に分類する頂点分類手段を備え、前記挿入頂点は、前記調節頂点と対になり、前記頂点データに前記付加情報を埋め込む頂点であり、前記調節頂点は、前記挿入頂点と対になり、前記挿入頂点への前記付加情報の埋め込みに起因して発生する所定のパラメータ値の変動を補償するために座標値を変更させられる頂点であり、前記情報埋込手段は、前記挿入頂点に隣接する頂点の頂点データにおける一座標および別座標の浮動小数点実数データの仮数部の一部から座標ごとに前記所定のパラメータ値を整数演算で計算し、前記調節頂点の頂点データにおける一座標および別座標の浮動小数点実数データの仮数部の一部を、前記所定のパラメータ値の変動を補償するために変更すること、を特徴とする請求項1記載の情報処理装置。

請求項4

3次元図形を構成する複数の頂点に対応する複数の頂点データを有する3次元図形データを記憶する記憶手段を有する情報処理装置におけるコンピュータを、前記記憶手段から前記3次元図形データを読み出し、前記複数の頂点データのうちの少なくとも1つの頂点データについて、その頂点データにおける一座標の浮動小数点実数データの仮数部の一部に付加情報を埋め込み、その頂点データにおける別座標の浮動小数点実数データの仮数部の一部に、少なくとも前記仮数部の残りの部分と前記付加情報とから一方向性関数により得られる符号を埋め込む情報埋込手段として機能させるコンピュータプログラム

請求項5

3次元図形を構成する複数の頂点に対応する複数の頂点データを有する3次元図形データを記憶手段から読み出すステップと、前記複数の頂点データのうちの少なくとも1つの頂点データについて、その頂点データにおける一座標の浮動小数点実数データの仮数部の一部に付加情報を埋め込むステップと、その頂点データにおける別座標の浮動小数点実数データの仮数部の一部に、少なくとも前記仮数部の残りの部分と前記付加情報とから一方向性関数により得られる符号を埋め込むステップと、を備えることを特徴とする情報処理方法

請求項6

3次元図形を構成する複数の頂点に対応する複数の頂点データを有する3次元図形データを記憶する記憶手段と、前記記憶手段から前記3次元図形データを読み出し、前記複数の頂点データのうちの少なくとも1つの頂点データについて、その頂点データにおける一座標の浮動小数点実数データの仮数部の一部から付加情報を取り出し、その頂点データにおける別座標の浮動小数点実数データの仮数部の一部から符号を取り出し、少なくとも取り出した前記符号と前記仮数部の残りの部分とから一方向性関数により得られる値で、取り出した前記符号の認証を行う情報取出手段と、を備えることを特徴とする情報処理装置。

請求項7

ある頂点の前記頂点データにおける残りの座標の浮動小数点実数データの仮数部の一部の値が所定の第1識別値である場合、その頂点を挿入頂点と特定し、前記仮数部の一部の値が所定の第2識別値である場合、その頂点を孤立頂点と特定する頂点種類特定手段を備え、前記挿入頂点は、調節頂点と対になり、前記頂点データに前記付加情報を埋め込む頂点であり、前記調節頂点は、前記挿入頂点と対になり、前記挿入頂点への前記付加情報の埋め込みに起因して発生する所定のパラメータ値の変動を補償するために座標値を変更させられる頂点であり、前記孤立頂点は、隣接する頂点がすべて前記調節頂点であり、前記頂点データに前記付加情報を埋め込む頂点であり、前記第2識別値は、前記第1識別値とは異なり、前記情報取出手段は、前記挿入頂点および前記孤立頂点の前記頂点データについて、前記付加情報および前記符号を取り出し、少なくとも取り出した前記符号と前記仮数部の残りの部分とから一方向性関数により得られる値で、取り出した前記符号の認証を行うこと、を特徴とする請求項6記載の情報処理装置。

請求項8

3次元図形を構成する複数の頂点に対応する複数の頂点データを有する3次元図形データを記憶する記憶手段を有する情報処理装置におけるコンピュータを、前記記憶手段から前記3次元図形データを読み出し、前記複数の頂点データのうちの少なくとも1つの頂点データについて、その頂点データにおける一座標の浮動小数点実数データの仮数部の一部から付加情報を取り出し、その頂点データにおける別座標の浮動小数点実数データの仮数部の一部から符号を取り出し、少なくとも取り出した前記符号と前記仮数部の残りの部分とから一方向性関数により得られる値で、取り出した前記符号の認証を行う情報取出手段として機能させるコンピュータプログラム。

請求項9

3次元図形を構成する複数の頂点に対応する複数の頂点データを有する3次元図形データを前記記憶手段から読み出すステップと、前記複数の頂点データのうちの少なくとも1つの頂点データについて、その頂点データにおける一座標の浮動小数点実数データの仮数部の一部から付加情報を取り出すステップと、その頂点データにおける別座標の浮動小数点実数データの仮数部の一部から符号を取り出すステップと、少なくとも取り出した前記符号と前記仮数部の残りの部分とから一方向性関数により得られる値で、取り出した前記符号の認証を行うステップと、を備えることを特徴とする情報処理方法。

技術分野

0001

本発明は、情報処理装置コンピュータプログラム、および情報処理方法に関するものである。

背景技術

0002

次元図形を構成する複数の頂点に対応する複数の頂点データを有する3次元図形データに対して電子透かしを埋め込む技術が提案されている(例えば非特許文献1,2参照)。

0003

非特許文献1に記載の技術では、電子透かしの埋込処理において、頂点が挿入頂点(mark vertex)、調節頂点(adjusting vertex)などに分類され、挿入頂点の頂点データ(x1,x2,x3)のx1座標に、挿入頂点であることを示す情報が埋め込まれ、x2座標に電子透かしが埋め込まれ、x3座標に電子透かしのハッシュ値が埋め込まれる。

0004

x2座標に電子透かしを埋め込みx3座標にハッシュ値を埋め込む際には、まず、挿入頂点に隣接する頂点のx2座標値の重心とx3座標値の重心が計算され、それらの値と、電子透かしの値およびハッシュ値とから一意に得られる値が頂点データのx2座標およびx3座標にそれぞれ代入される。そして、x2座標への電子透かしの埋め込みおよびx3座標へのハッシュ値の埋め込みに起因して発生するx2座標値の重心の変動とx3座標値の重心の変動を補償するために、調節頂点の位置(x2座標値およびx3座標値)が調節される。

0005

そして、電子透かしの取出処理において、各頂点の頂点データのx1座標の値に基づいて挿入頂点が特定され、挿入頂点の頂点データのx2座標およびx3座標から電子透かしおよびハッシュ値を取り出し、取り出した電子透かしのハッシュ値を計算し、計算したハッシュ値と取り出したハッシュ値とを比較して認証が行う。計算したハッシュ値と取り出したハッシュ値とが同一であれば、改ざんがないと判断され、認証に成功する。

0006

しかし、この方法では、頂点データの各座標が浮動小数点実数データである場合、丸め誤差などの演算誤差が発生するため、改ざんがない場合でも、電子透かしの取出処理において、計算したハッシュ値と取り出したハッシュ値とが一致しないことがあり、実用的ではない。

0007

非特許文献2に記載の技術では、電子透かしの埋込処理において、互いに隣接しないように挿入頂点(mark vertex)が指定され、挿入頂点の頂点データ(x1,x2,x3)におけるx1座標の浮動小数点実数データ仮数部の一部に、挿入頂点であることを示す情報が埋め込まれ、x2座標の浮動小数点実数データの仮数部の一部に電子透かしが埋め込まれ、x3座標の浮動小数点実数データの仮数部の一部に電子透かしのハッシュ値が埋め込まれる。

0008

x2座標に電子透かしを埋め込みx3座標にハッシュ値を埋め込む際には、まず、挿入頂点に隣接する頂点のx2座標値の浮動小数点実数データの仮数部の一部についての重心とx3座標値の浮動小数点実数データの仮数部の一部について重心が計算され、それらの値と電子透かしの値およびハッシュ値との間のビット演算により得られる排他的論理和が頂点データのx2座標およびx3座標にそれぞれ代入される。

0009

そして、電子透かしの取出処理において、各頂点の頂点データのx1座標の値に基づいて挿入頂点が特定され、挿入頂点の頂点データのx2座標およびx3座標からビット演算で電子透かしおよびハッシュ値を取り出し、取り出した電子透かしのハッシュ値を計算し、計算したハッシュ値と取り出したハッシュ値とを比較して認証が行う。計算したハッシュ値と取り出したハッシュ値とが同一であれば、改ざんがないと判断され、認証に成功する。

0010

非特許文献2に記載の技術では、ビット演算で挿入頂点のx2座標およびx3座標に対する電子透かしおよびハッシュ値の埋め込みおよび取り出しが行われるため、上述のような浮動小数点演算の丸め誤差などの演算誤差が発生しない。

先行技術

0011

「A public fragile watermarking scheme for 3D model authentication」、Chang-Min Chou, Din-Chang Tseng著、Computer-Aided Design, Volume 38, Issue 11, November 2006
「A numerically stable fragile watermarking scheme for authenticating 3D models」、Wei-Bo Wang et al.著、Computer-Aided Design, Volume 40, Issue 5, May 2008

発明が解決しようとする課題

0012

しかしながら、上述の非特許文献2に記載の技術では、挿入頂点の頂点データにおけるx3座標の浮動小数点実数データの仮数部の一部にのみ、電子透かしのハッシュ値が埋め込まれるため、仮数部の残りの部分が改ざんされた場合でも、認証に成功してしまうという問題がある。また、埋め込める情報量が非特許文献1の方法と比較して、減少してしまうという問題点もある。

0013

本発明は、上記の問題に鑑みてなされたものであり、3次元図形を構成する複数の頂点に対応する複数の頂点データを有する3次元図形データに対する電子透かしなどの付加情報の埋め込みにおいて、データの改ざんが検出されやすくなるようにする情報処理装置、コンピュータプログラム、および情報処理方法を得ることを目的とする。

課題を解決するための手段

0014

上記の課題を解決するために、本発明では以下のようにした。

0015

本発明に係る情報処理装置は、3次元図形を構成する複数の頂点に対応する複数の頂点データを有する3次元図形データを記憶する記憶手段と、記憶手段から3次元図形データを読み出し、複数の頂点データのうちの少なくとも1つの頂点データについて、その頂点データにおける一座標の浮動小数点実数データの仮数部の一部に付加情報を埋め込み、その頂点データにおける別座標の浮動小数点実数データの仮数部の一部に、少なくともその仮数部の残りの部分と付加情報とから一方向性関数により得られる符号を埋め込む情報埋込手段とを備える。

0016

これにより、少なくともその仮数部の残りの部分と付加情報とから一方向性関数により得られる符号が埋め込まれるため、付加情報の取り出しの際に、データの改ざんが検出されやすくなる。

0017

また、本発明に係る情報処理装置は、上記の情報処理装置に加え、次のようにしてもよい。この場合、情報処理装置は、複数の頂点の一部または全部を、挿入頂点、調節頂点、および孤立頂点に分類する頂点分類手段をさらに備える。挿入頂点は、調節頂点と対になり、頂点データに付加情報を埋め込む頂点である。調節頂点は、挿入頂点と対になり、挿入頂点への付加情報の埋め込みに起因して発生する所定のパラメータ値の変動を補償するために座標値を変更させられる頂点である。孤立頂点は、隣接する頂点がすべて調節頂点であり、頂点データに付加情報を埋め込む頂点である。そして、情報埋込手段は、挿入頂点の頂点データにおける残りの座標の浮動小数点実数データの仮数部の一部に、挿入頂点であることを示す所定の第1識別値を埋め込み、孤立頂点の頂点データにおける残りの座標の浮動小数点実数データの仮数部の一部に、当該頂点が孤立頂点であることを示す所定の第2識別値を埋め込む。この第2識別値は、第1識別値とは異なる。

0018

また、本発明に係る情報処理装置は、上記の情報処理装置のいずれかに加え、次のようにしてもよい。この場合、情報処理装置は、複数の頂点の一部または全部を、挿入頂点および調節頂点に分類する頂点分類手段をさらに備える。挿入頂点は、調節頂点と対になり、頂点データに付加情報を埋め込む頂点である。調節頂点は、挿入頂点と対になり、挿入頂点への付加情報の埋め込みに起因して発生する所定のパラメータ値の変動を補償するために座標値を変更させられる頂点である。そして、情報埋込手段は、挿入頂点に隣接する頂点の頂点データにおける一座標および別座標の浮動小数点実数データの仮数部の一部から座標ごとに所定のパラメータ値を整数演算で計算し、調節頂点の頂点データにおける一座標および別座標の浮動小数点実数データの仮数部の一部を、所定のパラメータ値の変動を補償するために変更する。

0019

これにより、所定のパラメータの値が整数演算で計算されるため、丸め誤差などの演算誤差が発生せず、付加情報の取り出し時に、この所定のパラメータを使用した認証を正確に行うことができる。

0020

本発明に係るコンピュータプログラムは、3次元図形を構成する複数の頂点に対応する複数の頂点データを有する3次元図形データを記憶する記憶手段を有する情報処理装置におけるコンピュータを、記憶手段から3次元図形データを読み出し、複数の頂点データのうちの少なくとも1つの頂点データについて、その頂点データにおける一座標の浮動小数点実数データの仮数部の一部に付加情報を埋め込み、その頂点データにおける別座標の浮動小数点実数データの仮数部の一部に、少なくともその仮数部の残りの部分と付加情報とから一方向性関数により得られる符号を埋め込む情報埋込手段として機能させる。

0021

これにより、少なくともその仮数部の残りの部分と付加情報とから一方向性関数により得られる符号が埋め込まれるため、付加情報の取り出しの際に、データの改ざんが検出されやすくなる。

0022

本発明に係る情報処理方法は、3次元図形を構成する複数の頂点に対応する複数の頂点データを有する3次元図形データを記憶手段から読み出すステップと、複数の頂点データのうちの少なくとも1つの頂点データについて、その頂点データにおける一座標の浮動小数点実数データの仮数部の一部に付加情報を埋め込むステップと、その頂点データにおける別座標の浮動小数点実数データの仮数部の一部に、少なくともその仮数部の残りの部分と付加情報とから一方向性関数により得られる符号を埋め込むステップとを備える。

0023

これにより、少なくともその仮数部の残りの部分と付加情報とから一方向性関数により得られる符号が埋め込まれるため、付加情報の取り出しの際に、データの改ざんが検出されやすくなる。

0024

本発明に係る情報処理装置は、3次元図形を構成する複数の頂点に対応する複数の頂点データを有する3次元図形データを記憶する記憶手段と、記憶手段から3次元図形データを読み出し、複数の頂点データのうちの少なくとも1つの頂点データについて、その頂点データにおける一座標の浮動小数点実数データの仮数部の一部から付加情報を取り出し、その頂点データにおける別座標の浮動小数点実数データの仮数部の一部から符号を取り出し、少なくとも取り出した符号と仮数部の残りの部分とから一方向性関数により得られる値で、取り出した符号の認証を行う情報取出手段とを備える。

0025

これにより、少なくともその仮数部の残りの部分と付加情報とから一方向性関数により得られる符号が埋め込まれているため、付加情報の取り出しの際に、データの改ざんが検出されやすくなる。

0026

また、本発明に係る情報処理装置は、上記の情報処理装置に加え、次のようにしてもよい。この場合、情報処理装置は、ある頂点の頂点データにおける残りの座標の浮動小数点実数データの仮数部の一部の値が所定の第1識別値である場合、その頂点を挿入頂点と特定し、仮数部の一部の値が所定の第2識別値である場合、その頂点を孤立頂点と特定する頂点種類特定手段をさらに備える。挿入頂点は、調節頂点と対になり、頂点データに付加情報を埋め込む頂点である。調節頂点は、挿入頂点と対になり、挿入頂点への付加情報の埋め込みに起因して発生する所定のパラメータ値の変動を補償するために座標値を変更させられる頂点である。孤立頂点は、隣接する頂点がすべて調節頂点であり、頂点データに付加情報を埋め込む頂点である。第2識別値は、第1識別値とは異なる。そして、情報取出手段は、挿入頂点および孤立頂点の頂点データについて、付加情報および符号を取り出し、少なくとも取り出した符号と仮数部の残りの部分とから一方向性関数により得られる値で、取り出した符号の認証を行う。

0027

本発明に係るコンピュータプログラムは、3次元図形を構成する複数の頂点に対応する複数の頂点データを有する3次元図形データを記憶する記憶手段を有する情報処理装置におけるコンピュータを、記憶手段から3次元図形データを読み出し、複数の頂点データのうちの少なくとも1つの頂点データについて、その頂点データにおける一座標の浮動小数点実数データの仮数部の一部から付加情報を取り出し、その頂点データにおける別座標の浮動小数点実数データの仮数部の一部から符号を取り出し、少なくとも取り出した符号と仮数部の残りの部分とから一方向性関数により得られる値で、取り出した符号の認証を行う情報取出手段として機能させる。

0028

これにより、少なくともその仮数部の残りの部分と付加情報とから一方向性関数により得られる符号が埋め込まれているため、付加情報の取り出しの際に、データの改ざんが検出されやすくなる。

0029

本発明に係る情報処理方法は、3次元図形を構成する複数の頂点に対応する複数の頂点データを有する3次元図形データを記憶手段から読み出すステップと、複数の頂点データのうちの少なくとも1つの頂点データについて、その頂点データにおける一座標の浮動小数点実数データの仮数部の一部から付加情報を取り出すステップと、その頂点データにおける別座標の浮動小数点実数データの仮数部の一部から符号を取り出すステップと、少なくとも取り出した符号と仮数部の残りの部分とから一方向性関数により得られる値で、取り出した符号の認証を行うステップとを備える。

0030

これにより、少なくともその仮数部の残りの部分と付加情報とから一方向性関数により得られる符号が埋め込まれているため、付加情報の取り出しの際に、データの改ざんが検出されやすくなる。

発明の効果

0031

本発明によれば、3次元図形を構成する複数の頂点に対応する複数の頂点データを有する3次元図形データに対する電子透かしなどの付加情報の埋め込みにおいて、データの改ざんが検出されやすくなる。

図面の簡単な説明

0032

図1は、本発明の実施の形態に係る情報処理装置の構成を示すブロック図である。
図2は、図1におけるCPUでプログラムが実行されることにより実現される処理部を示すブロック図である。
図3は、本発明の実施の形態における各頂点データの構造の一例を示す図である。
図4は、本発明の実施の形態における付加情報の埋め込みについて説明するフローチャートである。
図5は、本発明の実施の形態における挿入頂点および調節頂点の分類について説明する図である。
図6は、本発明の実施の形態における付加情報の取り出しについて説明するフローチャートである。

実施例

0033

以下、図に基づいて本発明の実施の形態を説明する。

0034

図1は、本発明の実施の形態に係る情報処理装置の構成を示すブロック図である。図1に示す情報処理装置1は、コンピュータを内蔵しており、各種プログラムを実行して演算や処理を実行する。情報処理装置1としては、例えばパーソナルコンピュータが使用される。

0035

端末装置1において、CPU(Central Processing Unit)11は、プログラムに記述された処理を実行する演算処理装置である。また、ROM(Read Only Memory)12は、プログラムおよびデータを予め記憶した不揮発性メモリである。また、RAM(Random Access Memory)13は、プログラムを実行する際にそのプログラムおよびデータを一時的に記憶するメモリである。

0036

CPU11、ROM12およびRAM13は、バスコントローラチップを介して互いに接続されており、さらに、バス、コントロールチップインタフェースなどを介して記憶装置14、表示装置15、および入力装置16に接続されている。

0037

記憶装置14は、図示せぬオペレーティングシステム、各種プログラム、および各種データを格納する記録媒体を有する装置である。記憶装置14としては、不揮発性半導体メモリハードディスク駆動装置ディスクアレイ装置などが使用される。また、表示装置15は、操作画面などを表示する装置である。表示装置15としては、例えば液晶ディスプレイが使用される。入力装置16は、操作画面に対する操作を入力するための装置である。入力装置16としては、例えばキーボードマウスが使用される。

0038

この実施の形態では、記憶装置14には、埋め込みプログラム21、取り出しプログラム22、および図形データ23が記憶されている。なお、プログラム21,22を、CD−ROM、DVD−ROMなどの可搬性のある記録媒体に記録し、その記録媒体から情報処理装置1にインストールするようにしてもよい。

0039

埋め込みプログラム21は、電子透かしなどの付加情報を図形データ23に埋め込むためのコンピュータプログラムである。

0040

取り出しプログラム22は、電子透かしなどの付加情報を埋め込まれた図形データからその付加情報を取り出すためのコンピュータプログラムである。

0041

図形データ23は、3次元図形を構成する複数の頂点に対応する複数の頂点データを有する3次元図形データである。図形データ23は、例えば、STL形式のデータである。

0042

CPU11は、ROM12または記憶装置14に格納されているプログラムをRAM13にロードして実行する。これにより、プログラムに記述された処理を実行する処理部が実現される。

0043

図2は、図1におけるCPU11でプログラム21,22が実行されることにより実現される処理部を示すブロック図である。

0044

この実施の形態では、付加情報を図形データ23に埋め込むために埋め込みプログラム21が実行されることにより、頂点分類部31および情報埋込部32が実現され、付加情報を埋め込まれた図形データから付加情報を取り出すために取り出しプログラム22が実行されることにより、頂点種類特定部41および情報取出部42が実現される。

0045

図3は、本発明の実施の形態における各頂点データの構造の一例を示す図である。

0046

図3(A)は、IEEE754で規定されている浮動小数点実数データのデータ構造を示す図である。S(1ビット)は、符号ビットであり、EXP(8ビット)は、指数部であり、FRAC(23ビット)は、仮数部である。

0047

頂点データが浮動小数点実数データである場合において、付加情報を埋め込む頂点データ(x1,x2,x3)については、各座標x1,x2,x3の浮動小数点実数データの仮数部FRACの一部nxi(i=1,2,3)が変更される。図3(B)に示すように、ここでは、nxiは、例えば、下位の所定ビット長(ここでは5ビット)の部分とされる。

0048

頂点分類部31は、図形データ23について、頂点間リンクに基づいて、複数の頂点の一部または全部を、挿入頂点、調節頂点、および孤立頂点に分類する。挿入頂点は、調節頂点と対となり、頂点データに付加情報を埋め込む頂点である。調節頂点は、挿入頂点と対になり、挿入頂点への付加情報の埋め込みに起因して発生する所定のパラメータ値の変動を補償するために座標値を変更させられる頂点である。孤立頂点は、隣接する頂点がすべて調節頂点であり、頂点データに付加情報を埋め込む頂点である。なお、ある頂点とその頂点に隣接する頂点とは1本のリンクで直接接続されている。

0049

この実施の形態では、上述のパラメータは、x2座標およびx3座標のそれぞれについての重心nxc2,nxc3であって、式(1)で示される。

0050

0051

ここで、N(v)は、注目頂点(挿入頂点または孤立頂点)に隣接する頂点(つまり、注目頂点との間にリンクがある頂点)の集合であり、nxjは、各隣接頂点のxj座標のデータの所定部分(図3(B)の場合、連続する下位5ビット)の値であり、|N(v)|は、注目頂点に隣接する頂点の個数である。Maxiは、nxiの最大値maxiに1を加算した数値である。例えば、nxiのビット長が5である場合、Maxiは32である。keyj(j=2,3)は、剰余演算modの値域を調節するためのx2座標(j=2)とx3座標(j=3)の所定の拡散係数である。なお、keyjは秘匿され公開されない。

0052

情報埋込部32は、RAM13または記憶装置14から図形データ23を読み出し、複数の頂点データのうちの少なくとも1つの頂点データについて、その頂点データにおける一座標(ここではx2座標)の浮動小数点実数データの仮数部の一部に付加情報を埋め込み、その頂点データにおける別座標(ここではx3座標)の浮動小数点実数データの仮数部の一部に、少なくともその仮数部の残りの部分と付加情報とから一方向性関数により得られる符号を埋め込む。この実施の形態では、一方向性関数は、ハッシュ関数である。

0053

具体的には、情報埋込部32は、挿入頂点の頂点データにおける残りの座標(ここではx1座標)の浮動小数点実数データの仮数部の一部nx1に、挿入頂点であることを示す所定の第1識別値を埋め込み、孤立頂点の頂点データにおける残りの座標(ここではx1座標)の浮動小数点実数データの仮数部の一部に、当該頂点が孤立頂点であることを示す所定の第2識別値を埋め込む。この第2識別値は、第1識別値とは異なる。

0054

例えば、情報埋込部32は、挿入頂点および孤立頂点のx1座標について、式(2)に従って、元のnx1にnx’1を代入する。つまり、仮数部のうち、nx1の部分が変更される。

0055

0056

ここで、keyは、第1識別値であり、第2識別値は、key/2となる。なお、keyは、nx1と同一のビット長のデータであり、key/2は整数となる。なお、keyは秘匿され公開されない。

0057

挿入頂点および孤立頂点のいずれでもない頂点のnx1が、keyおよびkey/2のいずれかと同一である場合には、nx’1は、key/3とされる。なお、key/3も整数となる。挿入頂点および孤立頂点のいずれでもない頂点について、nx1がkeyおよびkey/2のいずれでもない場合、nx’1=nx1とされる。

0058

また、例えば、情報埋込部32は、挿入頂点および孤立頂点のx2座標およびx3座標について、式(3)に従って、ビット演算(式(3)ではビットごとの排他的論理和)でnx’jを計算し、nx2にnx’2を代入し、nx3にnx’3を代入する。

0059

0060

ここで、wiは、i番目の電子透かしなどの付加情報であり、hはハッシュ関数であり、Nvhは、仮数部における、nxj以外の残りの部分の値である。

0061

この実施の形態では、情報埋込部32は、wiとNvhを引数として、ハッシュ関数hの値を計算し、そのハッシュ関数hの値とnxc3との排他的論理和をnx’3として計算する。

0062

また、情報埋込部32は、挿入頂点に隣接する頂点の頂点データにおける一座標(ここではx2座標)および別座標(ここではx3座標)の浮動小数点実数データの仮数部の一部から、座標ごとに所定のパラメータ値を整数演算で計算し、調節頂点の頂点データにおける一座標(ここではx2座標)および別座標(ここではx3座標)の浮動小数点実数データの仮数部の一部を、所定のパラメータ値の変動を補償するために変更する。

0063

この実施の形態では、式(3)に従って挿入頂点の頂点データが変更されるため、調節頂点のx2座標およびx3座標のデータにおける、nxjと同一の所定部分(図3(B)の場合、下位5ビット)nx’adの値が、式(4)に従って変更される。

0064

0065

ここで、N(mv)は、挿入頂点に隣接する頂点から調節頂点を除いた集合である。kは、0または1の値を有する係数であって、式(4)の右辺第1項から第2項を減算して得られる値が負である場合にはk=1とし、式(4)の右辺第1項から第2項を減算して得られる値が正である場合にはk=0とする。つまり、nx’adが5ビットである場合、nx’adの値は、0から31(つまり、maxi)のいずれかの値であり、負とはならないため、このように計算される。

0066

また、頂点種類特定部41は、ある頂点の頂点データにおける、後述の付加情報および符号の取り出し元となる2つの座標以外の残りの座標(ここではx1座標)の浮動小数点実数データの仮数部の一部の値が上述の第1識別値である場合、その頂点を挿入頂点と特定し、仮数部の一部の値が上述の第2識別値である場合、その頂点を孤立頂点と特定する。

0067

情報取出部42は、この実施の形態に示す方法で付加情報を埋め込まれた3次元図形データ(図示せず)を、RAM13または記憶装置14から読み出し、複数の頂点データのうちの少なくとも1つの頂点データについて、その頂点データにおける一座標(ここではx2座標)の浮動小数点実数データの仮数部の一部から付加情報を取り出し、その頂点データにおける別座標(ここではx3座標)の浮動小数点実数データの仮数部の一部から符号を取り出し、少なくとも取り出した符号と仮数部の残りの部分とから一方向性関数により得られる値で、取り出した符号の認証を行う。この一方向性関数は、付加情報を埋め込む際に使用される上述の一方向性関数と同一の関数である。

0068

具体的には、情報取出部42は、挿入頂点および孤立頂点の頂点データについて、付加情報および符号を取り出し、少なくとも取り出した符号と仮数部の残りの部分とから一方向性関数により得られる値で、取り出した符号の認証を行う。

0069

情報取出部42は、挿入頂点および孤立頂点の頂点データについて、式(1)に従って、x2座標およびx3座標の重心nxc2,nxc3を計算するとともに、x2座標およびx3座標のデータの仮数部の所定部分nx’2,nx’3を抽出し、式(5)に従って、付加情報w’iおよび符号(埋め込み時のハッシュ値)h’iを取り出す。なお、w’iは、i番目の付加情報を示し、h’iは、i番目の符号を示している。つまり、挿入頂点および孤立頂点の数が合計n個であれば、n対の付加情報および符号が取り出される。

0070

0071

次に、上記情報処理装置の動作について説明する。ここでは、付加情報の埋め込みの際の動作と、付加情報の取り出しの際の動作とについて説明する。

0072

(1)付加情報の埋め込み

0073

図4は、本発明の実施の形態における付加情報の埋め込みについて説明するフローチャートである。

0074

まず、頂点分類部31は、図形データ23を読み出し、図形データ23における頂点を注目頂点として1つずつ選択し、分類処理を行っていく。

0075

最初に、頂点分類部31は、図形データ23におけるすべての頂点を調節頂点候補とする(ステップS1)。例えば、各頂点の頂点データに関連付けて、その頂点の種類を示す頂点種類データがRAM13上に設けられ、そのデータの初期値が、調節頂点候補を示す値とされる。

0076

次に、頂点分類部31は、注目頂点としてまだ処理していない頂点があるか否かを判定する(ステップS2)。

0077

注目頂点としてまだ処理していない(つまり、挿入頂点、調節頂点および孤立頂点として確定しておらず、注目頂点として選択されていない)1または複数の頂点がある場合、頂点分類部31は、その1または複数の頂点から1つの頂点を注目頂点として選択し(ステップS3)、その注目頂点に隣接する頂点を図形データ23に基づいて特定し、その隣接する頂点の頂点種類データを参照して、その注目頂点に隣接する頂点がすべて調節頂点であるか否かを判定する(ステップS4)。

0078

その注目頂点に隣接する頂点がすべて調節頂点である場合、頂点分類部31は、その注目頂点を孤立頂点に分類し、その注目頂点の頂点種類データの値を、孤立頂点であることを示す値とする(ステップS5)。

0079

一方、その注目頂点に隣接する頂点の少なくとも1つが調節頂点ではない場合、頂点分類部31は、その注目頂点に隣接する頂点の少なくとも1つが調節頂点候補であるか否かを判定する(ステップS6)。

0080

その注目頂点に隣接する頂点のいずれも調節頂点候補ではない場合、この注目頂点の処理を終了し、ステップS2に戻る。

0081

一方、その注目頂点に隣接する頂点の少なくとも1つが調節頂点候補である場合、頂点分類部31は、その注目頂点を挿入頂点とし、その注目頂点に隣接する調節頂点候補の1つを選択し、その選択した頂点を、その挿入頂点と対をなす調節頂点とする(ステップS7)。このとき、頂点分類部31は、その注目頂点の頂点種類データの値を、挿入頂点であることを示す値とし、その選択した隣接頂点の頂点種類データの値を、調節頂点であることを示す値とする。また、この2つの頂点が対であることを示す情報も頂点種類データに含められる。

0082

そして、頂点分類部31は、その注目頂点に隣接する頂点のうちの、調節頂点以外の頂点を調節頂点候補から外す(ステップS8)。このとき、頂点分類部31は、その注目頂点に隣接する頂点のうちの、調節頂点以外の頂点の頂点種別データの値を、調節頂点候補の値から、別の所定値へ変更する。

0083

ステップS7,S8において挿入頂点と調節頂点との対が選択された後、この注目頂点の処理を終了し、ステップS2に戻る。

0084

このようにして、図形データ23についての一部または全部の頂点のそれぞれが、挿入頂点、調節頂点、および孤立頂点のいずれかに分類される。

0085

ここで、具体例について説明する。図5は、本発明の実施の形態における挿入頂点および調節頂点の分類について説明する図である。図5(A)は、図形データ23による頂点およびリンクの一例を示している。この図形には、頂点#1から頂点#7が存在している。

0086

まず、これらの頂点#1〜#7は、調節頂点候補とされる(ステップS1)。次に、頂点#1が選択される(ステップS3)。頂点#1について、隣接する頂点の少なくとも1つが調節頂点ではなく(ステップS4)、かつ隣接する頂点の少なくとも1つが調節頂点候補であるので(ステップS6)、図5(B)に示すように、頂点#1は挿入頂点とされ、それに隣接する頂点のうちの頂点#4が調節頂点とされる(ステップS7)。なお、図5において、黒丸の頂点は挿入頂点を表し、白丸の頂点は調節頂点を表している。そして、その他の隣接頂点である、頂点#2、頂点#3、および頂点#5は、調節頂点候補から外される(ステップS8)。

0087

次に、頂点種類が未確定である頂点#2が選択される(ステップS3)。頂点#2について、隣接する頂点の少なくとも1つが調節頂点ではなく(ステップS4)、かつ隣接する頂点の少なくとも1つが調節頂点候補であるので(ステップS6)、図5(C)に示すように、頂点#2は挿入頂点とされ、それに隣接する頂点のうちの頂点#6が調節頂点とされる(ステップS7)。そして、その他の隣接する調節頂点候補の頂点#7は、調節頂点候補から外される(ステップS8)。

0088

次に、頂点種類が未確定である頂点#3が選択される(ステップS3)。頂点#3について、隣接する頂点の少なくとも1つが調節頂点ではなく(ステップS4)、かつ隣接する頂点のいずれも調節頂点候補ではないので(ステップS6)、頂点#3についての処理は終了する。

0089

次に、頂点種類が未確定である頂点#5が選択される(ステップS3)。頂点#5について、隣接する頂点の少なくとも1つが調節頂点ではなく(ステップS4)、かつ隣接する頂点の少なくとも1つが調節頂点候補であるので(ステップS6)、図5(D)に示すように、頂点#5は挿入頂点とされ、それに隣接する頂点のうちの頂点#7が調節頂点とされる(ステップS7)。

0090

そして、頂点種類が未確定である未処理の頂点がなくなったため、ここで、頂点種類の分類処理は終了される。

0091

上述のようにして、頂点種類が分類された後、情報埋込部32は、挿入頂点、調節頂点、孤立頂点、およびそれら以外について、まず、その頂点種類に応じて、式(2)に従って、X(x1)座標を変更する(ステップS9)。つまり、情報埋込部32は、頂点種類データの値に基づいて頂点種類を特定し、式(2)に従って、変更後のX(x1)座標の値を特定し、その頂点の頂点データのX(x1)座標の値をその特定した値で変更する。

0092

次に、情報埋込部32は、各挿入頂点について、Y(x2)座標およびZ(x3)座標の値を、式(3)に従って変更する(ステップS10)。さらに、情報埋込部32は、その挿入頂点と対をなす調節頂点について、Y(x2)座標およびZ(x3)座標の値を、式(4)に従って変更する(ステップS11)。

0093

また、情報埋込部32は、各孤立頂点について、Y(x2)座標およびZ(x3)座標の値を、式(3)に従って変更する(ステップS12)。

0094

このようにして、図形データ23から、付加情報が埋め込まれた図形データが生成される。なお、頂点種別データは、図形データへの付加情報の埋め込み時のみに使用され、付加情報が埋め込まれた図形データには付加されていない。このようにして生成された図形データは、例えば記憶装置14に記憶される。

0095

(2)付加情報の取り出し

0096

上述のようにして付加情報が埋め込まれた図形データからは、付加情報を取り出すことが可能である。

0097

図6は、本発明の実施の形態における付加情報の取り出しについて説明するフローチャートである。

0098

頂点種類特定部41は、注目頂点としてまだ処理していない頂点があるか否かを判定する(ステップS21)。

0099

注目頂点としてまだ処理していない1または複数の頂点がある場合、頂点種類特定部41は、その1または複数の頂点から1つの頂点を注目頂点として選択し(ステップS22)、その注目頂点の頂点種別がその注目頂点の頂点データにおけるX(x1)座標の値に基づいて特定する(ステップS23)。式(2)に示す分類に基づいて、頂点種別が特定される。

0100

そして、その注目頂点の頂点種別が挿入頂点である場合(ステップS24)、情報取出部42は、その注目頂点の頂点データにおけるY(x2)座標およびZ(x3)座標の値から、式(5)に従って付加情報w’と符号h’を取り出す(ステップS25)。

0101

次に、情報取出部42は、この付加情報w’とx3座標の仮数部のnx3以外の残りのビット領域Nvh’とを引数として、式(3)におけるハッシュ関数hの値を計算し、その値と符号h’とを比較し、両者が一致した場合、付加情報w’が正しい(改ざんされていない)ものと認め、両者が一致しない場合、付加情報w’が正しくない(改ざんされている)ものと認める(ステップS26)。

0102

一方、その注目頂点の頂点種別が挿入頂点ではなく孤立頂点である場合(ステップS27)、情報取出部42は、その注目頂点の頂点データにおけるY(x2)座標およびZ(x3)座標の値から、式(5)に従って付加情報w’と符号h’を取り出す(ステップS28)。

0103

次に、情報取出部42は、この付加情報w’とx3座標の仮数部のnx3以外の残りのビット領域Nvh’とを引数として、式(3)におけるハッシュ関数hの値を計算し、その値と符号h’とを比較し、両者が一致した場合、付加情報w’が正しい(改ざんされていない)ものと認め、両者が一致しない場合、付加情報w’が正しくない(改ざんされている)ものと認める(ステップS29)。

0104

このようにして付加情報が埋め込まれた図形データから付加情報が取り出され、その付加情報の認証が行われる。

0105

以上のように、上記実施の形態によれば、付加情報の埋め込みにおいて、図形データ23における複数の頂点データのうちの少なくとも1つの頂点データについて、その頂点データにおける一座標の浮動小数点実数データの仮数部の一部に付加情報を埋め込み、その頂点データにおける別座標の浮動小数点実数データの仮数部の一部に、少なくともその仮数部の残りの部分と付加情報とから一方向性関数により得られる符号を埋め込む。

0106

また、上記実施の形態によれば、その付加情報の取り出しにおいて、図形データにおける複数の頂点データのうちの少なくとも1つの頂点データについて、その頂点データにおける一座標の浮動小数点実数データの仮数部の一部から付加情報を取り出し、その頂点データにおける別座標の浮動小数点実数データの仮数部の一部から符号を取り出し、少なくとも取り出した符号と仮数部の残りの部分とから一方向性関数により得られる値で、取り出した符号の認証を行う。

0107

これにより、少なくともその仮数部の残りの部分と付加情報とから一方向性関数により得られる符号が埋め込まれるため、付加情報の取り出しの際に、データの改ざんが検出されやすくなる。

0108

なお、上述の実施の形態は、本発明の好適な例であるが、本発明は、これらに限定されるものではなく、本発明の要旨を逸脱しない範囲において、種々の変形、変更が可能である。

0109

例えば、上記実施の形態において、ハッシュ関数に別の引数を追加してもよい。

0110

また、上記実施の形態では、図1に示す情報処理装置では、付加情報の埋め込みおよび付加情報の取り出しの両方を実行可能であるが、付加情報の埋め込みおよび付加情報の取り出しの一方のみを実行可能な装置としてもよい。

0111

また、上記実施の形態において、図形データがポリゴンデータである場合、ある頂点から延びるポリゴンの辺をリンクとするようにしてもよい。

0112

また、上記実施の形態において、ハッシュ関数の代わりに、他の一方向性関数を使用するようにしてもよい。

0113

また、上記実施の形態において、埋め込み時に変更される仮数部におけるビット部分の長さは、5ビットに限定されるものではない。

0114

本発明は、例えば、電子透かしの埋め込みおよび取り出しに適用可能である。

0115

13 RAM(記憶手段の一例)
14記憶装置(記憶手段の一例)
21埋め込みプログラム(コンピュータプログラムの一例)
22 取り出しプログラム(コンピュータプログラムの一例)
23 図形データ(3次元図形データの一例)
31頂点分類部(頂点分類手段の一例)
32 情報埋込部(情報埋込手段の一例)
41 頂点種類特定部(頂点種類特定手段の一例)
42 情報取出部(情報取出手段の一例)

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

ページトップへ

技術視点だけで見ていませんか?

この技術の活用可能性がある分野

分野別動向を把握したい方- 事業化視点で見る -

(分野番号表示ON)※整理標準化データをもとに当社作成

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

関連する公募課題一覧

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ