#include "storage/common/quota/padding_key.h"
#include <inttypes.h>
#include <cstdint>
#include <vector>
#include "base/no_destructor.h"
#include "base/strings/stringprintf.h"
#include "base/time/time.h"
#include "crypto/hmac.h"
#include "crypto/random.h"
#include "crypto/symmetric_key.h"
#include "net/base/schemeful_site.h"
#include "net/http/http_request_headers.h"
#include "services/network/public/mojom/url_response_head.mojom-shared.h"
#include "third_party/blink/public/common/storage_key/storage_key.h"
SymmetricKey;
namespace storage {
namespace {
const SymmetricKey::Algorithm kPaddingKeyAlgorithm = …;
constexpr uint64_t kPaddingRange = …;
std::unique_ptr<SymmetricKey>* GetPaddingKeyInternal() { … }
}
bool ShouldPadResponseType(network::mojom::FetchResponseType type) { … }
int64_t ComputeRandomResponsePadding() { … }
int64_t ComputeStableResponsePadding(const blink::StorageKey& storage_key,
const std::string& response_url,
const base::Time& response_time,
const std::string& request_method,
int64_t side_data_size) { … }
}