| OLD | NEW |
| (Empty) |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | |
| 2 // Use of this source code is governed by a BSD-style license that can be | |
| 3 // found in the LICENSE file. | |
| 4 | |
| 5 #include "components/proximity_auth/base64url.h" | |
| 6 | |
| 7 #include "base/base64.h" | |
| 8 #include "base/strings/string_util.h" | |
| 9 | |
| 10 namespace proximity_auth { | |
| 11 | |
| 12 void Base64UrlEncode(const std::string& decoded_input, | |
| 13 std::string* encoded_output) { | |
| 14 base::Base64Encode(decoded_input, encoded_output); | |
| 15 base::ReplaceChars(*encoded_output, "+", "-", encoded_output); | |
| 16 base::ReplaceChars(*encoded_output, "/", "_", encoded_output); | |
| 17 } | |
| 18 | |
| 19 bool Base64UrlDecode(const std::string& encoded_input, | |
| 20 std::string* decoded_output) { | |
| 21 std::string adjusted_encoded_input = encoded_input; | |
| 22 base::ReplaceChars(adjusted_encoded_input, "-", "+", &adjusted_encoded_input); | |
| 23 base::ReplaceChars(adjusted_encoded_input, "_", "/", &adjusted_encoded_input); | |
| 24 | |
| 25 return base::Base64Decode(adjusted_encoded_input, decoded_output); | |
| 26 } | |
| 27 | |
| 28 } // namespace proximity_auth | |
| OLD | NEW |