diff options
author | Zach Hilman <zachhilman@gmail.com> | 2018-09-24 02:56:02 +0200 |
---|---|---|
committer | Zach Hilman <zachhilman@gmail.com> | 2018-10-07 19:15:11 +0200 |
commit | d6a0d5d43263be84959ab74e8e6570c1b9a28693 (patch) | |
tree | 0a34564611279f9a55f91d6ee8a3d7a8a0d8a0e9 /src/core/crypto/key_manager.h | |
parent | key_manager: Add keyblob support (diff) | |
download | yuzu-d6a0d5d43263be84959ab74e8e6570c1b9a28693.tar yuzu-d6a0d5d43263be84959ab74e8e6570c1b9a28693.tar.gz yuzu-d6a0d5d43263be84959ab74e8e6570c1b9a28693.tar.bz2 yuzu-d6a0d5d43263be84959ab74e8e6570c1b9a28693.tar.lz yuzu-d6a0d5d43263be84959ab74e8e6570c1b9a28693.tar.xz yuzu-d6a0d5d43263be84959ab74e8e6570c1b9a28693.tar.zst yuzu-d6a0d5d43263be84959ab74e8e6570c1b9a28693.zip |
Diffstat (limited to 'src/core/crypto/key_manager.h')
-rw-r--r-- | src/core/crypto/key_manager.h | 34 |
1 files changed, 32 insertions, 2 deletions
diff --git a/src/core/crypto/key_manager.h b/src/core/crypto/key_manager.h index b2c386bfb..1cb62c2dc 100644 --- a/src/core/crypto/key_manager.h +++ b/src/core/crypto/key_manager.h @@ -33,8 +33,10 @@ enum class KeyCategory : u8 { }; enum class S256KeyType : u64 { - Header, // - SDKeySource, // f1=SDKeyType + SDKey, // f1=SDKeyType + Header, // + SDKeySource, // f1=SDKeyType + HeaderSource, // }; enum class S128KeyType : u64 { @@ -47,6 +49,14 @@ enum class S128KeyType : u64 { SDSeed, // Titlekey, // f1=rights id LSB f2=rights id MSB Source, // f1=source type, f2= sub id + Keyblob, // f1=crypto revision + KeyblobMAC, // f1=crypto revision + TSEC, // + SecureBoot, // + BIS, // f1=partition (0-3), f2=type {crypt, tweak} + HeaderKek, // + SDKek, // + RSAKek, // }; enum class KeyAreaKeyType : u8 { @@ -59,6 +69,16 @@ enum class SourceKeyType : u8 { SDKek, // AESKekGeneration, // AESKeyGeneration, // + RSAOaepKekGeneration, // + Master, // + Keyblob, // f2=crypto revision + KeyAreaKey, // f2=KeyAreaKeyType + Titlekek, // + Package2, // + HeaderKek, // + KeyblobMAC, // + ETicketKek, // + ETicketKekek, // }; enum class SDKeyType : u8 { @@ -66,6 +86,16 @@ enum class SDKeyType : u8 { NCA, }; +enum class BISKeyType : u8 { + Crypto, + Tweak, +}; + +enum class RSAKekType : u8 { + Mask0, + Seed3, +}; + template <typename KeyType> struct KeyIndex { KeyType type; |