Package org.owasp.passfault

Examples of org.owasp.passfault.PathCost


  @Test
  public void onePattern_Middle() {
    PasswordAnalysis_Unoptimized pa = new PasswordAnalysis_Unoptimized("1234");
    pa.foundPattern(new PasswordPattern(1, 2, "23", 4, "testPattern"));
   
    PathCost patterns = pa.calculateHighestProbablePatterns();
   
    List<PasswordPattern> list = patterns.getPath();
    assertEquals(3, list.size());
    double result = patterns.getTotalCost()
    System.out.println("cost="+result);
    patterns.getTotalCost();
    double expected = Math.pow(10,2)*4;
    assertEquals(expected, result, 0.5);
  }
View Full Code Here


  @Test
  public void onePattern_End() {
    PasswordAnalysis_Unoptimized pa = new PasswordAnalysis_Unoptimized("1234");
    pa.foundPattern(new PasswordPattern(2, 2, "34", 4, "testPattern"));
   
    PathCost patterns = pa.calculateHighestProbablePatterns();
   
    List<PasswordPattern> list = patterns.getPath();
    assertEquals(2, list.size());
    double result = patterns.getTotalCost();   
    System.out.println("cost="+result);
    double expected = Math.pow(10,2)*4;
    assertEquals(expected, result, 0.5);
  }
View Full Code Here

  @Test
  public void onePattern_beginning() {
    PasswordAnalysis_Unoptimized pa = new PasswordAnalysis_Unoptimized("1234");
    pa.foundPattern(new PasswordPattern(0, 2, "12", 4, "testPattern"));
   
    PathCost patterns = pa.calculateHighestProbablePatterns();
   
    List<PasswordPattern> list = patterns.getPath();
    assertEquals(2, list.size());
    double result = patterns.getTotalCost();
    System.out.println("cost="+result);
    double expected = Math.pow(10,2)*4;
    assertEquals(expected, result, 0.5);
  }
View Full Code Here

  public void twoPattern_middle() {
    PasswordAnalysis_Unoptimized pa = new PasswordAnalysis_Unoptimized("12345");
    pa.foundPattern(new PasswordPattern(1, 1, "2", 2, "testPattern"));
    pa.foundPattern(new PasswordPattern(3, 1, "4", 2, "testPattern"));
   
    PathCost patterns = pa.calculateHighestProbablePatterns();
   
    List<PasswordPattern> list = patterns.getPath();
    assertEquals(5, list.size());
    double result = patterns.getTotalCost();
    System.out.println("cost="+result);
   
    double expected = Math.pow(10,3)*4;
    assertEquals(expected, result, 0.5);
  }
View Full Code Here

    pa.foundPattern(new PasswordPattern(1, 2, "23", 15, "worstPattern"));
    pa.foundPattern(new PasswordPattern(1, 2, "23", 4, "bestPattern"));
    pa.foundPattern(new PasswordPattern(1, 2, "23", 20, "worsePattern"));
    pa.foundPattern(new PasswordPattern(1, 2, "23", 23, "worserPattern"));
   
    PathCost patterns = pa.calculateHighestProbablePatterns();
   
    List<PasswordPattern> list = patterns.getPath();
    assertEquals(3, list.size());
    double result = patterns.getTotalCost();
    System.out.println("cost="+result);
    double expected = Math.pow(10,3)*4;
    assertEquals(expected, result, 0.5);
  }
View Full Code Here

    pa.foundPattern(new PasswordPattern(4, 1, "5", 15, "worstPattern"));
    pa.foundPattern(new PasswordPattern(4, 1, "5", 20, "worsePattern"));
    pa.foundPattern(new PasswordPattern(4, 1, "5", 4, "bestPattern"));
    pa.foundPattern(new PasswordPattern(4, 1, "5", 23, "worserPattern"));
   
    PathCost patterns = pa.calculateHighestProbablePatterns();
   
    List<PasswordPattern> list = patterns.getPath();
    assertEquals(4, list.size());
    double result = patterns.getTotalCost();
    System.out.println("cost="+result);
    double expected = Math.pow(10,1)*4*4*4;
    assertEquals(expected, result, 0.5);
  }
View Full Code Here

  @Test
  public void testPatternToJSON() throws IOException {
    MockPasswordResults results = new MockPasswordResults("test");
    results.foundPattern(new PasswordPattern(1, 2, "te", 300, "This is a test pattern", "testPattern", "test"));
    results.foundPattern(new PasswordPattern(3, 2, "st", 350, "This is another test pattern", "testPattern2", "test"));
    PathCost pathCost = results.calculateHighestProbablePatterns();
    JsonWriter writer = new JsonWriter();
    writer.write(new PrintWriter(System.out, true), pathCost);
  }
View Full Code Here

    throw new UnsupportedOperationException("Not supported yet.");
  }

  @Override
  public PathCost calculateHighestProbablePatterns() {
    PathCost pathCost = new PathCost(this);
    for (PasswordPattern patt : this.foundPatterns) {
      pathCost.addPattern(patt);
    }
    return pathCost;
  }
View Full Code Here

  @Test
  public void testDup() {
    System.out.println("process");

    PasswordAnalysis password = new PasswordAnalysis("abcabc");
    PathCost cost = new PathCost(password);
    cost.addPattern(new PasswordPattern(3, 3, "abc", 100, "test pattern"));
    cost.addPattern(new PasswordPattern(0, 3, "abc", 100, "test pattern"));

    RepeatingPatternFinder instance = new RepeatingPatternFinder();
    PathCost result = instance.process(cost, password);
    assertEquals(100, (int) result.getTotalCost());
    List<PasswordPattern> pattList = result.getPath();
    assertEquals(2, pattList.size());
    assertEquals(RepeatingPatternFinder.DUPLICATE_PATTERN, pattList.get(1).getName());
  }
View Full Code Here

  @Test
  public void testNonDup() {
    System.out.println("process");

    PasswordAnalysis password = new PasswordAnalysis("abcabc");
    PathCost cost = new PathCost(password);
    cost.addPattern(new PasswordPattern(3, 3, "abc", 100, "test pattern"));
    cost.addPattern(new PasswordPattern(0, 3, "xyz", 100, "test pattern"));

    RepeatingPatternFinder instance = new RepeatingPatternFinder();
    PathCost result = instance.process(cost, password);
    assertEquals(100 * 100, (int) result.getTotalCost());
    List<PasswordPattern> pattList = result.getPath();
    assertEquals(2, pattList.size());
    assertNotSame(RepeatingPatternFinder.DUPLICATE_PATTERN, pattList.get(1).getName());
  }
View Full Code Here

TOP

Related Classes of org.owasp.passfault.PathCost

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.