Certificates: Difference between revisions
Created page with "== Overview == Certificates contain cryptography information for verifying Signatures. These certificates are also signed. Each certificate follows the following format: {| cla..." |
No edit summary |
||
Line 1: | Line 1: | ||
== Overview == | == Overview == | ||
Certificates contain cryptography information for verifying Signatures. These certificates are also signed. | Certificates contain cryptography information for verifying Signatures. These certificates are also signed. The parent/child relationship between certificates, makes all the certificates effectively signed by 'Root', the public key for which is stored in NATIVE_FIRM. | ||
The signature method used to sign the certificate can be determined by checking the Signature Type: | |||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
! | ! Value | ||
! Signature Method | |||
! Signature Size (X) | |||
|- | |||
| 0x010000 | |||
| RSA_4096 SHA1 | |||
| 0x200 | |||
|- | |||
| 0x010001 | |||
| RSA_2048 SHA1 | |||
| 0x100 | |||
|- | |- | ||
| | | 0x010002 | ||
| Elliptic Curve | |||
| 0x40 | |||
|- | |- | ||
| | | 0x010003 | ||
| RSA_4096 SHA256 | |||
| 0x200 | |||
|- | |- | ||
| | | 0x010004 | ||
| RSA_2048 SHA256 | |||
| 0x100 | |||
|} | |} | ||
== | == Format == | ||
{| class="wikitable" | {| class="wikitable" | ||
Line 28: | Line 44: | ||
|- | |- | ||
| 0x4 | | 0x4 | ||
| | | X | ||
| Signature | | Signature | ||
|- | |- | ||
| | | 0x4 + X | ||
| 0x3C | | 0x3C | ||
| Padding | | Padding | ||
|- | |- | ||
| 0x40 + X | |||
| | |||
| 0x40 | | 0x40 | ||
| Issuer | | Issuer | ||
|- | |- | ||
| | | 0x80 + X | ||
| 0x4 | | 0x4 | ||
| | | Key Type? | ||
|- | |- | ||
| | | 0x84 + X | ||
| 0x40 | | 0x40 | ||
| Name | | Name | ||
|- | |- | ||
| | | 0xC4 + X | ||
| 0x4 | | 0x4 | ||
| Unknown | | Unknown | ||
|- | |||
| 0xC8 + X | |||
| | |||
| Public Key | |||
|} | |} | ||
== Key | == Public Key == | ||
=== RSA === | === RSA === |