Skip to content

Commit 4007674

Browse files
author
Andreas Fuchs
committed
Rework Software page
Signed-off-by: Andreas Fuchs <andreas.fuchs@sit.fraunhofer.de>
1 parent 0308ab3 commit 4007674

1 file changed

Lines changed: 18 additions & 10 deletions

File tree

software.md

Lines changed: 18 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -11,27 +11,36 @@ permalink: /software/
1111
</script>
1212
<script src="https://sidecar.gitter.im/dist/sidecar.v1.js" async defer></script>
1313

14-
# Software with TPM 2.0 support
14+
# TPM 2.0 software
1515
- [tpm2-tss](https://github.com/tpm2-software/tpm2-tss) [![Documentation Status](https://readthedocs.org/projects/tpm2-tss/badge/?version=latest)](https://tpm2-tss.readthedocs.io/en/latest/?badge=latest) [![latest packaged version(s)](https://repology.org/badge/latest-versions/tpm2-tss.svg)](https://repology.org/project/tpm2-tss/versions) [![Packaging status](https://repology.org/badge/tiny-repos/tpm2-tss.svg)](https://repology.org/project/tpm2-tss/versions)
1616
- [TPM2-Tools](https://github.com/tpm2-software/tpm2-tools) [![latest packaged version(s)](https://repology.org/badge/latest-versions/tpm2-tools.svg)](https://repology.org/project/tpm2-tools/versions) [![Packaging status](https://repology.org/badge/tiny-repos/tpm2-tools.svg)](https://repology.org/project/tpm2-tools/versions)
1717
- [PKCS11](https://github.com/tpm2-software/tpm2-pkcs11) [![latest packaged version(s)](https://repology.org/badge/latest-versions/tpm2-pkcs11.svg)](https://repology.org/project/tpm2-pkcs11/versions) [![Packaging status](https://repology.org/badge/tiny-repos/tpm2-pkcs11.svg)](https://repology.org/project/tpm2-pkcs11/versions)
18-
- [OpenSSL](https://github.com/tpm2-software/tpm2-tss-engine) [![latest packaged version(s)](https://repology.org/badge/latest-versions/tpm2-tss-engine.svg)](https://repology.org/project/tpm2-tss-engine/versions) [![Packaging status](https://repology.org/badge/tiny-repos/tpm2-tss-engine.svg)](https://repology.org/project/tpm2-tss-engine/versions)
19-
- [OpenConnect](http://git.infradead.org/users/dwmw2/openconnect.git/) [Docs](http://www.infradead.org/openconnect/tpm.html)
20-
- [cryptsetup/LUKS](https://gitlab.com/cryptsetup/cryptsetup/merge_requests/51) (wip)
21-
- [StrongSwan](https://wiki.strongswan.org/projects/strongswan/wiki/TPMPlugin)
22-
- [Clevis](https://github.com/latchset/clevis) ([Howto](https://blog.dowhile0.org/2017/10/18/automatic-luks-volumes-unlocking-using-a-tpm2-chip/))
18+
- [OpenSSL 1.x](https://github.com/tpm2-software/tpm2-tss-engine) [![latest packaged version(s)](https://repology.org/badge/latest-versions/tpm2-tss-engine.svg)](https://repology.org/project/tpm2-tss-engine/versions) [![Packaging status](https://repology.org/badge/tiny-repos/tpm2-tss-engine.svg)](https://repology.org/project/tpm2-tss-engine/versions)
19+
- [OpenSSL 3.x](https://github.com/tpm2-software/tpm2-openssl) [Releases](https://github.com/tpm2-software/tpm2-openssl/releases)
2320
- [TPM2-TOTP](https://github.com/tpm2-software/tpm2-totp) [![latest packaged version(s)](https://repology.org/badge/latest-versions/tpm2-totp.svg)](https://repology.org/project/tpm2-totp/versions) [![Packaging status](https://repology.org/badge/tiny-repos/tpm2-totp.svg)](https://repology.org/project/tpm2-totp/versions)
24-
- [LVFS / fwupd](https://fwupd.org/): [Post1](https://blogs.gnome.org/hughsie/2018/12/14/firmware-attestation/), [Post2](https://blogs.gnome.org/hughsie/2019/04/10/using-a-client-certificate-to-set-the-attestation-checksum/)
2521
- [ESAPI Rust Wrapper](https://crates.io/crates/tss-esapi) [Docs](https://docs.rs/tss-esapi/1.0.1/tss_esapi/)
2622
- [tpm2-pytss](https://github.com/tpm2-software/tpm2-pytss) [![PyPI version](https://img.shields.io/pypi/v/tpm2-pytss.svg)](https://pypi.org/project/tpm2-pytss)
2723
- [TPM-JS](https://google.github.io/tpm-js/)
2824

29-
# Projects requiring TPM 2.0 support
25+
# Software with direct TPM 2.0 support
26+
- [OpenConnect](http://git.infradead.org/users/dwmw2/openconnect.git/) [Docs](http://www.infradead.org/openconnect/tpm.html)
27+
- [(systemd-)cryptsetup/LUKS](https://0pointer.net/blog/unlocking-luks2-volumes-with-tpm2-fido2-pkcs11-security-hardware-on-systemd-248.html)
28+
- [StrongSwan](https://wiki.strongswan.org/projects/strongswan/wiki/TPMPlugin)
29+
- [Clevis](https://github.com/latchset/clevis) ([Howto](https://blog.dowhile0.org/2017/10/18/automatic-luks-volumes-unlocking-using-a-tpm2-chip/))
30+
- [LVFS / fwupd](https://fwupd.org/): [Post1](https://blogs.gnome.org/hughsie/2018/12/14/firmware-attestation/), [Post2](https://blogs.gnome.org/hughsie/2019/04/10/using-a-client-certificate-to-set-the-attestation-checksum/)
31+
- [libsecret/gnome-keyring](https://gitlab.gnome.org/Teams/Engagement/gsoc-2021/-/issues/13)
32+
33+
# Software with indirect TPM 2.0 support
34+
- NGINX via [OpenSSL tpm2-tss-egnine](https://github.com/tpm2-software/tpm2-tss-engine) [Demo](https://youtu.be/NFQ22SBlejk?t=604)
35+
- SSH via [tpm2-PKCS11](https://github.com/tpm2-software/tpm2-pkcs11) [Demo](https://youtu.be/NFQ22SBlejk?t=944)
36+
- GIT via SSH and [tpm2-PKCS11](https://github.com/tpm2-software/tpm2-pkcs11) [Demo](https://youtu.be/NFQ22SBlejk?t=944)
37+
- TODO (add links to demos): Firefox, Chromium, Thunderbird, Evolution, JDK-Keystore, wpa_supplicant, GNU-TLS (all via tpm2-pkcs11)
38+
39+
# Ideas for adding TPM 2.0 support
3040
- OpenVPN
3141
- WireGuard
3242
- Tinc
3343
- NetworkManager/wpa_supplicant 802.1X
34-
- libsecret/gnome-keyring [WIP at GSOC](https://gitlab.gnome.org/Teams/Engagement/gsoc-2021/-/issues/13)
3544
- KDE wallet
3645
- GNU-TLS
3746
- certbot (to create Certs with PKCS11 support)
@@ -47,6 +56,5 @@ permalink: /software/
4756
- empathy/telepathy jabber (via PKCS11?)
4857
- GnuPG (also leads to git tag and release signing)
4958
- Telegram desktop
50-
- [GNOME Keyring](https://wiki.gnome.org/Projects/GnomeKeyring/SecurityFAQ#I_have_a_TPM_.28Trusted_Platform_Module.29_chip_on_my_machine._Can_I_use_it_to_protect_my_passwords.3F)
5159

5260
Please feel free to also add notes to this list wrt means of integration, e.g. if a project could be enabled using tpm2-pkcs11 and p11-kit because it already provides a pkcs11 interfaces for authentication.

0 commit comments

Comments
 (0)