Skip to content

Success!

Hello and welcome!

I´m really proud to introduce the new way to get your LetsTrust-TPM working with your Raspberry Pi!

Till the next Stretch update from the RasPi Foundation the way will be:

Step one:
Open a (whatever) term on your Pi.

Step two:
Run a "sudo rpi-update"

Step three:
Open the /boot/config.txt with "sudo nano /boot/config.txt"
and activate SPI with uncomment
"dtparam=spi=on"
and load the TPM device tree overlay with
"dtoverlay=tpm-slb9670"

Step four:
Plug your LetsTrust-TPM onto the right pins and reboot your Raspberry Pi

Step five:
Open a (whatever) term on your Pi and type "ls /dev/tpm0" and
/dev/tpm0 will appear in yellow letters!

Step six:
Be happy about your success!

Huge thanks to a friend of mine an ex colleague: Peter Hüwe.
He found this smart solution [1] for the Pull Request issues [2].

Thank you Phil Elwell for evaluation, identifying problems and finally merging the PR [3]


Bye for now!

Paul


[1] https://github.com/torvalds/linux/commit/2f7d8dbb11287cbe9da6380ca14ed5d38c9ed91f
[2] https://github.com/raspberrypi/linux/pull/2585#issue-195047458
[3] https://github.com/raspberrypi/linux/pull/2585#issuecomment-444077311
Categories: TPM

New Linux Image!

UPDATE:
New RaspberryPi -> New Image!
All links are changed: Have fun!


Ein neuer RaspberryPi -> Ein neues Image!
Alle Links sind geändert: Viel spaß!


//German version below

Hello everybody,

months without new blog posts, please apoligize, I had so much to do the last months.

Now i´ved patched the last Raspbian-Image "Stretch" with the TPM-SPI-driver, you´ll find the Image on this LINK.
In this Image the eltt2 tool ist NOT pre compiled.

please use:

git clone https://github.com/Infineon/eltt2.git
cd eltt2
make
sudo ./eltt2 -g
sudo ./eltt2 -h


Have fun!

Bye for now!

Paul


// Deutsche Version

Hallo zusammen,

Monate ohne neue Blog-Postings, bitte entschuldigt, ich hatte einfach zu viel zu tun./

So, jetzt habe ich das letzte Raspbian-Image "Stretch" mit dem TPM-SPI-Treiber gepatcht, dieses findest du auf diesem LINK..

In diesem Image ist das eltt2-Tool NICHT vorkompiliert.

Um dies zu ändern:

git clone https://github.com/Infineon/eltt2.git
cd eltt2
make
sudo ./eltt2 -g
sudo ./eltt2 -h


Das wars für heute!

Paul


Categories: TPM

Updates!

//Germanversion below

Hello everybody,

currently there is a problem in the firmware of the TPM chip from Infineon which was installed on the LetsTrust TPM modules.

Information about the problem can be found at the following links:
https://www.infineon.com/TPM-update
https://portal.msrc.microsoft.com/en-us/security-guidance/advisory/ADV170012
https://sites.google.com/a/chromium.org/dev/chromium-os/tpm_firmware_update

Not affected are firmware versions >= 7.62.3126 for TPM 2.0.
You can check this under Linux with the eltt2 and the command "sudo ./eltt2 -g".

Unfortunately, there is currently no update tool which I could link here.


Max of pi3g has assured that he will take care of the rapid exchange of the modules.

Please note that when exchanging your module, all keys generated in the TPM and, of course, the stored keys will also be lost. Please take appropriate measures, for example, endcrypt your backups ^ __ ^.

Bye for now!

//German Version

Hallo allerseits,

aktuell gibt es ein Problem in der Firmware des TPM-Chips von Infineon welcher auf den LetsTrust-TPM-Modulen verbaut wurde.

Informationen zu dem Problem findest du unter folgende Links:
https://www.infineon.com/TPM-update
https://portal.msrc.microsoft.com/en-us/security-guidance/advisory/ADV170012
https://sites.google.com/a/chromium.org/dev/chromium-os/tpm_firmware_update

Nicht betroffen sind Firmwareversionen >= 7.62.3126 für TPM 2.0.
Prüfen kannst du dies unter Linux mit dem eltt2 und dem Befehl „sudo ./eltt2 –g“.

Leider gibt es aktuell noch kein Update-Tool welches ihr ich hier verlinken könnte.

Max von pi3g hat mit zugesichert, dass er sich um den zügigen Austausch der Module kümmern wird.

Bedenk bitte, dass bei dem Austausch deines Moduls alle im TPM generierten und natürlich auch die gespeicherten Keys verloren gehen. Treffe bitte entsprechende Maßnahmen entschlüssele zB deine Backups ^__^.

