<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule"	>
<channel>
	<title>Comments on: Transparent encryption with Hibernate</title>
	<atom:link href="http://johannesbrodwall.com/2006/12/07/transparent-encryption-with-hibernate/feed/" rel="self" type="application/rss+xml" />
	<link>http://johannesbrodwall.com/2006/12/07/transparent-encryption-with-hibernate/</link>
	<description>Johannes Brodwall&#039;s Musings on Software Architecture and Programming</description>
	<lastBuildDate>Fri, 12 Mar 2010 19:22:15 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Johannes Brodwall</title>
		<link>http://johannesbrodwall.com/2006/12/07/transparent-encryption-with-hibernate/comment-page-1/#comment-3341</link>
		<dc:creator>Johannes Brodwall</dc:creator>
		<pubDate>Mon, 09 Apr 2007 16:19:02 +0000</pubDate>
		<guid isPermaLink="false">http://www.brodwall.com/johannes/blog/2006/12/07/transparent-encryption-with-hibernate/#comment-3341</guid>
		<description>Hi, Daniel

Thanks for a good introduction on how to encrypt small amounts of data. Your comment helped correct some of my confusion on the subject.</description>
		<content:encoded><![CDATA[<p>Hi, Daniel</p>
<p>Thanks for a good introduction on how to encrypt small amounts of data. Your comment helped correct some of my confusion on the subject.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Johannes Brodwall</title>
		<link>http://johannesbrodwall.com/2006/12/07/transparent-encryption-with-hibernate/comment-page-1/#comment-84625</link>
		<dc:creator>Johannes Brodwall</dc:creator>
		<pubDate>Mon, 09 Apr 2007 14:19:02 +0000</pubDate>
		<guid isPermaLink="false">http://www.brodwall.com/johannes/blog/2006/12/07/transparent-encryption-with-hibernate/#comment-84625</guid>
		<description>Hi, Daniel&lt;br&gt;&lt;br&gt;Thanks for a good introduction on how to encrypt small amounts of data. Your comment helped correct some of my confusion on the subject.</description>
		<content:encoded><![CDATA[<p>Hi, Daniel</p>
<p>Thanks for a good introduction on how to encrypt small amounts of data. Your comment helped correct some of my confusion on the subject.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Daniel Fernández Garrido</title>
		<link>http://johannesbrodwall.com/2006/12/07/transparent-encryption-with-hibernate/comment-page-1/#comment-3339</link>
		<dc:creator>Daniel Fernández Garrido</dc:creator>
		<pubDate>Mon, 09 Apr 2007 12:53:26 +0000</pubDate>
		<guid isPermaLink="false">http://www.brodwall.com/johannes/blog/2006/12/07/transparent-encryption-with-hibernate/#comment-3339</guid>
		<description>Hello Johannes,

About short data types - yes, they could be easier to brute force, but only if we didn&#039;t generate the encryption key with the enough strength. In PBE, if we follow the RSA standards (and jasypt does), for generating the encryption key, the password is added a (preferably random) salt, and then it is applied a hash function a number of times (iteration count).

The addition of a random salt, and the application of a hash function many times (RSA recommends at least 1,000) adds an important strength to the resulting encryption key (it is the same process as described in &quot;Encrypting Passwords&quot; in the jasypt website http://www.jasypt.org/encrypting-passwords.html), and, among other desirable effects, allow the domain of the result of the encryption of a small domain like a Byte object be much more diverse and big than the original domain. 

This is, with a Byte object we will have 256 possible values; but once encrypted, we will have much more. (And also we will need more space to store it, of course). Brute force won&#039;t be that easy, here.

Regards,
Daniel.</description>
		<content:encoded><![CDATA[<p>Hello Johannes,</p>
<p>About short data types &#8211; yes, they could be easier to brute force, but only if we didn&#8217;t generate the encryption key with the enough strength. In PBE, if we follow the RSA standards (and jasypt does), for generating the encryption key, the password is added a (preferably random) salt, and then it is applied a hash function a number of times (iteration count).</p>
<p>The addition of a random salt, and the application of a hash function many times (RSA recommends at least 1,000) adds an important strength to the resulting encryption key (it is the same process as described in &#8220;Encrypting Passwords&#8221; in the jasypt website <a href="http://www.jasypt.org/encrypting-passwords.html)" rel="nofollow">http://www.jasypt.org/encrypting-passwords.html)</a>, and, among other desirable effects, allow the domain of the result of the encryption of a small domain like a Byte object be much more diverse and big than the original domain. </p>
<p>This is, with a Byte object we will have 256 possible values; but once encrypted, we will have much more. (And also we will need more space to store it, of course). Brute force won&#8217;t be that easy, here.</p>
<p>Regards,<br />
Daniel.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Daniel Fernández Garrido</title>
		<link>http://johannesbrodwall.com/2006/12/07/transparent-encryption-with-hibernate/comment-page-1/#comment-84624</link>
		<dc:creator>Daniel Fernández Garrido</dc:creator>
		<pubDate>Mon, 09 Apr 2007 10:53:26 +0000</pubDate>
		<guid isPermaLink="false">http://www.brodwall.com/johannes/blog/2006/12/07/transparent-encryption-with-hibernate/#comment-84624</guid>
		<description>Hello Johannes,&lt;br&gt;&lt;br&gt;About short data types - yes, they could be easier to brute force, but only if we didn&#039;t generate the encryption key with the enough strength. In PBE, if we follow the RSA standards (and jasypt does), for generating the encryption key, the password is added a (preferably random) salt, and then it is applied a hash function a number of times (iteration count).&lt;br&gt;&lt;br&gt;The addition of a random salt, and the application of a hash function many times (RSA recommends at least 1,000) adds an important strength to the resulting encryption key (it is the same process as described in &quot;Encrypting Passwords&quot; in the jasypt website &lt;a href=&quot;http://www.jasypt.org/encrypting-passwords.html&quot;&gt;http://www.jasypt.org/encrypting-passwords.html&lt;/a&gt;), and, among other desirable effects, allow the domain of the result of the encryption of a small domain like a Byte object be much more diverse and big than the original domain. &lt;br&gt;&lt;br&gt;This is, with a Byte object we will have 256 possible values; but once encrypted, we will have much more. (And also we will need more space to store it, of course). Brute force won&#039;t be that easy, here.&lt;br&gt;&lt;br&gt;Regards,&lt;br&gt;Daniel.</description>
		<content:encoded><![CDATA[<p>Hello Johannes,</p>
<p>About short data types &#8211; yes, they could be easier to brute force, but only if we didn&#39;t generate the encryption key with the enough strength. In PBE, if we follow the RSA standards (and jasypt does), for generating the encryption key, the password is added a (preferably random) salt, and then it is applied a hash function a number of times (iteration count).</p>
<p>The addition of a random salt, and the application of a hash function many times (RSA recommends at least 1,000) adds an important strength to the resulting encryption key (it is the same process as described in &#8220;Encrypting Passwords&#8221; in the jasypt website <a href="http://www.jasypt.org/encrypting-passwords.html">http://www.jasypt.org/encrypting-passwords.html</a>), and, among other desirable effects, allow the domain of the result of the encryption of a small domain like a Byte object be much more diverse and big than the original domain. </p>
<p>This is, with a Byte object we will have 256 possible values; but once encrypted, we will have much more. (And also we will need more space to store it, of course). Brute force won&#39;t be that easy, here.</p>
<p>Regards,<br />Daniel.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Johannes Brodwall</title>
		<link>http://johannesbrodwall.com/2006/12/07/transparent-encryption-with-hibernate/comment-page-1/#comment-3176</link>
		<dc:creator>Johannes Brodwall</dc:creator>
		<pubDate>Tue, 27 Mar 2007 23:26:28 +0000</pubDate>
		<guid isPermaLink="false">http://www.brodwall.com/johannes/blog/2006/12/07/transparent-encryption-with-hibernate/#comment-3176</guid>
		<description>Hi, Daniel

Signatures requires a little more than asymmetric encryption, most notably, one has to consider where to store the actual signature. There&#039;s also a danger of replay-attacks if you don&#039;t include the primary key in the hash, so there are a few issues to consider to make it transparent. Nothing very impossible, though.

With regard to the different data types, have you analyzed whether encryption like this is appropriate for very short data types? It seems to me that the shorter the data type, the easier it will be to somehow brute force it. But I might have misunderstood the fundamentals of encryption here.


~Johannes</description>
		<content:encoded><![CDATA[<p>Hi, Daniel</p>
<p>Signatures requires a little more than asymmetric encryption, most notably, one has to consider where to store the actual signature. There&#8217;s also a danger of replay-attacks if you don&#8217;t include the primary key in the hash, so there are a few issues to consider to make it transparent. Nothing very impossible, though.</p>
<p>With regard to the different data types, have you analyzed whether encryption like this is appropriate for very short data types? It seems to me that the shorter the data type, the easier it will be to somehow brute force it. But I might have misunderstood the fundamentals of encryption here.</p>
<p>~Johannes</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Johannes Brodwall</title>
		<link>http://johannesbrodwall.com/2006/12/07/transparent-encryption-with-hibernate/comment-page-1/#comment-84623</link>
		<dc:creator>Johannes Brodwall</dc:creator>
		<pubDate>Tue, 27 Mar 2007 21:26:28 +0000</pubDate>
		<guid isPermaLink="false">http://www.brodwall.com/johannes/blog/2006/12/07/transparent-encryption-with-hibernate/#comment-84623</guid>
		<description>Hi, Daniel&lt;br&gt;&lt;br&gt;Signatures requires a little more than asymmetric encryption, most notably, one has to consider where to store the actual signature. There&#039;s also a danger of replay-attacks if you don&#039;t include the primary key in the hash, so there are a few issues to consider to make it transparent. Nothing very impossible, though.&lt;br&gt;&lt;br&gt;With regard to the different data types, have you analyzed whether encryption like this is appropriate for very short data types? It seems to me that the shorter the data type, the easier it will be to somehow brute force it. But I might have misunderstood the fundamentals of encryption here.&lt;br&gt;&lt;br&gt;&lt;br&gt;~Johannes</description>
		<content:encoded><![CDATA[<p>Hi, Daniel</p>
<p>Signatures requires a little more than asymmetric encryption, most notably, one has to consider where to store the actual signature. There&#39;s also a danger of replay-attacks if you don&#39;t include the primary key in the hash, so there are a few issues to consider to make it transparent. Nothing very impossible, though.</p>
<p>With regard to the different data types, have you analyzed whether encryption like this is appropriate for very short data types? It seems to me that the shorter the data type, the easier it will be to somehow brute force it. But I might have misunderstood the fundamentals of encryption here.</p>
<p>~Johannes</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Daniel Fernández Garrido</title>
		<link>http://johannesbrodwall.com/2006/12/07/transparent-encryption-with-hibernate/comment-page-1/#comment-3172</link>
		<dc:creator>Daniel Fernández Garrido</dc:creator>
		<pubDate>Tue, 27 Mar 2007 00:16:18 +0000</pubDate>
		<guid isPermaLink="false">http://www.brodwall.com/johannes/blog/2006/12/07/transparent-encryption-with-hibernate/#comment-3172</guid>
		<description>Hello Johannes,

If you mean adding asymmetric encryption techniques to jasypt, yes, that is in my to-do (maybe in a couple of versions). For the moment only message digests and password-based encryption are supported.

And by the way, version 1.2 of jasypt (to be released early in April) will add support for transparent hibernate encryption of: BigIntegers, BigDecimals, Bytes, Shorts, Integers, Longs, Floats, Doubles, Dates, Calendars, Booleans and byte[]&#039;s (blobs). This way it will cover the full range of data types most frequently used for attributes of persistent entities.

Thanks for your interest.

Regards,
Daniel.</description>
		<content:encoded><![CDATA[<p>Hello Johannes,</p>
<p>If you mean adding asymmetric encryption techniques to jasypt, yes, that is in my to-do (maybe in a couple of versions). For the moment only message digests and password-based encryption are supported.</p>
<p>And by the way, version 1.2 of jasypt (to be released early in April) will add support for transparent hibernate encryption of: BigIntegers, BigDecimals, Bytes, Shorts, Integers, Longs, Floats, Doubles, Dates, Calendars, Booleans and byte[]&#8217;s (blobs). This way it will cover the full range of data types most frequently used for attributes of persistent entities.</p>
<p>Thanks for your interest.</p>
<p>Regards,<br />
Daniel.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Daniel Fernández Garrido</title>
		<link>http://johannesbrodwall.com/2006/12/07/transparent-encryption-with-hibernate/comment-page-1/#comment-84622</link>
		<dc:creator>Daniel Fernández Garrido</dc:creator>
		<pubDate>Mon, 26 Mar 2007 22:16:18 +0000</pubDate>
		<guid isPermaLink="false">http://www.brodwall.com/johannes/blog/2006/12/07/transparent-encryption-with-hibernate/#comment-84622</guid>
		<description>Hello Johannes,&lt;br&gt;&lt;br&gt;If you mean adding asymmetric encryption techniques to jasypt, yes, that is in my to-do (maybe in a couple of versions). For the moment only message digests and password-based encryption are supported.&lt;br&gt;&lt;br&gt;And by the way, version 1.2 of jasypt (to be released early in April) will add support for transparent hibernate encryption of: BigIntegers, BigDecimals, Bytes, Shorts, Integers, Longs, Floats, Doubles, Dates, Calendars, Booleans and byte[]&#039;s (blobs). This way it will cover the full range of data types most frequently used for attributes of persistent entities.&lt;br&gt;&lt;br&gt;Thanks for your interest.&lt;br&gt;&lt;br&gt;Regards,&lt;br&gt;Daniel.</description>
		<content:encoded><![CDATA[<p>Hello Johannes,</p>
<p>If you mean adding asymmetric encryption techniques to jasypt, yes, that is in my to-do (maybe in a couple of versions). For the moment only message digests and password-based encryption are supported.</p>
<p>And by the way, version 1.2 of jasypt (to be released early in April) will add support for transparent hibernate encryption of: BigIntegers, BigDecimals, Bytes, Shorts, Integers, Longs, Floats, Doubles, Dates, Calendars, Booleans and byte[]&#39;s (blobs). This way it will cover the full range of data types most frequently used for attributes of persistent entities.</p>
<p>Thanks for your interest.</p>
<p>Regards,<br />Daniel.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Johannes Brodwall</title>
		<link>http://johannesbrodwall.com/2006/12/07/transparent-encryption-with-hibernate/comment-page-1/#comment-3164</link>
		<dc:creator>Johannes Brodwall</dc:creator>
		<pubDate>Sun, 25 Mar 2007 21:08:22 +0000</pubDate>
		<guid isPermaLink="false">http://www.brodwall.com/johannes/blog/2006/12/07/transparent-encryption-with-hibernate/#comment-3164</guid>
		<description>Hi, Daniel

These tools look real cool (and simple to use). Have you considered implementing signing data in the same way?</description>
		<content:encoded><![CDATA[<p>Hi, Daniel</p>
<p>These tools look real cool (and simple to use). Have you considered implementing signing data in the same way?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Johannes Brodwall</title>
		<link>http://johannesbrodwall.com/2006/12/07/transparent-encryption-with-hibernate/comment-page-1/#comment-84621</link>
		<dc:creator>Johannes Brodwall</dc:creator>
		<pubDate>Sun, 25 Mar 2007 19:08:22 +0000</pubDate>
		<guid isPermaLink="false">http://www.brodwall.com/johannes/blog/2006/12/07/transparent-encryption-with-hibernate/#comment-84621</guid>
		<description>Hi, Daniel&lt;br&gt;&lt;br&gt;These tools look real cool (and simple to use). Have you considered implementing signing data in the same way?</description>
		<content:encoded><![CDATA[<p>Hi, Daniel</p>
<p>These tools look real cool (and simple to use). Have you considered implementing signing data in the same way?</p>
]]></content:encoded>
	</item>
</channel>
</rss>
