TNB Library
公開メンバ関数 | 全メンバ一覧
CBytesCipher クラス

情報暗号復号クラス [詳解]

#include <TnbBytesCipher.h>

公開メンバ関数

 CBytesCipher (void)
 コンストラクタ [詳解]
 
void Compression (bool boIsEnable)
 [設定] 圧縮モード. [詳解]
 
CByteVector Decode (const IConstCollectionT< BYTE > &c)
 [設定] 復号化 [詳解]
 
bool Decode (ICollectionT< BYTE > &_out, const IConstCollectionT< BYTE > &in)
 [設定] 復号化 [詳解]
 
CByteVector Encode (const IConstCollectionT< BYTE > &c)
 [設定] 暗号化 [詳解]
 
bool Encode (ICollectionT< BYTE > &_out, const IConstCollectionT< BYTE > &in)
 [設定] 暗号化 [詳解]
 
void SetKey (const CAscii &ascKey)
 [設定] キー設定. [詳解]
 

詳解

情報暗号復号クラス

簡易的な暗号化/復号化をすることが出来ます。
圧縮も可能です。
必要ファイル
TnbBytesCipher.h
日付
06/07/12 新規作成
06/08/10 出力先も抽象化指定できるようにした。
06/11/15 エラー処理強化。
07/05/10 クラス名変更。

TnbBytesCipher.h38 行目に定義があります。

構築子と解体子

◆ CBytesCipher()

CBytesCipher ( void  )

コンストラクタ

TnbBytesCipher.h82 行目に定義があります。

関数詳解

◆ Compression()

void Compression ( bool  boIsEnable)

[設定] 圧縮モード.

暗号時に圧縮するか指定します。デフォルトは disableです。 暗号と同じモードでないと復号できません。

引数
boIsEnabletrue を指定すると圧縮モードありです(暗号データが元データと異なるサイズになる)。
false なら暗号化するだけです(暗号データが元データと同じサイズになる)。

TnbBytesCipher.h104 行目に定義があります。

◆ Decode() [1/2]

CByteVector Decode ( const IConstCollectionT< BYTE > &  c)

[設定] 復号化

引数
c暗号データ
戻り値
元データ。Invalid状態ならエラー(圧縮展開エラーが発生の可能性有り)。
例外
CEmptyExceptionキーが設定されていないとスローされます。
CTnbException指定コレクションの構造により、読込み処理でスローされる可能性があります。

TnbBytesCipher.h191 行目に定義があります。

◆ Decode() [2/2]

bool Decode ( ICollectionT< BYTE > &  _out,
const IConstCollectionT< BYTE > &  in 
)

[設定] 復号化

引数
[out]_out暗号データ格納先。追加されますので、通常Empty状態のコレクションを指定するようにします。
[in]in暗号データ
戻り値
trueデコード成功。
false失敗。
例外
CEmptyExceptionキーが設定されていないとスローされます。
CTnbException指定コレクションの構造により、読込み処理でスローされる可能性があります。

TnbBytesCipher.h164 行目に定義があります。

◆ Encode() [1/2]

CByteVector Encode ( const IConstCollectionT< BYTE > &  c)

[設定] 暗号化

引数
c元データ
戻り値
暗号データ
例外
CEmptyExceptionキーが設定されていないとスローされます。
CTnbException指定コレクションの構造により、読込み処理でスローされる可能性があります。

TnbBytesCipher.h145 行目に定義があります。

◆ Encode() [2/2]

bool Encode ( ICollectionT< BYTE > &  _out,
const IConstCollectionT< BYTE > &  in 
)

[設定] 暗号化

引数
[out]_out暗号データ格納先。追加されますので、通常Empty状態のコレクションを指定するようにします。
[in]in元データ
戻り値
trueエンコード成功。
false失敗。
例外
CEmptyExceptionキーが設定されていないとスローされます。
CTnbException指定コレクションの構造により、読込み処理でスローされる可能性があります。

TnbBytesCipher.h118 行目に定義があります。

◆ SetKey()

void SetKey ( const CAscii ascKey)

[設定] キー設定.

暗号、復号に使用するキーを指定します。当然、暗号と同じキーでないと復号できません。

覚え書き
内部では ASCII に変換され使用されます。
引数
ascKey暗号キー

TnbBytesCipher.h92 行目に定義があります。