ご利用条件
ホーム 製品情報 フリーソフト 掲示板 会社案内

暗号化データフォーマット

元データ
↓
�@ �A �B �C
↓
Camellia(128ビット鍵)により暗号化
↓
バイナリーデータを16進数表現('00'〜'FF')の文字列化
↓
�D �E

�@ 元データの長さ(バイト数)をバイナリー2バイト(ビッグエンディアン)で記録
�A 元データ全体のバイト単位排他論理和(XOR)
�B �AのNOT値(1の補数)
�C 16バイト単位の長さにするためのパディングデータ(バイナリーの0)
�D 16進数表現部のバイト単位排他論理和(XOR)を2バイトの16進数文字列にしたもの
�E �Dの排他論理和(XOR)値のNOT値(1の補数)を2バイトの16進数文字列にしたもの


《復号化手順》
1.データ文字列全体が’0’〜'9'、'A'〜'F'で構成されているかをチェック
2.データ文字列の長さが32の倍数 + 4 になっているかをチェック
3.5バイト目以降の排他論理和を算出し、上記�D、�Eとの整合をチェック
4.16進数表現の文字列をバイナリー化し、Camelliaアルゴリズムにより復号化
5.5バイト目以降の排他論理和を算出し、上記�A、�Bとの整合をチェック
6.5バイト目以降、�@の長さ分を複合化データとして取得


参考:Camelliaについて
Camellia(カメリア)は、NTTと三菱電機が共同で開発した共通鍵ブロック暗号です。
Camelliaについての詳しい説明はCamellia紹介ページ(NTT)をご覧ください。


ページ記載内容に関してのお問合せは E-Mail : info@psytec.co.jp までお願いいたします。
© Psytec Inc. All rights reserved.