Bis bald!
Paul

was lange währt wird endlich gut.

Neues Plug&Play Image und diesmal: Eines für alle RaspberryPi´s!

Es handelt sich hierbei um ein frisches "Jessie" Image vom 21.06.2017 mit dem Kernel 4.9.33.
Der Pinguin hat freundlicherweise ein ungestartetes Jessie wie in diesem Post beschrieben modifiziert.

Lade dir das Image herunter.
Entpacke es und spiele das Image auf eine SD-Karte.
(Hierbei wird alles auf der SD-Karte vernichtet!)

Einfacher gehts nun fast nicht mehr.

Ist das LetsTrust-TPM an der richtigen Stelle und vor dem Booten gesteckt solltest du mit:
ls /dev/tpm0
dich vergewissern, dass das TPM erkannt wurde.

Nun zum ersten Kommando zum TPM
Im home Verzeichnis findet ihr im Ordner "TPM-Tools" das eltt2.

Öffnet ein Terminal:
cd /TPM-Tools/eltt2/
make
sudo ./eltt2 -G 20

Ihr habt nun 20 Byte Zufallszahlen vom LetsTrust-TPM erhalten!

Bis bald!

LetsTrust TPM und los gehts!

So, ich habe nun das Modul, und jetzt?
UPDATE:

Es gibt nun ein neues Plug&Play Image: Eines für alle Pi´s.

Hier findest du den Eintrag dazu: Link

Veraltet:

Du hast nun drei Möglichkeiten:
1.: Lade das Image für den Raspberry Pi herunter und kopiere dieses via dd auf eine SD-Karte >=4GB.
Image: plug_n_play_image.img
How to Plug and Play Image:PlugandPlayImage_en.txt

Prüfsummen des Images:
MD5: 27aeac85aa4e1ca1588808ad5b988a25
SHA-1: ceab60c4b538313a28d59b8bfce8184a7ad83f02
SHA-256: 88216ab485b93a706d229a9e95c99a0fa32291964b65c8fafb48440dc904eb9c

2.: Die vorkompilierten Module und den passenden Devicetree Eintrag im eigenen Kernel verwenden, die Anleitung und die Module sind gepackt.
Archiv: precompiled_modules_en.zip.
Prüfsummen des Archivs:
MD5: 5ea87f7068ff0603d673b017e4175097
SHA-1: 2cd863bdb67260f2eabbf73405a483e6153b5d28
SHA-256: 355b901178c39eb19398d9c352829923492a9e6987e1f3651a9a757955ad2559

3.: Oder der steinige und harte Weg: Kernel selbst bauen und patchen.
Anleitung und den Patch hierzu findest du in diesem Archiv:
compile_complete_kernel_en.zip
Prüfsummen des Archivs:
MD5: 7607cc3c35407f51fef23e44be2c32eb
SHA-1: d5a0b42ca40158ce30ef3a1ddef8f11ae383b732
SHA-256: 2eec1442315a1cd0691626bd6910ff54128d03793bf1eb2701aea4b54e8034bd


Happy Patching!



Das war´s für heute!

Bis bald!

Was ist ein TPM und wo bekomme ich Infos?

Dieser Eintrag ist eine Linksammlung auf alles Relevante, was mit dem TPM zu tun hat.
Vollständig wird diese Liste nur durch eine Mail von dir mit dem Link an: info[at]LetsTrust[punkt]de


Was ist ein TPM und wofür ist es gedacht?
deutsche Wikipedia
englische Wikipedia

Wer spezifiziert denn so ein TPM?
Das ist die TCG -> Trusted Computing Group
https://trustedcomputinggroup.org/

Welchen Chip-Hersteller habt ihr gewählt?
Wir haben ein Infineon SLB 9670 TPM 2.0 FW 7.40 verbaut,
Chip Beschreibung
Das Datenblatt:
Datenblatt

Was kann ich sonst noch lesen?
Eine sehr nützliche App-Note von Infineon für den Raspberry Pi 3:
Application Note

Dieser Blog ist empfehlenswert:
mjg59
Und explizit diese Artikel:
Eintrag1
Eintrag2
Eintrag3
Eintrag4
Eintrag5
Eintrag6


Und gibt es Repositories?

Klar gibts dazu ein paar:
Github.com/TPM 2.0 Tools
github.com/SoftwareStack

github.com/Infineon Embedded Linux TPM Toolbox 2.0
Other TPM Stuff


und natürlich
github.com/ suche nach TPM

Wenn du gerade an einem Projekt arbeitest, her damit, ich verlinke es gern!

Okay, verstanden, wo bekomme ich so ein Teil?
BuyZero.de


Das war's für heute.
Bis die Tage!
Categories: TPM