mboost-dp1
Kode-boks bug ved store kodestumper
- Forside
- ⟨
- Forum
- ⟨
- newz.dk
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.Arrays;
public class HashFinderMT {
private int nthr;
private byte[] valid;
private boolean done;
public HashFinderMT(int nthr, String valid) {
this.nthr = nthr;
this.valid = valid.getBytes();
done = false;
}
public void findHash(byte[] target) throws NoSuchAlgorithmException {
int len = 1;
while(!done) {
System.out.println("Checking all passwords of length " + len);
findHash(target, len);
len++;
}
}
public void findHash(byte[] target, int len) throws NoSuchAlgorithmException {
Thread[] t = new FinderThread[nthr];
int[] split = new int[nthr + 1];
for(int i = 0; i <= nthr; i++) {
split[i] = valid.length * i / nthr;
}
for(int i = 0; i < nthr; i++) {
t[i] = new FinderThread(split[i], split[i + 1] - 1, this, len, target);
}
for(int i = 0; i < nthr; i++) {
t[i].start();
}
for(int i = 0; i < nthr; i++) {
try {
t[i].join();
} catch (InterruptedException e) {
}
}
}
public byte[] getValid() {
return valid;
}
public boolean getDone() {
return done;
}
public void setDone(boolean done) {
this.done = done;
}
public static void main(String[] args) throws NoSuchAlgorithmException {
// Demo : find zzzzz blandt små bogstaver og tal
HashFinderMT hfmt = new HashFinderMT(4, "abcdefghijklmnopqrstuwvxyz0123456789");
hfmt.findHash(MessageDigest.getInstance("SHA-256&quo
t;).digest("zzzzz".getBytes()));
}
}
class FinderThread extends Thread {
private MessageDigest md;
private int start;
private int end;
private HashFinderMT hfmt;
private byte[] buf;
byte[] target;
byte[] valid;
public FinderThread(int start, int end, HashFinderMT hfmt, int len, byte[] target) throws NoSuchAlgorithmException {
md = MessageDigest.getInstance("SHA-256");
this.start = start;
this.end = end;
this.hfmt = hfmt;
buf = new byte[len];
this.target = target;
valid = hfmt.getValid();
}
public void run() {
for(int i = start; i <= end; i++) {
buf[0] = valid[i];
checkAllHash(buf, 1);
}
}
public void checkAllHash(byte[] buf, int ix) {
if(hfmt.getDone()) return;
if(ix < buf.length) {
for(int i = 0; i < valid.length; i++) {
buf[ix] = valid[i];
checkAllHash(buf, ix + 1);
}
} else {
checkHash(buf);
}
}
public void checkHash(byte[] pw) {
if(Arrays.equals(md.digest(pw), target)) {
System.out.println("Found match: " + new String(pw));
hfmt.setDone(true);
}
}
}
#9 Jace:
Vi sætter os ind i et privatfly med en masse strippere. Så tager vi en tur til Las Vegas, spiller alle pengene fra annoncerne op (og det er mange), finder nogle ludere, spiser noget god mad og når vi så kommer hjem sent søndag nat, bruger vi typisk en 5-10 minutter på at diskutere, hvordan vi generer brugerne mest muligt med nye tiltag. Og så skriver vi dem ned på en liste, vi siger, vi arbejder på...
Eller sådan burde det foregå. Indtil videre har det været lidt anderledes, og vi har trods alt gjort det nogle gange før. Det foregår lidt som et LAN, hvor Jonas (bonna), Henrik (hmn) og jeg mødes i newz.dk-bunkeren og arbejder, indtil vi går døde på de dele af møblementet, der er mest behageligt at ligge på. Det er typisk efter de weekender, folk oplever mærkelige ting, hvis deres browser ikke kan finde ud af at forny cachen.
Så der er chips, cola, Hustler, junk fra Pizza Express, en masse brok fra min side over, at jeg skal lave ting, der også virker i Safari og ellers en voldsom reduktion af punkterne på trac. Sådan kan vi lide det!
Vi sætter os ind i et privatfly med en masse strippere. Så tager vi en tur til Las Vegas, spiller alle pengene fra annoncerne op (og det er mange), finder nogle ludere, spiser noget god mad og når vi så kommer hjem sent søndag nat, bruger vi typisk en 5-10 minutter på at diskutere, hvordan vi generer brugerne mest muligt med nye tiltag. Og så skriver vi dem ned på en liste, vi siger, vi arbejder på...
Eller sådan burde det foregå. Indtil videre har det været lidt anderledes, og vi har trods alt gjort det nogle gange før. Det foregår lidt som et LAN, hvor Jonas (bonna), Henrik (hmn) og jeg mødes i newz.dk-bunkeren og arbejder, indtil vi går døde på de dele af møblementet, der er mest behageligt at ligge på. Det er typisk efter de weekender, folk oplever mærkelige ting, hvis deres browser ikke kan finde ud af at forny cachen.
Så der er chips, cola, Hustler, junk fra Pizza Express, en masse brok fra min side over, at jeg skal lave ting, der også virker i Safari og ellers en voldsom reduktion af punkterne på trac. Sådan kan vi lide det!
Vi har også engang prøvet, hvor Esben (amokk) og Morten (The-Lone-Gunman) var med. Der spillede vi Worms World Party!Hvilket jeg går ud fra er grunden til at jeg ikke bliver inviteret mere...
Opret dig som bruger i dag
Det er gratis, og du binder dig ikke til noget.
Når du er oprettet som bruger, får du adgang til en lang række af sidens andre muligheder, såsom at udforme siden efter eget ønske og deltage i diskussionerne.