Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <stdint.h>
- uint32_t reverse_bytes(uint32_t bytes)
- {
- uint32_t aux = 0;
- uint8_t byte;
- int i;
- for(i = 0; i < 32; i+=8)
- {
- byte = (bytes >> i) & 0xff;
- aux |= byte << (32 - 8 - i);
- }
- return aux;
- }
- void print_hex(unsigned char *s)
- {
- while(*s)
- printf("%02x", (unsigned int) *s++);
- printf("\n");
- }
- unsigned char *generate_random(unsigned char *data, int len, int seed)
- {
- int i, num;
- srand(seed);
- for (i=0; i<(len/4); i++) {
- num = reverse_bytes(rand());
- //*((int *)data) = num;
- memcpy(data,&num,sizeof(num));
- data += 4;
- }
- i = len % 4;
- if (i > 0) {
- num = rand();
- memcpy(data, &num, i);
- }
- return data+len;
- }
- int main (void) {
- int seed;
- unsigned char *out;
- printf("Генерация E-Nonce/E-S1/E-S2 для Netis\n");
- printf("Введите seed: ");
- fflush(stdout);
- scanf("%d", &seed);
- generate_random(out, 16, seed);
- print_hex(out);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment