66 * Licensed under Apache License 2.0
77 * http://www.apache.org/licenses/LICENSE-2.0
88 */
9- package de .rub .nds .tlsattacker .client ;
9+ package de .rub .nds .tlsattacker .client . main ;
1010
11- import de .rub .nds .tlsattacker .client .config .ClientCommandConfig ;
12- import de .rub .nds .tlsattacker .core .config .delegate .GeneralDelegate ;
13- import de .rub .nds .tlsattacker .core .constants .AlgorithmResolver ;
14- import de .rub .nds .tlsattacker .core .constants .CipherSuite ;
15- import de .rub .nds .tlsattacker .core .constants .ProtocolVersion ;
16- import de .rub .nds .tlsattacker .core .constants .PublicKeyAlgorithm ;
17- import de .rub .nds .tlsattacker .core .exceptions .WorkflowExecutionException ;
18- import de .rub .nds .tlsattacker .core .protocol .message .CertificateMessage ;
19- import de .rub .nds .tlsattacker .core .protocol .message .ChangeCipherSpecMessage ;
20- import de .rub .nds .tlsattacker .core .protocol .message .ClientHelloMessage ;
21- import de .rub .nds .tlsattacker .core .protocol .message .FinishedMessage ;
22- import de .rub .nds .tlsattacker .core .protocol .message .RSAClientKeyExchangeMessage ;
23- import de .rub .nds .tlsattacker .core .protocol .message .ServerHelloDoneMessage ;
24- import de .rub .nds .tlsattacker .core .protocol .message .ServerHelloMessage ;
25- import de .rub .nds .tlsattacker .core .util .KeyStoreGenerator ;
26- import de .rub .nds .tlsattacker .core .workflow .TlsConfig ;
27- import de .rub .nds .tlsattacker .core .workflow .TlsContext ;
28- import de .rub .nds .tlsattacker .core .workflow .WorkflowExecutor ;
29- import de .rub .nds .tlsattacker .core .workflow .WorkflowExecutorFactory ;
30- import de .rub .nds .tlsattacker .core .workflow .WorkflowTrace ;
31- import de .rub .nds .tlsattacker .core .workflow .factory .WorkflowTraceType ;
32- import de .rub .nds .tlsattacker .core .workflow .action .MessageActionFactory ;
33- import de .rub .nds .tlsattacker .transport .ConnectionEnd ;
34- import de .rub .nds .tlsattacker .util .FixedTimeProvider ;
35- import de .rub .nds .tlsattacker .util .TimeHelper ;
36- import de .rub .nds .tlsattacker .util .TimeProvider ;
37- import de .rub .nds .tlsattacker .util .tests .IntegrationTests ;
3811import java .io .IOException ;
3912import java .security .InvalidKeyException ;
4013import java .security .KeyManagementException ;
6336import org .junit .experimental .categories .Category ;
6437import org .junit .rules .ErrorCollector ;
6538
39+ import de .rub .nds .tlsattacker .client .config .ClientCommandConfig ;
40+ import de .rub .nds .tlsattacker .core .config .delegate .GeneralDelegate ;
41+ import de .rub .nds .tlsattacker .core .constants .AlgorithmResolver ;
42+ import de .rub .nds .tlsattacker .core .constants .CipherSuite ;
43+ import de .rub .nds .tlsattacker .core .constants .ProtocolVersion ;
44+ import de .rub .nds .tlsattacker .core .constants .PublicKeyAlgorithm ;
45+ import de .rub .nds .tlsattacker .core .exceptions .WorkflowExecutionException ;
46+ import de .rub .nds .tlsattacker .core .protocol .message .CertificateMessage ;
47+ import de .rub .nds .tlsattacker .core .protocol .message .ChangeCipherSpecMessage ;
48+ import de .rub .nds .tlsattacker .core .protocol .message .ClientHelloMessage ;
49+ import de .rub .nds .tlsattacker .core .protocol .message .FinishedMessage ;
50+ import de .rub .nds .tlsattacker .core .protocol .message .RSAClientKeyExchangeMessage ;
51+ import de .rub .nds .tlsattacker .core .protocol .message .ServerHelloDoneMessage ;
52+ import de .rub .nds .tlsattacker .core .protocol .message .ServerHelloMessage ;
53+ import de .rub .nds .tlsattacker .core .util .BasicTlsServer ;
54+ import de .rub .nds .tlsattacker .core .util .KeyStoreGenerator ;
55+ import de .rub .nds .tlsattacker .core .workflow .TlsConfig ;
56+ import de .rub .nds .tlsattacker .core .workflow .TlsContext ;
57+ import de .rub .nds .tlsattacker .core .workflow .WorkflowExecutor ;
58+ import de .rub .nds .tlsattacker .core .workflow .WorkflowExecutorFactory ;
59+ import de .rub .nds .tlsattacker .core .workflow .WorkflowTrace ;
60+ import de .rub .nds .tlsattacker .core .workflow .factory .WorkflowTraceType ;
61+ import de .rub .nds .tlsattacker .core .workflow .action .MessageActionFactory ;
62+ import de .rub .nds .tlsattacker .transport .ConnectionEndType ;
63+ import de .rub .nds .tlsattacker .util .FixedTimeProvider ;
64+ import de .rub .nds .tlsattacker .util .TimeHelper ;
65+ import de .rub .nds .tlsattacker .util .tests .IntegrationTests ;
66+
6667/**
6768 *
6869 * @author Juraj Somorovsky - juraj.somorovsky@rub.de
@@ -78,7 +79,7 @@ public class TlsClientTest {
7879 @ Rule
7980 public ErrorCollector collector = new ErrorCollector ();
8081
81- private TLSServer tlsServer ;
82+ private BasicTlsServer tlsServer ;
8283
8384 public TlsClientTest () {
8485 Security .addProvider (new BouncyCastleProvider ());
@@ -91,7 +92,7 @@ public void testRSAWorkflows() throws OperatorCreationException {
9192 TimeHelper .setProvider (new FixedTimeProvider (0 ));
9293 KeyPair k = KeyStoreGenerator .createRSAKeyPair (1024 );
9394 KeyStore ks = KeyStoreGenerator .createKeyStore (k );
94- tlsServer = new TLSServer (ks , KeyStoreGenerator .PASSWORD , "TLS" , PORT );
95+ tlsServer = new BasicTlsServer (ks , KeyStoreGenerator .PASSWORD , "TLS" , PORT );
9596 new Thread (tlsServer ).start ();
9697 while (!tlsServer .isInitialized ())
9798 ;
@@ -112,7 +113,7 @@ public void testECWorkflows() throws OperatorCreationException {
112113 try {
113114 KeyPair k = KeyStoreGenerator .createECKeyPair (256 );
114115 KeyStore ks = KeyStoreGenerator .createKeyStore (k );
115- tlsServer = new TLSServer (ks , KeyStoreGenerator .PASSWORD , "TLS" , PORT + 1 );
116+ tlsServer = new BasicTlsServer (ks , KeyStoreGenerator .PASSWORD , "TLS" , PORT + 1 );
116117 new Thread (tlsServer ).start ();
117118 while (!tlsServer .isInitialized ())
118119 ;
@@ -137,7 +138,8 @@ public void testExecuteWorkflows(PublicKeyAlgorithm algorithm, int port) {
137138 ClientCommandConfig clientCommandConfig = new ClientCommandConfig (new GeneralDelegate ());
138139 clientCommandConfig .getGeneralDelegate ().setLogLevel (Level .INFO );
139140 TlsConfig config = clientCommandConfig .createConfig ();
140- config .setHost ("localhost:" + port );
141+ config .setHost ("localhost" );
142+ config .setPort (port );
141143 config .setTlsTimeout (TIMEOUT );
142144 List <String > serverList = Arrays .asList (tlsServer .getCipherSuites ());
143145 config .setHighestProtocolVersion (ProtocolVersion .TLS10 );
@@ -198,23 +200,24 @@ private boolean testCustomWorkflow(int port) {
198200 ClientCommandConfig clientCommandConfig = new ClientCommandConfig (new GeneralDelegate ());
199201 clientCommandConfig .getGeneralDelegate ().setLogLevel (Level .INFO );
200202 TlsConfig config = clientCommandConfig .createConfig ();
201- config .setHost ("localhost:" + port );
203+ config .setHost ("localhost" );
204+ config .setPort (port );
202205 config .setTlsTimeout (TIMEOUT );
203206 config .setWorkflowTraceType (WorkflowTraceType .HELLO );
204207
205208 TlsContext tlsContext = new TlsContext (config );
206209 config .setWorkflowTrace (new WorkflowTrace ());
207210
208211 WorkflowTrace trace = config .getWorkflowTrace ();
209- trace .add (MessageActionFactory .createAction (ConnectionEnd .CLIENT , ConnectionEnd .CLIENT , new ClientHelloMessage (
210- config )));
211- trace .add (MessageActionFactory .createAction (ConnectionEnd .CLIENT , ConnectionEnd .SERVER , new ServerHelloMessage (
212- config ), new CertificateMessage (config ), new ServerHelloDoneMessage (config )));
212+ trace .add (MessageActionFactory .createAction (ConnectionEndType .CLIENT , ConnectionEndType .CLIENT ,
213+ new ClientHelloMessage ( config )));
214+ trace .add (MessageActionFactory .createAction (ConnectionEndType .CLIENT , ConnectionEndType .SERVER ,
215+ new ServerHelloMessage ( config ), new CertificateMessage (config ), new ServerHelloDoneMessage (config )));
213216
214- trace .add (MessageActionFactory .createAction (ConnectionEnd .CLIENT , ConnectionEnd .CLIENT ,
217+ trace .add (MessageActionFactory .createAction (ConnectionEndType .CLIENT , ConnectionEndType .CLIENT ,
215218 new RSAClientKeyExchangeMessage (config ), new ChangeCipherSpecMessage (config ), new FinishedMessage (
216219 config )));
217- trace .add (MessageActionFactory .createAction (ConnectionEnd .CLIENT , ConnectionEnd .SERVER ,
220+ trace .add (MessageActionFactory .createAction (ConnectionEndType .CLIENT , ConnectionEndType .SERVER ,
218221 new ChangeCipherSpecMessage (config ), new FinishedMessage (config )));
219222 WorkflowExecutor workflowExecutor = WorkflowExecutorFactory .createWorkflowExecutor (config .getExecutorType (),
220223 tlsContext );
0 commit comments