Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
Crypt::Digest::SHA256(User Contributed Perl DocumentatCrypt::Digest::SHA256(3)

NAME
       Crypt::Digest::SHA256 - Hash function SHA-256 [size: 256	bits]

SYNOPSIS
	  ### Functional interface:
	  use Crypt::Digest::SHA256 qw(	sha256 sha256_hex sha256_b64 sha256_b64u
				       sha256_file sha256_file_hex sha256_file_b64 sha256_file_b64u );

	  # calculate digest from string/buffer
	  $sha256_raw  = sha256('data string');
	  $sha256_hex  = sha256_hex('data string');
	  $sha256_b64  = sha256_b64('data string');
	  $sha256_b64u = sha256_b64u('data string');
	  # calculate digest from file
	  $sha256_raw  = sha256_file('filename.dat');
	  $sha256_hex  = sha256_file_hex('filename.dat');
	  $sha256_b64  = sha256_file_b64('filename.dat');
	  $sha256_b64u = sha256_file_b64u('filename.dat');
	  # calculate digest from filehandle
	  $sha256_raw  = sha256_file(*FILEHANDLE);
	  $sha256_hex  = sha256_file_hex(*FILEHANDLE);
	  $sha256_b64  = sha256_file_b64(*FILEHANDLE);
	  $sha256_b64u = sha256_file_b64u(*FILEHANDLE);

	  ### OO interface:
	  use Crypt::Digest::SHA256;

	  $d = Crypt::Digest::SHA256->new;
	  $d->add('any data');
	  $d->addfile('filename.dat');
	  $d->addfile(*FILEHANDLE);
	  $result_raw  = $d->digest;	 # raw bytes
	  $result_hex  = $d->hexdigest;	 # hexadecimal form
	  $result_b64  = $d->b64digest;	 # Base64 form
	  $result_b64u = $d->b64udigest; # Base64 URL Safe form

DESCRIPTION
       Provides	an interface to	the SHA256 digest algorithm.

EXPORT
       Nothing is exported by default.

       You can export selected functions:

	 use Crypt::Digest::SHA256 qw(sha256 sha256_hex	sha256_b64 sha256_b64u
					     sha256_file sha256_file_hex sha256_file_b64 sha256_file_b64u);

       Or all of them at once:

	 use Crypt::Digest::SHA256 ':all';

FUNCTIONS
   sha256
       Logically joins all arguments into a single string, and returns its
       SHA256 digest encoded as	a binary string.

	$sha256_raw = sha256('data string');
	#or
	$sha256_raw = sha256('any data', 'more data', 'even more data');

   sha256_hex
       Logically joins all arguments into a single string, and returns its
       SHA256 digest encoded as	a hexadecimal string.

	$sha256_hex = sha256_hex('data string');
	#or
	$sha256_hex = sha256_hex('any data', 'more data', 'even	more data');

   sha256_b64
       Logically joins all arguments into a single string, and returns its
       SHA256 digest encoded as	a Base64 string, with trailing '=' padding.

	$sha256_b64 = sha256_b64('data string');
	#or
	$sha256_b64 = sha256_b64('any data', 'more data', 'even	more data');

   sha256_b64u
       Logically joins all arguments into a single string, and returns its
       SHA256 digest encoded as	a Base64 URL Safe string (see RFC 4648 section
       5).

	$sha256_b64url = sha256_b64u('data string');
	#or
	$sha256_b64url = sha256_b64u('any data', 'more data', 'even more data');

   sha256_file
       Reads file (defined by filename or filehandle) content, and returns its
       SHA256 digest encoded as	a binary string.

	$sha256_raw = sha256_file('filename.dat');
	#or
	$sha256_raw = sha256_file(*FILEHANDLE);

   sha256_file_hex
       Reads file (defined by filename or filehandle) content, and returns its
       SHA256 digest encoded as	a hexadecimal string.

	$sha256_hex = sha256_file_hex('filename.dat');
	#or
	$sha256_hex = sha256_file_hex(*FILEHANDLE);

       BEWARE: You have	to make	sure that the filehandle is in binary mode
       before you pass it as argument to the addfile() method.

   sha256_file_b64
       Reads file (defined by filename or filehandle) content, and returns its
       SHA256 digest encoded as	a Base64 string, with trailing '=' padding.

	$sha256_b64 = sha256_file_b64('filename.dat');
	#or
	$sha256_b64 = sha256_file_b64(*FILEHANDLE);

   sha256_file_b64u
       Reads file (defined by filename or filehandle) content, and returns its
       SHA256 digest encoded as	a Base64 URL Safe string (see RFC 4648 section
       5).

	$sha256_b64url = sha256_file_b64u('filename.dat');
	#or
	$sha256_b64url = sha256_file_b64u(*FILEHANDLE);

METHODS
       The OO interface	provides the same set of functions as Crypt::Digest.

   new
	$d = Crypt::Digest::SHA256->new();

   clone
	$d->clone();

   reset
	$d->reset();

   add
	$d->add('any data');
	#or
	$d->add('any data', 'more data', 'even more data');

   addfile
	$d->addfile('filename.dat');
	#or
	$d->addfile(*FILEHANDLE);

   add_bits
	$d->add_bits($bit_string);   # e.g. $d->add_bits("111100001010");
	#or
	$d->add_bits($data, $nbits); # e.g. $d->add_bits("\xF0\xA0", 16);

   hashsize
	$d->hashsize;
	#or
	Crypt::Digest::SHA256->hashsize();
	#or
	Crypt::Digest::SHA256::hashsize();

   digest
	$result_raw = $d->digest();

   hexdigest
	$result_hex = $d->hexdigest();

   b64digest
	$result_b64 = $d->b64digest();

   b64udigest
	$result_b64url = $d->b64udigest();

SEE ALSO
       o   CryptX, Crypt::Digest

       o   <https://en.wikipedia.org/wiki/SHA-2>

perl v5.32.0			  2020-08-25	      Crypt::Digest::SHA256(3)

NAME | SYNOPSIS | DESCRIPTION | EXPORT | FUNCTIONS | METHODS | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=Crypt::Digest::SHA256&sektion=3&manpath=FreeBSD+12.1-RELEASE+and+Ports>

home | help