devices/fido: use base::as_string_view()
The bespoke fido_parsing_utils::ConvertToStringView() is not needed. Bug: None Change-Id: Id4c944e6ba474997726cd3f485e8f3d8e42c3239 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6442538 Reviewed-by: Martin Kreichgauer <martinkr@google.com> Commit-Queue: Martin Kreichgauer <martinkr@google.com> Commit-Queue: Elly FJ <ellyjones@chromium.org> Cr-Commit-Position: refs/heads/main@{#1444462}
This commit is contained in:
@ -100,7 +100,7 @@ class FakeCableAuthenticator {
|
||||
|
||||
std::string ciphertext;
|
||||
aead.Seal(
|
||||
message, fido_parsing_utils::ConvertToStringView(encryption_nonce),
|
||||
message, base::as_string_view(encryption_nonce),
|
||||
std::string(1, base::strict_cast<uint8_t>(FidoBleDeviceCommand::kMsg)),
|
||||
&ciphertext);
|
||||
authenticator_counter_++;
|
||||
@ -121,8 +121,7 @@ class FakeCableAuthenticator {
|
||||
|
||||
std::string ciphertext;
|
||||
aead.Open(
|
||||
fido_parsing_utils::ConvertToStringView(message),
|
||||
fido_parsing_utils::ConvertToStringView(encryption_nonce),
|
||||
base::as_string_view(message), base::as_string_view(encryption_nonce),
|
||||
std::string(1, base::strict_cast<uint8_t>(FidoBleDeviceCommand::kMsg)),
|
||||
&ciphertext);
|
||||
expected_client_counter_++;
|
||||
|
@ -64,8 +64,8 @@ ConstructHandshakeMessage(std::string_view handshake_key,
|
||||
return std::nullopt;
|
||||
|
||||
std::array<uint8_t, kCableHandshakeMacMessageSize> client_hello_mac;
|
||||
if (!hmac.Sign(fido_parsing_utils::ConvertToStringView(*client_hello),
|
||||
client_hello_mac.data(), client_hello_mac.size())) {
|
||||
if (!hmac.Sign(base::as_string_view(*client_hello), client_hello_mac.data(),
|
||||
client_hello_mac.size())) {
|
||||
return std::nullopt;
|
||||
}
|
||||
|
||||
@ -90,11 +90,10 @@ FidoCableV1HandshakeHandler::FidoCableV1HandshakeHandler(
|
||||
: cable_device_(cable_device),
|
||||
nonce_(fido_parsing_utils::Materialize(nonce)),
|
||||
session_pre_key_(fido_parsing_utils::Materialize(session_pre_key)),
|
||||
handshake_key_(crypto::HkdfSha256(
|
||||
fido_parsing_utils::ConvertToStringView(session_pre_key_),
|
||||
fido_parsing_utils::ConvertToStringView(nonce_),
|
||||
kCableHandshakeKeyInfo,
|
||||
/*derived_key_size=*/32)) {
|
||||
handshake_key_(crypto::HkdfSha256(base::as_string_view(session_pre_key_),
|
||||
base::as_string_view(nonce_),
|
||||
kCableHandshakeKeyInfo,
|
||||
/*derived_key_size=*/32)) {
|
||||
crypto::RandBytes(client_session_random_);
|
||||
}
|
||||
|
||||
@ -128,9 +127,8 @@ bool FidoCableV1HandshakeHandler::ValidateAuthenticatorHandshakeMessage(
|
||||
const auto authenticator_hello = response.first(
|
||||
kCableAuthenticatorHandshakeMessageSize - kCableHandshakeMacMessageSize);
|
||||
if (!hmac.VerifyTruncated(
|
||||
fido_parsing_utils::ConvertToStringView(authenticator_hello),
|
||||
fido_parsing_utils::ConvertToStringView(
|
||||
response.subspan(authenticator_hello.size())))) {
|
||||
base::as_string_view(authenticator_hello),
|
||||
base::as_string_view(response.subspan(authenticator_hello.size())))) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
@ -148,7 +148,7 @@ std::vector<uint8_t> ConstructAuthenticatorHelloReply(
|
||||
return std::vector<uint8_t>();
|
||||
|
||||
std::array<uint8_t, 32> authenticator_hello_mac;
|
||||
if (!hmac.Sign(fido_parsing_utils::ConvertToStringView(hello_msg),
|
||||
if (!hmac.Sign(base::as_string_view(hello_msg),
|
||||
authenticator_hello_mac.data(),
|
||||
authenticator_hello_mac.size())) {
|
||||
return std::vector<uint8_t>();
|
||||
@ -184,9 +184,8 @@ class FakeCableAuthenticator {
|
||||
public:
|
||||
FakeCableAuthenticator() {
|
||||
handshake_key_ = crypto::HkdfSha256(
|
||||
fido_parsing_utils::ConvertToStringView(kTestSessionPreKey),
|
||||
fido_parsing_utils::ConvertToStringView(kTestNonce),
|
||||
kCableHandshakeKeyInfo, 32);
|
||||
base::as_string_view(kTestSessionPreKey),
|
||||
base::as_string_view(kTestNonce), kCableHandshakeKeyInfo, 32);
|
||||
}
|
||||
|
||||
// Receives handshake message from the client, check its validity and if the
|
||||
@ -208,9 +207,8 @@ class FakeCableAuthenticator {
|
||||
|
||||
const auto client_hello = handshake_message.first(42u);
|
||||
if (!hmac.VerifyTruncated(
|
||||
fido_parsing_utils::ConvertToStringView(client_hello),
|
||||
fido_parsing_utils::ConvertToStringView(
|
||||
handshake_message.subspan<42>()))) {
|
||||
base::as_string_view(client_hello),
|
||||
base::as_string_view(handshake_message.subspan<42>()))) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
@ -89,10 +89,6 @@ std::array<uint8_t, crypto::kSHA256Length> CreateSHA256Hash(
|
||||
return hashed_data;
|
||||
}
|
||||
|
||||
std::string_view ConvertToStringView(base::span<const uint8_t> data) {
|
||||
return {reinterpret_cast<const char*>(data.data()), data.size()};
|
||||
}
|
||||
|
||||
std::string ConvertBytesToUuid(base::span<const uint8_t, 16> bytes) {
|
||||
uint64_t most_significant_bytes = 0;
|
||||
for (size_t i = 0; i < sizeof(uint64_t); i++) {
|
||||
|
@ -115,9 +115,6 @@ COMPONENT_EXPORT(DEVICE_FIDO)
|
||||
std::array<uint8_t, crypto::kSHA256Length> CreateSHA256Hash(
|
||||
std::string_view data);
|
||||
|
||||
COMPONENT_EXPORT(DEVICE_FIDO)
|
||||
std::string_view ConvertToStringView(base::span<const uint8_t> data);
|
||||
|
||||
// Convert byte array into GUID formatted string as defined by RFC 4122.
|
||||
// As we are converting 128 bit UUID, |bytes| must be have length of 16.
|
||||
// https://tools.ietf.org/html/rfc4122
|
||||
|
@ -275,10 +275,5 @@ TEST(U2fParsingUtils, CreateSHA256Hash) {
|
||||
::testing::ElementsAreArray(test_data::kApplicationParameter));
|
||||
}
|
||||
|
||||
TEST(U2fParsingUtils, ConvertSpanToStringView) {
|
||||
constexpr uint8_t kTestAsciiAbcd[] = {'a', 'b', 'c', 'd'};
|
||||
EXPECT_EQ("abcd", ConvertToStringView(kTestAsciiAbcd));
|
||||
}
|
||||
|
||||
} // namespace fido_parsing_utils
|
||||
} // namespace device
|
||||
|
Reference in New Issue
Block a user