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
(Lead section cleanup and mentioned the special FD)
(there is an undocumented command 0, purpose is still unknown)
Line 1: Line 1:
 
{{stub}}
 
{{stub}}
'''/dev/aes''' is an IPC interface for the [[Hardware/AES engine | AES engine]]. It can be accessed either by opening the device or by using FD 0x10000.
+
'''/dev/aes''' is an IPC interface for the [[Hardware/AES engine | AES engine]].
 
 
 
It accepts open, close, ioctlv.
 
It accepts open, close, ioctlv.
  
Line 12: Line 11:
 
! style="vertical-align: top;" |vector
 
! style="vertical-align: top;" |vector
 
! style="vertical-align: top;" |vector length
 
! style="vertical-align: top;" |vector length
 +
|-
 +
| style="vertical-align: top;" rowspan="1" | 0x00
 +
| style="vertical-align: top;" rowspan="1" | Unknown
 +
| style="vertical-align: top;" rowspan="1" | ?
 +
| style="vertical-align: top;" rowspan="1" | ?
 +
| style="vertical-align: top;" rowspan="1" | ?
 +
| style="vertical-align: top;" rowspan="1" | ?
 
|-
 
|-
 
| style="vertical-align: top;" rowspan="4" | 0x02
 
| style="vertical-align: top;" rowspan="4" | 0x02

Revision as of 14:20, 20 November 2022

/dev/aes is an IPC interface for the AES engine. It accepts open, close, ioctlv.

/dev/aes IOS_Ioctlv

number Description in count out count vector vector length
0x00 Unknown ? ? ? ?
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