Security Engine
Jump to navigation
Jump to search
The Nintendo Switch uses Tegra's Security Engine (SE) for handling cryptographic opearations at the system's lowest level.
Registers
Erista only has one SE driver which is mapped to physical address 0x70012000 with a total size of 0x2000 bytes.
Mariko has two SE drivers which are mapped to physical addresses 0x70012000 (SE1) and 0x70412000 (SE2), each with a total size of 0x2000 bytes.
Name | Address (Erista SE) | Address (Mariko SE1) | Address (Mariko SE2) |
---|---|---|---|
SE_SE_SECURITY | 0x70012000 | 0x70012000 | 0x70412000 |
SE_TZRAM_SECURITY | 0x70012004 | 0x70012004 | 0x70412004 |
SE_OPERATION | 0x70012008 | 0x70012008 | 0x70412008 |
SE_INT_ENABLE | 0x7001200C | 0x7001200C | 0x7041200C |
SE_INT_STATUS | 0x70012010 | 0x70012010 | 0x70412010 |
SE_CONFIG | 0x70012014 | 0x70012014 | 0x70412014 |
SE_IN_LL_ADDR | 0x70012018 | 0x70012018 | 0x70412018 |
SE_IN_CUR_BYTE_ADDR | 0x7001201C | 0x7001201C | 0x7041201C |
SE_IN_CUR_LL_ID | 0x70012020 | 0x70012020 | 0x70412020 |
SE_OUT_LL_ADDR | 0x70012024 | 0x70012024 | 0x70412024 |
SE_OUT_CUR_BYTE_ADDR | 0x70012028 | 0x70012028 | 0x70412028 |
SE_OUT_CUR_LL_ID | 0x7001202C | 0x7001202C | 0x7041202C |
SE_HASH_RESULT_0 | 0x70012030 | 0x70012030 | 0x70412030 |
SE_HASH_RESULT_1 | 0x70012034 | 0x70012034 | 0x70412034 |
SE_HASH_RESULT_2 | 0x70012038 | 0x70012038 | 0x70412038 |
SE_HASH_RESULT_3 | 0x7001203C | 0x7001203C | 0x7041203C |
SE_HASH_RESULT_4 | 0x70012040 | 0x70012040 | 0x70412040 |
SE_HASH_RESULT_5 | 0x70012044 | 0x70012044 | 0x70412044 |
SE_HASH_RESULT_6 | 0x70012048 | 0x70012048 | 0x70412048 |
SE_HASH_RESULT_7 | 0x7001204C | 0x7001204C | 0x7041204C |
SE_HASH_RESULT_8 | 0x70012050 | 0x70012050 | 0x70412050 |
SE_HASH_RESULT_9 | 0x70012054 | 0x70012054 | 0x70412054 |
SE_HASH_RESULT_10 | 0x70012058 | 0x70012058 | 0x70412058 |
SE_HASH_RESULT_11 | 0x7001205C | 0x7001205C | 0x7041205C |
SE_HASH_RESULT_12 | 0x70012060 | 0x70012060 | 0x70412060 |
SE_HASH_RESULT_13 | 0x70012064 | 0x70012064 | 0x70412064 |
SE_HASH_RESULT_14 | 0x70012068 | 0x70012068 | 0x70412068 |
SE_HASH_RESULT_15 | 0x7001206C | 0x7001206C | 0x7041206C |
SE_CTX_SAVE_CONFIG | 0x70012070 | 0x70012070 | 0x70412070 |
SE_CTX_SAVE_AUTO | - | 0x70012074 | 0x70412074 |
SE_SHA_CONFIG | 0x70012200 | 0x70012200 | 0x70412200 |
SE_SHA_MSG_LENGTH_0 | 0x70012204 | 0x70012204 | 0x70412204 |
SE_SHA_MSG_LENGTH_1 | 0x70012208 | 0x70012208 | 0x70412208 |
SE_SHA_MSG_LENGTH_2 | 0x7001220C | 0x7001220C | 0x7041220C |
SE_SHA_MSG_LENGTH_3 | 0x70012210 | 0x70012210 | 0x70412210 |
SE_SHA_MSG_LEFT_0 | 0x70012214 | 0x70012214 | 0x70412214 |
SE_SHA_MSG_LEFT_1 | 0x70012218 | 0x70012218 | 0x70412218 |
SE_SHA_MSG_LEFT_2 | 0x7001221C | 0x7001221C | 0x7041221C |
SE_SHA_MSG_LEFT_3 | 0x70012220 | 0x70012220 | 0x70412220 |
SE_CRYPTO_SECURITY_PERKEY | 0x70012280 | 0x70012280 | 0x70412280 |
SE_CRYPTO_KEYTABLE_ACCESS_0 | 0x70012284 | 0x70012284 | 0x70412284 |
SE_CRYPTO_KEYTABLE_ACCESS_1 | 0x70012288 | 0x70012288 | 0x70412288 |
SE_CRYPTO_KEYTABLE_ACCESS_2 | 0x7001228C | 0x7001228C | 0x7041228C |
SE_CRYPTO_KEYTABLE_ACCESS_3 | 0x70012290 | 0x70012290 | 0x70412290 |
SE_CRYPTO_KEYTABLE_ACCESS_4 | 0x70012294 | 0x70012294 | 0x70412294 |
SE_CRYPTO_KEYTABLE_ACCESS_5 | 0x70012298 | 0x70012298 | 0x70412298 |
SE_CRYPTO_KEYTABLE_ACCESS_6 | 0x7001229C | 0x7001229C | 0x7041229C |
SE_CRYPTO_KEYTABLE_ACCESS_7 | 0x700122A0 | 0x700122A0 | 0x704122A0 |
SE_CRYPTO_KEYTABLE_ACCESS_8 | 0x700122A4 | 0x700122A4 | 0x704122A4 |
SE_CRYPTO_KEYTABLE_ACCESS_9 | 0x700122A8 | 0x700122A8 | 0x704122A8 |
SE_CRYPTO_KEYTABLE_ACCESS_10 | 0x700122AC | 0x700122AC | 0x704122AC |
SE_CRYPTO_KEYTABLE_ACCESS_11 | 0x700122B0 | 0x700122B0 | 0x704122B0 |
SE_CRYPTO_KEYTABLE_ACCESS_12 | 0x700122B4 | 0x700122B4 | 0x704122B4 |
SE_CRYPTO_KEYTABLE_ACCESS_13 | 0x700122B8 | 0x700122B8 | 0x704122B8 |
SE_CRYPTO_KEYTABLE_ACCESS_14 | 0x700122BC | 0x700122BC | 0x704122BC |
SE_CRYPTO_KEYTABLE_ACCESS_15 | 0x700122C0 | 0x700122C0 | 0x704122C0 |
SE_CRYPTO_CONFIG | 0x70012304 | 0x70012304 | 0x70412304 |
SE_CRYPTO_LINEAR_CTR_0 | 0x70012308 | 0x70012308 | 0x70412308 |
SE_CRYPTO_LINEAR_CTR_1 | 0x7001230C | 0x7001230C | 0x7041230C |
SE_CRYPTO_LINEAR_CTR_2 | 0x70012310 | 0x70012310 | 0x70412310 |
SE_CRYPTO_LINEAR_CTR_3 | 0x70012314 | 0x70012314 | 0x70412314 |
SE_CRYPTO_LAST_BLOCK | 0x70012318 | 0x70012318 | 0x70412318 |
SE_CRYPTO_KEYTABLE_ADDR | 0x7001231C | 0x7001231C | 0x7041231C |
SE_CRYPTO_KEYTABLE_DATA | 0x70012320 | 0x70012320 | 0x70412320 |
SE_CRYPTO_KEYTABLE_DST | 0x70012330 | 0x70012330 | 0x70412330 |
SE_RNG_CONFIG | 0x70012340 | 0x70012340 | 0x70412340 |
SE_RNG_SRC_CONFIG | 0x70012344 | 0x70012344 | 0x70412344 |
SE_RNG_RESEED_INTERVAL | 0x70012348 | 0x70012348 | 0x70412348 |
SE_RSA_CONFIG | 0x70012400 | 0x70012400 | 0x70412400 |
SE_RSA_KEY_SIZE | 0x70012404 | 0x70012404 | 0x70412404 |
SE_RSA_EXP_SIZE | 0x70012408 | 0x70012408 | 0x70412408 |
SE_RSA_SECURITY_PERKEY | 0x7001240C | 0x7001240C | 0x7041240C |
SE_RSA_KEYTABLE_ACCESS_0 | 0x70012410 | 0x70012410 | 0x70412410 |
SE_RSA_KEYTABLE_ACCESS_1 | 0x70012414 | 0x70012414 | 0x70412414 |
SE_RSA_KEYTABLE_ADDR | 0x70012420 | 0x70012420 | 0x70412420 |
SE_RSA_KEYTABLE_DATA | 0x70012424 | 0x70012424 | 0x70412424 |
SE_RSA_OUTPUT_0 | 0x70012428 | 0x70012428 | 0x70412428 |
SE_RSA_OUTPUT_1 | 0x7001242C | 0x7001242C | 0x7041242C |
SE_RSA_OUTPUT_2 | 0x70012430 | 0x70012430 | 0x70412430 |
SE_RSA_OUTPUT_3 | 0x70012434 | 0x70012434 | 0x70412434 |
SE_RSA_OUTPUT_4 | 0x70012438 | 0x70012438 | 0x70412438 |
SE_RSA_OUTPUT_5 | 0x7001243C | 0x7001243C | 0x7041243C |
SE_RSA_OUTPUT_6 | 0x70012440 | 0x70012440 | 0x70412440 |
SE_RSA_OUTPUT_7 | 0x70012444 | 0x70012444 | 0x70412444 |
SE_RSA_OUTPUT_8 | 0x70012448 | 0x70012448 | 0x70412448 |
SE_RSA_OUTPUT_9 | 0x7001244C | 0x7001244C | 0x7041244C |
SE_RSA_OUTPUT_10 | 0x70012450 | 0x70012450 | 0x70412450 |
SE_RSA_OUTPUT_11 | 0x70012454 | 0x70012454 | 0x70412454 |
SE_RSA_OUTPUT_12 | 0x70012458 | 0x70012458 | 0x70412458 |
SE_RSA_OUTPUT_13 | 0x7001245C | 0x7001245C | 0x7041245C |
SE_RSA_OUTPUT_14 | 0x70012460 | 0x70012460 | 0x70412460 |
SE_RSA_OUTPUT_15 | 0x70012464 | 0x70012464 | 0x70412464 |
SE_RSA_OUTPUT_16 | 0x70012468 | 0x70012468 | 0x70412468 |
SE_RSA_OUTPUT_17 | 0x7001246C | 0x7001246C | 0x7041246C |
SE_RSA_OUTPUT_18 | 0x70012470 | 0x70012470 | 0x70412470 |
SE_RSA_OUTPUT_19 | 0x70012474 | 0x70012474 | 0x70412474 |
SE_RSA_OUTPUT_20 | 0x70012478 | 0x70012478 | 0x70412478 |
SE_RSA_OUTPUT_21 | 0x7001247C | 0x7001247C | 0x7041247C |
SE_RSA_OUTPUT_22 | 0x70012480 | 0x70012480 | 0x70412480 |
SE_RSA_OUTPUT_23 | 0x70012484 | 0x70012484 | 0x70412484 |
SE_RSA_OUTPUT_24 | 0x70012488 | 0x70012488 | 0x70412488 |
SE_RSA_OUTPUT_25 | 0x7001248C | 0x7001248C | 0x7041248C |
SE_RSA_OUTPUT_26 | 0x70012490 | 0x70012490 | 0x70412490 |
SE_RSA_OUTPUT_27 | 0x70012494 | 0x70012494 | 0x70412494 |
SE_RSA_OUTPUT_28 | 0x70012498 | 0x70012498 | 0x70412498 |
SE_RSA_OUTPUT_29 | 0x7001249C | 0x7001249C | 0x7041249C |
SE_RSA_OUTPUT_30 | 0x700124A0 | 0x700124A0 | 0x704124A0 |
SE_RSA_OUTPUT_31 | 0x700124A4 | 0x700124A4 | 0x704124A4 |
SE_RSA_OUTPUT_32 | 0x700124A8 | 0x700124A8 | 0x704124A8 |
SE_RSA_OUTPUT_33 | 0x700124AC | 0x700124AC | 0x704124AC |
SE_RSA_OUTPUT_34 | 0x700124B0 | 0x700124B0 | 0x704124B0 |
SE_RSA_OUTPUT_35 | 0x700124B4 | 0x700124B4 | 0x704124B4 |
SE_RSA_OUTPUT_36 | 0x700124B8 | 0x700124B8 | 0x704124B8 |
SE_RSA_OUTPUT_37 | 0x700124BC | 0x700124BC | 0x704124BC |
SE_RSA_OUTPUT_38 | 0x700124C0 | 0x700124C0 | 0x704124C0 |
SE_RSA_OUTPUT_39 | 0x700124C4 | 0x700124C4 | 0x704124C4 |
SE_RSA_OUTPUT_40 | 0x700124C8 | 0x700124C8 | 0x704124C8 |
SE_RSA_OUTPUT_41 | 0x700124CC | 0x700124CC | 0x704124CC |
SE_RSA_OUTPUT_42 | 0x700124D0 | 0x700124D0 | 0x704124D0 |
SE_RSA_OUTPUT_43 | 0x700124D4 | 0x700124D4 | 0x704124D4 |
SE_RSA_OUTPUT_44 | 0x700124D8 | 0x700124D8 | 0x704124D8 |
SE_RSA_OUTPUT_45 | 0x700124DC | 0x700124DC | 0x704124DC |
SE_RSA_OUTPUT_46 | 0x700124E0 | 0x700124E0 | 0x704124E0 |
SE_RSA_OUTPUT_47 | 0x700124E4 | 0x700124E4 | 0x704124E4 |
SE_RSA_OUTPUT_48 | 0x700124E8 | 0x700124E8 | 0x704124E8 |
SE_RSA_OUTPUT_49 | 0x700124EC | 0x700124EC | 0x704124EC |
SE_RSA_OUTPUT_50 | 0x700124F0 | 0x700124F0 | 0x704124F0 |
SE_RSA_OUTPUT_51 | 0x700124F4 | 0x700124F4 | 0x704124F4 |
SE_RSA_OUTPUT_52 | 0x700124F8 | 0x700124F8 | 0x704124F8 |
SE_RSA_OUTPUT_53 | 0x700124FC | 0x700124FC | 0x704124FC |
SE_RSA_OUTPUT_54 | 0x70012500 | 0x70012500 | 0x70412500 |
SE_RSA_OUTPUT_55 | 0x70012504 | 0x70012504 | 0x70412504 |
SE_RSA_OUTPUT_56 | 0x70012508 | 0x70012508 | 0x70412508 |
SE_RSA_OUTPUT_57 | 0x7001250C | 0x7001250C | 0x7041250C |
SE_RSA_OUTPUT_58 | 0x70012510 | 0x70012510 | 0x70412510 |
SE_RSA_OUTPUT_59 | 0x70012514 | 0x70012514 | 0x70412514 |
SE_RSA_OUTPUT_60 | 0x70012518 | 0x70012518 | 0x70412518 |
SE_RSA_OUTPUT_61 | 0x7001251C | 0x7001251C | 0x7041251C |
SE_RSA_OUTPUT_62 | 0x70012520 | 0x70012520 | 0x70412520 |
SE_RSA_OUTPUT_63 | 0x70012524 | 0x70012524 | 0x70412524 |
SE_TZRAM_OPERATION | - | 0x70012540 | - |
SE_STATUS | 0x70012800 | 0x70012800 | 0x70412800 |
SE_ERR_STATUS | 0x70012804 | 0x70012804 | 0x70412804 |
SE_MISC | 0x70012808 | 0x70012808 | 0x70412808 |
SE_SPARE | 0x7001280C | 0x7001280C | 0x7041280C |
SE_ENTROPY_DEBUG_COUNTER | 0x70012810 | 0x70012810 | 0x70412810 |