32 using packed_v128 =
typename packer::packed_v128;
33 using packed_v256 =
typename packer::packed_v256;
36 explicit MacWitness(
const Field& F,
const f_128& GF) : f_(F), gf_(GF) {}
40 uint8_t tmp[f_128::kBits];
41 for (
size_t i = 0; i < 2; ++i) {
42 for (
size_t j = 0; j < f_128::kBits; ++j) {
45 fill.push_back(bp.template pack<packed_v128>(tmp, f_128::kBits));
48 for (
size_t i = 0; i < 2; ++i) {
49 for (
size_t j = 0; j < f_128::kBits; ++j) {
52 fill.push_back(bp.template pack<packed_v128>(tmp, 128));
58 void compute_witness(
const gf2k a_p[],
const uint8_t x[]) {
59 for (
size_t i = 0; i < 2; ++i) {
60 x_[i] = gf_.of_bytes_field(&x[i * 16]).value();