I also have the Similar problem, still unresolved.
Initially, I have developed a test framework, which makes a https requests 
with multiple test data.

Everything works fine with JDK1.6_43. But now I installed JDK1.7_45. When I 
ran the test framework now, the tests failed as some point, though it was 
successful for few hundred requests.

Seems issue is with JDK 1.7.  Suggested some workarounds in google, I have 
used them but, issue still exists.

Workarounds:

System.setProperty("https.protocols", "TLSv1");
var context:SSLContext = SSLContext.getInstance("SSLv3");


Exception is :
EXception   Received fatal alert: bad_record_mac
sun.security.ssl.Alerts.getSSLException(Unknown Source)
sun.security.ssl.Alerts.getSSLException(Unknown Source)
sun.security.ssl.SSLSocketImpl.recvAlert(Unknown Source)
sun.security.ssl.SSLSocketImpl.readRecord(Unknown Source)
sun.security.ssl.SSLSocketImpl.performInitialHandshake(Unknown Source)
sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source)
sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source)
sun.net.www.protocol.https.HttpsClient.afterConnect(Unknown Source)


If anyone faced similar issue and has solved. Please let me know..

Thanks,
Hanumesh


On Tuesday, 26 November 2013 05:55:42 UTC-8, walterc wrote:
>
> i am playing around with akk.io and ran into this rather strange problem:
>
> i have setup a socket server and clients much like the one outlined in 
> http://doc.akka.io/docs/akka/snapshot/scala/io-tcp.html and it works 
> great when clients are connecting to the server in a time-staggered manner. 
>  if i launch clients all at once, (some 1000 of them), SslTlsSupport starts 
> to throw exceptions on both the client and the server side (listed below)
>
> i know SSLEngine is not thread-safe so i made sure on the pipelines in 
> both client and server a new SSLEngine is created and used.  i am using 
> akka 2.2.3 on jdk 7.  any thoughts?
>
> client:
>
> Received fatal alert: bad_record_mac
> javax.net.ssl.SSLException: Received fatal alert: bad_record_mac
> at sun.security.ssl.Alerts.getSSLException(Alerts.java:208)
>  at sun.security.ssl.SSLEngineImpl.fatal(SSLEngineImpl.java:1619)
> at sun.security.ssl.SSLEngineImpl.fatal(SSLEngineImpl.java:1587)
>  at sun.security.ssl.SSLEngineImpl.recvAlert(SSLEngineImpl.java:1756)
> at sun.security.ssl.SSLEngineImpl.readRecord(SSLEngineImpl.java:1060)
>  at sun.security.ssl.SSLEngineImpl.readNetRecord(SSLEngineImpl.java:884)
> at sun.security.ssl.SSLEngineImpl.unwrap(SSLEngineImpl.java:758)
>  at javax.net.ssl.SSLEngine.unwrap(SSLEngine.java:624)
> at 
> akka.io.SslTlsSupport$$anon$1.akka$io$SslTlsSupport$$anon$$decrypt(SslTlsSupport.scala:186)
>  at 
> akka.io.SslTlsSupport$$anon$1$$anonfun$2.apply(SslTlsSupport.scala:112)
> at akka.io.SslTlsSupport$$anon$1$$anonfun$2.apply(SslTlsSupport.scala:104)
>  at 
> akka.io.PipelineStage$$anon$7$$anon$8$$anonfun$14.apply(Pipelines.scala:680)
> at 
> akka.io.PipelineStage$$anon$7$$anon$8$$anonfun$14.apply(Pipelines.scala:680)
>  at akka.io.PipelineFactory$$anon$6$$anonfun$12.apply(Pipelines.scala:336)
> at akka.io.PipelineFactory$$anon$6$$anonfun$12.apply(Pipelines.scala:336)
>  at scala.util.Try$.apply(Try.scala:161)
> at akka.io.PipelineFactory$$anon$6.injectEvent(Pipelines.scala:336)
>  at 
> akka.io.TcpPipelineHandler$$anonfun$receive$1.applyOrElse(TcpPipelineHandler.scala:152)
> at akka.actor.ActorCell.receiveMessage(ActorCell.scala:498)
>  at akka.actor.ActorCell.invoke(ActorCell.scala:456)
> at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:237)
>  at akka.dispatch.Mailbox.run(Mailbox.scala:219)
> at 
> akka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(AbstractDispatcher.scala:386)
>  at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
> at 
> scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
>  at 
> scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
> at 
> scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)
>
> server:
>
> bad record MAC
> javax.net.ssl.SSLException: bad record MAC
> at sun.security.ssl.Alerts.getSSLException(Alerts.java:208)
>  at sun.security.ssl.SSLEngineImpl.fatal(SSLEngineImpl.java:1683)
> at sun.security.ssl.SSLEngineImpl.readRecord(SSLEngineImpl.java:959)
>  at sun.security.ssl.SSLEngineImpl.readNetRecord(SSLEngineImpl.java:884)
> at sun.security.ssl.SSLEngineImpl.unwrap(SSLEngineImpl.java:758)
>  at javax.net.ssl.SSLEngine.unwrap(SSLEngine.java:624)
> at 
> akka.io.SslTlsSupport$$anon$1.akka$io$SslTlsSupport$$anon$$decrypt(SslTlsSupport.scala:186)
>  at 
> akka.io.SslTlsSupport$$anon$1$$anonfun$2.apply(SslTlsSupport.scala:112)
> at akka.io.SslTlsSupport$$anon$1$$anonfun$2.apply(SslTlsSupport.scala:104)
>  at 
> akka.io.PipelineStage$$anon$7$$anon$8$$anonfun$14.apply(Pipelines.scala:680)
> at 
> akka.io.PipelineStage$$anon$7$$anon$8$$anonfun$14.apply(Pipelines.scala:680)
>  at 
> akka.io.PipelineStage$$anon$7$$anon$8.akka$io$PipelineStage$$anon$$anon$$loopRight(Pipelines.scala:667)
> at 
> akka.io.PipelineStage$$anon$7$$anon$8$$anonfun$14.apply(Pipelines.scala:680)
>  at 
> akka.io.PipelineStage$$anon$7$$anon$8$$anonfun$14.apply(Pipelines.scala:680)
> at akka.io.PipelineFactory$$anon$6$$anonfun$12.apply(Pipelines.scala:336)
>  at akka.io.PipelineFactory$$anon$6$$anonfun$12.apply(Pipelines.scala:336)
> at scala.util.Try$.apply(Try.scala:161)
>  at akka.io.PipelineFactory$$anon$6.injectEvent(Pipelines.scala:336)
> at 
> akka.io.TcpPipelineHandler$$anonfun$receive$1.applyOrElse(TcpPipelineHandler.scala:152)
>  at akka.actor.ActorCell.receiveMessage(ActorCell.scala:498)
> at akka.actor.ActorCell.invoke(ActorCell.scala:456)
>  at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:237)
> at akka.dispatch.Mailbox.run(Mailbox.scala:219)
>  at 
> akka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(AbstractDispatcher.scala:386)
> at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
>  at 
> scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
> at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
>  at 
> scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)
> Caused by: javax.crypto.BadPaddingException: bad record MAC
> at sun.security.ssl.EngineInputRecord.decrypt(EngineInputRecord.java:246)
>  at sun.security.ssl.SSLEngineImpl.readRecord(SSLEngineImpl.java:953)
> ... 25 more
> -- 
> .......__o
> .......\<,
> ....( )/ ( )... 
>

-- 
>>>>>>>>>>      Read the docs: http://akka.io/docs/
>>>>>>>>>>      Check the FAQ: http://akka.io/faq/
>>>>>>>>>>      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/groups/opt_out.

Reply via email to