pyctr.type.save.cmac module
- exception pyctr.type.save.cmac.CMACError[source]
Bases:
PyCTRErrorGeneric error for CMAC operations.
- exception pyctr.type.save.cmac.InvalidDataError[source]
Bases:
CMACErrorNot all the data was provided in the correct form.
- class pyctr.type.save.cmac.CMACTypeBase(magic, keyslot, *, crypto=None)[source]
Bases:
objectBase class for AES-CMAC types.
- Parameters:
magic (bytes)
keyslot (Keyslot)
crypto (CryptoEngine)
- set_crypto(crypto)[source]
- Parameters:
crypto (CryptoEngine)
- class pyctr.type.save.cmac.CTR_NOR0(new3ds=False, *, crypto=None)[source]
Bases:
CMACTypeBaseUsed for gamecard saves.
This isn’t well tested since I don’t have much experience with gamecard saves.
- Parameters:
new3ds (bool)
crypto (CryptoEngine)
- class pyctr.type.save.cmac.CTR_SIGN(title_id, *, crypto=None)[source]
Bases:
CMACTypeBaseUsed for SD savegames.
- Parameters:
title_id (bytes)
crypto (CryptoEngine)
- class pyctr.type.save.cmac.CTR_SYS0(save_id, *, crypto=None)[source]
Bases:
CMACTypeBaseUsed for system savedata.
- Parameters:
save_id (bytes)
crypto (CryptoEngine)
- class pyctr.type.save.cmac.CTR_EXT0(extdata_id, is_quota, device_file_name_id=0, device_directory_name_id=0, *, crypto=None)[source]
Bases:
CMACTypeBaseUsed for extdata.
- Parameters:
extdata_id (bytes)
is_quota (bool)
device_file_name_id (int)
device_directory_name_id (int)
crypto (CryptoEngine)
- class pyctr.type.save.cmac.CTR_9DB0(database_id, is_nand, *, crypto=None)[source]
Bases:
CMACTypeBaseUsed for title databases.
- Parameters:
database_id (int)
is_nand (bool)
crypto (CryptoEngine)