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

Difference between revisions of "/dev/aes"

From WiiBrew
Jump to navigation Jump to search
(there is an undocumented command 0, purpose is still unknown)
m (whoops, wrong button haha)
Tag: Undo
 
(4 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
{{stub}}
 
{{stub}}
'''/dev/aes''' is an IPC interface for the [[Hardware/AES engine | AES engine]].
+
'''/dev/aes''' is an IPC interface for the [[Hardware/AES engine | AES engine]] that accepts IOS_Open, IOS_Close & IOCTLV commands.
It accepts open, close, ioctlv.
+
 
 +
Internally in IOS, it ''usually'' has an internal FD of 0x10000. despite this, it is better to do an IOS_Open when using this resource.
  
 
== /dev/aes IOS_Ioctlv ==
 
== /dev/aes IOS_Ioctlv ==
Line 12: Line 13:
 
! style="vertical-align: top;" |vector length
 
! style="vertical-align: top;" |vector length
 
|-
 
|-
| style="vertical-align: top;" rowspan="1" | 0x00
+
| style="vertical-align: top;" rowspan="2" | 0x00
| style="vertical-align: top;" rowspan="1" | Unknown
+
| style="vertical-align: top;" rowspan="2" | Copy
| style="vertical-align: top;" rowspan="1" | ?
+
| style="vertical-align: top;" rowspan="2" | 1
| style="vertical-align: top;" rowspan="1" | ?
+
| style="vertical-align: top;" rowspan="2" | 1
| style="vertical-align: top;" rowspan="1" | ?
+
| style="vertical-align: top;" | input data (16-byte aligned)
| style="vertical-align: top;" rowspan="1" | ?
+
| style="vertical-align: top;" | -
 +
|-
 +
| style="vertical-align: top;" | output data (16-byte aligned)
 +
| style="vertical-align: top;" | -
 
|-
 
|-
 
| style="vertical-align: top;" rowspan="4" | 0x02
 
| style="vertical-align: top;" rowspan="4" | 0x02

Latest revision as of 11:28, 30 October 2024

/dev/aes is an IPC interface for the AES engine that accepts IOS_Open, IOS_Close & IOCTLV commands.

Internally in IOS, it usually has an internal FD of 0x10000. despite this, it is better to do an IOS_Open when using this resource.

/dev/aes IOS_Ioctlv

number Description in count out count vector vector length
0x00 Copy 1 1 input data (16-byte aligned) -
output data (16-byte aligned) -
0x02 Encrypt 2 2 input data (16-byte aligned) -
key 16 bytes
output data (16-byte aligned) same as input
initialization vector 16 bytes
0x03 Decrypt 2 2 input data (16-byte aligned) -
key 16 bytes
output data (16-byte aligned) same as input
initialization vector 16 bytes