Botan  1.11.30
Functions
Botan::HAS_160_F Namespace Reference

Functions

void F1 (u32bit A, u32bit &B, u32bit C, u32bit D, u32bit &E, u32bit msg, u32bit rot)
 
void F2 (u32bit A, u32bit &B, u32bit C, u32bit D, u32bit &E, u32bit msg, u32bit rot)
 
void F3 (u32bit A, u32bit &B, u32bit C, u32bit D, u32bit &E, u32bit msg, u32bit rot)
 
void F4 (u32bit A, u32bit &B, u32bit C, u32bit D, u32bit &E, u32bit msg, u32bit rot)
 

Function Documentation

void Botan::HAS_160_F::F1 ( u32bit  A,
u32bit B,
u32bit  C,
u32bit  D,
u32bit E,
u32bit  msg,
u32bit  rot 
)
inline

Definition at line 17 of file has160.cpp.

References Botan::rotate_left().

Referenced by Botan::SHA_160::compress_n(), and F4().

19  {
20  E += rotate_left(A, rot) + (D ^ (B & (C ^ D))) + msg;
21  B = rotate_left(B, 10);
22  }
T rotate_left(T input, size_t rot)
Definition: rotate.h:21
void Botan::HAS_160_F::F2 ( u32bit  A,
u32bit B,
u32bit  C,
u32bit  D,
u32bit E,
u32bit  msg,
u32bit  rot 
)
inline

Definition at line 27 of file has160.cpp.

References Botan::rotate_left().

Referenced by Botan::SHA_160::compress_n(), and F4().

29  {
30  E += rotate_left(A, rot) + (B ^ C ^ D) + msg + 0x5A827999;
31  B = rotate_left(B, 17);
32  }
T rotate_left(T input, size_t rot)
Definition: rotate.h:21
void Botan::HAS_160_F::F3 ( u32bit  A,
u32bit B,
u32bit  C,
u32bit  D,
u32bit E,
u32bit  msg,
u32bit  rot 
)
inline

Definition at line 37 of file has160.cpp.

References Botan::rotate_left().

Referenced by Botan::SHA_160::compress_n(), and F4().

39  {
40  E += rotate_left(A, rot) + (C ^ (B | ~D)) + msg + 0x6ED9EBA1;
41  B = rotate_left(B, 25);
42  }
T rotate_left(T input, size_t rot)
Definition: rotate.h:21
void Botan::HAS_160_F::F4 ( u32bit  A,
u32bit B,
u32bit  C,
u32bit  D,
u32bit E,
u32bit  msg,
u32bit  rot 
)
inline

Definition at line 47 of file has160.cpp.

References Botan::copy_out_vec_le(), F1(), F2(), F3(), Botan::load_le(), and Botan::rotate_left().

Referenced by Botan::SHA_160::compress_n().

49  {
50  E += rotate_left(A, rot) + (B ^ C ^ D) + msg + 0x8F1BBCDC;
51  B = rotate_left(B, 30);
52  }
T rotate_left(T input, size_t rot)
Definition: rotate.h:21