Jasypt Users Forum

Fixed salt genrator issue

View: New views
2 Messages — Rating Filter:   Alert me  

Fixed salt genrator issue

by KartikPay :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi guys

First of all i know that by using Fixed salt genrator I am reducing the security Level but it is necessity for me as my code look for millions of records to look find one Below given is my bean description in AppLicationContext.xml file( I am using Spring+hibernate+jasypt)
<bean id="hibernateStringEncryptor"
    class="org.jasypt.hibernate.encryptor.HibernatePBEStringEncryptor">
    <property name="registeredName">
        <value>strongHibernateStringEncryptor</value>
    </property>
    <property name="algorithm">
        <value>PBEWithMD5AndTripleDES</value>
    </property>
    <property name="password">
        <value>jasypt</value>
    </property>
    <property name="keyObtentionIterations">
    <value>1000</value>
    </property>
   <property name="saltGenerator">
    <bean class="org.jasypt.salt.FixedStringSaltGenerator">
        <property name="salt">
        <value>1</value>
        </property>
    </bean>
    </property>

if i comment out the Property of salt genratoe then i am able to store records in my database or else the following exception is thrown
org.jasypt.exceptions.EncryptionOperationNotPossibleException
        at org.jasypt.encryption.pbe.StandardPBEByteEncryptor.encrypt(StandardPBEByteEncryptor.java:697)
        at org.jasypt.encryption.pbe.StandardPBEStringEncryptor.encrypt(StandardPBEStringEncryptor.java:552)
        at org.jasypt.hibernate.type.AbstractEncryptedAsStringType.nullSafeSet(AbstractEncryptedAsStringType.java:154)
        at org.hibernate.type.CustomType.nullSafeSet(CustomType.java:156)
        at org.hibernate.param.PositionalParameterSpecification.bind(PositionalParameterSpecification.java:39)
        at org.hibernate.loader.hql.QueryLoader.bindParameterValues(QueryLoader.java:491)
        at org.hibernate.loader.Loader.prepareQueryStatement(Loader.java:1566)
        at org.hibernate.loader.Loader.doQuery(Loader.java:673)
        at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:236)
        at org.hibernate.loader.Loader.doList(Loader.java:2205)
        at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2102)
        at org.hibernate.loader.Loader.list(Loader.java:2097)
        at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:378)
        at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:338)
        at org.hibernate.engine.query.HQLQueryPlan.performList(HQLQueryPlan.java:172)
        at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1125)
        at org.hibernate.impl.QueryImpl.list(QueryImpl.java:79)
        at org.springframework.orm.hibernate3.HibernateTemplate$29.doInHibernate(HibernateTemplate.java:748)
        at org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:310)
        at org.springframework.orm.hibernate3.HibernateTemplate.find(HibernateTemplate.java:739)
        at org.springframework.orm.hibernate3.HibernateTemplate.find(HibernateTemplate.java:735)
        at com.pam.gprs.Dao.StoreDao.findall(StoreDao.java:82)
        at com.pam.gprs.Forms.StoresSaver.MerchantIdCreator(StoresSaver.java:82)
        at com.pam.gprs.Forms.StoresSaver.onSubmit(StoresSaver.java:41)
        at org.springframework.web.servlet.mvc.SimpleFormController.onSubmit(SimpleFormController.java:332)
        at org.springframework.web.servlet.mvc.SimpleFormController.onSubmit(SimpleFormController.java:307)
        at org.springframework.web.servlet.mvc.SimpleFormController.processFormSubmission(SimpleFormController.java:248)
        at org.springframework.web.servlet.mvc.AbstractFormController.handleRequestInternal(AbstractFormController.java:243)
        at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:128)
        at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:44)
        at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:684)
        at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:625)
        at org.springframework.web.servlet.FrameworkServlet.serviceWrapper(FrameworkServlet.java:386)
        at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:355)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:875)
        at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
        at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
        at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
        at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
        at java.lang.Thread.run(Unknown Source)

I Would really appreciate some help here because this thing is driving me mad

