From 8b250c2645c1b8b6268823c4b6f18d1950547dbe Mon Sep 17 00:00:00 2001 From: Peter Boraros Date: Wed, 9 Nov 2011 05:13:47 +0100 Subject: [PATCH] CrackerCore is now capable to store stats. --- .gitignore | 1 + src/cz/cvut/keyczar/homework/CrackerCore.java | 4 ++-- src/cz/cvut/keyczar/homework/HmacCracker.java | 3 ++- 3 files changed, 5 insertions(+), 3 deletions(-) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..eb5a316 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +target diff --git a/src/cz/cvut/keyczar/homework/CrackerCore.java b/src/cz/cvut/keyczar/homework/CrackerCore.java index eef581d..886ceb4 100644 --- a/src/cz/cvut/keyczar/homework/CrackerCore.java +++ b/src/cz/cvut/keyczar/homework/CrackerCore.java @@ -5,13 +5,13 @@ import java.util.ArrayList; import java.util.List; public class CrackerCore { - public static int[] select(List stats) { - // each item of the stats must have length exactly Byte.MAX_VALUE + public int[] select(List stats, byte[] hmac) { double[] means = Stats.mean(stats); ArrayList idx = new ArrayList(); // TODO: implement your code here ************************** + // you can store your stats for (int i = 0; i< means.length; i++) { // for each byte test the condition idx.add(i); diff --git a/src/cz/cvut/keyczar/homework/HmacCracker.java b/src/cz/cvut/keyczar/homework/HmacCracker.java index ee85704..13140b7 100644 --- a/src/cz/cvut/keyczar/homework/HmacCracker.java +++ b/src/cz/cvut/keyczar/homework/HmacCracker.java @@ -27,6 +27,7 @@ public class HmacCracker implements Runnable { byte[] hmac; int maxIterations; int totalIterations = 0; + CrackerCore core = new CrackerCore(); public HmacCracker(OutputStream outputStream, InputStream inputStream, int iMax, byte[] signature, char[] msg) { this.outputStream = outputStream; @@ -124,7 +125,7 @@ public class HmacCracker implements Runnable { statsPool.add(Arrays.copyOf(stats, stats.length)); maxIt--; } - int[] bestM = CrackerCore.select(statsPool); + int[] bestM = core.select(statsPool, hmac); if (bestM == null) { bin = bin*2; System.out.print("#"); // we need to collect more stats