# Odd referrer - hmm...maybe time to revisit my ViewState compression stuff...

<datetime class="hidden">2004-07-10T00:00</datetime>
<!-- category -- mostlylucidcouk, Imported -->

Bit concerned that an [old post](/archive/2004/01/03/694.aspx) is being linked from this URL http://msdnprod/library/en-us/dnaspp/html/viewstate.asp?frame=true - especially as 

1. The URL of the person doing the linking is a Microsoft one
2. [That post](/archive/2004/01/03/694.aspx) REALLY needs updating (and is just such a simple solution)
3. [The post](/archive/2004/01/03/694.aspx)isn't even accurate, in it I state that you lose encryption (even if it is the stinky 3DES) using this method - umm...wrong actually you don't just that if you use compression the technique becomes rather ineffectual (since compression and encryption are kind of exclusive - you can't really compress random data...)

Anyway, I may just update that article with a rather more flexible solution - it is an oddly popular post!

Oh, incidentally that post presents a technique to compress ViewState - specifically it uses [BZip2](http://en.wikipedia.org/wiki/Bzip2)to compress a DataSet Viewstate - [BZip2](http://en.wikipedia.org/wiki/Bzip2)uses something called the [Burrows-Wheeler Transform](http://www.dogma.net/markn/articles/bwt/bwt.htm) which makes it one of the most efficient general purpose compression algorithms for XML (as in compactness, it is a bit slow) . Intertesting algorithm actually, it was written by a guy called [Julian Seward](http://www.cs.man.ac.uk/arch/people/j-seward/) about 8 years ago and is one of the least encumbered by patents etc...

UPDATE: Should mention, I figured out what this was - probably someone in Microsoft reviewing and checking links on [this article](/archive/2004/06/02/1064.aspx) - this is just a stunningly good piece on ASP.NET ViewState.