Project_CTR icon indicating copy to clipboard operation
Project_CTR copied to clipboard

Feature Request: Verify all hashes in a cart dump

Open mariomadproductions opened this issue 2 years ago • 4 comments
trafficstars

Currently, some hashes are not verified in a cart dump (CCI/3DS) file. It would be useful for detecting bad dumps (e.g. bad reads due to dirty contacts) if all the different hashes were verified.

mariomadproductions avatar Feb 23 '23 14:02 mariomadproductions

Did you try the -y option? As far as i know it verifies everything already.

profi200 avatar Feb 23 '23 14:02 profi200

It seems to calculate the hash of the RomFS without actually comparing it with the hash in the header. It didn't notice that the hash in the header is corrupted in the ROM I have.

mariomadproductions avatar Feb 23 '23 14:02 mariomadproductions

You previous issue created on this topic references data being different between the romfs superblock hash in the duplicate header 0x1100-0x11FF. That data isn’t hashed. Infact nothing between 0x200-0x3FFF is hashed(with the exception of initial data) is hashed. It’s not the source of truth regarding the ncch header.

jakcron avatar Feb 24 '23 00:02 jakcron

Ah, so you mean that on a real 3DS, the RomFS is not checked against the hash in this duplicate header, and the duplicate header itself is not check against any hash?

I guess then this issue is a feature request for the actual header and duplicate header to be compared. Although I suppose if the 3DS itself doesn't check for this, then theoretically a good cart dump could have this difference, so this should probably just output a warning rather than an error.

mariomadproductions avatar Feb 24 '23 14:02 mariomadproductions