blob: 09cb5d475032b599dc5d79390073038b835343d1 [file] [log] [blame]
1. Download TPM emulator - ibmtpm974.tar.gz
(Note: Optional. No need to execute this step if the system has real TPM device on it)
a. cd src/
b. make
c. Run tpm_server binary - ./tpm_server rm
2. Download TSS version 1.2.0
a. Run following commands
i. ./bootstrap
ii. ./configure
iii. If you face any error for pkg-config,
1. export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
iv. make && make install
3. Download tpm2-abrmd version 1.1.1
a. Run following commands
i. sudo useradd --system --user-group tss
ii. cd tpm2-abrmd
iii. ./bootstrap
iv. ./configure
v. If you face any error for pkg-config,
1. export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
vi. make && make install
vii. sudo udevadm control --reload-rules && sudo udevadm trigger
viii. sudo pkill -HUP dbus-daemon
ix. systemctl daemon-reload
b. Run tpm2-abrmd as follows - ./tpm2-abrmd -t socket
c. Check in tpm_server whether following debug prints are resulted in console, after resource manager startup
Client accepted
Client accepted
4. Download tpm2-tools version 2.1.0
a. Run the following commands
i. ./bootstrap
ii. ./configure
iii. make && make install
5. Now configure Initialize TPM, configure with Primary key and then save it in TPMs NV ram
(Equivalent of script - initandverify/Init_and_create_tpm_primary.sh, you can run that script)
a. Initialize TPM
i. tpm2_startup -clear -T tabrmd V
b. Take ownership
i. tpm2_takeownership -o new -e new -l new -T tabrmd V
c. Create Primary Key
i. tpm2_createprimary -P new -A o -g 0x000B -G 0x0001 -T tabrmd -V -C PrimaryKeyBlob
d. Save primary Key in NV ram
i. tpm2_evictcontrol -A o -c ./PrimaryKeyBlob -S 0x81000011 -T tabrmd -V -P new
e. Check Primary Keys public portion
i. tpm2_readpublic -H 0x81000011 --opu out_primary_public -T tabrmd V
f. If all the above commands are successful then TPM emulator, TPM resource manager and TPM tools are working fine
6. Now compile the TPM duplication and import tools with "make" command (after creation of Makefile) and run it as per instructions.
use "./ossl_tpm_duplicate --help" for usage.
use "./ossl_tpm_import --help" for usage.
7. Note: If you restart tpm_server, then you have to restart TPM resource manager too. And the repeat from step 5.