Mantis Bugtracker
  

Viewing Issue Advanced Details [ Jump to Notes ] [ View Simple ] [ Issue History ] [ Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0005334 [Resin] minor always 01-16-13 13:21 09-08-14 18:00
Reporter alex View Status public  
Assigned To ferg
Priority normal Resolution unable to reproduce Platform
Status closed   OS
Projection none   OS Version
ETA none Fixed in Version Product Version 4.0.32
  Product Build
Summary 0005334: Classloading issue (bouncycastle: java crypto provider)
Description rep by Trung Nguyen

2013-01-12 04:42:50,825 [resin-port-172.20.11.162:6802-61] ERROR edeal.util.SessionManager - Error while looking for user: Error encrypting password data using DefaultPciDataEncryptionPolicy
com.truition.conventions.DataEncryptionPolicyException: Error encrypting password data using DefaultPciDataEncryptionPolicy
                at com.truition.internal.conventions.pci.DefaultPciDataEncryptionPolicy.encryptPassword(DefaultPciDataEncryptionPolicy.java:164)
                at com.truition.internal.model.jdbc.user.AccountJDBCManagerImpl.encrypt(AccountJDBCManagerImpl.java:69)
                at com.truition.internal.model.jdbc.user.BackofficeUserJDBCManagerImpl.findBackofficeUserByLogin(BackofficeUserJDBCManagerImpl.java:139)
                at edeal.util.SessionManager.getAdminCookies(SessionManager.java:283)
                at edeal.util.SessionManager.doAdminLogon(SessionManager.java:187)
                at edeal.ecmd.Logon.process(Logon.java:30)
                at edealcore.ecmd.ServletCmd.preProcess(ServletCmd.java:1516)
                at edealcore.ecmd.ServletCmd.commonPreProcess(ServletCmd.java:962)
                at edealcore.ecmd.ServletCmd.doPost(ServletCmd.java:986)
                at javax.servlet.http.HttpServlet.service(HttpServlet.java:159)
                at javax.servlet.http.HttpServlet.service(HttpServlet.java:97)
                at com.caucho.server.dispatch.ServletFilterChain.doFilter(ServletFilterChain.java:109)
                at com.truition.mobile.MobileDeviceDetectorFilter.doFilter(MobileDeviceDetectorFilter.java:66)
                at com.caucho.server.dispatch.FilterFilterChain.doFilter(FilterFilterChain.java:89)
                at com.caucho.server.httpcache.ProxyCacheFilterChain.doFilter(ProxyCacheFilterChain.java:169)
                at com.caucho.server.webapp.WebAppFilterChain.doFilter(WebAppFilterChain.java:156)
                at com.caucho.server.dispatch.ServletInvocation.service(ServletInvocation.java:289)
                at com.caucho.server.hmux.HmuxRequest.handleInvocation(HmuxRequest.java:472)
                at com.caucho.server.hmux.HmuxRequest.handleRequestImpl(HmuxRequest.java:373)
                at com.caucho.server.hmux.HmuxRequest.handleRequest(HmuxRequest.java:340)
                at com.caucho.network.listen.TcpSocketLink.dispatchRequest(TcpSocketLink.java:1341)
                at com.caucho.network.listen.TcpSocketLink.handleRequest(TcpSocketLink.java:1297)
                at com.caucho.network.listen.TcpSocketLink.handleRequestsImpl(TcpSocketLink.java:1281)
                at com.caucho.network.listen.TcpSocketLink.handleRequests(TcpSocketLink.java:1189)
                at com.caucho.network.listen.TcpSocketLink.handleAcceptTaskImpl(TcpSocketLink.java:988)
                at com.caucho.network.listen.ConnectionTask.runThread(ConnectionTask.java:117)
                at com.caucho.network.listen.ConnectionTask.run(ConnectionTask.java:93)
                at com.caucho.network.listen.SocketLinkThreadLauncher.handleTasks(SocketLinkThreadLauncher.java:169)
                at com.caucho.network.listen.TcpSocketAcceptThread.run(TcpSocketAcceptThread.java:61)
                at com.caucho.env.thread2.ResinThread2.runTasks(ResinThread2.java:173)
                at com.caucho.env.thread2.ResinThread2.run(ResinThread2.java:118)
Caused by: edealcore.util.EdealException: Error encrypting data: Error creating cipher: No such algorithm: AES/ECB/PKCS5Padding
                at edealcore.util.crypto.AESCrypto.encrypt(AESCrypto.java:80)
                at com.truition.internal.conventions.pci.DefaultPciDataEncryptionPolicy.encryptPassword(DefaultPciDataEncryptionPolicy.java:161)
                ... 30 more
Caused by: edealcore.util.EdealException: Error creating cipher: No such algorithm: AES/ECB/PKCS5Padding
                at edealcore.util.crypto.AbstractJceCrypto.getCipher(AbstractJceCrypto.java:67)
                at edealcore.util.crypto.AESCrypto.encrypt(AESCrypto.java:58)
                ... 31 more
Caused by: java.security.NoSuchAlgorithmException: No such algorithm: AES/ECB/PKCS5Padding
                at javax.crypto.Cipher.getInstance(DashoA13*..)
                at javax.crypto.Cipher.getInstance(DashoA13*..)
                at edealcore.util.crypto.AbstractJceCrypto.getCipher(AbstractJceCrypto.java:56)
                ... 32 more
Caused by: java.security.NoSuchAlgorithmException: Error constructing implementation (algorithm: AES, provider: BC, class: org.bouncycastle.jce.provider.symmetric.AES$ECB)
                at java.security.Provider$Service.newInstance(Provider.java:1245)
                ... 35 more
Caused by: java.lang.SecurityException: class "org.bouncycastle.jce.provider.symmetric.AES$ECB"'s signer information does not match signer information of other classes in the same package
                at java.lang.ClassLoader.checkCerts(ClassLoader.java:806)
                at java.lang.ClassLoader.preDefineClass(ClassLoader.java:487)
                at java.lang.ClassLoader.defineClassCond(ClassLoader.java:625)
                at java.lang.ClassLoader.defineClass(ClassLoader.java:615)
                at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
                at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
                at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
                at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
                at java.security.AccessController.doPrivileged(Native Method)
                at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
                at com.caucho.loader.DynamicClassLoader.findClassImpl(DynamicClassLoader.java:1639)
                at com.caucho.loader.DynamicClassLoader.findClass(DynamicClassLoader.java:1616)
                at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
                at com.caucho.loader.DynamicClassLoader.loadClassImpl(DynamicClassLoader.java:1543)
                at com.caucho.loader.DynamicClassLoader.loadClass(DynamicClassLoader.java:1497)
                at com.caucho.loader.DynamicClassLoader.loadClass(DynamicClassLoader.java:1479)
                at java.security.Provider$Service.getImplClass(Provider.java:1262)
                at java.security.Provider$Service.newInstance(Provider.java:1220)
                ... 35 more
Steps To Reproduce
Additional Information We've scanned the classpath, even the whole machine but there is only one copy of the org.bouncycastle library in the system. The problem, unfortunately, is not consistent but intermittent and very hard to reproduce.
 
I wonder why the loader sometimes get different signed information from one jar. Is it possible that Resin has an abnormal termination, restarts and reloads that jar in a different way which in turn causes the problem?
 
Your thoughts?
Attached Files

- Relationships

There are no notes attached to this issue.

- Issue History
Date Modified Username Field Change
01-16-13 13:21 alex New Issue
01-18-13 12:46 ferg Summary Classloading issue => Classloading issue (bouncycastle: java crypto provider)
09-08-14 18:00 ferg Assigned To  => ferg
09-08-14 18:00 ferg Status new => closed
09-08-14 18:00 ferg Resolution open => unable to reproduce


Mantis 1.0.0rc3[^]
Copyright © 2000 - 2005 Mantis Group
27 total queries executed.
25 unique queries executed.
Powered by Mantis Bugtracker