aboutsummaryrefslogtreecommitdiff
path: root/src/core/crypto/key_manager.h
AgeCommit message (Collapse)Author
2023-09-05core: Add support for loading NSPs with personalized tickets. (#10048)Steveice10
Co-authored-by: Morph <39850852+Morph1984@users.noreply.github.com>
2023-06-03android: frontend: Integrate key installation for SAF.bunnei
2023-06-03core: crypto: key_manager: Add methods to reload & validate keys.bunnei
2023-03-12general: fix spelling mistakesLiam
2022-04-23general: Convert source file copyright comments over to SPDXMorph
This formats all copyright comments according to SPDX formatting guidelines. Additionally, this resolves the remaining GPLv2 only licensed files by relicensing them to GPLv2.0-or-later.
2021-11-03core: Fix transitive include build errorsameerj
2021-11-03core: Remove unused includesameerj
2021-05-25common: fs: Rework the Common Filesystem interface to make use of ↵Morph
std::filesystem (#6270) * common: fs: fs_types: Create filesystem types Contains various filesystem types used by the Common::FS library * common: fs: fs_util: Add std::string to std::u8string conversion utility * common: fs: path_util: Add utlity functions for paths Contains various utility functions for getting or manipulating filesystem paths used by the Common::FS library * common: fs: file: Rewrite the IOFile implementation * common: fs: Reimplement Common::FS library using std::filesystem * common: fs: fs_paths: Add fs_paths to replace common_paths * common: fs: path_util: Add the rest of the path functions * common: Remove the previous Common::FS implementation * general: Remove unused fs includes * string_util: Remove unused function and include * nvidia_flags: Migrate to the new Common::FS library * settings: Migrate to the new Common::FS library * logging: backend: Migrate to the new Common::FS library * core: Migrate to the new Common::FS library * perf_stats: Migrate to the new Common::FS library * reporter: Migrate to the new Common::FS library * telemetry_session: Migrate to the new Common::FS library * key_manager: Migrate to the new Common::FS library * bis_factory: Migrate to the new Common::FS library * registered_cache: Migrate to the new Common::FS library * xts_archive: Migrate to the new Common::FS library * service: acc: Migrate to the new Common::FS library * applets/profile: Migrate to the new Common::FS library * applets/web: Migrate to the new Common::FS library * service: filesystem: Migrate to the new Common::FS library * loader: Migrate to the new Common::FS library * gl_shader_disk_cache: Migrate to the new Common::FS library * nsight_aftermath_tracker: Migrate to the new Common::FS library * vulkan_library: Migrate to the new Common::FS library * configure_debug: Migrate to the new Common::FS library * game_list_worker: Migrate to the new Common::FS library * config: Migrate to the new Common::FS library * configure_filesystem: Migrate to the new Common::FS library * configure_per_game_addons: Migrate to the new Common::FS library * configure_profile_manager: Migrate to the new Common::FS library * configure_ui: Migrate to the new Common::FS library * input_profiles: Migrate to the new Common::FS library * yuzu_cmd: config: Migrate to the new Common::FS library * yuzu_cmd: Migrate to the new Common::FS library * vfs_real: Migrate to the new Common::FS library * vfs: Migrate to the new Common::FS library * vfs_libzip: Migrate to the new Common::FS library * service: bcat: Migrate to the new Common::FS library * yuzu: main: Migrate to the new Common::FS library * vfs_real: Delete the contents of an existing file in CreateFile Current usages of CreateFile expect to delete the contents of an existing file, retain this behavior for now. * input_profiles: Don't iterate the input profile dir if it does not exist Silences an error produced in the log if the directory does not exist. * game_list_worker: Skip parsing file if the returned VfsFile is nullptr Prevents crashes in GetLoader when the virtual file is nullptr * common: fs: Validate paths for path length * service: filesystem: Open the mod load directory as read only
2020-09-14crypto/key_manager: Remove dependency on the global system accessorLioncash
We can supply the content provider as an argument instead of hardcoding a global accessor in the implementation.
2020-08-22key_manager: Make data arrays constexprLioncash
We can convert these maps into constexpr arrays to eliminate some runtime static constructors.
2020-08-16common/fileutil: Convert namespace to Common::FSLioncash
Migrates a remaining common file over to the Common namespace, making it consistent with the rest of common files. This also allows for high-traffic FS related code to alias the filesystem function namespace as namespace FS = Common::FS; for more concise typing.
2020-07-01key_manager: Correct casing of instance()Lioncash
Our codebase uppercases member function names.
2020-07-01key_manager: Delete move operationsLioncash
Prevents the singleton from being moved from.
2020-07-01key_manager: Make use of canonical deleted operator=Lioncash
operator= typically returns a reference, it's not void. While we're at it, we can correct the parameter formatting to adhere to the codebase.
2020-05-20crypto: Make KeyManager a singleton classFearlessTobi
Previously, we were reading the keys everytime a KeyManager object was created, causing yuzu to reread the keys file multiple hundreds of times when loading the game list. With this change, it is only loaded once. On my system, this decreased game list loading times by a factor of 20.
2019-07-07key_manager: Convert Ticket union to std::variantZach Hilman
2019-07-07es: Populate/synthesize tickets on constructionZach Hilman
2019-07-07key_manager: Add structure for Ticket parsingZach Hilman
2019-07-07key_manager: Add accessors/helpers for ticket managementZach Hilman
2019-07-07key_manager: Add equality operator for RSAKeyPairZach Hilman
2018-10-30global: Use std::optional instead of boost::optional (#1578)Frederic L
* get rid of boost::optional * Remove optional references * Use std::reference_wrapper for optional references * Fix clang format * Fix clang format part 2 * Adressed feedback * Fix clang format and MacOS build
2018-10-13key_manager/partition_data_manager: Silence truncation compiler warningsLioncash
2018-10-07partition_data_manager: Rename system files for hekateZach Hilman
x
2018-10-07key_manager: Add support for loading keys from partition dataZach Hilman
2018-10-07key_manager: Add ETicket key derivationZach Hilman
Derives titlekeys
2018-10-07key_manager: Add base key derivationZach Hilman
Derives master keys, game encryption keys, and package1/2 keys
2018-10-07key_manager: Add BIS key getterZach Hilman
2018-10-07key_manager: Add support for more keysZach Hilman
TSEC, SBK, BIS, and other Sources for proper derivation
2018-10-07key_manager: Add keyblob supportZach Hilman
2018-10-07key_manager: Add support for console-specific keyfileZach Hilman
2018-10-07key_manager: Rename KEK to KekZach Hilman
2018-09-15Port #4182 from Citra: "Prefix all size_t with std::"fearlessTobi
2018-09-04card_image: Parse XCI secure partition with NSPZach Hilman
Eliminated duplicate code and adds support for Rev1+ carts
2018-09-03file_sys: Replace includes with forward declarations where applicableLioncash
Cuts down on include dependencies, resulting in less files that need to be rebuilt when certain things are changed.
2018-08-24file_sys/crypto: Fix missing/unnecessary includesZach Hilman
2018-08-23file_sys: Cut down on includes and copiesZach Hilman
2018-08-23key_manager: Add support for autogenerated keysZach Hilman
Stored in a separate file than manual keys.
2018-08-23key_manager: Add support for KEK and SD seed derivationZach Hilman
2018-08-23key_manager: Switch to boost flat_map for keysZach Hilman
Should make key gets marginally faster.
2018-08-11crypto: Remove hex utilities from key_managerZach Hilman
Move to hex_util.h in common
2018-08-04key_manager: Use regular std::string instead of std::string_viewLioncash
The benefit of std::string_view comes from the idea of avoiding copies (essentially acting as a non-owning view), however if we're just going to copy into a local variable immediately, there's not much benefit gained here.
2018-08-01Use more descriptive error codes and messagesZach Hilman
2018-08-01Use static const instead of const staticZach Hilman
2018-08-01Add missing includes and use const where applicableZach Hilman
2018-08-01Allow key loading from %YUZU_DIR%/keys in addition to ~/.switchZach Hilman
2018-08-01Make XCI comply to review and style guidelinesZach Hilman
2018-08-01Update mbedtls and fix compile errorZach Hilman
2018-08-01Remove files that are not usedZach Hilman