Windows NT KAMIDAKI 10.0 build 19045 (Windows 10) AMD64
Apache/2.4.58 (Win64) OpenSSL/3.1.3 PHP/8.3.9
Server IP : 192.168.3.16 & Your IP : 216.73.216.140
Domains :
Cant Read [ /etc/named.conf ]
User : SISTEMA
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
C: /
xampp /
perl /
vendor /
lib /
Crypt /
OpenPGP /
Delete
Unzip
Name
Size
Permission
Date
Action
Key
[ DIR ]
drwxrwxrwx
2024-07-26 17:38
Signature
[ DIR ]
drwxrwxrwx
2024-07-26 17:38
Armour.pm
7.91
KB
-rw-rw-rw-
2015-08-16 15:28
Buffer.pm
2.11
KB
-rw-rw-rw-
2015-08-16 15:28
CFB.pm
2.73
KB
-rw-rw-rw-
2015-08-16 15:28
Certificate.pm
15.95
KB
-rw-rw-rw-
2015-08-16 15:28
Cipher.pm
5.92
KB
-rw-rw-rw-
2015-08-16 15:28
Ciphertext.pm
7.01
KB
-rw-rw-rw-
2015-08-16 15:28
Compressed.pm
4.92
KB
-rw-rw-rw-
2015-08-16 15:28
Config.pm
3.01
KB
-rw-rw-rw-
2015-08-16 15:28
Constants.pm
2.39
KB
-rw-rw-rw-
2015-08-16 15:28
Digest.pm
4.36
KB
-rw-rw-rw-
2015-08-16 15:28
ErrorHandler.pm
2.37
KB
-rw-rw-rw-
2015-08-16 15:28
Key.pm
6.11
KB
-rw-rw-rw-
2015-08-16 15:28
KeyBlock.pm
3.64
KB
-rw-rw-rw-
2015-08-16 15:28
KeyRing.pm
8.08
KB
-rw-rw-rw-
2015-08-16 15:28
KeyServer.pm
4.32
KB
-rw-rw-rw-
2015-08-16 15:28
MDC.pm
2.5
KB
-rw-rw-rw-
2015-08-16 15:28
Marker.pm
893
B
-rw-rw-rw-
2015-08-16 15:28
Message.pm
4.32
KB
-rw-rw-rw-
2015-08-16 15:28
OnePassSig.pm
1.46
KB
-rw-rw-rw-
2015-08-16 15:28
PacketFactory.pm
8.63
KB
-rw-rw-rw-
2015-08-16 15:28
Plaintext.pm
3.24
KB
-rw-rw-rw-
2015-08-16 15:28
S2k.pm
6.05
KB
-rw-rw-rw-
2015-08-16 15:28
SKSessionKey.pm
6.15
KB
-rw-rw-rw-
2015-08-16 15:28
SessionKey.pm
6.69
KB
-rw-rw-rw-
2015-08-16 15:28
Signature.pm
12.44
KB
-rw-rw-rw-
2015-08-16 15:28
Trust.pm
797
B
-rw-rw-rw-
2015-08-16 15:28
UserID.pm
2.03
KB
-rw-rw-rw-
2015-08-16 15:28
Util.pm
4.85
KB
-rw-rw-rw-
2015-08-16 15:28
Words.pm
11.23
KB
-rw-rw-rw-
2015-08-16 15:28
Save
Rename
package Crypt::OpenPGP::Compressed; use strict; use Compress::Zlib; use Crypt::OpenPGP::Buffer; use Crypt::OpenPGP::Constants qw( DEFAULT_COMPRESS ); use Crypt::OpenPGP::ErrorHandler; use base qw( Crypt::OpenPGP::ErrorHandler ); use vars qw( %ALG %ALG_BY_NAME ); %ALG = ( 1 => 'ZIP', 2 => 'Zlib' ); %ALG_BY_NAME = map { $ALG{$_} => $_ } keys %ALG; sub alg { return $_[0]->{__alg} if ref($_[0]); $ALG{$_[1]} || $_[1]; } sub alg_id { return $_[0]->{__alg_id} if ref($_[0]); $ALG_BY_NAME{$_[1]} || $_[1]; } sub new { my $comp = bless { }, shift; $comp->init(@_); } sub init { my $comp = shift; my %param = @_; if (my $data = $param{Data}) { my $alg = $param{Alg} || DEFAULT_COMPRESS; $alg = $ALG{$alg} || $alg; $comp->{__alg} = $alg; $comp->{__alg_id} = $ALG_BY_NAME{$alg}; my %args; if ($comp->{__alg_id} == 1) { %args = (-WindowBits => -13, -MemLevel => 8); } my($d, $status, $compressed); ($d, $status) = deflateInit(\%args); return (ref $comp)->error("Zlib deflateInit error: $status") unless $status == Compress::Zlib::Z_OK(); { my($output, $out); ($output, $status) = $d->deflate($data); last unless $status == Compress::Zlib::Z_OK(); ($out, $status) = $d->flush(); last unless $status == Compress::Zlib::Z_OK(); $compressed = $output . $out; } return (ref $comp)->error("Zlib deflation error: $status") unless defined $compressed; $comp->{data} = $compressed; } $comp; } sub parse { my $class = shift; my($buf) = @_; my $comp = $class->new; $comp->{__alg_id} = $buf->get_int8; $comp->{__alg} = $ALG{ $comp->{__alg_id} }; $comp->{data} = $buf->get_bytes($buf->length - $buf->offset); $comp; } sub save { my $comp = shift; my $buf = Crypt::OpenPGP::Buffer->new; $buf->put_int8($comp->{__alg_id}); $buf->put_bytes($comp->{data}); $buf->bytes; } sub decompress { my $comp = shift; my %args; if ($comp->{__alg_id} == 1) { %args = (-WindowBits => -13); } my($i, $status, $out); ($i, $status) = inflateInit(\%args); return $comp->error("Zlib inflateInit error: $status") unless $status == Compress::Zlib::Z_OK(); ($out, $status) = $i->inflate($comp->{data}); return $comp->error("Zlib inflate error: $status") unless defined $out; $out; } 1; __END__ =head1 NAME Crypt::OpenPGP::Compressed - Compressed data packets =head1 SYNOPSIS use Crypt::OpenPGP::Compressed; my $data = 'serialized openpgp packets'; my $cdata = Crypt::OpenPGP::Compressed->new( Data => $data ); my $serialized = $cdata->save; =head1 DESCRIPTION I<Crypt::OpenPGP::Compressed> implements compressed data packets, providing both compression and decompression functionality, for all supported compression algorithms (C<Zlib> and C<ZIP>). This class uses I<Compress::Zlib> for all compression/decompression needs for both algorithms: C<ZIP> is simply C<Zlib> with a different setting for the I<WindowBits> parameter. Decompressing a compressed data packet should always yield a stream of valid PGP packets (which you can then parse using I<Crypt::OpenPGP::PacketFactory>). Similarly, when compressing a packet the input data should be a stream of packets. =head1 USAGE =head2 Crypt::OpenPGP::Compressed->new( %arg ) Creates a new compressed data packet object and returns that object. If there are no arguments in I<%arg>, the object is created with an empty compressed data container; this is used, for example, in I<parse> (below), to create an empty packet which is then filled with the data in the buffer. If you wish to initialize a non-empty object, I<%arg> can contain: =over 4 =item * Data A block of octets that make up the data that you wish to compress. As mentioned above, the data to compress should always be a stream of valid PGP packets (saved using I<Crypt::OpenPGP::PacketFactory::save>). This argument is required (for a non-empty object). =item * Alg The name (or ID) of a supported PGP compression algorithm. Valid names are C<Zlib> and C<ZIP>. This argument is optional; by default I<Crypt::OpenPGP::Compressed> will use C<ZIP>. =back =head2 $cdata->save Returns the serialized compressed data packet, which consists of a one-octet compression algorithm ID, followed by the compressed data. =head2 Crypt::OpenPGP::Compressed->parse($buffer) Given I<$buffer>, a I<Crypt::OpenPGP::Buffer> object holding (or with offset pointing to) a compressed data packet, returns a new I<Crypt::OpenPGP::Compressed> object, initialized with the data from the buffer. =head2 $cdata->decompress Decompresses the compressed data in the I<Crypt::OpenPGP::Compressed> object I<$cdata> and returns the decompressed data. =head1 AUTHOR & COPYRIGHTS Please see the Crypt::OpenPGP manpage for author, copyright, and license information. =cut