SPL services: Difference between revisions

add some spl:ldn cmd details
(S2) spl:ldn: Moved to the ldn page.
 
(One intermediate revision by one other user not shown)
Line 517: Line 517:


The below 7000+ cmds take a KeySource (equivalent to NX-GenerateAesKey) and an u32. Bitmask 0x1F of the u32 is the Generation, 0x20 is valid but doesn't seem to do anything. Values >=0x21 throw error. A 0x10-byte outbuf is used for the output key. Cmd7004/Cmd7005 use a 0x20-byte outbuf. These are equivalent to GenerateAesKek+GenerateAesKey combined.
The below 7000+ cmds take a KeySource (equivalent to NX-GenerateAesKey) and an u32. Bitmask 0x1F of the u32 is the Generation, 0x20 is valid but doesn't seem to do anything. Values >=0x21 throw error. A 0x10-byte outbuf is used for the output key. Cmd7004/Cmd7005 use a 0x20-byte outbuf. These are equivalent to GenerateAesKek+GenerateAesKey combined.
With Nx commands, valid key generations match what's expected for S1. With Ounce commands, the valid key generations on 20.x are 0/1.


All of these use AES-ECB with the input KeySource, with the buffer as the output.
All of these use AES-ECB with the input KeySource, with the buffer as the output.
Line 553: Line 555:
Takes an input 32-byte '''KeySource''', an input u32, and an output type-0xA buffer '''AesKey'''.
Takes an input 32-byte '''KeySource''', an input u32, and an output type-0xA buffer '''AesKey'''.


Ounce version of [[#GenerateNxAdvertiseKey|GenerateNxAdvertiseKey]]. [[LDN_services|ldn]] only uses the first 0x10-bytes of the output key.
Ounce version of [[#GenerateNxAdvertiseKey|GenerateNxAdvertiseKey]].


== GenerateOunceSessionKey ==
== GenerateOunceSessionKey ==
Line 560: Line 562:
Takes an input 32-byte '''KeySource''', an input u32, and an output type-0xA buffer '''AesKey'''.
Takes an input 32-byte '''KeySource''', an input u32, and an output type-0xA buffer '''AesKey'''.


Ounce version of [[#GenerateNxSessionKey|GenerateNxSessionKey]]. [[LDN_services|ldn]] only uses the first 0x10-bytes of the output key.
Ounce version of [[#GenerateNxSessionKey|GenerateNxSessionKey]].


[[Category:Services]]
[[Category:Services]]