(57)【要約】  本発明は、データワードのセットを、ヘッダーセクション、チェックサムセクション及びペイロードセクションを有するデータブロックに変換するエンコーダーであって、エンコーダーは、データブロック内にヘッダーパターンを挿入するように構成されたヘッダー挿入器と、データワードのセットのチェックサムを計算するように構成されたチェックサム計算器と、データワードのセットを、このデータワードのセットとチェックサムとの間で排他的論理和演算を適用した結果である難読化データワードのセットに変換するように構成されたデータワード変換器とを含む、エンコーダーに関する。【選択図】図8
2019537340.tif 000002
【特許請求の範囲】
【請求項１】
データワードのセットを、ヘッダーセクション、チェックサムセクション及びペイロードセクションを有するデータブロックに変換するエンコーダー（1）であって、該エンコーダー（1）は、
前記データブロック内にヘッダーパターンを挿入するように構成されたヘッダー挿入器（6）と、
前記データワードのセットのチェックサムを計算するように構成されたチェックサム計算器（3）と、
前記データワードのセットを、該データワードのセットと前記チェックサムとの間に排他的論理和演算を適用した結果である難読化データワードのセットに変換するように構成されたデータワード変換器（4）と、
を含み、
該エンコーダー（1）は、
反復の数nにおいて、前記排他的論理和の前記結果においてヘッダーパターンが検出される限り、構成されるヘッダーパターン消去器（9）であって、nは、1から前記チェックサム制御のビットの数までの間である、ヘッダーパターン消去器（9）と、
前記チェックサムの第nのビットを改変することによって第nのチェックサムを生成するチェックサム改変器（8）と、
前記データワードのセットを、該データワードのセットと前記第nのチェックサムとの間で排他的論理和演算を適用した結果である難読化データワードの第nのセットに変換する前記データワード変換器（4）と、
難読化データワードの前記第nのセット内でヘッダーパターンを検出し、ヘッダーパターンが検出されない場合、前記データブロックの前記チェックサムセクション内に前記第nのチェックサムを挿入するとともに、前記ペイロードセクション内に前記難読化データワードの第nのセットを挿入するようにペイロード挿入器（6）を制御するヘッダーパターン検出器（5）と、
を含むことを特徴とする、エンコーダー。
【請求項２】
第n+1のビットは、前記チェックサムの前記第nのビットに隣接する、請求項1に記載のエンコーダー。
【請求項３】
n＝1の場合、前記チェックサムの最下位ビットは、改変される前記ビットである、請求項2に記載のエンコーダー。
【請求項４】
データブロックをデータワードのセットに変換するデコーダーであって、該デコーダーは、
前記データブロック内でヘッダーを位置特定するヘッダー検出器と、
前記データブロックからチェックサムを抽出するチェックサム抽出器と、
前記データワードのセットを、前記データブロックのコードワードと前記抽出されたチェックサムとの間で排他的論理和演算を適用することによって抽出するように構成されたコードワード変換器と、
前記データワードの抽出されたセットのチェックサムを計算するように構成されたチェックサム計算器と、
前記計算されたチェックサムを前記抽出されたチェックサムと比較して、該比較の結果に基づいて誤り示唆を提供するように構成されたチェックサム検証器と、
を含む、デコーダー。
【請求項５】
前記チェックサム検証器は、前記計算されたチェックサムと比較することによって、前記抽出されたチェックサム内の改変されたビットを位置特定するように構成される、請求項4に記載のデコーダー。
【請求項６】
前記抽出されたチェックサム内の前記改変されたビットは、隣接することが要求される、請求項5に記載のデコーダー。
【請求項７】
前記抽出されたチェックサムの最下位ビットは、該抽出されたチェックサムのいずれかのビットが改変された場合、改変されることが要求される、請求項6に記載のデコーダー。
【請求項８】
請求項1〜3のいずれか1項に記載のエンコーダーを含む、記録デバイス。
【請求項９】
請求項4〜7のいずれか1項に記載のデコーダーを含む、再生デバイス。
【請求項１０】
データワードのセットをデータブロックに変換する符号化方法であって、該方法は、
前記データブロック内にヘッダーパターンを挿入するステップと、
前記データワードのセットのチェックサムを計算するステップと、
前記データワードのセットを、該データワードのセットと前記チェックサムとの間に排他的論理和演算を適用した結果である難読化データワードのセットに変換するステップと、
を含み、
該方法は、
1からチェックサムのビットの数までの各nについて、ヘッダーパターンが前記排他的論理和演算の前記結果において検出される限り、
第nのチェックサムを、前記チェックサムの第nのビットを改変することによって生成するステップと、
前記データワードのセットを、該データワードのセットと前記第nのチェックサムとの間で排他的論理和演算を適用した結果である難読化データワードの第nのセットに変換するステップと、
前記難読化データワードの第nのセット内でヘッダーパターンを検出し、ヘッダーパターンが検出されない場合、前記データブロックの前記チェックサムセクション内に前記第nのチェックサムを挿入するとともに、ペイロードセクション内に前記難読化データワードの第nのセットを挿入するステップと、
を更に含むことを特徴とする、符号化方法。
【請求項１１】
第n＋1のビットは、前記チェックサムの前記第nのビットに隣接する、請求項10に記載の符号化方法。
【請求項１２】
前記チェックサムの最下位ビットは、改変される最初のビットである、請求項11に記載の符号化方法。
【請求項１３】
データブロックをデータワードのセットに変換する復号方法であって
前記データブロック内でヘッダーを位置特定するステップと、
前記データブロックからチェックサムを抽出するステップと、
前記データワードのセットを、前記データブロックのコードワードと前記抽出されたチェックサムとの間で排他的論理和演算を適用することによって抽出するステップと、
前記データワードの抽出されたセットのチェックサムを計算するステップと、
前記計算されたチェックサムを前記抽出されたチェックサムと比較して、該比較の結果に基づいて誤り示唆を提供するステップと、
を含む、復号方法。
【請求項１４】
前記方法は、前記計算されたチェックサムと比較することによって、前記抽出されたチェックサムにおける改変されたビットを位置特定するステップを含む、請求項13に記載の復号方法。
【請求項１５】
前記抽出されたチェックサム内の前記改変されたビットは、隣接することが要求される、請求項14に記載の復号方法。
【請求項１６】
前記抽出されたチェックサムの最下位ビットは、該抽出されたチェックサムのいずれかのビットが改変された場合、改変されることが要求される、請求項15に記載の復号方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データワードの、データヘッダーを有するデータブロックへの符号化の技術分野に関する。
【背景技術】
【０００２】
当該技術分野において、例えばオーディオ信号又はビデオ信号に関連し得るデータワードのセットの符号化及び復号のためのロバストなエンコーダー及びデコーダーへの需要が依然として存在している。
【０００３】
特許文献1は、データの或る部分を平文において送信するものの、依然として送信者によって認証することができるようにデータを暗号化及び認証する方法及び装置を開示している。平文位置のセット及び／又は暗号テキスト位置のセットが用いられることで、いずれのデータブロックが用いられて入力チェックサム値及び出力チェックサム値が生成されるのかが特定される。その後、これらのチェックサム値は、認証タグを生成するのに用いられる。特許文献1は、主に情報セキュリティを対象としているので、チェックサムの意図された使用により、過度に複雑なデコーダー及び復号方法がもたらされる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】欧州特許第1529365号
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明は、特定された問題のうちの少なくとも幾分かを解決することを目的とする。
【課題を解決するための手段】
【０００６】
本発明は、データワードのセットを、データブロックに変換するエンコーダーであって、該エンコーダーは、
データブロック内にヘッダーパターンを挿入するように構成されたヘッダー挿入器と、
データワードのセットのチェックサムを計算するように構成されたチェックサム計算器と、
データワードのセットを、このデータワードのセットとチェックサムとの間で排他的論理和演算を適用した結果である難読化データワードのセットに変換するように構成されたデータワード変換器と、
を含む、エンコーダーに関する。
【０００７】
そのようなエンコーダーは、データブロックのペイロードセクションにデータワードを挿入して、データブロックをチェックサムとヘッダーと用いて完成させることによって基本データブロックを形成する。
【０００８】
ヘッダーパターンを用いることによる、バイナリデータストリームの、データブロックへのセグメンテーションと、バイナリデータストリームにチェックサムを加えることによる、誤り検出能力の追加とにより、バイナリデータストリームがパケット内で送信されることが可能になるとともに、受信機／再生デバイスがバイトのストリーム内で1つ以上のバイナリラージオブジェクト（blob：binary large objects）を検出して再構築することが可能になる。これは、データブロックの開始を示すのにヘッダー開始マーカー（SOH：start of header marker）を用いる。
【０００９】
しかしながら、そのようなエンコーダーは、データワードのセット内のランダムデータにおいて、受信機／再生デバイスによる誤った同期をもたらすヘッダー開始等のヘッダーパターンが時として発生する場合があるという欠点を有する。
【００１０】
本発明の目的は、データブロックのペイロードセクション内のヘッダーパターンの発生を低減することである。
【００１１】
この目的を達成するために、第1の態様において、本発明は、請求項1によるエンコーダーを提供する。そのようなエンコーダーは、このエンコーダーが、反復の数nにおいて、排他的論理和の結果においてヘッダーパターンが検出される限り、構成されるヘッダーパターン消去器であって、nは、1からチェックサム制御のビットの数までの間である、ヘッダーパターン消去器と、
チェックサムの第nのビットを改変することによって第nのチェックサムを生成するチェックサム改変器と、
データワードのセットを、このデータワードのセットと第nのチェックサムとの間で排他的論理和演算を適用した結果である難読化データワードの第nのセットに変換するデータワード変換器と、
難読化データワードの第nのセット内でヘッダーパターンを検出し、ヘッダーパターンが検出されない場合、データブロックのチェックサムセクション内に第nのチェックサムを挿入するとともに、ペイロードセクション内に難読化データワードの第nのセットを挿入するようにペイロード挿入器を制御するヘッダーパターン検出器と、
を含むことを特徴とする。
【００１２】
セグメンテーション及び誤り検出をサポートする大半の既存のエンコーダーについて、2つのメカニズムが独立して機能する。本発明において、チェックサムは、データワードをチェック及び訂正するのに用いられるだけでなく、データワードを難読化するのにも用いられ、したがって、データワードのセットとチェックサムとの間で排他的論理和演算を実行することによってペイロードセクション内のデータワードのセット内の誤ったヘッダーパターンも難読化され、ヘッダーパターン検出器は、排他的論理和演算の結果においてヘッダーパターンを検出するのに失敗するという条件において、データブロックのペイロードセクション内の排他的論理和演算の結果得られた難読化データワードのセットを用いてデータワードのセットが挿入される。ヘッダーパターンが依然として存在する場合、少なくとも、チェックサムの更なるビットを改変すること、及びこれを、データワードの元のセットからデータワードの更なる難読化セットを生成するのに用いることの更なるラウンドが実行される。
【００１３】
結果として、いかなるヘッダーパターンの発生も伴わないデータワードの難読化セットが、データワードのセットとの排他的論理和演算において用いられた、改変されたチェックサムとともに、記憶／送信のために利用可能である。これらの2つの要素により、デコーダーが、データワードの難読化セットと対応する改変されたチェックサムとの間の単純な排他的論理和演算を用いて、データワードの元のセットを再生成することが可能になる。
【００１４】
チェックサムにおいて改変されることになるビットが存在する数と同じ数のラウンドが可能である。データワードのヘッダーパターン無し難読化セットを得るのに必要である数のラウンドのみが実行され、すなわち、nの第1の値、すなわちN０を用いて演算が停止され、この場合、排他的論理和演算の結果は、ヘッダーパターンを含まない。その場合、このデータワードのヘッダーパターン無し難読化セットは、データブロックのペイロードセクション内に挿入され、関連付けられたチェックサムは、データブロックのチェックサムセクション内に挿入される。このようにして、データのペイロードセクション内に誤りを含むヘッダーパターンが発生する可能性が防止される。
【００１５】
第2の態様では、本発明は、データブロックをデータワードのセットに変換するデコーダーであって、デコーダーは、
データブロック内でヘッダーを位置特定するヘッダー検出器と、
データブロックからチェックサムを抽出するチェックサム抽出器と、
データワードのセットを、データブロックのコードワードと抽出されたチェックサムとの間で排他的論理和演算を適用することによって抽出するように構成されたコードワード変換器と、
データワードの抽出されたセットのチェックサムを計算するように構成されたチェックサム計算器と、
計算されたチェックサムを抽出されたチェックサムと比較して、比較の結果に基づいて誤り示唆を提供するように構成されたチェックサム検証器と、
を含む、デコーダーを提供する。
【００１６】
そのようなデコーダーは、有利には、誤り検出をセグメンテーションと組み合わせ、これには、これら双方の目的のためにチェックサムの組み合わされた使用が伴う。その上、データブロックのペイロードセクション内のヘッダーパターンの発生は、エンコーダーの側において低減されるので、デコーダーは、実装が単純であり、データブロックの開始を検出するためのヘッダー開始マーカー（SOH）を容易に探索するという利点を有する。
【００１７】
更なる一態様では、本発明は、有利には開示されるものとしてエンコーダーを含む、記録デバイスを提供する。
【００１８】
更なる一態様では、本発明は、有利には開示されるものとしてデコーダーを含む、再生デバイスを提供する。
【００１９】
更なる一態様では、本発明は、データワードのセットをデータブロックに変換する符号化方法であって、方法は、
データブロック内にヘッダーパターンを挿入するステップと、
データワードのセットのチェックサムを計算するステップと、
データワードのセットを、データワードのセットとチェックサムとの間に排他的論理和演算を適用した結果である難読化データワードのセットに変換するステップと、
を含み、
方法は、
1からチェックサムのビットの数までの各nについて、ヘッダーパターンが排他的論理和演算の結果において検出される限り、
第nのチェックサムを、チェックサムの第nのビットを改変することによって生成するステップと、
データワードのセットを、データワードのセットと第nのチェックサムとの間で排他的論理和演算を適用した結果である難読化データワードの第nのセットに変換するステップと、
難読化データワードの第nのセット内でヘッダーパターンを検出し、ヘッダーパターンが検出されない場合、データブロックのチェックサムセクション内に第nのチェックサムを挿入するとともに、ペイロードセクション内に難読化データワードの第nのセットを挿入するステップと、
を更に含む、符号化方法を提供する。
【００２０】
更なる一態様では、本発明は、データブロックをデータワードのセットに変換する復号方法であって、
データブロック内でヘッダーを位置特定するステップと、
データブロックからチェックサムを抽出するステップと、
データワードのセットを、データブロックのコードワードと抽出されたチェックサムとの間で排他的論理和演算を適用することによって抽出するステップと、
データワードの抽出されたセットのチェックサムを計算するステップと、
計算されたチェックサムを抽出されたチェックサムと比較して、比較の結果に基づいて誤り示唆を提供するステップと、
を含む、復号方法を提供する。
【００２１】
更なる好ましい実施形態及びそれらの利点は、従属請求項及び詳細な説明において提供される。
【図面の簡単な説明】
【００２２】
【図１】エンコーダーの一実施形態を示す図である。
【図２】デコーダーの一実施形態を示す図である。
【図３】記録デバイスの一実施形態を示す図である。
【図４】再生デバイスの一実施形態を示す図である。
【図５】一例のデータブロックを示す図である。
【図６】符号化プロセスの一実施形態を示す図である。
【図７】復号プロセスの一実施形態を示す図である。
【図８】符号化プロシージャ例を示す図である。
【発明を実施するための形態】
【００２３】
第1の態様において、本発明は、請求項1によるエンコーダーを提供する。
【００２４】
エンコーダーの一実施形態では、第n+1のビットは、チェックサムの第nのビットに隣接する。全ての反復において隣接ビットを改変することによって、連続した各反復において、改変されたチェックサムにおける隣接ビットが改変されているので、何回の反復が実行されているのかを追跡記録することが可能である。連続していないビットが変化している場合、これは、チェックサム又はペイロードの送信における誤りの示唆である。送信誤りが発生しなかった場合、改変されていないビットが散在することなく、0から1に、又は1から0に反転された（すなわち、改変された）隣接ビット値を有する改変されたチェックサムのみがあり得るので、これが成り立つ。
【００２５】
エンコーダーの一実施形態では、n＝1の場合、チェックサムの最下位ビットは、改変されるビットである。これは、改変されたチェックサムの他のビットが0から1に、又は1から0に変化しているが最下位ビットは変化していない場合、チェックサム又はペイロードの送信中に誤りが発生したことを暗示する。チェックサムの最下位ビットは、データワードのセットの元のチェックサムと比較して自身の値を反転させることができる最初のビットであるので、他のビットは、最下位ビットも反転される場合にのみ反転することが可能である。これにより、改変されたチェックサムに対するチェックが可能になる。エンコーダーの代替的な一実施形態では、チェックサムの別のビットが改変されることになる。例えば、n＝1の場合、改変されることになる最初のビットは、最上位ビットとすることができ、隣接ビットは、nが増加するにつれて改変することができる。
【００２６】
第2の態様では、本発明は、開示されるものとしてデコーダーを提供する。デコーダーは、以下のように機能することができる。ヘッダー検出器は、データストリーム内でヘッダーを位置特定し、したがって、デコーダーがデータブロックの開始を位置特定することが可能になる。これにより、チェックサムと、データブロックのペイロードセクションからのデータワードの難読化セットとの抽出が可能になる。一方、チェックサムは、改変されたチェックサムである場合もあるし、元のチェックサムである場合もある。抽出は、データブロックのチェックサムセクションから抽出されたチェックサムとデータブロックのペイロードセクションから抽出されたデータワードの難読化セットとの排他的論理和演算を適用することによって実行される。この結果、データワードの元のセットがもたらされる。受信されたデータに対して誤りチェックを実行するために、チェックサムは、チェックサム計算器によって、排他的論理和演算の結果に対して計算される。このチェックサムは、その後、抽出されたチェックサムと比較される。この計算されたチェックサムが、抽出されたチェックサムと一致した場合、抽出されたデータワードのセットは、正しく受信され、送信中、チェックサムに誤りは発生しなかったので、更なるアクションは必要とされない。抽出されたチェックサムと計算されたチェックサムとが相違した場合、符号化中に用いられた方式に従って改変されたことが予想された、改変されたビットに相違が限定されていることがチェックされる。これが成り立つ場合、データワードのセットは、正しく受信されたものとして受容される。
【００２７】
デコーダーの一実施形態では、チェックサム検証器は、抽出されたチェックサムを計算されたチェックサムと比較することによって、この抽出されたチェックサム内の改変されたビットを位置特定するように構成される。この計算されたチェックサムが、抽出されたチェックサムと一致した場合、抽出されたデータワードのセットは、正しく受信され、送信中、チェックサムに誤りは発生しなかったので、更なるアクションは必要とされない。抽出されたチェックサムと計算されたチェックサムとが相違した場合、符号化中に用いられた方式に従って改変されたことが予想された、改変されたビットに相違が限定されていることがチェックされる。これが成り立つ場合、データワードのセットは、正しく受信されたものとして受容される。
【００２８】
デコーダーの更なる一実施形態では、抽出されたチェックサム内の改変されたビットは、隣接することが要求される。エンコーダーが連続反復中に隣接ビットのみを改変するスキーマを用いる一実施形態では、受信された、改変されたチェックサムは、隣接ビットにおいてのみ相違することができ、そうでなければ、送信中に誤りが発生している。
【００２９】
デコーダーの更なる一実施形態では、抽出されたチェックサムの最下位ビットは、抽出されたチェックサムのいずれかのビットが改変された場合、改変されることが要求される。エンコーダーが最初に、必要に応じて、最下位ビットを改変した場合、抽出されたチェックサムは、計算されたチェックサムと抽出されたチェックサムとの間でいずれかのビットが相違している場合、データワードのセットに対して計算されたチェックサムと比較して改変された最下位ビットを有しているはずである。代替的な一実施形態では、チェックサムの別のビットが最初に改変される。例えば、n＝1の場合、反転される最初のビットは、最上位ビットとすることができ、隣接ビットは、nが増加するにつれて反転させることができる。
【００３０】
更なる一態様では、本発明は、開示されるものとして符号化方法を提供する。データワードのセットをデータブロックに変換する符号化方法は、ヘッダーセクション、チェックサムセクション及びペイロードセクションを有するデータブロックを生成する。これを達成するために、ヘッダーパターンがデータブロックのヘッダーセクション内に挿入される。加えて、チェックサム及びペイロードが必要とされるとともに、このチェックサムは、ペイロードを難読化形式において形成することになるデータワードのセットに対して計算される。この計算されたチェックサムは、その後、データワードのセットを難読化するのに用いられる。これは、データワードのセットを、このデータワードのセットとチェックサムとの間で排他的論理和演算を適用した結果である難読化データワードのセットに変換することによって行われる。これにより、ヘッダーパターンが現れていないデータワードの難読化セットがもたらされた場合、データワードのセットのチェックサムをともに有するデータワードの難読化セットが、データブロック内のそれらのそれぞれのセクション内に挿入される。一方、ヘッダーパターンが発見された場合、反復プロセスが開始され、この反復プロセスにおいて、1からチェックサムのビットの数までの各nについて、ヘッダーパターンが排他的論理和演算の結果として検出される限り、第nのチェックサムが、チェックサムの第nのビットを改変することによって生成され、データワードのセットは、データワードの元のセットと第nのチェックサムとの間で排他的論理和演算を適用した結果である難読化データワードの第nのセットに変換される。各連続チェックサムは、より多くの改変されたビットを有し、すなわち、3度目の反復において、チェックサムの第1、第2及び第3のビットのいずれもが改変される。
【００３１】
その後、難読化データワードの第nのセット内のヘッダーパターンの検出が実行され、ヘッダーパターンが検出されない場合、第nのチェックサムがチェックサムセクション内に挿入され、難読化データワードの第nのセットがデータブロックのペイロードセクション内に挿入される。
【００３２】
ヘッダーパターンが依然として発見される場合、ヘッダーパターンをそれ以上検出することができなくなるまで、その反復において別のラウンドが実行されることになる。このようにして、データのペイロードセクション内で偽のヘッダーパターンが発生し得ることが防止される。
【００３３】
符号化方法の一実施形態では、第n+1のビットは、チェックサムの第nのビットに隣接する。全ての反復において隣接ビットを改変することによって、連続した各反復において、改変されたチェックサムにおける隣接ビットが改変されているので、何回の反復が実行されているのかを追跡記録することが可能である。連続していないビットが変化している場合、これは、チェックサム又はペイロードの送信における誤りの示唆である。送信誤りが発生しなかった場合、改変されていないビットが散在することなく、0から1に、又は1から0に反転された（すなわち、改変された）隣接ビット値を有する改変されたチェックサムのみがあり得るので、これが成り立つ。
【００３４】
符号化方法の更なる一実施形態では、n＝1の場合、チェックサムの最下位ビットは、改変されるビットである。これは、改変されたチェックサムの他のビットが0から1に、又は1から0に変化しているが最下位ビットは変化していない場合、チェックサム又はペイロードの送信中に誤りが発生したことを暗示する。チェックサムの最下位ビットは、データワードのセットの元のチェックサムと比較して自身の値を反転させることができる最初のビットであるので、他のビットは、最下位ビットも反転される場合にのみ反転することが可能である。これにより、改変されたチェックサムに対するチェックが可能になる。符号化方法の代替的な一実施形態では、最初に改変されるのは別のビットとすることができる。例えば、n＝1のときに最上位ビットを最初に改変することができ、nが増加するにつれて隣接ビットを改変することができる。
【００３５】
更なる一態様では、本発明は、開示されるものとして復号方法を提供する。復号方法は、以下のように機能することができる。ヘッダーは、データストリーム内で位置特定され、これにより、データブロックの開始の位置特定が可能になる。これにより、チェックサムと、データブロックのペイロードセクションからのデータワードの難読化セットとの抽出が可能になる。一方、チェックサムは、改変されたチェックサムである場合もあるし、元のチェックサムである場合もある。抽出は、データブロックのチェックサムセクションから抽出されたチェックサムとデータブロックのペイロードセクションから抽出されたデータワードの難読化セットとの排他的論理和演算を適用することによって実行される。この結果、データワードの元のセットがもたらされる。
【００３６】
受信されたデータに対して誤りチェックを実行するために、チェックサムは、チェックサム計算器によって、排他的論理和演算の結果に対して計算される。このチェックサムは、その後、抽出されたチェックサムと比較される。この計算されたチェックサムが、抽出されたチェックサムと一致した場合、抽出されたデータワードのセットは、正しく受信され、送信中、チェックサムに誤りは発生しなかったので、更なるアクションは必要とされない。抽出されたチェックサムと計算されたチェックサムとが相違した場合、符号化中に用いられた方式に従って改変されたことが予想された、改変されたビットに相違が限定されていることがチェックされる。これが成り立つ場合、データワードのセットは、正しく受信されたものとして受容される。
【００３７】
復号方法の一実施形態では、本方法は、計算されたチェックサムと比較することによって、抽出されたチェックサム内の改変されたビットを位置特定するステップを含む。計算されたチェックサムを抽出されたチェックサムと比較することにより、デコーダーが、抽出されたチェックサムの改変されたビットを識別し、それらのビットのロケーションを、排他的論理和演算を用いた難読化解除の後にデータワードの抽出されたセットに対して計算されたものとしての計算されたチェックサムと比較することが可能になる。ロケーションのパターンがエンコーダーによって用いられるパターンと一致しない場合、誤りが示唆される。パターンが一致した場合、受信された／索出されたデータブロック内に誤りは存在しない可能性が最も高い。
【００３８】
復号方法の一実施形態では、抽出されたチェックサム内の改変されたビットは、隣接することが要求される。符号化中に用いられる典型的なパターンは、改変されている隣接ビットを結果的にもたらすので、受信側上でこのパターンをチェックすることにより、送信又は格納中の誤りの検出が可能になる。
【００３９】
復号方法の更なる一実施形態では、抽出されたチェックサムの最下位ビットは、抽出されたチェックサムのいずれかのビットが改変された場合、改変されることが要求される。また、ビットを改変するときにチェックサムの最下位ビットから開始することは、受信側上で、抽出されたチェックサムと計算されたチェックサムとの間でいずれかのビットが相違していた場合、最下位ビットは、相違していなければならず、すなわち、改変されていなければならず、そうではない場合、当該他の相違は、符号化中の改変によって引き起こされたのではなく送信／索出中の誤りによって引き起こされたことを意味する。復号方法の代替的な一実施形態では、別のビットを最初に改変することができる。例えば、n＝1のときに最初に改変されるのは最上位ビットとすることができ、一方、隣接ビットは、nが増加するにつれて改変することができる。
【００４０】
本発明では、チェックサムは、セグメンテーションの目的と誤り検出の目的との双方の機能を果たす。誤り検出手段として、原理的に、任意のチェックサムアルゴリズムを適用することができる。本発明の好ましい一実施形態では、チェックサムは、それぞれ16ビット、32ビット、又は64ビットのチェックサム長を有するFletcher−16、Fletcher−32又はFletcher−64等のFletcherチェックサムアルゴリズムを用いて計算される。デコーダーを可能な限り単純に保つという望みに鑑みると、このタイプのチェックサムアルゴリズムが有利な選択肢であることが判明している。代替的な一実施形態では、例えば32ビット又は64ビットのサイクリック冗長チェックアルゴリズム（CRC）を適用することができる。
【００４１】
エンコーダーの好ましい一実施形態では、エンコーダーは、反復の数nにおいて、チェックされるデータアレイにおいてヘッダーパターンが検出される限り、構成されるヘッダーパターン消去器であって、nは、1からチェックサム制御のビットの数までの間である、ヘッダーパターン消去器と、
チェックサムの第nのビットを改変することによって第nのチェックサムを生成するチェックサム改変器8と、
データワードのセットを、このデータワードのセットと第nのチェックサムとの間で排他的論理和演算を適用した結果である難読化データワードの第nのセットに変換するデータワード変換器4と、
チェックされるデータアレイ内でヘッダーパターンを検出し、ヘッダーパターンが検出されない場合、データブロックのチェックサムセクション内に第nのチェックサムを挿入するとともに、ペイロードセクション内に難読化データワードの第nのセットを挿入するようにペイロード挿入器6を制御するヘッダーパターン検出器5と、
を含む。
【００４２】
したがって、チェックされるデータアレイは、少なくとも第nのチェックサム、すなわち、チェックサムセクション、及びペイロードセクションを含む。したがって、ペイロードセクションは、少なくとも難読化データワードのセット、及び任意選択でデータワードのセットの長さを含む。好ましい一実施形態では、データアレイは、ヘッダーセクション、チェックサムセクション及びペイロードセクションの連結を含む。本発明の利点は、ヘッダーシーケンスを、符号化データブロック内の最初以外の位置において発見する確率を更に軽減することができることである。別の実施形態では、チェックされるデータアレイは、ヘッダーセクション、チェックサムセクション、ペイロードセクション及び別のヘッダーセクションの連結を含む。これは、更に厳格なチェックを可能にする点において有利である。実際には、ヘッダーシーケンスを、「添付された」符号化データブロックのバースト内のそれぞれの符号化データブロックの開始以外の位置において発見する確率をこのようにして軽減することができる。これに関連して、符号化方法の種々の実施形態において、チェックされるデータアレイが示唆されるものとして選ばれる。同様に、記録デバイスの種々の実施形態において、チェックされるデータアレイが示唆されるものとして選ばれる。
【００４３】
ここで、本発明が、限定的ではない例を参照して、より詳細に記載される。
【００４４】
例
例1：エンコーダー
図1は、エンコーダーの一実施形態を示している。エンコーダー1は、入力2を介してデータワードのセットを受信するとともに、ヘッダーセクション、チェックサムセクション及びペイロードセクションを有するデータブロックが送出される出力7を含む。
【００４５】
エンコーダー1は、データブロックが出力7に送信される前にデータブロック内にヘッダーパターンを挿入するように構成されたヘッダー挿入器6を含む。エンコーダー1は、ペイロードセクションからヘッダーパターンを消去するヘッダーパターン消去器9を更に含む。
【００４６】
ヘッダーパターン消去器9は、チェックサム計算器3、データワード変換器4、ヘッダーパターン検出器5及びチェックサム改変器8を含む。
【００４７】
チェックサム計算器3は、データワードのセットのチェックサムを計算し、このチェックサムをデータワード変換器4に提供する。また、データワード変換器は、入力2からデータワードのセットを受信する。
【００４８】
データワード変換器4は、その後、入力2から受信されたデータワードのセットとチェックサム計算器3から受信されたチェックサムとの間で排他的論理和演算を適用することによって、データワードのセットを難読化データワードのセットに変換する。
【００４９】
データワード変換器4は、排他的論理和演算の結果をヘッダーパターン検出器5に提供し、ヘッダーパターン検出器5は、排他的論理和演算の結果におけるヘッダーパターンの発生を探索する。1つ以上のヘッダーパターンが発見された場合、ヘッダーパターン検出器5は、これをチェックサム改変器8にシグナリングし、ひいては、チェックサム改変器8は、チェックサム計算器3においてチェックサムを改変する。一度の反復内で、データワードのセットがデータワード変換器4によって再び変換されるが、ここでは、チェックサム計算器3から受信された改変されたチェックサムが用いられる。この変換の結果、難読化データワードのセットの別の反復がデータワード変換器4によってヘッダーパターン検出器5に提供され、ヘッダーパターン検出器5は、難読化データワードのセットのこの反復内のヘッダーパターンの有無について再びチェックする。
【００５０】
一度の反復の後にヘッダーパターンがヘッダーパターン検出器5によって発見されない場合、反復は停止し、現在の改変されたチェックサム及び難読化データワードの現在のセットの双方は、データブロック内のそれらのそれぞれのセクションへの挿入のために、それぞれチェックサム計算器3及びデータワード変換器4によって、ヘッダー挿入器6に提供される。
【００５１】
データブロックのペイロードセクション内にパラメーターとしてデータワードのセットの長さを含むとともに、この長さを排他的論理和演算によって難読化内に含むことが有益であることが留意される。これは、符号化長さ内のヘッダーパターンを回避するために同様に重要である。好ましい一実施形態では、データワードのセットの長さ、又は同等には、ランレングスは、バイトのシーケンスを含むとともに、例8において論じられるタイプ等のタイプのランレングス符号化を用いて符号化される。
【００５２】
チェックサムは、データワードのセットよりも短い（shorterthan）ので、データワードのセットに等しい長さを有する、データワード変換器4のための入力を得るのに、チェックサムのいくつかのコピーの連結が排他的論理和演算において用いられることが更に留意される。
【００５３】
例2：デコーダー
図2は、デコーダーの一実施形態を示している。データブロックをデータワードのセットに変換するデコーダー10は、データブロック内のヘッダーを位置特定するヘッダー検出器12と、データブロックからチェックサムを抽出するチェックサム抽出器13と、データブロックから難読化データワードのセットを抽出するペイロード抽出器14とを含む。
【００５４】
難読化データワードの抽出されたセットと抽出されたチェックサムとの双方が、データワード変換器15に提供され、データワード変換器15は、抽出されたチェックサムと難読化データワードの抽出されたセットとに排他的論理和演算を実行する。この結果は、エンコーダーに当初提示されたデータワードのセットである。データワードのセットは、その後、コードワード変換器15によって、デコーダー10の出力16に提供される。これに並行して、データワードのセットも同様に、データワード変換器15によってチェックサム計算器17に提供される。したがって、チェックサム計算器は、難読化データワードのセットではなくデータワードのセットのチェックサムを計算し、この計算されたチェックサムを、チェックサム検証器18に提供する。チェックサム検証器18は、この計算されたチェックサムを、チェックサム抽出器13から受信された抽出されたチェックサムと比較し、相違する全てのビット位置を位置特定する。その後、改変のパターン（すなわち、改変されたビットの位置）が、エンコーダーによるチェックサムビットの後続の改変のパターンを知得することを予想されたパターンと合致することを検証するためにチェックが実行される。
【００５５】
パターンが一致した場合（すなわち、改変されたビットが存在しない場合）、データワードのセットは、誤りを伴わずに受信されており、この示唆は、デコーダー10の誤り示唆出力19に提供される。
【００５６】
符号化から予想されるパターンに違反する相違が発見された場合、抽出されたチェックサム又は難読化データワードの抽出されたセットのいずれかにおける誤りの可能性が高く、この結果の示唆が、チェックサム検証器18によって、デコーダー10の誤り示唆出力19に提供される。
【００５７】
データブロック内に含まれる場合、データブロックのペイロードセクション内のパラメーターとしてデータワードのセットの長さを抽出することが有益であることが留意される。好ましい一実施形態では、データワードのセットの長さ、又は同等には、ランレングスは、バイトのシーケンスを含むとともに、例8において論じられるタイプ等のタイプのランレングス符号化を用いて符号化される。
【００５８】
抽出されたチェックサムは、難読化データワードのセットよりも短い（shorterthan）ので、難読化データワードのセットに等しい長さを有する、データワード変換器15のための入力を得るのに、抽出されたチェックサムのいくつかのコピーの連結が排他的論理和演算において用いられることが更に留意される。
【００５９】
例3：記録デバイス
図3は、記録デバイスの一実施形態を示している。記録デバイス30は、例えばオーディオ信号又はビデオ信号を受信する入力33を含む。
【００６０】
信号は、この入力33によって、信号が例えばオーディオ圧縮標準規格又はビデオ圧縮標準規格に従って符号化される信号エンコーダー31に提供される。この符号化信号は、次に、エンコーダー1に提供され、エンコーダー1は、図1において開示されたように動作するとともに、図1のエンコーダーとともに記載されたようなデータブロックを組み合わせる。結果として得られたデータブロックは、送信機32に提供され、送信機32は、ひいては、結果として得られた送信信号を、記録デバイス30の出力34を介して送信チャネル（図示せず）又は記憶デバイス（図示せず）のいずれかに送信する。
【００６１】
例4：再生デバイス
図4は、再生デバイスの一実施形態を示している。再生デバイス40は、デコーダー、例えば図2において記載したようなデコーダー10の実施形態を含む。
【００６２】
再生デバイス40は、入力43からのデータブロックを含む信号を受信する受信セクション41を含む。受信セクション41は、デコーダー10に適した信号への変換の後、この信号をデコーダー10に提供する。デコーダー10は、次に、図2において記載したように動作するとともに、再生デバイスがその後増幅器又はディスプレイ等の他のデバイスに向けて再生デバイス自身の出力44に提供する、例えばオーディオ信号又はビデオ信号を生成するのにデータブロックのペイロードセクションが用いられるオーディオデコーダー又はビデオデコーダー等の信号プロセッサ42にデータワードのセットを提供する。
【００６３】
例5：データブロック
図5は、データブロック例を示している。データブロック50は、ヘッダーセクション51、チェックサムセクション52及びペイロードセクション53を含む。
【００６４】
ペイロードセクション53は、難読化データワードのセットと、適用可能な場合には、難読化データワードのセットのサイズを示すサイズ示唆とを保持する。ペイロードセクションは、難読化形式においてデータを保持する。
【００６５】
例6：符号化プロセス
図6は、符号化プロセスの一実施形態を示している。データワードのセットをデータブロックに変換する符号化方法であって、
データブロック内にヘッダーパターンを挿入するステップ60と、
データワードのセットのチェックサムを計算するステップ61と、
データワードのセットを、データワードのセットとチェックサムとの間に排他的論理和演算を適用した結果である難読化データワードのセットに変換するステップ62と、
を含み、
1からチェックサムのビットの最大数までの各nについて、ヘッダーパターンが排他的論理和演算の結果において検出される限りにおいてのみ、
第nのチェックサムを、チェックサムの第nのビットを改変することによって生成するステップ64と、
データワードのセットを、データワードのセットと第nのチェックサムとの間で排他的論理和演算を適用した結果である難読化データワードの第nのセットに変換するステップ62と、
難読化データワードの第nのセット内でヘッダーパターンを検出するステップ63と、ヘッダーパターンが検出されない場合、データブロックのチェックサムセクション内に第nのチェックサムを挿入するとともに、ペイロードセクション内に難読化データワードの第nのセットを挿入し、ここで、第n+1のビットは、チェックサムの第nのビットに隣接するステップ64(65)と、
を含む。
【００６６】
ヘッダーパターン検出63がデータブロックのペイロードセクションに宛てられるデータ、すなわち、難読化データワードのセットと、適用可能な場合には、難読化データワードのセットのサイズ示唆とにおいてヘッダーパターンを発見する限り、チェックサムは、チェックサムの追加ビットを改変することによって更に改変され、チェックサムの全ての以前に改変されたビットを改変されたままに保つ。これにより、別の反復の後にヘッダーパターンが依然として発見され得る可能性が低減する。
【００６７】
ペイロードセクションに宛てられたデータにおいてヘッダーパターンがそれ以上存在しなくなると、反復は停止し、難読化データワード及び対応する改変されたチェックサムの最新の／現在のセットがデータブロックに挿入され、したがって、データブロックが完成し、ペイロードセクション内の現在のヘッダーパターンを誤って提示することなくデータブロックを生成するという目的が達成される。
【００６８】
反復プロセスにおいて、チェックサムの最下位ビットが改変されることになる最初のビットであり、その後、次に高いビット重み位置にあるビットが改変される。
【００６９】
例7：復号プロセス
図7は、復号プロセスの一実施形態を示している。データブロックをデータワードのセットに変換する復号方法は、
データブロック内の他のデータの抽出を可能にするためにデータブロックの開始が必要とされるので、このためにデータブロック内のヘッダーを位置特定するステップ70と、
データブロックからチェックサムを抽出するステップ71と、
データブロックのコードワードと抽出されたチェックサムとの間で排他的論理和演算を適用することによってデータワードのセットを抽出するステップ72と、
データワードの抽出されたセットのチェックサムを計算するステップ73と、
計算されたチェックサムを抽出されたチェックサムと比較するステップ74と、比較の結果に基づいて誤り示唆を提供するステップ75と、データワードの抽出されたセットを提供するステップ76と、
を含む。
【００７０】
難読化データワードの抽出されたセットと抽出されたチェックサムとの双方は、抽出ステップ72においてデータワード抽出のために提供され、抽出ステップ72は、抽出されたチェックサムと難読化データワードの抽出されたセットとに排他的論理和演算を実行する。この結果は、エンコーダーに当初提示されたデータワードのセットである。データワードのセットは、その後、コードワード抽出72の後、データワードの抽出されたセットに対して計算されたチェックサムを計算した（73）後に、デコーダー10の出力16に提供される（76）。したがって、チェックサム計算73は、難読化データワードのセットではなくデータワードのセットのチェックサムを計算し、この計算されたチェックサムを、比較74のために提供する。比較ステップ74は、この計算されたチェックサムを、チェックサム抽出ステップ71から受信された抽出されたチェックサムと比較し、相違する全てのビット位置を位置特定する。その後、改変のパターン（すなわち、改変されたビットの位置）が、エンコーダーによるチェックサムビットの後続の改変のパターンを知得することを予想されたパターンと合致することを検証するためにチェックが実行される。
【００７１】
パターンが一致した場合（すなわち、改変されたビットが存在しない場合）、データワードのセットは、誤りを伴わずに受信されており、この示唆は提供される（75）。
【００７２】
符号化から予想されるパターンに違反する相違が発見された場合、抽出されたチェックサム又は難読化データワードの抽出されたセットのいずれかにおける誤りの可能性が高く、この結果の示唆が提供される（75）。
【００７３】
計算されたチェックサムと抽出されたチェックサムとを実効的に比較するステップは、計算されたチェックサムと比較することによって、抽出されたチェックサム内の改変されたビットを位置特定する。抽出されたチェックサムにおける改変されたビットは、有利には、隣接することが要求され得る。
【００７４】
抽出されたチェックサムの最下位ビットは、抽出されたチェックサムのいずれかのビットが改変された場合には改変されることが要求される。
【００７５】
例8：擬似コードにおける符号化プロシージャ
この例は、本発明による、エンコーダー、符号化方法及び／又は記録デバイスの1つの実施形態を検討する。
【００７６】
この例では、ヘッダーセクションは、SOH（ヘッダー開始マーカー）と称され、データワードのセットは、blob（バイナリラージオブジェクト）と称され、nが増加していく、反復を通して用いられる第nのチェックサムは、saltと称される。さらに、データブロックは、データワードのセットのサイズを示すデータワードのセットの長さを含むことが仮定され、この長さは、ランレングスと称される。それゆえ、この例におけるデータブロックは、例えば図5に示すように、SOHと、それに後続するsaltと、更にそれに後続するランレングスを含むペイロードセクションと、それに後続するblobとからなる。さらに、
【数１】
2019537340.tif 000003
は、ビット単位のXOR演算を示す。
【００７７】
この例では、ランレングスは、バイトのシーケンスを含むとともに、ランレングス符号化を用いて符号化される。それにより、各バイトの最上位ビットは、追加バイトが到来するか否かを示す。最後のバイトは、0に等しい最上位ビットを有し、一方、他のバイトは、1に設定されたそれらの最上位ビットを有する。そのようなタイプのランレングス符号化を用いて、各バイトの他の7ビットは、ビッグエンディアン（big endian）順を用いてサイズそのものを符号化するのに用いられる。
【００７８】
この例では、チェックサムは、32ビットのチェックサム長さを有するFletcher−32チェックサムアルゴリズムを用いて計算される。デコーダーを可能な限り単純に保つという望みに鑑みると、このタイプのチェックサムアルゴリズムが有利な選択肢である。代替的に、32ビットのサイクリック冗長チェックアルゴリズム（CRC）を適用することができる。
【００７９】
図8は、列ヘッダー80及び行81〜84を含む概略表を用いた、符号化プロシージャ例を示している。列ヘッダーは、符号化されているデータブロックのそれぞれの部分を示しており、SOH、salt、サイズ及びblobからなる。図8を参照して、blobを符号化するために、以下のステップを辿ることができる。
（01）ランレングス符号化を用いてランレングス85（すなわち、blobサイズ）を符号化し、このランレングスをblob 86の前に配置する。これは、第1行81内に示されている。
（02）ランレングス85及びblob 86の連結のチェックサム87を計算する。これは、第2行82内に示されている。
（03）反復カウンターをn＝0に設定する。
（04）反復ごとに、演算
【数２】
2019537340.tif 000004
を介してsalt 90を生成し、このsaltをランレングス 85及びblob 86の連結の前に配置する。反復ごとに、これは、チェックサムの別のビットを「反転させる」ことに還元される。これは、第3行83内に示されている。
（05）ランレングス 85及びblob86の連結を、salt 90とxor演算することによって難読化して、難読化ランレングス及びblob 91を得る。これは、第4行84内に示されている。
（06）SOHシーケンスの存在をチェックする。このチェックのための入力は、少なくともsalt、ランレングス及びblobであるべきである。好ましい一実施形態では、このチェックは、それぞれ、SOH、salt、サイズ及びblobの連結について実行される。このようにして、ヘッダーシーケンスを、符号化データブロック内の最初以外の位置において発見する確率を更に軽減することができる。別の実施形態では、このチェックは、SOH、salt、サイズ、blob及び別のSOHの連結についてチェックを実行することによって、更により「厳格に」行うことができる。このようにして、ヘッダーシーケンスを、「添付された」符号化データブロックのバースト内のそれぞれの符号化データブロックの開始以外の位置において発見する確率も軽減することができる。
（07）SOHが意図されたデータブロックの実際の開始以外の位置において発見され、かつn≦32である場合、nを1だけ増加してステップ（04）に戻る。
（08）SOH 89、salt 90、及び難読化ランレングス及びblob 91のそれぞれの連結として符号化データブロックを生成する。
【００８０】
例9：擬似コードにおける復号プロシージャ
この例は、本発明による、デコーダー、復号方法及び／又は再生デバイスの1つの実施形態を検討する。この例は、例8において論じた符号化プロシージャの相補部分であることが意図され、対応する表現が用いられる。データワードの符号化セット、又は同等には符号化blobを検出して復号するために、以下の2つのプロセスが実行されるべきである。
SOHの検出。
SOHが検出されたときのデータの復号。
【００８１】
好ましい一実施形態では、SOHが検出されると直ちに（復号が依然として実行されている場合でさえ）、復号が（再）開始される。これは、復号プロシージャを更に簡略化するという利点を有する。
【００８２】
復号は、
［01］saltバイトを収集することと、
［02］saltを用いて他のバイトを難読化解除することと、
［03］blobサイズを知得するためにランレングス符号化サイズを復号することと、
［04］任意選択で、saltの改変のパターン、すなわち、第nのチェックサムが復号blobに基づいて予想されたパターンと一致することを検証するチェックを実行することと、
からなる。
【符号の説明】
【００８３】
図８
85  ランレングス
86  元のバイナリデータ
87  チェックサム
88  反転：２n−１
91  難読化サイズ及びデータ
Size  サイズ
【図１】
2019537340.tif 000005
【図２】
2019537340.tif 000006
【図３】
2019537340.tif 000007
【図４】
2019537340.tif 000008
【図５】
2019537340.tif 000009
【図６】
2019537340.tif 000010
【図７】
2019537340.tif 000011
【図８】
2019537340.tif 000012
【国際調査報告】
2019537340.tif 000013
2019537340.tif 000014