diff --git a/build/CodeGen/IncludedKeys.txt b/build/CodeGen/IncludedKeys.txt index 36debb10..d06c7935 100644 --- a/build/CodeGen/IncludedKeys.txt +++ b/build/CodeGen/IncludedKeys.txt @@ -19,6 +19,7 @@ master_kek_source_0b = 8467B67F1311AEE6589B19AF136C807A master_kek_source_0c = 683BCA54B86F9248C305768788707923 master_kek_source_0d = F013379AD56351C3B49635BC9CE87681 master_kek_source_0e = 6E7786AC830A8D3E7DB766A022B76E67 +master_kek_source_0f = 99220957A7F95E94FE787F41D6E756E6 mariko_master_kek_source_05 = 77605AD2EE6EF83C3F72E2599DAC5E56 mariko_master_kek_source_06 = 1E80B8173EC060AA11BE1A4AA66FE4AE @@ -30,6 +31,7 @@ mariko_master_kek_source_0b = E541ACECD1A7D1ABED0377F127CAF8F1 mariko_master_kek_source_0c = 52719BDFA78B61D8D58511E48E4F74C6 mariko_master_kek_source_0d = D268C6539D94F9A8A5A8A7C88F534B7A mariko_master_kek_source_0e = EC61BC821E0F5AC32B643F9DD619222D +mariko_master_kek_source_0f = A5EC16391A3016082ECF096F5E7CEEA9 mariko_master_kek_source_dev_05 = 32C0976B636D4464F23AA5C0DE46CCE9 mariko_master_kek_source_dev_06 = CC974C462A0CB0A6C9C0B7BE302EC368 @@ -41,6 +43,7 @@ mariko_master_kek_source_dev_0b = 752D2EF32F3FFE65F4A983B4ED4263BA mariko_master_kek_source_dev_0c = 4D5AB2C9E9E44EA4D3BF94123630D07F mariko_master_kek_source_dev_0d = EC5EB511D5431E6A4E546FD4D322CE87 mariko_master_kek_source_dev_0e = 18A56FEF721162C51A14F18C218327B7 +mariko_master_kek_source_dev_0f = 3A9CF0397023F6AF714460F46DEDA1D6 master_key_source = D8A2410AC6C59001C61D6A267C513F3C diff --git a/src/LibHac/Common/Keys/KeyDerivation.cs b/src/LibHac/Common/Keys/KeyDerivation.cs index 10556fc2..8a87b35d 100644 --- a/src/LibHac/Common/Keys/KeyDerivation.cs +++ b/src/LibHac/Common/Keys/KeyDerivation.cs @@ -309,6 +309,7 @@ private static ReadOnlySpan MasterKeyVectors(KeySet s) => 0x8A, 0xCE, 0xC4, 0x7F, 0xBE, 0x08, 0x61, 0x88, 0xD3, 0x73, 0x64, 0x51, 0xE2, 0xB6, 0x53, 0x15, // Master key 0B encrypted with Master key 0C. 0x08, 0xE0, 0xF4, 0xBE, 0xAA, 0x6E, 0x5A, 0xC3, 0xA6, 0xBC, 0xFE, 0xB9, 0xE2, 0xA3, 0x24, 0x12, // Master key 0C encrypted with Master key 0D. 0xD6, 0x80, 0x98, 0xC0, 0xFA, 0xC7, 0x13, 0xCB, 0x93, 0xD2, 0x0B, 0x82, 0x4C, 0xA1, 0x7B, 0x8D, // Master key 0D encrypted with Master key 0E. + 0x78, 0x66, 0x19, 0xBD, 0x86, 0xE7, 0xC1, 0x09, 0x9B, 0x6F, 0x92, 0xB2, 0x58, 0x7D, 0xCF, 0x26, // Master key 0E encrypted with Master key 0F. }; private static ReadOnlySpan MasterKeyVectorsProd => new byte[] @@ -328,6 +329,7 @@ private static ReadOnlySpan MasterKeyVectors(KeySet s) => 0xA3, 0x24, 0x65, 0x75, 0xEA, 0xCC, 0x6E, 0x8D, 0xFB, 0x5A, 0x16, 0x50, 0x74, 0xD2, 0x15, 0x06, // Master key 0B encrypted with Master key 0C. 0x83, 0x67, 0xAF, 0x01, 0xCF, 0x93, 0xA1, 0xAB, 0x80, 0x45, 0xF7, 0x3F, 0x72, 0xFD, 0x3B, 0x38, // Master key 0C encrypted with Master key 0D. 0xB1, 0x81, 0xA6, 0x0D, 0x72, 0xC7, 0xEE, 0x15, 0x21, 0xF3, 0xC0, 0xB5, 0x6B, 0x61, 0x6D, 0xE7, // Master key 0D encrypted with Master key 0E. + 0xAF, 0x11, 0x4C, 0x67, 0x17, 0x7A, 0x52, 0x43, 0xF7, 0x70, 0x2F, 0xC7, 0xEF, 0x81, 0x72, 0x16, // Master key 0E encrypted with Master key 0F. }; private static void DerivePerConsoleKeys(KeySet s) diff --git a/src/LibHac/Common/Utilities.cs b/src/LibHac/Common/Utilities.cs index 65b08210..a064e004 100644 --- a/src/LibHac/Common/Utilities.cs +++ b/src/LibHac/Common/Utilities.cs @@ -293,7 +293,8 @@ public static void MemDump(this StringBuilder sb, string prefix, byte[] data) 0xB => "12.1.0", 0xC => "13.0.0-13.2.1", 0xD => "14.0.0-14.1.2", - 0xE => "15.0.0-", + 0xE => "15.0.0-15.0.1", + 0xF => "16.0.0-", _ => "Unknown" };