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

FreeBSD Manual Pages

  
 
  

home | help
libipsec-mb(7)		   Linux Programmer's Manual		libipsec-mb(7)

NAME
       libipsec-mb  -  overview	 of Intel(R) Multi-Buffer Crypto for IPSec li-
       brary

DESCRIPTION
       Intel Multi-Buffer Crypto for IPsec Library is  highly-optimized	 soft-
       ware  implementations  of  the core cryptographic processing for	IPsec,
       which provides industry-leading performance on a	range of Intel(R) Pro-
       cessors.
       The  library  offers API	crafted	for IPsec applications where a network
       packet is subject of encryption and integrity operations.
       For best	processor utilization it uses multi buffer technology for  al-
       gorithms	that don't allow multi block processing.
       See more	in the Intel White Paper: "Fast	Multi-buffer IPsec Implementa-
       tions on	Intel Architecture Processors".	 Jim  Guilford,	 Sean  Gulley,
       et. al.
       The easiest way to find it is to	search the Internet for	the title.

       More	information	can	be     found	 at	intel-ipsec-mb
       <https://github.com/intel/intel-ipsec-mb>.

   ENCRYPTION ALGORITHMS
       AES128-GCM, AES192-GCM, AES256-GCM, AES128-CBC, AES192-CBC, AES256-CBC,
       AES128-CTR, AES192-CTR, AES256-CTR, AES128-CCM, AES256-CCM, AES128-ECB,
       AES192-ECB, AES256-ECB, NULL, AES128-DOCSIS, AES256-DOCSIS, DES-DOCSIS,
       3DES, DES, KASUMI-F8, ZUC-EEA3, SNOW3G-UEA2, AES128-CBCS	and Chacha20.

   INTEGRITY ALGORITHMS
       AES-XCBC-96,   HMAC-MD5-96,   HMAC-SHA1-96,   HMAC-SHA2-224_112,	 HMAC-
       SHA2-256_128,   HMAC-SHA2-384_192,   HMAC-SHA2-512_256,	  AES128-GMAC,
       AES192-GMAC, AES256-GMAC, NULL, AES128-CCM, AES256-CCM, AES128-CMAC-96,
       AES256-CMAC-96, KASUMI-F9, ZUC-EIA3, SNOW3G-UIA2, DOCSIS-CRC32, HEC and
       POLY1305.

   RECOMMENDATIONS
       DES  algorithm  should be avoided and AES encryption should be used in-
       stead.
       3DES is a legacy	algorithms and AES encryption is  recommended  to  use
       instead.
       HMAC-MD5-96  is	a legacy algorithm and HMAC-SHA1 is recommended	to use
       instead.
       DES, 3DES and HMAC-MD5-96 are implemented in  the  library  to  support
       legacy applications.
       AES-ECB	algorithm should be avoided and	AES-CBC	or AES-CNTR encryption
       should be used instead.

   KEY STORAGE
       The library doesn't offer any solution for secure key storage or	 stor-
       age  of sensitive information.  It is up	to application to arrange safe
       storage of sensitive information.

   API
       The library offers four sets of identical API's.	Each  set  corresponds
       to one architecture: SSE, AVX, AVX2 and AVX512.
       It   comprises	of  init_mb_mgr,  get_next_job,	 submit_job,  get_com-
       pleted_job and flush_job	operations.
       init_mb_mgr()  -	initializes the	instance of the	multi-buffer manager
       get_next_job() -	obtains	pointer	to next	available job entry
       submit_job()   -	submits	job for	processing
       get_completed_job() - returns already completed jobs
       flush_job()    -	flushes	multi-buffer manager and completes any outstanding operations.

       The basic usage of the API is presented by this pseudo code:

	       init_mb_mgr(&mb_mgr);
	       ...
	       while (work_to_be_done) {
		       job = get_next_job(&mb_mgr);
		       /* TODO:	Fill in	job fields */
		       job = submit_job(&mb_mgr);
		       while (job != NULL) {
			       /* TODO:	Complete processing on job */
			    job	= get_completed_job(&mb_mgr);
		       }
	       }

	       job = flush_job(&mb_mgr);
	       while (job != NULL) {
		       /* TODO:	Complete processing on job */
		    job	= flush_job(&mb_mgr);
	       }

       The library provides more interface functions i.e.  single  block  hash
       functions for HMAC OPAD and IPAD	calculations.

BUGS
       Report  bugs  at	intel-ipsec-mb/issues <https://github.com/intel/intel-
       ipsec-mb/issues>.

AUTHORS
       Jim Guilford <james.guilford@intel.com>,	Tomasz	Kantecki  <tomasz.kan-
       tecki@intel.com>

       This is free software; see the source for copying conditions.  There is
       NO warranty; not	even for MERCHANTABILITY or FITNESS FOR	 A  PARTICULAR
       PURPOSE.

Linux				  2018-03-01			libipsec-mb(7)

NAME | DESCRIPTION | BUGS | AUTHORS

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=libipsec-mb&sektion=7&manpath=FreeBSD+13.0-RELEASE+and+Ports>

home | help