mirror of
https://github.com/ibm-s390-linux/s390-tools.git
synced 2026-08-05 02:14:52 +00:00
3ab06d77fb
pvattest is a tool to attest an IBM Secure Execution guest. In a trusted environment, one can create a request using `pvattest create`. To get a measurement of an untrusted IBM Secure Execution guest call 'pvattest perform'. Again in a trusted environment, call 'pvattest verify' to verify that the measurement is the expected one. The tool runs on s390 and x86. It has the same requirements like libpv and therefore requires openssl v1.1.1+, glib2.56+, and libcurl. Additionally, to measure, the linux kernel must provide the Ultravisor userspace interface `uvdevice` at /dev/uv and must be executed on an IBM Secure Execution guest on hardware with Ultravisor attestation support, like IBM z16 or later. Signed-off-by: Steffen Eiden <seiden@linux.ibm.com> Reviewed-by: Marc Hartmayer <mhartmay@linux.ibm.com> Signed-off-by: Jan Höppner <hoeppner@linux.ibm.com>
61 lines
1.9 KiB
Groff
61 lines
1.9 KiB
Groff
.\" Copyright 2022 IBM Corp.
|
|
.\" s390-tools is free software; you can redistribute it and/or modify
|
|
.\" it under the terms of the MIT license. See LICENSE for details.
|
|
.\"
|
|
.TH pvattest-verify 1 "07 June 2022" "s390-tools" "Attestation Manual"
|
|
.nh
|
|
.ad l
|
|
.SH NAME
|
|
\fBpvattest [OPTION?] verify [OPTIONS] \fP- verify an attestation measurement
|
|
\fB
|
|
.SH DESCRIPTION
|
|
Verify that a previously generated attestation measurement of an IBM Secure Execution guest is as expected. Only verify attestation requests in a trusted environment, such as your workstation. Input must contain the response as produced by 'pvattest perform'. The protection key must be the one that was used to create the request by 'pvattest create'. Please delete it after verification. The header must be the IBM Secure Execution header of the image that was attested during 'pvattest perform'
|
|
.RE
|
|
.PP
|
|
|
|
.SH OPTIONS
|
|
.TP
|
|
.B
|
|
\fB-h\fP, \fB--help\fP
|
|
Show help options
|
|
.TP
|
|
.B
|
|
\fB-i\fP, \fB--input\fP=\fBFILE\fP
|
|
\fBFILE\fP specifies the attestation result as input.
|
|
.TP
|
|
.B
|
|
\fB--hdr\fP=\fBFILE\fP
|
|
Specify the header of the guest image. Exactly one is required.
|
|
.TP
|
|
.B
|
|
\fB-a\fP, \fB--arpk\fP=\fBFILE\fP
|
|
Use \fBFILE\fP to specify the GCM-AES256 key to decrypt the attestation request. Delete this key after verification.
|
|
.TP
|
|
.B
|
|
\fB-V\fP, \fB--verbose\fP
|
|
Provide more detailed output (optional)
|
|
.RE
|
|
.PP
|
|
|
|
.SH EXAMPLE
|
|
To verify a measurement in 'measurement.bin' with the protection key 'arp.kep' and SE-guest header 'se_guest.hdr'.
|
|
.PP
|
|
.nf
|
|
.fam C
|
|
pvattest verify --input attresp.bin --arpk arp.key --hdr se_guest.hdr
|
|
|
|
.fam T
|
|
.fi
|
|
If the verification was successful the program exists with zero.
|
|
If the verification failed it exists with 2 and prints the following to stderr:
|
|
.PP
|
|
.nf
|
|
.fam C
|
|
ERROR: Attestation measurement verification failed:
|
|
Calculated and received attestation measurement are not the same.
|
|
|
|
.fam T
|
|
.fi
|
|
.SH SEE ALSO
|
|
\fBpvattest\fP(1), \fBpvattest-create\fP(1), \fBpvattest-perform\fP(1)
|