123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- /*!
- \ingroup BLAKE2
-
- \brief This function initializes a Blake2b structure for use with the
- Blake2 hash function.
-
- \return 0 Returned upon successfully initializing the Blake2b structure and
- setting the digest size.
- \param b2b pointer to the Blake2b structure to initialize
- \param digestSz length of the blake 2 digest to implement
-
- _Example_
- \code
- Blake2b b2b;
- // initialize Blake2b structure with 64 byte digest
- wc_InitBlake2b(&b2b, 64);
- \endcode
-
- \sa wc_Blake2bUpdate
- */
- WOLFSSL_API int wc_InitBlake2b(Blake2b*, word32);
- /*!
- \ingroup BLAKE2
-
- \brief This function updates the Blake2b hash with the given input data.
- This function should be called after wc_InitBlake2b, and repeated until
- one is ready for the final hash: wc_Blake2bFinal.
-
- \return 0 Returned upon successfully update the Blake2b structure with
- the given data
- \return -1 Returned if there is a failure while compressing the input data
-
- \param b2b pointer to the Blake2b structure to update
- \param data pointer to a buffer containing the data to append
- \param sz length of the input data to append
-
- _Example_
- \code
- int ret;
- Blake2b b2b;
- // initialize Blake2b structure with 64 byte digest
- wc_InitBlake2b(&b2b, 64);
- byte plain[] = { // initialize input };
- ret = wc_Blake2bUpdate(&b2b, plain, sizeof(plain));
- if( ret != 0) {
- // error updating blake2b
- }
- \endcode
-
- \sa wc_InitBlake2b
- \sa wc_Blake2bFinal
- */
- WOLFSSL_API int wc_Blake2bUpdate(Blake2b*, const byte*, word32);
- /*!
- \ingroup BLAKE2
-
- \brief This function computes the Blake2b hash of the previously supplied
- input data. The output hash will be of length requestSz, or, if
- requestSz==0, the digestSz of the b2b structure. This function should be
- called after wc_InitBlake2b and wc_Blake2bUpdate has been processed for
- each piece of input data desired.
-
- \return 0 Returned upon successfully computing the Blake2b hash
- \return -1 Returned if there is a failure while parsing the Blake2b hash
-
- \param b2b pointer to the Blake2b structure to update
- \param final pointer to a buffer in which to store the blake2b hash.
- Should be of length requestSz
- \param requestSz length of the digest to compute. When this is zero,
- b2b->digestSz will be used instead
-
- _Example_
- \code
- int ret;
- Blake2b b2b;
- byte hash[64];
- // initialize Blake2b structure with 64 byte digest
- wc_InitBlake2b(&b2b, 64);
- ... // call wc_Blake2bUpdate to add data to hash
- ret = wc_Blake2bFinal(&b2b, hash, 64);
- if( ret != 0) {
- // error generating blake2b hash
- }
- \endcode
-
- \sa wc_InitBlake2b
- \sa wc_Blake2bUpdate
- */
- WOLFSSL_API int wc_Blake2bFinal(Blake2b*, byte*, word32);
|