Skip to main content

A Python package for algtestprocess

Project description

Algtest pyProcess

A tool for simple visualizations of gathered TPM and JavaCard smart card data collected by tpm2-algtest and JCAlgtest tools respectively.

Getting started

Dependencies

Installing

  • Setup virtual environment
python -m venv venv
source venv/bin/activate
  • Install package using pip or run setup.py
pip install -e .

NOTE

If you are an user of fish shell, right command is source venv/bin/activate.fish


Usage

pyprocess command

An entry point to the command line interface, which is used mostly to preprocess the datasets which are then analysed in jupyter notebooks.

Commands:
  tpm       A collection of commands for processing of results from tpm2-algtest
  javacard  NOT YET IMPLEMENTED
tpm commands
metadata-update

Command which is used to find all measurements on a given path, and group them by exact firmware. The output is metadata.json which contains these aggregated paths. Latter part of this file contains directory hashes, to prevent duplicate inclusion of the same measurement. An example of metadata.json file is shown below.

If you have already created a metadata.json file and just want to add more measurements, you may use -i option which takes path to old metadata.json file.

pyprocess tpm metadata-update ./results/tpmalgtest_results_2022
pyprocess tpm metadata-update -i metadata.json ./results/tpmalgtest_results_2023

An example of metadata.json file.

{
  "entries": {
    "STM 73.4.17568.4452": {
      "TPM name": "STM 73.4.17568.4452",
      "vendor": "STM",
      "title": "",
      "measurement paths": [
        "/home/tjaros/storage/research/tpm/tpmalgtest_results/out4/out",
        "/home/tjaros/storage/research/tpm/tpmalgtest_results/algtest_result_8d400ec7-122c-498f-b141-733d359ad78f_STM",
        "/home/tjaros/storage/research/tpm/tpmalgtest_results/algtest_result_9fdfdf94-3a4a-4cd3-9a92-86642f9f4f6c"
      ]
    },
    "AMD AMD 3.37.0.5": {
      "TPM name": "AMD AMD 3.37.0.5",
      "vendor": "AMD",
      "title": "",
      "measurement paths": [
        "/home/tjaros/storage/research/tpm/tpmalgtest_results/algtest_result_70de7ce0-de7c-42bc-9f86-708d8304ad48"
      ]
    },
  },
   "hashes": [
    "862ad83383339467dbd687f3ebb2d075",
    "7f78e96bd4fc47299cdbaa7cf1a1c1e3",
    "3d6f2c211f00245d2a7b2c6458b3626a",
    "2b3242fc08c73b608a227eea563f1531",
   ],
}

License

This project is licensed under MIT License - see the LICENSE file for details

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

algtestprocess-0.1.6.tar.gz (84.2 kB view details)

Uploaded Source

File details

Details for the file algtestprocess-0.1.6.tar.gz.

File metadata

  • Download URL: algtestprocess-0.1.6.tar.gz
  • Upload date:
  • Size: 84.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.12

File hashes

Hashes for algtestprocess-0.1.6.tar.gz
Algorithm Hash digest
SHA256 0453f03e7ac9c7fb2435935fd2f6e326b8cbe495c7b4efa9f61b132c3ac039d4
MD5 de172f0c434b63f569bf451ea77e7184
BLAKE2b-256 cd84fdd495e0f4fb6ebcf0fb95a32173a0db0427e700dab9afecd053cf184244

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page