You can turn on JSSE debugging with -Djavax.net.debug=all to see the underlying cipher key exchange and setup as well, which may help.
Will Sargent Consultant, Professional Services Typesafe <http://typesafe.com>, the company behind Play Framework <http://www.playframework.com>, Akka <http://akka.io> and Scala <http://www.scala-lang.org/> On Tue, Dec 16, 2014 at 9:13 AM, Xavier Bucchiotty <xbucchio...@xebia.fr> wrote: > > I'm also trying the SslTls support from akka-stream 1.0-M1 > > I've tested it and may found a problem: > > https://github.com/xbucchiotty/akka-stream-ssltlscipher > > This is inspired from an Echo. A client just send a message and a server > replies with Uppercase > > This is the log from the client > ``` > | = : plainOutbound ==> hello > | = : plainOutbound ==> completed > ``` > > It sends "hello", then this "subgraph" is completed" > > Then the Handshake negotation starts between client and server > > ``` > | = : cipherTextOutbound ==> 40T�gjҼ~���E�(�f}}���Qr�(8�XC�/� > | = : cipherTextOutbound pull > = |: cipherTextOutbound ==> �MT�gj > > ... > > = |: plainInbound ==> hello > = |: plainInbound pull > = |: plainOutbound ==> HELLO > = |: cipherTextOutbound ==> v���W��ϼ5~u,0�-,g@�T���� > = |: cipherTextOutbound pull > | = : plainInbound ==> HELLO > | = : plainInbound pull > ``` > > we can see from the logs that the server receive "hello", make the > upperCase and the client receives "HELLO". > But all the streams are not completed. > > > I tried to look at the SslTlsCipherActor but didn't found yet this event > has been "swallowed". > > Do you think with this new kind of SuperFlow with 2Inputs/Ouputs would > solve the problem on later versions? > > > Le samedi 13 décembre 2014 08:56:21 UTC+1, rkuhn a écrit : >> >> Hi Brandon, >> >> an SSL element has a little more complex structure: it has two inputs and >> two outputs and they are all connected via the SslEngine. We’ll provide >> such bidirectional Flow elements soon (they will be like PartialFlowGraphs >> internally), but if you want to play with it then you might look at >> GraphFlow for some inspiration. >> >> Regards, >> >> Roland >> >> 12 dec 2014 kl. 18:32 skrev Brandon Arp <brand...@gmail.com>: >> >> I'm working on implementing an TLS/SSL client using the Akka streams and >> http components, but I've run into a bit of a snag. My overall approach is >> to open a TCP stream, create an SslTlsCipher (from a SslTlsCipherActor), >> modify the tcp flow to include the encryption/decryption steps, then >> transform the stream with the Http.transportToConnectionClientFlow. I >> used the SSL specs at https://github.com/akka/akka/blob/ >> 62a20195af79c7b405303b5f97970c9ca7a6891a/akka-stream/src/ >> test/scala/akka/stream/io/SslTlsFlowSpec.scala as a kind of guide to get >> everything started. >> >> The problem I'm having is creating a flow that does the encryption and >> decryption. I thought it would be as easy as doing >> Flow(Sink(cipher.plainTextOutbound()), >> Source(cipher.cipherTextOutbound())).via(outgoingConnection.flow()), but >> on materialization I am getting the error message >> Failure(java.lang.IllegalArgumentException: >> requirement failed: Graph must be connected). >> >> Am I misunderstanding what is going on? Does creating the flow with a >> sink and a source then calling via not attach the next flow properly? Is >> this a bug in the library or a flaw in my understanding? >> >> Thanks, >> Brandon >> >> -- >> >>>>>>>>>> Read the docs: http://akka.io/docs/ >> >>>>>>>>>> Check the FAQ: http://doc.akka.io/docs/akka/ >> current/additional/faq.html >> >>>>>>>>>> Search the archives: https://groups.google.com/group/akka-user >> --- >> You received this message because you are subscribed to the Google Groups >> "Akka User List" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to akka-user+...@googlegroups.com. >> To post to this group, send email to akka...@googlegroups.com. >> Visit this group at http://groups.google.com/group/akka-user. >> For more options, visit https://groups.google.com/d/optout. >> >> >> >> >> *Dr. Roland Kuhn* >> *Akka Tech Lead* >> Typesafe <http://typesafe.com/> – Reactive apps on the JVM. >> twitter: @rolandkuhn >> <http://twitter.com/#!/rolandkuhn> >> >> -- > >>>>>>>>>> Read the docs: http://akka.io/docs/ > >>>>>>>>>> Check the FAQ: > http://doc.akka.io/docs/akka/current/additional/faq.html > >>>>>>>>>> Search the archives: https://groups.google.com/group/akka-user > --- > You received this message because you are subscribed to the Google Groups > "Akka User List" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to akka-user+unsubscr...@googlegroups.com. > To post to this group, send email to akka-user@googlegroups.com. > Visit this group at http://groups.google.com/group/akka-user. > For more options, visit https://groups.google.com/d/optout. > -- >>>>>>>>>> Read the docs: http://akka.io/docs/ >>>>>>>>>> Check the FAQ: >>>>>>>>>> http://doc.akka.io/docs/akka/current/additional/faq.html >>>>>>>>>> Search the archives: https://groups.google.com/group/akka-user --- You received this message because you are subscribed to the Google Groups "Akka User List" group. To unsubscribe from this group and stop receiving emails from it, send an email to akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout.