chg: cleaning out timing.

chg: makefile (piwi)
This commit is contained in:
iceman1001 2017-03-13 09:45:46 +01:00
commit 14d6c4fc34
6 changed files with 15 additions and 35 deletions

View file

@ -6,14 +6,16 @@ LDFLAGS =
OBJS = crapto1.o crypto1.o
HEADERS = crapto1.h
EXES = mfkey64 mfkey32 mfkey32v2
WINEXE = mfkey64.exe mfkey32.exe mfkey32v2.exe
LIBS =
WINEXE = $(patsubst %, %.exe, $(EXES))
all: $(OBJS) $(EXES) $(LIBS)
all: $(OBJS) $(EXES)
% : %.c $(OBJS)
$(LD) $(CFLAGS) -o $@ $< $(OBJS) $(LDFLAGS)
%.o : %.c
$(CC) $(CFLAGS) -c -o $@ $<
% : %.c
$(LD) $(CFLAGS) -o $@ $(OBJS) $<
clean:
rm -f $(OBJS) $(EXES) $(LIBS) $(WINEXE)
rm -f $(OBJS) $(EXES) $(WINEXE)

View file

@ -3,7 +3,6 @@
#include "crapto1.h"
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main (int argc, char *argv[]) {
struct Crypto1State *s,*t;
@ -44,9 +43,7 @@ int main (int argc, char *argv[]) {
uint32_t p64 = prng_successor(nt, 64);
printf(" nt': %08x\n", p64);
printf(" nt'': %08x\n", prng_successor(p64, 32));
clock_t t1 = clock();
// Extract the keystream from the messages
printf("\nKeystream used to generate {ar} and {at}:\n");
ks2 = ar0_enc ^ p64;
@ -66,7 +63,5 @@ int main (int argc, char *argv[]) {
break;}
}
free(s);
t1 = clock() - t1;
if ( t1 > 0 ) printf("Time : %.0f ticks \n", (float)t1);
return 0;
}

View file

@ -3,7 +3,6 @@
#include "crapto1.h"
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main (int argc, char *argv[]) {
struct Crypto1State *s,*t;
@ -50,7 +49,6 @@ int main (int argc, char *argv[]) {
printf(" nt': %08x\n", p64);
printf(" nt'': %08x\n", prng_successor(p64, 32));
clock_t t1 = clock();
// Extract the keystream from the messages
printf("\nKeystream used to generate {ar} and {at}:\n");
@ -58,7 +56,6 @@ int main (int argc, char *argv[]) {
printf(" ks2: %08x\n",ks2);
s = lfsr_recovery32(ar0_enc ^ p64, 0);
for(t = s; t->odd | t->even; ++t) {
lfsr_rollback_word(t, 0, 0);
@ -73,7 +70,5 @@ int main (int argc, char *argv[]) {
break;}
}
free(s);
t1 = clock() - t1;
if ( t1 > 0 ) printf("Time : %.0f ticks \n", (float)t1 );
return 0;
}

View file

@ -61,8 +61,6 @@ int main (int argc, char *argv[]) {
printf(" nt': %08x\n",prng_successor(nt, 64));
printf(" nt'': %08x\n",prng_successor(nt, 96));
clock_t t1 = clock();
// Extract the keystream from the messages
printf("\nKeystream used to generate {ar} and {at}:\n");
ks2 = ar_enc ^ prng_successor(nt, 64);
@ -97,8 +95,5 @@ int main (int argc, char *argv[]) {
crypto1_get_lfsr(revstate, &key);
printf("\nFound Key: [%012" PRIx64 "]\n\n", key);
crypto1_destroy(revstate);
t1 = clock() - t1;
if ( t1 > 0 ) printf("Time : %.0f ticks \n", (float)t1);
return 0;
}

View file

@ -6,12 +6,12 @@ LDFLAGS =
OBJS = crypto1.o crapto1.o
HEADERS = crapto1.h
EXES = nonce2key
WINEXES = nonce2key.exe
WINEXES = $(patsubst %, %.exe, $(EXES))
all: $(OBJS) $(EXES)
%.o : %.c
$(CC) $(CFLAGS) -o $@ $<
$(CC) $(CFLAGS) -c -o $@ $<
% : %.c
$(LD) $(LDFLAGS) -o $@ $(OBJS) $<

View file

@ -2,14 +2,12 @@
#define __STDC_FORMAT_MACROS
#include <inttypes.h>
#include <stdio.h>
#include <time.h>
typedef unsigned char byte_t;
int main(const int argc, const char* argv[]) {
struct Crypto1State *state;
uint32_t pos, uid, nt, nr, rr, nr_diff, ks1, ks2;
byte_t bt, i, ks3x[8], par[8][8];
uint64_t key, key_recovered;
uint32_t pos, uid, nt, nr, rr, nr_diff;
uint8_t bt, i, ks3x[8], par[8][8];
uint64_t key_recovered;
uint64_t par_info;
uint64_t ks_info;
nr = rr = 0;
@ -49,16 +47,11 @@ int main(const int argc, const char* argv[]) {
printf("%01x|\n", par[i][7]);
}
printf("+----+--------+---+-----+---------------+\n");
clock_t t1 = clock();
state = lfsr_common_prefix(nr,rr,ks3x,par);
lfsr_rollback_word(state,uid^nt,0);
crypto1_get_lfsr(state,&key_recovered);
printf("\nkey recovered: %012" PRIx64 "\n\n", key_recovered);
crypto1_destroy(state);
t1 = clock() - t1;
if ( t1 > 0 ) printf("Time in nonce2key: %.0f ticks \n", (float)t1);
return 0;
}