1
0
Fork 0
mirror of https://github.com/CTCaer/hekate.git synced 2024-12-23 08:32:04 +00:00
hekate/bootloader/frontend
Stéphane Lesimple ee884add8c [Tools] implement hashfile generation on backup
Add a configuration option "Full w/ hashfile" to
the "verification" option menu, to enable hashfile
generation when doing full verification of a backup.

When enabled, during full backup verification we save the
chunk's SHA256 digest in a hashfile next to the output file
we're currently verifying.

The performance impact is negligible between "Full verify"
and "Full verify w/ hashfile", because we already
compute the SHA256 of the chunks when verifying.

We save the SHA256 per chunks (4 MB) because due to
SE limitations, we can't compute the SHA256 of the
whole partition (or rawnand).

On the other hand a pure software implementation
is way too slow to be bearable, even asm-optimized:
between 15 and 90 seconds per 4 MB chunk for
crc32/sha1/sha256, depending on the optimizations
and the actual algorithm.

The output hash file format is as follows:
 # chunksize: <CHUNKSIZE_IN_BYTES>
 sha256_of_chunk_1
 sha256_of_chunk_2
 ...
 sha256_of_chunk_N
2019-04-26 17:53:24 +02:00
..
fe_emmc_tools.c [Tools] implement hashfile generation on backup 2019-04-26 17:53:24 +02:00
fe_emmc_tools.h Major refactoring of main.c 2018-11-27 11:45:43 +02:00
fe_info.c [GFX] Finish ctxt global usage 2019-04-21 17:33:39 +03:00
fe_info.h Major refactoring of main.c 2018-11-27 11:45:43 +02:00
fe_tools.c [HOS] Add full 8.0.0 support 2019-04-21 17:37:12 +03:00
fe_tools.h Small fixes and whitespace 2019-02-12 00:34:35 +02:00