lehrkraefte:blc:informatik:glf22:crypto:joker-chain

This is an old revision of the document!


Setup

In Git-Bash:

openssl ecparam -name prime256v1 -genkey -noout -out secret-private-key-joker.pem
openssl ec -in secret-private-key-joker.pem -pubout -out public-key-joker.pem

in Git-Bash:

openssl dgst -sha256 -sign secret-private-key-joker.pem -out signature.bin ZU_SIGNIERENDE_DATEI
openssl enc -base64 -in signature.bin -out signature.base64

Quelle

openssl enc -base64 -d -in signature.base64 -out signature.bin
openssl dgst -sha256 -verify public-key-joker.pem -signature signature.bin SIGNIERTE_DATEI

Dateiformat

Die «Blockchain» ist im «Markdown» Format gespeichert. Damit lässt sich die Datei ebensogut maschinell verarbeiten wie von Menschen gelesen werden.

Die Datei enthält nur ASCII-Zeichen und Zeilenumbrüche sind \n (keine \r\n)

# Titel (Art des Eintrags)
## Name der Daten
... (Daten)
## Evtl. weitere Einträge
  • Public-Key vom Verwalter, muss der erste Eintrag in der Datei sein.
# root
## publickey
publickey data
## keyhash
fe736c7d89a8b

Darauf muss eine rootsignature folgen:

# rootsignature
## timestamp
Datum und Zeit der Unterschrift.
## signature
Signatur der ganzen Datei bis und mit der Zeile davor (inkl. ## signature\n)
# user
## publickey
publickey data
## keyhash
fe736c7d89a8b
## tokens
list of joker tokens
# transfer
## sender
keyhash
## token
token
## receiver
keyhash
## timestamp
timestamp
## signature
Signatur der ganzen Datei bis und mit ## signature\n
# usejoker
## sender
hash
## token
token
## usedate
JJJJ-MM-TT
## timestamp
timestatmp
## signature
Signatur der ganzen Datei bis und mit ## signature\n
  • lehrkraefte/blc/informatik/glf22/crypto/joker-chain.1660806561.txt.gz
  • Last modified: 2022/08/18 09:09
  • by Ivo Blöchliger