示例#1
0
  public static void main(PeerFactory peerFactory, KeyStore keyStore, String[] args)
      throws Exception {

    long time = System.currentTimeMillis();
    String relPath;
    if ((args != null) && (args.length > 0) && args[0].equals("sh")) {
      relPath = pathToStoresSH;
    } else {
      relPath = pathToStores;
    }
    PATH = new File(System.getProperty("test.src", "."), relPath);
    CipherTest.peerFactory = peerFactory;
    System.out.print("Initializing test '" + peerFactory.getName() + "'...");
    //      secureRandom = new SecureRandom();
    //      secureRandom.nextInt();
    //      trustStore = readKeyStore(trustStoreFile);
    CipherTest.keyStore = keyStore;
    //      keyStore = readKeyStore(keyStoreFile);
    KeyManagerFactory keyFactory =
        KeyManagerFactory.getInstance(KeyManagerFactory.getDefaultAlgorithm());
    keyFactory.init(keyStore, "test12".toCharArray());
    keyManager = (X509ExtendedKeyManager) keyFactory.getKeyManagers()[0];

    TrustManagerFactory tmf =
        TrustManagerFactory.getInstance(TrustManagerFactory.getDefaultAlgorithm());
    tmf.init(keyStore);
    trustManager = (X509TrustManager) tmf.getTrustManagers()[0];

    //      trustManager = new AlwaysTrustManager();
    SSLContext context = SSLContext.getInstance("TLS");
    context.init(new KeyManager[] {keyManager}, new TrustManager[] {trustManager}, null);
    SSLContext.setDefault(context);

    CipherTest cipherTest = new CipherTest(peerFactory);
    Thread serverThread = new Thread(peerFactory.newServer(cipherTest), "Server");
    serverThread.setDaemon(true);
    serverThread.start();
    System.out.println("Done");
    cipherTest.run();
    time = System.currentTimeMillis() - time;
    System.out.println("Done. (" + time + " ms)");
  }
示例#2
0
 void startClient(boolean newThread) throws Exception {
   if (newThread) {
     clientThread =
         new Thread() {
           public void run() {
             try {
               doClientSide();
             } catch (Exception e) {
               /*
                * Our client thread just died.
                */
               System.err.println("Client died...");
               clientException = e;
             }
           }
         };
     clientThread.start();
   } else {
     doClientSide();
   }
 }
示例#3
0
 void startServer(boolean newThread) throws Exception {
   if (newThread) {
     serverThread =
         new Thread() {
           public void run() {
             try {
               doServerSide();
             } catch (Exception e) {
               /*
                * Our server thread just died.
                *
                * Release the client, if not active already...
                */
               System.err.println("Server died...");
               serverReady = true;
               serverException = e;
             }
           }
         };
     serverThread.start();
   } else {
     doServerSide();
   }
 }