Re: Fixed salt genrator issue

by KartikPay :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Sorry guys but found the issue the value Specified as property salt was too shor so i changed it to a bigger String and it has started working gr8.


KartikPay wrote:
Hi guys

First of all i know that by using Fixed salt genrator I am reducing the security Level but it is necessity for me as my code look for millions of records to look find one Below given is my bean description in AppLicationContext.xml file( I am using Spring+hibernate+jasypt)
<bean id="hibernateStringEncryptor"
    class="org.jasypt.hibernate.encryptor.HibernatePBEStringEncryptor">
    <property name="registeredName">
        <value>strongHibernateStringEncryptor</value>
    </property>
    <property name="algorithm">
        <value>PBEWithMD5AndTripleDES</value>
    </property>
    <property name="password">
        <value>jasypt</value>
    </property>
    <property name="keyObtentionIterations">
    <value>1000</value>
    </property>
   <property name="saltGenerator">
    <bean class="org.jasypt.salt.FixedStringSaltGenerator">
        <property name="salt">
        <value>1</value>
        </property>
    </bean>
    </property>

if i comment out the Property of salt genratoe then i am able to store records in my database or else the following exception is thrown
org.jasypt.exceptions.EncryptionOperationNotPossibleException
        at org.jasypt.encryption.pbe.StandardPBEByteEncryptor.encrypt(StandardPBEByteEncryptor.java:697)
        at org.jasypt.encryption.pbe.StandardPBEStringEncryptor.encrypt(StandardPBEStringEncryptor.java:552)
        at org.jasypt.hibernate.type.AbstractEncryptedAsStringType.nullSafeSet(AbstractEncryptedAsStringType.java:154)
        at org.hibernate.type.CustomType.nullSafeSet(CustomType.java:156)
        at org.hibernate.param.PositionalParameterSpecification.bind(PositionalParameterSpecification.java:39)
        at org.hibernate.loader.hql.QueryLoader.bindParameterValues(QueryLoader.java:491)
        at org.hibernate.loader.Loader.prepareQueryStatement(Loader.java:1566)
        at org.hibernate.loader.Loader.doQuery(Loader.java:673)
        at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:236)
        at org.hibernate.loader.Loader.doList(Loader.java:2205)
        at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2102)
        at org.hibernate.loader.Loader.list(Loader.java:2097)
        at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:378)
        at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:338)
        at org.hibernate.engine.query.HQLQueryPlan.performList(HQLQueryPlan.java:172)
        at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1125)
        at org.hibernate.impl.QueryImpl.list(QueryImpl.java:79)
        at org.springframework.orm.hibernate3.HibernateTemplate$29.doInHibernate(HibernateTemplate.java:748)
        at org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:310)
        at org.springframework.orm.hibernate3.HibernateTemplate.find(HibernateTemplate.java:739)
        at org.springframework.orm.hibernate3.HibernateTemplate.find(HibernateTemplate.java:735)
        at com.pam.gprs.Dao.StoreDao.findall(StoreDao.java:82)
        at com.pam.gprs.Forms.StoresSaver.MerchantIdCreator(StoresSaver.java:82)
        at com.pam.gprs.Forms.StoresSaver.onSubmit(StoresSaver.java:41)
        at org.springframework.web.servlet.mvc.SimpleFormController.onSubmit(SimpleFormController.java:332)
        at org.springframework.web.servlet.mvc.SimpleFormController.onSubmit(SimpleFormController.java:307)
        at org.springframework.web.servlet.mvc.SimpleFormController.processFormSubmission(SimpleFormController.java:248)
        at org.springframework.web.servlet.mvc.AbstractFormController.handleRequestInternal(AbstractFormController.java:243)
        at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:128)
        at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:44)
        at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:684)
        at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:625)
        at org.springframework.web.servlet.FrameworkServlet.serviceWrapper(FrameworkServlet.java:386)
        at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:355)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:875)
        at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
        at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
        at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
        at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
        at java.lang.Thread.run(Unknown Source)

I Would really appreciate some help here because this thing is driving me mad