Examples of HexDigest


Examples of com.subgraph.orchid.data.HexDigest

  private void processSignature() {
    if(!seenFirstSignature) {
      doFirstSignature();
    }
    final String s = fieldParser.parseString();
    final HexDigest identity;
    boolean useSha256 = false;
    if(s.length() < TorMessageDigest.TOR_DIGEST_SIZE) {
      useSha256 = ("sha256".equals(s));
      identity = fieldParser.parseHexDigest();
    } else {
      identity = HexDigest.createFromString(s);
    }
    HexDigest signingKey = fieldParser.parseHexDigest();
    TorSignature signature = fieldParser.parseSignature();
    document.addSignature(new DirectorySignature(identity, signingKey, signature, useSha256));
  }
View Full Code Here

Examples of com.subgraph.orchid.data.HexDigest

  }

  private List<HexDigest> createPartitionList(List<Router> descriptors, int offset, int size) {
    final List<HexDigest> newList = new ArrayList<HexDigest>();
    for(int i = offset; i < (offset + size) && i < descriptors.size(); i++) {
      final HexDigest digest = getDescriptorDigestForRouter(descriptors.get(i));
      newList.add(digest);
    }
    return newList;
  }
View Full Code Here

Examples of com.subgraph.orchid.data.HexDigest

    if(certificate.isExpired()) {
      return SignatureStatus.STATUS_FAILED;
    }
   
    final TorPublicKey signingKey = certificate.getAuthoritySigningKey();
    final HexDigest d = (signature.useSha256()) ? signingHash256 : signingHash;
    if(!signingKey.verifySignature(signature.getSignature(), d)) {
      logger.warning("Signature failed on consensus for signing key: "+ signature.getSigningKeyDigest());
      return SignatureStatus.STATUS_FAILED;
    }
    return SignatureStatus.STATUS_VERIFIED;
View Full Code Here

Examples of com.subgraph.orchid.data.HexDigest

  private String formatDate(Date date) {
    return stateFile.formatDate(date);
  }

  public Router getRouterForEntry() {
    final HexDigest id = HexDigest.createFromString(identity);
    return directory.getRouterByIdentity(id);
  }
View Full Code Here

Examples of com.subgraph.orchid.data.HexDigest

 
  @Test
  public void testBridges() {
    final IPv4Address a1 = IPv4Address.createFromString("1.2.3.4");
    final IPv4Address a2 = IPv4Address.createFromString("4.4.4.4");
    final HexDigest fp = HexDigest.createFromString("0EA20CAA3CE696E561BC08B15E00106700E8F682");
    config.addBridge(a1, 88);
    config.addBridge(a2, 101, fp);
    List<TorConfigBridgeLine> bs = config.getBridges();
    assertEquals(2, bs.size());
    final TorConfigBridgeLine b1 = bs.get(0);
View Full Code Here

Examples of com.subgraph.orchid.data.HexDigest

    } else if (cell.getRelayCommand() != RelayCell.RELAY_COMMAND_RENDEZVOUS2) {
      logger.info("Unexpected Relay cell type received while waiting for RENDEZVOUS2: "+ cell.getRelayCommand());
      return null;
    }
    final BigInteger peerPublic = readPeerPublic(cell);
    final HexDigest handshakeDigest = readHandshakeDigest(cell);
    if(peerPublic == null || handshakeDigest == null) {
      return null;
    }
    final byte[] verifyHash = new byte[TorMessageDigest.TOR_DIGEST_SIZE];
    final byte[] keyMaterial = new byte[CircuitNodeCryptoState.KEY_MATERIAL_SIZE];
    if(!kex.deriveKeysFromDHPublicAndHash(peerPublic, handshakeDigest.getRawBytes(), keyMaterial, verifyHash)) {
      logger.info("Error deriving session keys while extending to hidden service");
      return null;
    }
    return circuit.connectHiddenService(CircuitNodeImpl.createAnonymous(circuit.getFinalCircuitNode(), keyMaterial, verifyHash));
  }
View Full Code Here

Examples of com.subgraph.orchid.data.HexDigest

    if(name.equals("Unnamed")) {
      return null;
    }
    if(name.length() == 41 && name.charAt(0) == '$') {
      try {
        final HexDigest identity = HexDigest.createFromString(name.substring(1));
        return getRouterByIdentity(identity);
      } catch (Exception e) {
        return null;
      }
    }
View Full Code Here

Examples of com.subgraph.orchid.data.HexDigest

 
  private static RouterFilter createIdentityFilter(String s) {
    if(isIdentityString(s)) {
      throw new IllegalArgumentException();
    }
    final HexDigest identity = HexDigest.createFromString(s);
    return new IdentityFilter(identity);
  }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. 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.