summaryrefslogtreecommitdiff
path: root/src/core/crypto/key_manager.cpp
diff options
context:
space:
mode:
authorGravatar Zach Hilman2018-08-16 17:10:01 -0400
committerGravatar Zach Hilman2018-08-23 11:53:30 -0400
commitcde665c56514c1b701c0fe94fc943c7692be7f32 (patch)
tree70ab7a531c27b88c423f08c3fd84313dad2fe081 /src/core/crypto/key_manager.cpp
parentgame_list: Add SD registration loading to game list (diff)
downloadyuzu-cde665c56514c1b701c0fe94fc943c7692be7f32.tar.gz
yuzu-cde665c56514c1b701c0fe94fc943c7692be7f32.tar.xz
yuzu-cde665c56514c1b701c0fe94fc943c7692be7f32.zip
key_manager: Switch to boost flat_map for keys
Should make key gets marginally faster.
Diffstat (limited to 'src/core/crypto/key_manager.cpp')
-rw-r--r--src/core/crypto/key_manager.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/core/crypto/key_manager.cpp b/src/core/crypto/key_manager.cpp
index db8b22c85..95158e630 100644
--- a/src/core/crypto/key_manager.cpp
+++ b/src/core/crypto/key_manager.cpp
@@ -125,7 +125,8 @@ bool KeyManager::KeyFileExists(bool title) {
125 FileUtil::Exists(yuzu_keys_dir + DIR_SEP + "prod.keys"); 125 FileUtil::Exists(yuzu_keys_dir + DIR_SEP + "prod.keys");
126} 126}
127 127
128const std::unordered_map<std::string, KeyIndex<S128KeyType>> KeyManager::s128_file_id = { 128void KeyManager::DeriveSDSeedLazy() {
129const boost::container::flat_map<std::string, KeyIndex<S128KeyType>> KeyManager::s128_file_id = {
129 {"master_key_00", {S128KeyType::Master, 0, 0}}, 130 {"master_key_00", {S128KeyType::Master, 0, 0}},
130 {"master_key_01", {S128KeyType::Master, 1, 0}}, 131 {"master_key_01", {S128KeyType::Master, 1, 0}},
131 {"master_key_02", {S128KeyType::Master, 2, 0}}, 132 {"master_key_02", {S128KeyType::Master, 2, 0}},
@@ -169,7 +170,7 @@ const std::unordered_map<std::string, KeyIndex<S128KeyType>> KeyManager::s128_fi
169 {"key_area_key_system_04", {S128KeyType::KeyArea, 4, static_cast<u64>(KeyAreaKeyType::System)}}, 170 {"key_area_key_system_04", {S128KeyType::KeyArea, 4, static_cast<u64>(KeyAreaKeyType::System)}},
170}; 171};
171 172
172const std::unordered_map<std::string, KeyIndex<S256KeyType>> KeyManager::s256_file_id = { 173const boost::container::flat_map<std::string, KeyIndex<S256KeyType>> KeyManager::s256_file_id = {
173 {"header_key", {S256KeyType::Header, 0, 0}}, 174 {"header_key", {S256KeyType::Header, 0, 0}},
174 {"sd_card_save_key", {S256KeyType::SDSave, 0, 0}}, 175 {"sd_card_save_key", {S256KeyType::SDSave, 0, 0}},
175 {"sd_card_nca_key", {S256KeyType::SDNCA, 0, 0}}, 176 {"sd_card_nca_key", {S256KeyType::SDNCA, 0, 0}},