Linux динамический код ядра c измерение с помощью sha256 - PullRequest
0 голосов
/ 27 мая 2020

Недавно я хочу реализовать функцию: Dynami c Измерьте код ядра: [_ stext, _etext] с помощью sha256, я создаю поток ядра для выполнения измерения и cal c ha sh of код ядра каждые 2 секунды, я думаю, что ha sh не следует менять, но во время последовательности загрузки ha sh был изменен, поэтому я очень запутался. и я использую следующий код для вызова c ха sh:

void CalcKernelCodeHash(char *KernelHash)
{ 
//struct mm_struct *mm = &init_mm; 
int CodeLength = _etext - _stext; 
unsigned long kernel_start_address = (unsigned long)_stext; 
int i = 0;

if(NULL == KernelHash)
{
    pr_info("KernelHash is Null\n");
    return;
}


mbedtls_sha256((char *)(kernel_start_address), CodeLength, KernelHash, 0);
}
...