Hi Avi, > I was under the impression that it goes inside -> out Source to Sink. I find it is easier to visualize when each filter is on its own line with appropriate indentation.
> I think you mixed encrypt with Gunzip instead of Gzip.. Perhaps - I copied/pasted from a few different projects. I did not run the example (I know not testing it is usually a bad idea). > (A) > 1. GZip 1024; > 2. Encrypt 1024 zipped bytes; > 3. Store intermediate result in sink? This is correct. Compression develops entropy in the plain text before encryption. > Same goes for block ciphers - won't I need to have (at least) the last > block from the previous iteration for XORing / other purposes - with > the next block? No. When you pair a Mode/Block Cipher with a StreamTransormation, the details are handled for you. See http://www.codeproject.com/KB/security/BlockCiphers.aspx. Jeff On 2/9/09, Avi <[email protected]> wrote: > > Hey Jeff, > > > When using it in pipelining, you will want the compressor outermost so > > that it process data first. Below, data travels from TOP/LEFT to > > CENTER/RIGHT. > > A very important observation! > > I was under the impression that it goes inside -> out, like it usually > does, e.g.: > MeLast( MeNext( MeFirst() ) ); > > -- > > For general knowledge: in the example you gave (I think you mixed > encrypt with Gunzip instead of Gzip.. no biggie), let's say I have a > source file of a few kilobytes, and let's say PumpAll() pumps 1024 on > each iteration. Is the behavior going to be: > (A) > 1. GZip 1024; > 2. Encrypt 1024 zipped bytes; > 3. Store intermediate result in sink? > > Or is it going to be: > (B) > 1. Gzip the entire stream; > 2. Encrypt the entire zipped result; > 3. Store the entire encrypted result in sink? > > I tend to believe that it'll be (A), but here's where I'm lacking > knowledge again - won't I need to scan all the input bytes in order to > produce a better compression scheme (dictionaries, etc) than zipping > unrelated byte portions? > Same goes for block ciphers - won't I need to have (at least) the last > block from the previous iteration for XORing / other purposes - with > the next block? > > Thanks, > > Avi. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the "Crypto++ Users" Google Group. To unsubscribe, send an email to [email protected]. More information about Crypto++ and this group is available at http://www.cryptopp.com. -~----------~----~----~----~------~----~------~--~---
