logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

Crypt::Stream::Rabbit - Stream cipher Rabbit

Description

       Provides an interface to the Rabbit stream cipher.

Methods

new
        $stream = Crypt::Stream::Rabbit->new($key, $iv);
        # $key .. keylen must be up to 16 bytes
        # $iv  .. ivlen must be up to 8 bytes

        $stream = Crypt::Stream::Rabbit->new($key);
        #BEWARE: this is different from new($key, "")

   crypt
        $ciphertext = $stream->crypt($plaintext);
        #or
        $plaintext = $stream->crypt($ciphertext);

   keystream
        $random_key = $stream->keystream($length);

   clone
        $stream->clone();

Name

       Crypt::Stream::Rabbit - Stream cipher Rabbit

See Also

       •   Crypt::Stream::RC4, Crypt::Stream::ChaCha, Crypt::Stream::Salsa20, Crypt::Stream::Sober128

       •   <https://en.wikipedia.org/wiki/Rabbit_(cipher)>

perl v5.40.0                                       2025-02-15                         Crypt::Stream::Rabbit(3pm)

Synopsis

          use Crypt::Stream::Rabbit;

          # encrypt
          $key = "1234567890123456";
          $iv  = "12345678";
          $stream = Crypt::Stream::Rabbit->new($key, $iv);
          $ct = $stream->crypt("plain message");

          # decrypt
          $key = "1234567890123456";
          $iv  = "12345678";
          $stream = Crypt::Stream::Rabbit->new($key, $iv);
          $pt = $stream->crypt($ct);

See Also