diff --git a/src/encryptor.c b/src/encryptor.c index 276ba13..942bfba 100644 --- a/src/encryptor.c +++ b/src/encryptor.c @@ -2,6 +2,7 @@ #include #include #include +#include #include "hwinfo.h" #include "util.h" @@ -63,6 +64,23 @@ int main(int argc, char** argv) { struct AES_ctx ctx; uint8_t nonce[16] = {0}; + time_t ts = time(NULL); + srand(ts); + + for (size_t i = 0; i < sizeof(nonce); i+= 4) { + uint32_t random = rand(); + nonce[i + 0] = random & 0xFF; + nonce[i + 1] = (random >> 8) & 0xFF; + nonce[i + 2] = (random >> 16) & 0xFF; + nonce[i + 3] = (random >> 24) & 0xFF; + } + + fprintf(stderr, "Nonce: "); + for (size_t i = 0; i < sizeof(nonce); i++) { + fprintf(stderr, "%02X", nonce[i]); + } + fprintf(stderr, "\n"); + FILE* license = fopen(input, "rb"); long data_start = ftell(license); fseek(license, 0, SEEK_END);