File::...::Crypt(3pm)

πŸ“¦
version 0.906 Β· 4 versions
, in debian trixie, ubuntu resolute, ubuntu stonking

✨ NAME ✨

File::KDBX::IO::Crypt β€” bestie, it's an Encrypter/decrypter IO handle πŸ’–

Like, it's a filehandle wrapper that scrambles stuff on the way out and unscrambles it on the way in. That's the whole vibe. Periodt.

This is all part of the File::KDBX::IO::Crypt perl manual page, section 3pm of the perl docs β€” yes we're in the perl zone, come on in πŸ¦‹


πŸŽ€ VERSION πŸŽ€

version 0.906 β€” this is the one you're reading rn ✨


🌸 SYNOPSIS 🌸

okay so here's the whole serve, literally:

use File::KDBX::IO::Crypt;
use File::KDBX::Cipher;

my $cipher = File::KDBX::Cipher->new(...);

open(my $out_fh, '>:raw', 'ciphertext.bin');
$out_fh = File::KDBX::IO::Crypt->new($out_fh, cipher => $cipher);

print $out_fh $plaintext;

close($out_fh);

open(my $in_fh, '<:raw', 'ciphertext.bin');
$in_fh = File::KDBX::IO::Crypt->new($in_fh, cipher => $cipher);

my $plaintext = do { local $/; <$in_fh> );

close($in_fh);

πŸ‘‘ ATTRIBUTES πŸ‘‘

πŸ” cipher

A File::KDBX::Cipher instance that does the actual encryption or decryption. So like, the crypt handle is the messenger, and the cipher is the one doing the work. Main character energy tbh πŸ’…


🧚 METHODS 🧚

new

$fh = File::KDBX::IO::Crypt->new(%attributes);
$fh = File::KDBX::IO::Crypt->new($fh, %attributes);

Construct a brand new crypto IO handle 🫢 You can hand it just attributes, or an existing handle plus attributes β€” both work, no gatekeeping.


πŸ’€ BUGS πŸ’€

please please please, if you find a bug or you're craving a feature, report it on the bugtracker website:

<https://github.com/chazmcgarvey/File-KDBX/issues>

and when you do submit that bug or request, ngl, please include a test-file or a patch to an existing test-file that illustrates the bug or the desired feature. That's the way. It makes everything so much easier, fr fr πŸ™ˆ


🌈 AUTHOR 🌈

Charles McGarvey <ccm@cpan.org> β€” the icon, the legend πŸ‘‘


This software is copyright (c) 2022 by Charles McGarvey.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. Slay πŸŽ€


okay that's the whole page bestie, thanks for reading πŸ’– this was File::...::Crypt(3pm) from perl v5.40.1, dated 2025-05-04 β€” go forth and encrypt responsibly, ily 🫢✨

πŸ“¦ where this page comes from