salsa20_functions.hpp File Reference
+ Include dependency graph for salsa20_functions.hpp:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  nil::crypto3::stream::detail::salsa20_functions< IVSize, KeyBits, Rounds >
 
struct  nil::crypto3::stream::detail::salsa20_functions< 64, 128, Rounds >
 
struct  nil::crypto3::stream::detail::salsa20_functions< 64, 256, Rounds >
 
struct  nil::crypto3::stream::detail::salsa20_functions< 96, 128, Rounds >
 
struct  nil::crypto3::stream::detail::salsa20_functions< 96, 256, Rounds >
 

Namespaces

 nil
 
 nil::crypto3
 
 nil::crypto3::stream
 
 nil::crypto3::stream::detail
 

Macros

#define SALSA20_QUARTER_ROUND(x1, x2, x3, x4)
 

Macro Definition Documentation

◆ SALSA20_QUARTER_ROUND

#define SALSA20_QUARTER_ROUND (   x1,
  x2,
  x3,
  x4 
)
Value:
do { \
x2 ^= policy_type::rotl<7>(x1 + x4); \
x3 ^= policy_type::rotl<9>(x2 + x1); \
x4 ^= policy_type::rotl<13>(x3 + x2); \
x1 ^= policy_type::rotl<18>(x4 + x3); \
} while (0)