Files
u-boot/include
Ruchika Gupta c5de15cbc8 crypto/fsl: Add command for encapsulating/decapsulating blobs
Freescale's SEC block has built-in Blob Protocol which provides
a method for protecting user-defined data across system power
cycles. SEC block protects data in a data structure called a Blob,
which provides both confidentiality and integrity protection.

Encapsulating data as a blob
Each time that the Blob Protocol is used to protect data, a
different randomly generated key is used to encrypt the data.
This random key is itself encrypted using a key which is derived
from SoC's non volatile secret key and a 16 bit Key identifier.
The resulting encrypted key along with encrypted data is called a blob.
The non volatile secure key is available for use only during secure boot.

During decapsulation, the reverse process is performed to get back
the original data.

Commands added
--------------
    blob enc - encapsulating data as a cryptgraphic blob
    blob dec - decapsulating cryptgraphic blob to get the data

Commands Syntax
---------------
	blob enc src dst len km

	Encapsulate and create blob of data $len bytes long
	at address $src and store the result at address $dst.
	$km is the 16 byte key modifier is also required for
	generation/use as key for cryptographic operation. Key
	modifier should be 16 byte long.

	blob dec src dst len km

	Decapsulate the  blob of data at address $src and
	store result of $len byte at addr $dst.
	$km is the 16 byte key modifier is also required for
	generation/use as key for cryptographic operation. Key
	modifier should be 16 byte long.

Signed-off-by: Ruchika Gupta <ruchika.gupta@freescale.com>
Reviewed-by: York Sun <yorksun@freescale.com>
2014-10-16 14:20:40 -07:00
..
2014-09-10 13:00:00 -06:00
2014-07-30 08:48:03 -04:00
2014-07-18 19:42:16 +01:00
2014-07-18 19:42:10 +01:00
2014-05-29 17:45:31 -04:00
2014-02-04 16:32:20 +01:00
2014-02-21 08:42:47 -05:00
2014-03-17 20:05:48 -06:00
2014-05-27 10:21:32 -04:00
2014-06-21 10:06:58 -06:00
2014-10-06 17:34:40 +02:00
2014-08-09 11:16:57 -04:00
2014-08-09 11:16:57 -04:00
2014-08-09 11:16:57 -04:00
2014-07-07 19:47:18 -04:00
2014-06-19 11:18:55 -04:00
2014-02-20 06:48:23 +01:00
2013-09-24 09:10:33 -04:00
2014-05-28 10:58:19 +09:00
2014-06-20 11:54:29 -06:00
2014-08-10 15:25:19 +02:00
2014-08-09 11:17:04 -04:00
2014-09-24 18:30:29 -04:00
2013-09-20 10:30:54 -04:00
2014-07-18 17:53:24 -04:00
2014-05-30 14:03:24 -04:00
2013-11-09 17:21:01 +01:00
2014-08-01 18:44:56 +03:00
2014-03-17 20:05:49 -06:00
2014-08-21 12:01:28 -04:00
2014-08-06 09:12:30 -04:00
2014-09-10 13:00:00 -06:00
2014-02-19 10:47:43 -05:00
2014-06-11 16:27:06 -04:00
2013-12-04 08:11:28 -05:00