From cc56343a75297fa39b3d215804b6145ef00ff1ed Mon Sep 17 00:00:00 2001 From: Gregor Kleen Date: Tue, 19 Jan 2016 12:03:36 +0100 Subject: EiP 10.2 --- .../eip/blaetter/10/2/PasswordCrackerThread.java | 29 ++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 ws2015/eip/blaetter/10/2/PasswordCrackerThread.java (limited to 'ws2015/eip/blaetter/10/2/PasswordCrackerThread.java') diff --git a/ws2015/eip/blaetter/10/2/PasswordCrackerThread.java b/ws2015/eip/blaetter/10/2/PasswordCrackerThread.java new file mode 100644 index 0000000..dcc0656 --- /dev/null +++ b/ws2015/eip/blaetter/10/2/PasswordCrackerThread.java @@ -0,0 +1,29 @@ +import java.util.Formatter; + +public class PasswordCrackerThread implements Runnable { + + public final long rangeStart; + public final long rangeEnd; + + public final Synchronizer sync; + + public PasswordCrackerThread(Synchronizer s, long start, long end) + { + sync = s; + rangeStart = start; + rangeEnd = end; + } + + public void run() { + for (long i = rangeStart; i <= rangeEnd; i++) { + String guess = new Formatter().format("%8d", i).toString(); + String digest = SHA.encrypt(guess); + if (digest.equals(sync.targetHash)) { + synchronized (sync) { + sync.setSolution(i); + break; + } + } + } + } +} -- cgit v1.2.3