Ruby-ossl (OpenSSL) sInitVector?


Simon Core wrote:

        .encrypt(sPassword [, sInitVector]) => self
        .decrypt(sPassword [, sInitVector]) => self
        .update(sData) => s(En|De)crypted
        .<< <=> .update
        .cipher() => s(En|De)cryptedFinal

can someone please explain what sInitVector is?

I think that s - means String and InitVector is used as "salt" in 


man EVP_BytesToKey says:

EVP_BytesToKey() derives a key and IV from various parameters. type is
the cipher to derive the key and IV for. md is the message digest to
use. The salt paramter is used as a salt in the derivation: it should
point to an 8 byte buffer or NULL if no salt is used. data is a buffer
containing datal bytes which is used to derive the keying data. count is
the iteration count to use. The derived key and IV will be written to
key and iv respectively.