exo/spl: Add new EsCommonKeyType

This commit is contained in:
Michael Scire 2023-10-11 11:03:17 -07:00 committed by SciresM
parent c5d7ca5159
commit 114b82284d
5 changed files with 7 additions and 2 deletions

View file

@ -161,6 +161,7 @@ namespace ams::secmon::smc {
constexpr const u8 EsCommonKeySources[EsCommonKeyType_Count][AesKeySize] = { constexpr const u8 EsCommonKeySources[EsCommonKeyType_Count][AesKeySize] = {
[EsCommonKeyType_TitleKey] = { 0x1E, 0xDC, 0x7B, 0x3B, 0x60, 0xE6, 0xB4, 0xD8, 0x78, 0xB8, 0x17, 0x15, 0x98, 0x5E, 0x62, 0x9B }, [EsCommonKeyType_TitleKey] = { 0x1E, 0xDC, 0x7B, 0x3B, 0x60, 0xE6, 0xB4, 0xD8, 0x78, 0xB8, 0x17, 0x15, 0x98, 0x5E, 0x62, 0x9B },
[EsCommonKeyType_ArchiveKey] = { 0x3B, 0x78, 0xF2, 0x61, 0x0F, 0x9D, 0x5A, 0xE2, 0x7B, 0x4E, 0x45, 0xAF, 0xCB, 0x0B, 0x67, 0x4D }, [EsCommonKeyType_ArchiveKey] = { 0x3B, 0x78, 0xF2, 0x61, 0x0F, 0x9D, 0x5A, 0xE2, 0x7B, 0x4E, 0x45, 0xAF, 0xCB, 0x0B, 0x67, 0x4D },
[EsCommonKeyType_Unknown2] = { 0x42, 0x64, 0x0B, 0xE3, 0x5F, 0xC6, 0xBE, 0x47, 0xC7, 0xB4, 0x84, 0xC5, 0xEB, 0x63, 0xAA, 0x02 },
}; };
constexpr const u8 EsSealKeySource[AesKeySize] = { constexpr const u8 EsSealKeySource[AesKeySize] = {

View file

@ -22,6 +22,7 @@ namespace ams::secmon::smc {
enum EsCommonKeyType { enum EsCommonKeyType {
EsCommonKeyType_TitleKey = 0, EsCommonKeyType_TitleKey = 0,
EsCommonKeyType_ArchiveKey = 1, EsCommonKeyType_ArchiveKey = 1,
EsCommonKeyType_Unknown2 = 2,
EsCommonKeyType_Count, EsCommonKeyType_Count,
}; };

View file

@ -32,8 +32,8 @@ namespace ams::secmon::smc {
struct PrepareEsDeviceUniqueKeyOption { struct PrepareEsDeviceUniqueKeyOption {
using KeyGeneration = util::BitPack32::Field<0, 6, int>; using KeyGeneration = util::BitPack32::Field<0, 6, int>;
using Type = util::BitPack32::Field<6, 1, EsCommonKeyType>; using Type = util::BitPack32::Field<6, 2, EsCommonKeyType>;
using Reserved = util::BitPack32::Field<7, 25, u32>; using Reserved = util::BitPack32::Field<8, 25, u32>;
}; };
constexpr const u8 ModularExponentiateByStorageKeyTable[] = { constexpr const u8 ModularExponentiateByStorageKeyTable[] = {

View file

@ -98,6 +98,7 @@ namespace ams::spl {
enum class EsDeviceUniqueKeyType { enum class EsDeviceUniqueKeyType {
TitleKey = 0, TitleKey = 0,
ArchiveKey = 1, ArchiveKey = 1,
Unknown2 = 2,
}; };
struct AsyncOperationKey { struct AsyncOperationKey {

View file

@ -50,6 +50,7 @@ namespace ams::spl::smc {
enum EsCommonKeyType { enum EsCommonKeyType {
EsCommonKeyType_TitleKey = 0, EsCommonKeyType_TitleKey = 0,
EsCommonKeyType_ArchiveKey = 1, EsCommonKeyType_ArchiveKey = 1,
EsCommonKeyType_Unknown2 = 2,
EsCommonKeyType_Count, EsCommonKeyType_Count,
}; };
@ -86,6 +87,7 @@ namespace ams::spl::smc {
constexpr const u8 EsCommonKeySources[EsCommonKeyType_Count][AesKeySize] = { constexpr const u8 EsCommonKeySources[EsCommonKeyType_Count][AesKeySize] = {
[EsCommonKeyType_TitleKey] = { 0x1E, 0xDC, 0x7B, 0x3B, 0x60, 0xE6, 0xB4, 0xD8, 0x78, 0xB8, 0x17, 0x15, 0x98, 0x5E, 0x62, 0x9B }, [EsCommonKeyType_TitleKey] = { 0x1E, 0xDC, 0x7B, 0x3B, 0x60, 0xE6, 0xB4, 0xD8, 0x78, 0xB8, 0x17, 0x15, 0x98, 0x5E, 0x62, 0x9B },
[EsCommonKeyType_ArchiveKey] = { 0x3B, 0x78, 0xF2, 0x61, 0x0F, 0x9D, 0x5A, 0xE2, 0x7B, 0x4E, 0x45, 0xAF, 0xCB, 0x0B, 0x67, 0x4D }, [EsCommonKeyType_ArchiveKey] = { 0x3B, 0x78, 0xF2, 0x61, 0x0F, 0x9D, 0x5A, 0xE2, 0x7B, 0x4E, 0x45, 0xAF, 0xCB, 0x0B, 0x67, 0x4D },
[EsCommonKeyType_Unknown2] = { 0x42, 0x64, 0x0B, 0xE3, 0x5F, 0xC6, 0xBE, 0x47, 0xC7, 0xB4, 0x84, 0xC5, 0xEB, 0x63, 0xAA, 0x02 },
}; };
constexpr u64 InvalidAsyncKey = 0; constexpr u64 InvalidAsyncKey = 0;