Zach Hilman
bf86700873
game_list: Use RegisteredCacheUnion for installed
...
Reduces code
2018-09-04 16:21:40 -04:00
Zach Hilman
7b95f295b6
aes_util: Fix error involving reads of less than 0x10
...
Issues with block size are fixed by making all reads minimum length of 0x10
2018-09-04 16:21:40 -04:00
Zach Hilman
887ffb2512
nsp: Comply with style and performance guidelines
2018-09-04 14:29:19 -04:00
Zach Hilman
57769f8d0d
card_image: Parse XCI secure partition with NSP
...
Eliminated duplicate code and adds support for Rev1+ carts
2018-09-04 14:27:33 -04:00
Zach Hilman
8e787e5ec2
key_manager: Avoid autogeneration if key exists
2018-09-04 14:25:54 -04:00
Lioncash
a9f4e31cc0
file_sys: Replace includes with forward declarations where applicable
...
Cuts down on include dependencies, resulting in less files that need to
be rebuilt when certain things are changed.
2018-09-03 22:52:24 -04:00
Zach Hilman
89422004c3
file_sys/crypto: Fix missing/unnecessary includes
2018-08-24 22:15:32 -04:00
Zach Hilman
8f6ef9d395
key_manager: Eliminate indexed for loop
2018-08-23 11:53:30 -04:00
Zach Hilman
8b989b2e11
key_manager: Create keys dir if it dosen't exist
...
On call to WriteKeyToFile, so that the autogenerated file can be written.
2018-08-23 11:53:30 -04:00
Zach Hilman
d867928e90
file_sys: Cut down on includes and copies
2018-08-23 11:53:30 -04:00
Zach Hilman
d3225fdae9
crypto: Eliminate magic constants
2018-08-23 11:53:30 -04:00
Zach Hilman
5b8fdc94e2
key_manager: Add support for autogenerated keys
...
Stored in a separate file than manual keys.
2018-08-23 11:53:30 -04:00
Zach Hilman
abfa173778
key_manager: Add support for KEK and SD seed derivation
2018-08-23 11:53:30 -04:00
Zach Hilman
25e7fc1b47
key_manager: Switch to boost flat_map for keys
...
Should make key gets marginally faster.
2018-08-23 11:53:30 -04:00
Zach Hilman
1369a56ec3
xts_encryption_layer: Implement XTSEncryptionLayer
2018-08-23 11:52:44 -04:00
Zach Hilman
ec14bb18c9
aes_util: Make XTSTranscode stricter about sizes
...
XTS with Nintendo Tweak will fail mysteriously if the sector size is not 0x4000. Upgrade the critical log to an assert to prevent undefined behavior.
2018-08-23 11:52:44 -04:00
Zach Hilman
abb0f6cac9
ctr_encryption_layer: Fix bug when transcoding small data
...
Fixes a bug where data lengths of less than size 0x10 will fail or have misleading return values.
2018-08-23 11:52:44 -04:00
Lioncash
890507ecf1
common: Namespace hex_util.h/.cpp
...
It's in the common code, so it should be under the Common namespace like
everything else.
2018-08-15 23:24:00 -04:00
Zach Hilman
f2c489b940
crypto: Remove hex utilities from key_manager
...
Move to hex_util.h in common
2018-08-11 22:50:08 -04:00
Lioncash
c8617a1465
aes_util: Add static assertion to Transcode() and XTSTranscode() to ensure well-defined behavior
...
These functions should only be given trivially-copyable types.
2018-08-04 17:30:52 -04:00
Lioncash
f0a2d4da2b
aes_util: Make CalculateNintendoTweak() an internally linked function
...
This function doesn't directly depend on class state, so it can be
hidden entirely from the interface in the cpp file.
2018-08-04 17:30:48 -04:00
Lioncash
1fb5027501
aes_util: Make Transcode() a const member function
...
This doesn't modify member state, so it can be made const.
2018-08-04 16:49:42 -04:00
Lioncash
8b86a89dd5
core/crypto: Remove unnecessary includes
2018-08-04 16:44:07 -04:00
Lioncash
d74342ad3f
key_manager: Use regular std::string instead of std::string_view
...
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-04 16:37:30 -04:00
Zach Hilman
9b710a5901
Use more descriptive error codes and messages
2018-08-01 00:16:54 -04:00
Zach Hilman
1f83886c21
Use static const instead of const static
2018-08-01 00:16:54 -04:00
Zach Hilman
568ce6304c
Add missing includes and use const where applicable
2018-08-01 00:16:54 -04:00
Zach Hilman
feb6b2b4a8
Allow key loading from %YUZU_DIR%/keys in addition to ~/.switch
2018-08-01 00:16:54 -04:00
Zach Hilman
272ca87298
Make XCI comply to review and style guidelines
2018-08-01 00:16:54 -04:00
Zach Hilman
03467b64e3
Extract mbedtls to cpp file
2018-08-01 00:16:54 -04:00
Zach Hilman
0c75b8d6b2
Add missing string.h include
2018-08-01 00:16:54 -04:00
Zach Hilman
bba2d504f0
Update mbedtls and fix compile error
2018-08-01 00:16:54 -04:00
Zach Hilman
b10c0d291f
Remove files that are not used
2018-08-01 00:16:54 -04:00