diff options
author | bunnei <bunneidev@gmail.com> | 2018-08-16 05:11:58 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-08-16 05:11:58 +0200 |
commit | c594ec341768a54dc2577c64fd15a6c0041456cd (patch) | |
tree | 3814f831fd8207598c342341e56997a0b3123cd0 /src/core/crypto/key_manager.cpp | |
parent | Merge pull request #1078 from lioncash/message (diff) | |
parent | registration: Various style and documentation improvements (diff) | |
download | yuzu-c594ec341768a54dc2577c64fd15a6c0041456cd.tar yuzu-c594ec341768a54dc2577c64fd15a6c0041456cd.tar.gz yuzu-c594ec341768a54dc2577c64fd15a6c0041456cd.tar.bz2 yuzu-c594ec341768a54dc2577c64fd15a6c0041456cd.tar.lz yuzu-c594ec341768a54dc2577c64fd15a6c0041456cd.tar.xz yuzu-c594ec341768a54dc2577c64fd15a6c0041456cd.tar.zst yuzu-c594ec341768a54dc2577c64fd15a6c0041456cd.zip |
Diffstat (limited to 'src/core/crypto/key_manager.cpp')
-rw-r--r-- | src/core/crypto/key_manager.cpp | 35 |
1 files changed, 2 insertions, 33 deletions
diff --git a/src/core/crypto/key_manager.cpp b/src/core/crypto/key_manager.cpp index fc45e7ab5..94d92579f 100644 --- a/src/core/crypto/key_manager.cpp +++ b/src/core/crypto/key_manager.cpp @@ -10,44 +10,13 @@ #include <string_view> #include "common/common_paths.h" #include "common/file_util.h" +#include "common/hex_util.h" +#include "common/logging/log.h" #include "core/crypto/key_manager.h" #include "core/settings.h" namespace Core::Crypto { -static u8 ToHexNibble(char c1) { - if (c1 >= 65 && c1 <= 70) - return c1 - 55; - if (c1 >= 97 && c1 <= 102) - return c1 - 87; - if (c1 >= 48 && c1 <= 57) - return c1 - 48; - throw std::logic_error("Invalid hex digit"); -} - -template <size_t Size> -static std::array<u8, Size> HexStringToArray(std::string_view str) { - std::array<u8, Size> out{}; - for (size_t i = 0; i < 2 * Size; i += 2) { - auto d1 = str[i]; - auto d2 = str[i + 1]; - out[i / 2] = (ToHexNibble(d1) << 4) | ToHexNibble(d2); - } - return out; -} - -std::array<u8, 16> operator""_array16(const char* str, size_t len) { - if (len != 32) - throw std::logic_error("Not of correct size."); - return HexStringToArray<16>(str); -} - -std::array<u8, 32> operator""_array32(const char* str, size_t len) { - if (len != 64) - throw std::logic_error("Not of correct size."); - return HexStringToArray<32>(str); -} - KeyManager::KeyManager() { // Initialize keys const std::string hactool_keys_dir = FileUtil::GetHactoolConfigurationPath(); |