In memory of Ben “bushing” Byer, who passed away on Monday, February 8th, 2016.

Difference between revisions of "/dev/sha"

From WiiBrew
Jump to navigation Jump to search
Line 2: Line 2:
 
'''/dev/sha''' is an IPC interface for the [[Hardware/SHA-1 engine | SHA-1 engine]] that accepts IOS_Open, IOS_Close & IOCTLV commands.
 
'''/dev/sha''' is an IPC interface for the [[Hardware/SHA-1 engine | SHA-1 engine]] that accepts IOS_Open, IOS_Close & IOCTLV commands.
  
Internally in IOS, it ''usually'' has an internal FD of 0x10001. despite this, it is better to do an IOS_Open when using this resource.   
+
Internally in IOS, it uses 2 FDs: one of 0x10001 normally calculating SHA-1 hashes and 0x10002 when dealing with HMAC key hashes (also based on SHA). Despite this, it is better to do an IOS_Open when using this resource.   
  
 
== /dev/sha IOS_Ioctlv ==
 
== /dev/sha IOS_Ioctlv ==

Revision as of 07:55, 29 December 2022

/dev/sha is an IPC interface for the SHA-1 engine that accepts IOS_Open, IOS_Close & IOCTLV commands.

Internally in IOS, it uses 2 FDs: one of 0x10001 normally calculating SHA-1 hashes and 0x10002 when dealing with HMAC key hashes (also based on SHA). Despite this, it is better to do an IOS_Open when using this resource.

/dev/sha IOS_Ioctlv

number Description in count out count vector vector length
0x00 ? ? ? ? ?
0x01 ? ? ? ? ?
0x02 ? ? ? ? ?
0x03 ? ? ? ? ?
0x04 ? ? ? ? ?
0x0F some sort of H0,H1,H2 verifying ? ? ? ?