in reply to decryption problem

The code generating the error in question is

croak "Argument to -salt must be exactly 8 bytes long" if defined $sal +t && length $salt != 8 && $salt ne '1';

The condition for the error message hasn't changed since the error message was introduced in 2.17.

You shouldn't get the error when using -salt => 1. Presumably, the error is elsewhere.