Difference between revisions of "Amiibo"

From 3dbrew
Jump to navigation Jump to search
Line 8: Line 8:
  
 
Most of the NFC pages are [[Process_Services_PXI|encrypted]]. This includes the actual Mii data for the owner, an UTF-16 string for the Amiibo nickname, etc.
 
Most of the NFC pages are [[Process_Services_PXI|encrypted]]. This includes the actual Mii data for the owner, an UTF-16 string for the Amiibo nickname, etc.
 +
 +
The NFC tag for Amiibo is NTAG215.
 +
 +
Each page is 4-bytes, the following is the structure of the NFC page:
 +
{| class="wikitable" border="1"
 +
|-
 +
!  NFC page
 +
!  Total pages
 +
!  Raw byte offset in EEPROM
 +
!  Total byte size
 +
!  Description
 +
|-
 +
| 0
 +
| 4
 +
| 0x10
 +
| 0x10
 +
| Same as standard NTAG215: 9-byte serial-number, "internal" u8 value, two lock bytes then the "Capability Container (CC)" page.
 +
|-
 +
| 4
 +
| 8
 +
| 0x10
 +
| 0x20
 +
| SHA256-HMAC over 0x1DF-bytes: first 3-bytes are from the last 3-bytes of page[12], the rest is over the first 0x1DC-bytes of the plaintext data following this hash(see page[13]).
 +
|-
 +
| 12
 +
| 1
 +
| 0x30
 +
| 0x4
 +
| Unknown. Last 3-bytes here are used with the above HMAC.
 +
|-
 +
| 13
 +
|
 +
| 0x34
 +
|
 +
| The system crypts 0x1A0-bytes starting here.
 +
|}

Revision as of 03:39, 15 April 2015

Amiibo are NFC figures made by Nintendo, used in games in different forms (different in each game). It can be used with the New3DS and the Old3DS with an IR peripheral.

Technical specifications

See also here.

Specifications can be found on this image, which is a compilation of screenshots made by scanning a Samus amiibo with the Android App "NFC TagInfo": Amiibonfctaginfo.png

Most of the NFC pages are encrypted. This includes the actual Mii data for the owner, an UTF-16 string for the Amiibo nickname, etc.

The NFC tag for Amiibo is NTAG215.

Each page is 4-bytes, the following is the structure of the NFC page:

NFC page Total pages Raw byte offset in EEPROM Total byte size Description
0 4 0x10 0x10 Same as standard NTAG215: 9-byte serial-number, "internal" u8 value, two lock bytes then the "Capability Container (CC)" page.
4 8 0x10 0x20 SHA256-HMAC over 0x1DF-bytes: first 3-bytes are from the last 3-bytes of page[12], the rest is over the first 0x1DC-bytes of the plaintext data following this hash(see page[13]).
12 1 0x30 0x4 Unknown. Last 3-bytes here are used with the above HMAC.
13 0x34 The system crypts 0x1A0-bytes starting here.