google / google/go-tpm-tools

Make simulator available over TCP (the same as original mssim)

Open
#92 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
C
Stars
309
Forks
118
Avg merge
1d 16h
Merged PRs (30d)
33

Description

`simulator` is a nice package that makes it easy to use it in tests. It works great for tests that need access from a golang app. But some integration tests use external tools to operate with TPM chip (e.g. `clevis` uses `tpm-tools` to seal passwords).

`tpm-tools` is a widely used tool. It allows to [specify different locations](https://github.com/tpm2-software/tpm2-tools/blob/master/man/common/tcti.md) for the TPM chip/simulator. e.g. `export TPM2TOOLS_TCTI="mssim:host=localhost,port=2321"` will make it work with the MS simulator.

It would be great if the `simulator` had an option to enable the TCP protocol for communication with the chip. It will allow to use utilities based on `tpm-tools` in the tests.

Contributor guide

Open the contributing guide

Research direction

Start by locating the `simulator` package and reviewing the mssim TCP protocol referenced by the `TPM2TOOLS_TCTI` example. Implement an option for TCP communication and verify that external tools using the mssim host and port can communicate with the simulator.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
security
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.