public static byte[] toTransfer(SecretKey key) { byte[] b = new byte[32]; System.arraycopy(key.getEncoded(), 0, b, 0, 16); System.arraycopy(MD5.create().update(key.getEncoded()).asBytes(), 0, b, 16, 16); return b; }
public static byte[] toTransfer(SecretKey key) { byte[] b = new byte[32]; System.arraycopy(key.getEncoded(), 0, b, 0, 16); System.arraycopy(MD5.create().update(key.getEncoded()).asBytes(), 0, b, 16, 16); return b; }
public String getStringToTransfer() { String s = publicKey.toString() + "\n" + modulus; s = s + "\n" + MD5.create().update(s).asString(); return s; }
public String getStringToTransfer() { String s = publicKey.toString() + "\n" + modulus; s = s + "\n" + MD5.create().update(s).asString(); return s; }
private String sign(String timestamp, String secret) { return MD5.create().update(timestamp + secret).asString(); }
public static Session create() { Session session = new Session(); String id; do { id = MD5.create().update(String.valueOf(random.nextInt(Integer.MAX_VALUE))).asString(); } while (!cache.putIfAbsent(id, session)); session.id = id; return session; }
public static SecretKey generateKeyAsMD5(String key) { return generateKey(MD5.create().update(key).asBytes()); }
public static SecretKey generateKeyAsMD5(String key) { return generateKey(MD5.create().update(key).asBytes()); }
public String generateToken(Request request) { String auth = request.header(Header.KEY_AUTHORIZATION); if (auth == null) return request.paramWithDefault("token", ""); byte[] token = new byte[40]; // 16+16+8 MD5.create().update(getUser(request)).asBytes(token, 0); // key BytesHolder secret = hashes.get(new BytesHolder(token, 0, 16)); long timestamp = System.currentTimeMillis() + ttl; BytesTools.toBytes(timestamp, token, 32, 8); MD5.create().update(token, 32, 8).update(secret.bytes).asBytes(token, 16); return Base64.encodeToString(token, false, true); }
public void prepareBenchmark() { File dir = new File("/tmp/httpBenchmark"); dir.mkdirs(); Random random = new Random(); for (int i = 0; i < 100; i++) { StringBuilder sb = new StringBuilder(); sb.append("GET /1 HTTP/1.1\r\n"); sb.append("Connection: Keep-Alive\r\n"); sb.append("Host: localhost\r\n"); for (int j = 0; j < 50; j++) { sb.append(MD5.create().update(String.valueOf(random.nextInt())).asString()); sb.append(": "); sb.append(MD5.create().update(String.valueOf(random.nextInt())).asString()); sb.append("\r\n"); } sb.append("\r\n"); FileTools.text(new File(dir, "" + i), sb.toString()); } } }
@Override public void onMessage(Message message) { md5Holder.set(MD5.create().update(message.asBytes()).asString()); } };
@Override public void onMessage(Message message) { md5Holder.set(MD5.create().update(message.asBytes()).asString()); } };
@Override public void onMessage(Message message) { md5Holder.set(MD5.create().update(message.asBytes()).asString()); } };
@Override public void onMessage(Message message) { md5Holder.set(MD5.create().update(message.asBytes()).asString()); } };
@Override public void onMessage(Message message) { md5Holder.set(MD5.create().update(message.asBytes()).asString()); } };
@Test public void simpeTest() { for (int i = 0; i < 100; i++) { byte[] data1 = new byte[117]; Random random = new Random(); random.nextBytes(data1); String md5 = MD5.create().update(data1).asString(); RSA rsa = new RSA(1024); byte[] enc = rsa.encrypt(data1); Assert.assertNotSame(md5, MD5.create().update(enc).asString()); byte[] dec = rsa.decrypt(enc, data1.length); System.out.println(Arrays.toString(data1)); System.out.println(Arrays.toString(dec)); Assert.assertEquals(md5, MD5.create().update(dec).asString()); } } }
@Test public void simpeTest() { for (int i = 0; i < 100; i++) { byte[] data1 = new byte[1024 * 1024]; Random random = new Random(); random.nextBytes(data1); String md5 = MD5.create().update(data1).asString(); AES aes = new AES("ololo key"); byte[] enc = aes.encrypt(data1); Assert.assertNotSame(md5, MD5.create().update(enc).asString()); aes = new AES("ololo key"); byte[] dec = aes.decrypt(enc); Assert.assertEquals(md5, MD5.create().update(dec).asString()); } } }
@Test public void test_multipart_1() throws IOException { handler = new MultipartHandler((request, response) -> { String foo = request.entry("foo").asString(); String bar = request.entry("bar").asString(); String fileMD5 = MD5.create().update(request.entry("file").asBytes()).asString(); return response.setBody(foo + "-" + bar + "-" + fileMD5); }); byte[] data = new byte[2 * 1024 * 1024]; new Random().nextBytes(data); for (int i = 0; i < 10; i++) { com.wizzardo.tools.http.Response response = makeRequest("/") .param("foo", "foo") .param("bar", "bar") .addByteArray("file", data, "file") .execute(); Assert.assertEquals(200, response.getResponseCode()); Assert.assertEquals("foo-bar-" + MD5.create().update(data).asString(), response.asString()); } }