in reply to Blowfish Cypher

I am probably flogging a dead horse at this point, but if you need to break a string up into 8 byte pieces, there are easier ways:
use strict; my $plainText = '123456781234567812'; my @piece = $plainText =~ /.{1,8}/g;
This will create 3 elements in @piece, the last one has the 'left-overs'.

Here is another that uses unpack:

my $plainText = '123456781234567812'; my $quo = length($plainText)/8; my $rem = length($plainText)%8; my $template = 'a8' x $quo; $template .= 'a'.$rem if $rem; my @piece = unpack($template,$plainText);
The work to find the quotient and remainder of the string's length is used to create the right sized template to upack the data. In this example, $template will be 'a8a8a2' which means 8 null padded arbitrary bytes followed by 8 more followed by 2 more.

I prefer the first method myself. ;)

jeffa

L-LL-L--L-LL-L--L-LL-L--
-R--R-RR-R--R-RR-R--R-RR
B--B--B--B--B--B--B--B--
H---H---H---H---H---H---
(the triplet paradiddle with high-hat)