arc4.h 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. /*!
  2. \ingroup ARC4
  3. \brief この関数は、バッファ内の入力メッセージを暗号化し、出力バッファーに暗号文を配置するか、またはバッファーから暗号文を復号化したり、ARC4暗号化を使用して、出力バッファーOUTを出力したりします。この関数は暗号化と復号化の両方に使用されます。この方法が呼び出される可能性がある場合は、まずWC_ARC4SETKEYを使用してARC4構造を初期化する必要があります。
  4. \return none
  5. \param arc4 メッセージの処理に使用されるARC4構造へのポインタ
  6. \param out 処理されたメッセージを保存する出力バッファへのポインタ
  7. \param in プロセスするメッセージを含む入力バッファへのポインタ
  8. _Example_
  9. \code
  10. Arc4 enc;
  11. byte key[] = { key to use for encryption };
  12. wc_Arc4SetKey(&enc, key, sizeof(key));
  13. byte plain[] = { plain text to encode };
  14. byte cipher[sizeof(plain)];
  15. byte decrypted[sizeof(plain)];
  16. // encrypt the plain into cipher
  17. wc_Arc4Process(&enc, cipher, plain, sizeof(plain));
  18. // decrypt the cipher
  19. wc_Arc4Process(&enc, decrypted, cipher, sizeof(cipher));
  20. \endcode
  21. \sa wc_Arc4SetKey
  22. */
  23. int wc_Arc4Process(Arc4* arc4, byte* out, const byte* in, word32 length);
  24. /*!
  25. \ingroup ARC4
  26. \brief この関数はARC4オブジェクトのキーを設定し、それを暗号として使用するために初期化します。WC_ARC4PROCESSを使用した暗号化に使用する前に呼び出される必要があります。
  27. \return none
  28. \param arc4 暗号化に使用されるARC4構造へのポインタ
  29. \param key ARC4構造を初期化するためのキー
  30. _Example_
  31. \code
  32. Arc4 enc;
  33. byte key[] = { initialize with key to use for encryption };
  34. wc_Arc4SetKey(&enc, key, sizeof(key));
  35. \endcode
  36. \sa wc_Arc4Process
  37. */
  38. int wc_Arc4SetKey(Arc4* arc4, const byte* key, word32 length);