18 if (fuzzed_data_provider.ConsumeBool()) {
19 const std::vector<unsigned char> key =
ConsumeFixedLengthByteVector(fuzzed_data_provider, fuzzed_data_provider.ConsumeIntegralInRange<
size_t>(16, 32));
20 chacha20 =
ChaCha20{key.data(), key.size()};
26 const std::vector<unsigned char> key =
ConsumeFixedLengthByteVector(fuzzed_data_provider, fuzzed_data_provider.ConsumeIntegralInRange<
size_t>(16, 32));
27 chacha20.
SetKey(key.data(), key.size());
30 chacha20.
SetIV(fuzzed_data_provider.ConsumeIntegral<uint64_t>());
33 chacha20.
Seek(fuzzed_data_provider.ConsumeIntegral<uint64_t>());
36 std::vector<uint8_t> output(fuzzed_data_provider.ConsumeIntegralInRange<
size_t>(0, 4096));
37 chacha20.
Keystream(output.data(), output.size());
40 std::vector<uint8_t> output(fuzzed_data_provider.ConsumeIntegralInRange<
size_t>(0, 4096));
42 chacha20.
Crypt(input.data(), output.data(), input.size());