Current File : //usr/man/man3/Tspi_Data_Bind.3
'\" te
.\" Copyright (C) 2004 International Business Machines Corporation
.\" Written by Megan Schneider based on the Trusted Computing Group Software Stack Specification Version 1.1 Golden
.\"
.de Sh \" Subsection
.br
.if t .Sp
.ne 5
.PP
\fB\\$1\fR
.PP
..
.de Sp \" Vertical space (when we can't use .PP)
.if t .sp .5v
.if n .sp
..
.de Ip \" List item
.br
.ie \\n(.$>=3 .ne \\$3
.el .ne 3
.IP "\\$1" \\$2
..
.TH "Tspi_Data_Bind" 3 "2004-05-25" "TSS 1.1"
.ce 1
TCG Software Stack Developer's Reference
.SH NAME
Tspi_Data_Bind \- Encrypts a data blob
.SH "SYNOPSIS"
.ad l
.hy 0
.nf
.B #include <tss/platform.h>
.B #include <tss/tcpa_defines.h>
.B #include <tss/tcpa_typedef.h>
.B #include <tss/tcpa_struct.h>
.B #include <tss/tss_typedef.h>
.B #include <tss/tss_structs.h>
.B #include <tss/tspi.h>
.sp
.BI "TSS_RESULT Tspi_Data_Bind(TSS_HENCDATA " hEncData ",     TSS_HKEY " hEncKey ","
.BI "                          UINT32       " ulDataLength ", BYTE*    " rgbDataToBind ");"
.fi
.sp
.ad
.hy

.SH "DESCRIPTION"
.PP
\fBTspi_Data_Bind\fR encrypts a data blob in a manner
that is decryptable by \fBTspi_Data_Unbind\fR. The data blob is
encrypted using a public key operation with the key addressed by the
given encryption key object. To bind data that is larger than the RSA
public key modulus is the responsibility of the caller to perform the
blocking and subsequent combination of data. The bound data blob is
stored in the data object addressed by \fIhEncData\fR and can be
exported from the object by \fBTspi_GetAttribData\fR. The caller of
this function should perform validations that the public key presented
to it is from a valid TPM.

.SH "PARAMETERS"
.PP
.SS hEncData
The handle of the data object which contains the encrypted data on
successful completion of the command.
.SS hEncKey
Handle to the key object addressing the public key which is used
to encrypt the data.
.SS ulDataLength
Indicates the length of the data provided at the parameter \fIrgbDataToBind\fR.
.SS rgbDataToBind
A pointer to the data to be encrypted.

.SH "RETURN CODES"
.PP
\fBTspi_Data_Bind\fR returns TSS_SUCCESS on success, otherwise one of
the following values is returned:
.TP
.SM TSS_E_INVALID_HANDLE
\fIhHash\fR is not a valid handle.

.TP
.SM TSS_E_INTERNAL_ERROR
An internal SW error has been detected.

.TP
.SM TSS_E_BAD_PARAMETER
One or more parameters is bad.

.TP
.SM TSS_E_INVALID_ENCSCHEME
Invalid encryption scheme.

.TP
.SM TSS_E_ENC_INVALID_LENGTH
Invalid length of data to be encypted.

.TP
.SM TSS_E_ENC_NO_DATA
No data to encrypt.

.TP
.SM TSS_E_ENC_INVALID_TYPE
Invalid encryption type.


.SH "CONFORMING TO"

.PP
\fBTspi_Data_Bind\fR conforms to the Trusted Computing Group Software
Specification version 1.1 Golden


.\" Oracle has added the ARC stability level to this manual page
.SH ATTRIBUTES
See
.BR attributes (5)
for descriptions of the following attributes:
.sp
.TS
box;
cbp-1 | cbp-1
l | l .
ATTRIBUTE TYPE	ATTRIBUTE VALUE 
=
Availability	library/security/trousers
=
Stability	Uncommitted
.TE 
.PP
.SH "SEE ALSO"

.PP
\fBTspi_Data_Unbind\fR(3), \fBTspi_Data_Unseal\fR(3),
\fBTspi_Data_Seal\fR(3).



.SH NOTES

.\" Oracle has added source availability information to this manual page
This software was built from source available at https://java.net/projects/solaris-userland.  The original community source was downloaded from  http://sourceforge.net/projects/trousers/files/trousers/0.3.6/trousers-0.3.6.tar.gz

Further information about this software can be found on the open source community website at http://sourceforge.net/projects/trousers/files/trousers/.