コンテンツにスキップ

Algorithms - MD5

Functions

Name
int wc_Md5Hash(const byte * data, word32 len, byte * hash)
利便性機能は、すべてのハッシュを処理し、その結果をハッシュに入れます。
int wc_InitMd5(wc_Md5 * )
この関数はMD5を初期化します。これはWC_MD5HASHによって自動的に呼び出されます。
int wc_Md5Update(wc_Md5 * md5, const byte * data, word32 len)
長さLENの提供されたバイト配列を絶えずハッシュするように呼び出すことができます。
int wc_Md5Final(wc_Md5 * md5, byte * hash)
データのハッシュを確定します。結果はハッシュに入れられます。MD5構造体がリセットされます。注:この関数は、habe_intel_qaが定義されている場合にintelqasymmd5()を呼び出す結果も返します。
void wc_Md5Free(wc_Md5 * )
MD5構造をリセットします。注:これは、wolfssl_ti_hashが定義されている場合にのみサポートされています。
int wc_Md5GetHash(wc_Md5 * md5, byte * hash)
ハッシュデータを取得します。結果はハッシュに入れられます。MD5構造はリセットされません。

Functions Documentation

function wc_Md5Hash

int wc_Md5Hash(
    const byte * data,
    word32 len,
    byte * hash
)

利便性機能は、すべてのハッシュを処理し、その結果をハッシュに入れます。

Parameters:

  • data ハッシュへのデータ
  • len データの長さ Example
const byte* data;
word32 data_len;
byte* hash;
int ret;
...
ret = wc_Md5Hash(data, data_len, hash);
if (ret != 0) {
     // Md5 Hash Failure Case.
}

See:

Return:

  • 0 データを正常にハッシュしたときに返されます。
  • Memory_E メモリエラー、メモリを割り当てることができません。これは、小さなスタックオプションが有効になっているだけです。

function wc_InitMd5

int wc_InitMd5(
    wc_Md5 * 
)

この関数はMD5を初期化します。これはWC_MD5HASHによって自動的に呼び出されます。

See:

Return:

  • 0 初期化に成功したときに返されます。
  • BAD_FUNC_ARG MD5構造がNULL値として渡された場合に返されます。 Example
Md5 md5;
byte* hash;
if ((ret = wc_InitMd5(&md5)) != 0) {
   WOLFSSL_MSG("wc_Initmd5 failed");
}
else {
   ret = wc_Md5Update(&md5, data, len);
   if (ret != 0) {
     // Md5 Update Failure Case.
   }
   ret = wc_Md5Final(&md5, hash);
  if (ret != 0) {
    // Md5 Final Failure Case.
  }
}

function wc_Md5Update

int wc_Md5Update(
    wc_Md5 * md5,
    const byte * data,
    word32 len
)

長さLENの提供されたバイト配列を絶えずハッシュするように呼び出すことができます。

Parameters:

  • md5 暗号化に使用するMD5構造へのポインタ
  • data ハッシュするデータ Example
Md5 md5;
byte data[] = { Data to be hashed };
word32 len = sizeof(data);

if ((ret = wc_InitMd5(&md5)) != 0) {
   WOLFSSL_MSG("wc_Initmd5 failed");
}
else {
   ret = wc_Md5Update(&md5, data, len);
   if (ret != 0) {
     // Md5 Update Error Case.
   }
   ret = wc_Md5Final(&md5, hash);
   if (ret != 0) {
    // Md5 Final Error Case.
   }
}

See:

Return:

  • 0 データをダイジェストに正常に追加すると返されます。
  • BAD_FUNC_ARG MD5構造がNULLの場合、またはデータがNULLで、LENがゼロより大きい場合に返されます。DATAパラメーターがNULLでLENがゼロの場合、関数はエラーを返してはいけません。

function wc_Md5Final

int wc_Md5Final(
    wc_Md5 * md5,
    byte * hash
)

データのハッシュを確定します。結果はハッシュに入れられます。MD5構造体がリセットされます。注:この関数は、habe_intel_qaが定義されている場合にintelqasymmd5()を呼び出す結果も返します。

Parameters:

  • md5 暗号化に使用するMD5構造へのポインタ Example
md5 md5[1];
byte data[] = { Data to be hashed };
word32 len = sizeof(data);

if ((ret = wc_InitMd5(md5)) != 0) {
   WOLFSSL_MSG("wc_Initmd5 failed");
}
else {
   ret = wc_Md5Update(md5, data, len);
   if (ret != 0) {
    // Md5 Update Failure Case.
   }
  ret = wc_Md5Final(md5, hash);
   if (ret != 0) {
    // Md5 Final Failure Case.
   }
}

See:

Return:

  • 0 ファイナライズに成功したときに返されます。
  • BAD_FUNC_ARG MD5構造またはハッシュポインタがNULLで渡された場合に返されます。

function wc_Md5Free

void wc_Md5Free(
    wc_Md5 * 
)

MD5構造をリセットします。注:これは、wolfssl_ti_hashが定義されている場合にのみサポートされています。

See:

Return: none いいえ返します。 Example

Md5 md5;
byte data[] = { Data to be hashed };
word32 len = sizeof(data);

if ((ret = wc_InitMd5(&md5)) != 0) {
    WOLFSSL_MSG("wc_InitMd5 failed");
}
else {
    wc_Md5Update(&md5, data, len);
    wc_Md5Final(&md5, hash);
    wc_Md5Free(&md5);
}

function wc_Md5GetHash

int wc_Md5GetHash(
    wc_Md5 * md5,
    byte * hash
)

ハッシュデータを取得します。結果はハッシュに入れられます。MD5構造はリセットされません。

Parameters:

  • md5 暗号化に使用するMD5構造へのポインタ。 Example
md5 md5[1];
if ((ret = wc_InitMd5(md5)) != 0) {
   WOLFSSL_MSG("wc_Initmd5 failed");
}
else {
   wc_Md5Update(md5, data, len);
   wc_Md5GetHash(md5, hash);
}

See:

Return: none いいえリターン


Updated on 2024-12-06 at 02:28:49 +0000