8 #include <botan/lubyrack.h>
9 #include <botan/internal/xor_buf.h>
21 byte* buffer = &buffer_vec[0];
23 for(
size_t i = 0; i != blocks; ++i)
28 xor_buf(out + len, in + len, buffer, len);
31 hash->
update(out + len, len);
38 xor_buf(out + len, buffer, len);
41 hash->
update(out + len, len);
58 byte* buffer = &buffer_vec[0];
60 for(
size_t i = 0; i != blocks; ++i)
63 hash->
update(in + len, len);
70 xor_buf(out + len, in + len, buffer, len);
73 hash->
update(out + len, len);
80 xor_buf(out + len, buffer, len);
90 void LubyRackoff::key_schedule(
const byte key[],
size_t length)
92 K1.assign(key, key + (length / 2));
93 K2.assign(key + (length / 2), key + length);
119 return "Luby-Rackoff(" + hash->
name() +
")";