Firewall in 10 Minuten einrichen mit UFW (Uncomplicated firewall) nicht nur auf dem Raspberry Pi

Eine Firewall ist auf dem Raspberry Pi schnell mit dem UFW eingerichtet und kann die Sicherheit verbessern.

Die Firewall UFW muss nur installiert werden mit:

Nun schalten wir zuerst den ipv6 auf no in der Datei /etc/default/ufw, da er bei mir nicht verwendet wird. „Firewall in 10 Minuten einrichen mit UFW (Uncomplicated firewall) nicht nur auf dem Raspberry Pi“ weiterlesen

ArchUnit gestern in Version 0.18.0 veröffentlicht oder wie validiere ich die Architektur am Beispiel einer Blockchain

Gestern wurde ArchUnit in Version 0.18.0 veröffentlicht.

ArchUnit

Wenn das keine Grund ist mal zu zeigen, wie man eine Package-Abhängigkeit überprüfen kann.
Also wir wollen einen Test schreiben, der durchläuft wenn nur aus dem Package blockchain auf das Package be zugegriffen wird. Wie hier im UML Diagramm gezeigt:… „ArchUnit gestern in Version 0.18.0 veröffentlicht oder wie validiere ich die Architektur am Beispiel einer Blockchain“ weiterlesen

Blockchain in Java – Bitcoin heute Neues Allzeithoch – Nasdaq: Börsengang von Coinbase

Wollte heute mal noch vor dem Börsengang von Coinbase ein Blockchain in Java coden. Mit nur zwei Klassen sind die Grundlagen implementiert. D.h. ein Block verweist jeweils auf den nächsten Block. Jeder Block hat einen Hash über die Daten und kann so von jedem validiert werden. Ein Block kann alles enthalten, hier mal ein String Objekt, es muss ja nicht immer Bitcoin sein. Hier die Architektur:

Ein JUnit 5 Testklasse erzeugt eine gültige Blockchain mit 5 Blöcken und wird anschließend validiert. Bei Bitcoin werden alle 10 Minuten neue Blöcke erzeugt. Die haben dann jeweils (ursprünglich) eine Größe von ca. max 1 MB an Daten.

Dann im zweiten Testfall wird ein Block verändert und in die Blockhain eingefügt. Das Ergebnis der validierung muss dann einen Error ausgeben.

Ein Block sieht so aus: „Blockchain in Java – Bitcoin heute Neues Allzeithoch – Nasdaq: Börsengang von Coinbase“ weiterlesen

Neue NodeRed Version 1.3.1 veröffentlicht auch für Docker auf dem Raspberry Pi (v6, v7)

Es gibt nun auch seit ein paar Stunden einen neuen Docker Kontainer für den Raspberry Pi.

Was es neu gibt, kann hier nachgeschlagen werden.

Hier die Haupt Features
-npm packaged subflows (da bin ich ja gespannt, wie mein erster Flow in gepackt wird, später mehr)
-Function node use of npm modules
-Referencing msg properties in Change/Switch nodes
-Node-RED Plugins framework
Editor Features
-Export preview (siehe hier … „Neue NodeRed Version 1.3.1 veröffentlicht auch für Docker auf dem Raspberry Pi (v6, v7)“ weiterlesen

Wie kann Text in PDF von der Kommandozeile erzeugt werden?

Manchmal will man mal eben etwas Text in ein PDF umwandeln. Das geht auch ganz schnell und einfach von der Kommandozeile. Es muss zuvor nur ghostscript und enscript auf dem Raspberry Pi installiert werden mit:

sudo apt-get install ghostscript enscript

Dann kann es schon losgehen. Wir haben z.B. eine Test-Datei mit Name test-txt-to-pdf.txt und diesem Inhalt:

Wir geben dann auf der Kommandozeil ein:

enscript test-txt-to-pdf.txt -o – | ps2pdf – ergebnis.pdf

Und schon erhalten wir eine ergebnis.pdf mit diesem Inhalt: … „Wie kann Text in PDF von der Kommandozeile erzeugt werden?“ weiterlesen

Überwachung und Erkennung mit Raspberry Pi Kamera oder wie zähle ich die Besucher oder PKWs

In der Pandemie könnte mit diesem Counter am Eingang eines Ladens die Besucher gezählt werden. Auch ein Foto wird jeweils gemacht (Achtung, Datenschutz beachten 😉 ) und die Besucher schön in einem Diagram nach Uhrzeit ausgegeben. Alles wird über einen eigenen Server ausgegeben.

Auf die Straße gerichtet, wird der PKW mit Foto und Geschwindigkeit erfasst. Cool. Und man kann sehen, wieviel Autos so auf der Straße fahren. Alles ohne KI und mit einem Raspberry Pi.

Hier mal das Ergebnis, welches nur die Daten von einem Raum anzeigt. So kann man gut sehen wer wann und wie oft den Raum besucht. Aus Datenschutzgründen ist das Foto nicht „unscharf“ gemacht worden, (sondern die Kamera ist defekt wie weitere Tests zeigten und geht zurück…) und auf den Kopf gestellt, damit man mich da nicht erkennt 😉

Man kann auch in der unteren Zeile sehen, wie schnell ich gegangen bin:

Hier als Diagramm, wie oft der Raum jeweils in einer Stunde/Tag betreten wurde:… „Überwachung und Erkennung mit Raspberry Pi Kamera oder wie zähle ich die Besucher oder PKWs“ weiterlesen

Aktionen in NodeRed mit Bitcoin (BTC) Zahlungen auslösen oder Kontostandsanzeige

Wer kennt nicht das Problem. Man wartet auf den eingang einer Zahlung und schaut mehrfach ob sie schon da ist.

Oder wie lautet mein Kontostand?

Oder auch in diesem Fall, gib mir eine Nachricht, oder schalte den Button grün, wenn eine „Buy me a Coffee“ Spende eingegangen ist.

Oder mache das Licht an, wenn eine BTC Zahlung eingegangen ist.

Oder für Hochzeit, den QR-Code neben der Kamera aufhängen und bei einzahlung ein Foto auslösen 😉

Oder, oder oder …

All das macht dieser kleine Flow. Mal was anderes als „Ausgangssperre“ und 7-Tage-Inzidenz von 134 oder XBT von 59368.

Und warum soll das Dashboard nicht den Kontostand anzeigen?

Die Funktion ist einfach, in dem Funktions-Node die BTC Adresse eingeben. Die wird dann über die Web-API von https://mempool.space/ abgefragt. Ohne Anmeldung und Paswort möglich. Und schon kann man alles schalte was man will in Abhängigkeit des Kontostand! Cool. Bin ja gespannt, wann der obere Button für den Kaffee eine Aktion auslöst.

Das kanns Du leicht über die Buy my a coffee: bitcoin:bc1qj4grttyhk2h5wqask3nku70e3qtycssz5kvw5l tun. … „Aktionen in NodeRed mit Bitcoin (BTC) Zahlungen auslösen oder Kontostandsanzeige“ weiterlesen

Empfohlene Transaktionsgebühr für Bitcoin Transaktionen im NodeRed Dashboard anzeigen, es muss ja nicht immer Replace-by-Fee (RBF) oder CO2-Ampel sein

Bitcoin Transaktionen kosten im Moment im Durchschnitt ca. 18 Dollar. Man kann ja die Gebühr selbst festlegen und damit die Geschwindigkeit der Überweisung steuern. Wählt man zuwenig, wird sie evl. auch nach Tagen nicht ausgeführt. Evl. reicht aber auch eine kleinere Gebühr, wenn die Transaktion nicht in den nächsten Block der Blockchain kommen muss und man evl. Zeit für ein paar Tage hat. Dann reichen evl. schon wie unten zu sehen 4 Satoshi per Byte.

Bei BTC hängen ja die Gebühren nicht an dem Betrag, sondern an der Länge der Transaktion, die je nach Adressentyp unterschiedlich ist.

Man kann hier schauen, was so im Moment berechnet wird. Dort steht:

Das ist aber umständlich. Um die aktuelle Kosten anzuzeigen, habe ich einen kleinen NodeRed-Flow im Dashboard entwickelt, das einen Web-Service von mempool.space abfragt und anzeigt. So sieht man auf einen Blick, welcher Betrag ca. für welche Zeit nötig ist.

So braucht man nur einmal auf den „Update“ Button klicken und erhält die Möglichen werte um nicht zuviel zu bezahlen. Manche Wallets ermöglichen ja auch nachträglich die Kosten zu erhöhen wenn die Transaktion nicht durchkommt. Das nervt zwar, spart aber und nennt sich Replace-by-Fee (RBF). Hier das Dashboard:… „Empfohlene Transaktionsgebühr für Bitcoin Transaktionen im NodeRed Dashboard anzeigen, es muss ja nicht immer Replace-by-Fee (RBF) oder CO2-Ampel sein“ weiterlesen

Ergebnisse der Umfrage oder finde Dubletten auf dem Raspberry Pi mit fdupes

Vielen Dank für das Feedback zu meiner kleinen Umfrage. Für mich ist es sehr interessant, das über 85 % der Teilnehmer mehr zum Thema Raspberry Pi haben wollten. Auf Platz 2 folgt NodeRed / Hausautomatisation mit 60 %. Platz 3 Planespotting mit 24 %. Was mich aber erstaunt, ist die Altersstruktur der Leser, das ich mal mit „für Ältere“ zusammenfassen möchte:

Dann mal gleich was zum Pi, läuft aber auch auf dem Mac. Wie finde ich doppelte Dateien auf dem Rechner? Wenn es große Videos oder Bilder sind, wird auch viel Speicher verbraucht. Einfach das Tool fdupes installieren mit:

sudo apt install fdupes

Nun kann es auf Verzeichnisse angewendet werden. Z.B. im Verzeichnis wir mal das test-dubletten-suchen durchsucht was wie folgt aussieht:

Aufruf:

fdupes test-dubletten-suchen/ -r -1 -S

Ergebnis: … „Ergebnisse der Umfrage oder finde Dubletten auf dem Raspberry Pi mit fdupes“ weiterlesen

VNC in 4 Schritte mit dem Raspberry Pi


Heute mal schnell eine VNC-Server auf dem Raspberry Pi installiert, um aus der Ferne den Desktop zu steuern. Per VNC-Client bekommt man einen virtuellen Desktop des Raspberry Pi auf den eigenen Rechner dargestellt. Über diesen Remote-Desktop kann man den Raspberry Pi dann fernwarten oder fernsteuern. Es muss ja nicht immer die Kommandozeile sein. VNC eignet sich vor allem dann, wenn man anstelle über SSH auf der Konsole lieber mit einem grafischen Desktop arbeitet. Seit dem Jahr 1998 ist VNC als Open Source veröffentlicht.
„VNC in 4 Schritte mit dem Raspberry Pi“ weiterlesen

In Pandemie wurde für den Raspberry Pi Imager eine neue Version 1.6 veröffentlicht mit hidden Dialog

Was für mich neu war, der „hidden Dialog„, der mit Ctrl-Shift-X oder auf dem Mac Command + Shift + X erscheint, wo die Wifi, SSH, Hostname, Lokale ua. für diese oder alle zukünftigen Verwendungen eingestellt werden können: … „In Pandemie wurde für den Raspberry Pi Imager eine neue Version 1.6 veröffentlicht mit hidden Dialog“ weiterlesen

Digitaler Impfnachweis der EU-Kommission setzt auf QR-Codes und nicht auf die „neue“ Gesundheitskarte, deshalb hier die QR-Codes im NodeRed-Flow anzeigen


In diesem Beitrag hatte ich den neuen Node, der aus Text leicht einen QR-Code erzeugt beschrieben. Wie können aber nun QR-Codes direkt in einem NodeRed-Flow und nicht nur im Dashboard angezeigt werden?

Hier ein produktiver Prototyp dazu, man sieht unten rechts den Barcode im Flow. Cool. Geht auch mit Impfnachweisen 😉 … „Digitaler Impfnachweis der EU-Kommission setzt auf QR-Codes und nicht auf die „neue“ Gesundheitskarte, deshalb hier die QR-Codes im NodeRed-Flow anzeigen“ weiterlesen

Sciurus vulgaris Besuch in der 3. Etage oder RFID Tags einlesen mit dem RC-522

Im Netz gibt es viele Anleitungen zum Anschluss eines RFID-Readers an den Raspberry Pi. Hatte auch noch einen seit Jahren liegen. Mal eben die 7 Leitungen angeklemmt und getestet. Ja es läuft, es geht aber leider nur der RFID-Tag der dabei lag, die andern 20 die ich noch liegen hatte konnten leider nicht gelesen werden 😉 Sind wohl keine Mifare Tags. Und man muss schon bis auf ein paar cm rangehen, damit er gelesen wird. … „Sciurus vulgaris Besuch in der 3. Etage oder RFID Tags einlesen mit dem RC-522“ weiterlesen

Crypto Währungsadressen wie z.B. Bitcoin in NodeRed Dashboard validieren

Wie können Kryptowährungsadressen überprüft werden? Also wie können z.B. Bitcoin Adresse überprüft werden? Die Bitcoin Adressen habe wie so viele Adressen eine interne Checksumme, die mit sha256 gebildet wird. Das heißt, es wird zweimal einSHA-256 Hash auf die Adresse gemacht und die ersten 4 Bytes als Checksumme verwendet und an die Adresse angehangen.

Um es ganz einfach zu machen, habe ich einen NodeRed Node node-red-contrib-cryptography-address-check erstellt. Und dazu einen Flow, wo die Adresse nur eingegeben werden muss, und es dann automatisch auf Gültig oder Ungültig überprüft wird.

Dieser Node, muss also nur über die „Pallette hinzufügen“ Funktion geladen werden:

So sieht meine public „Buy me a coffee“ Adresse aus, die ist gültig:

Sobald man da auch nur ein Zeichen verändert, … „Crypto Währungsadressen wie z.B. Bitcoin in NodeRed Dashboard validieren“ weiterlesen

Fast vergessen, heute ist Pi-Day – „Pi or not to Pi!“

Heute wird ja Pi-Day gefeiert. Dazu habe ich mal eben eine Java Klasse geschrieben:

Und nun die Frage. Was ist das Ergebnis wenn ich diese Klasse ausführe? Hier die Lösung, … „Fast vergessen, heute ist Pi-Day – „Pi or not to Pi!““ weiterlesen

Hausautomatisation 5.0: Steuerung des Roborock-Staubsaugers per QR-Code (Barcode)

Idee: In jedem Zimmer an der Tür oder sonstwo einen QR-Code anbringen. Einfach mit dem Handy scannen und schon wird automatisch das Zimmer gesaugt. Kein lästiges suchen der Sauger App, starten und auswählen des Zimmers. Gesagt getan!

Ein QR-Code wird einmalig erstell und an den Mülleimer (oder in der Nähe) angebracht. Wenn der mit dem Handy gescannt wird (muss im WLAN eingewählt sein, könnte man aber auch für alle freigeben ;-)) läuft der Roboter los, hält für 2 Minuten an. Macht eine Sprachausgabe. Nun kannn der Staubbehälter gelehrt werden. Dann fährt er mit der Reinigung der Küche fort, und fährt wieder zur Ladestation.

Also zuerst eine QR-Code erstellen mit der URL des Pis und dem Kommando:

Dann diesen Flow importieren bzw. erstellen:

Dann in den HTTP-Node die URL aus dem CQ-Code eintragen und get wählen: „Hausautomatisation 5.0: Steuerung des Roborock-Staubsaugers per QR-Code (Barcode)“ weiterlesen

Bitcoin heute über 60.000 Dollar: Free Wallet Wiederherstellungs Vorlage für Bitcoin ua. Wallets (Wallet Recovery Sheet Template)

Heute ist der Bitcoin Kurs zum ersten mal auf über 60.000 Dollar bzw. 50.000 Euro gestiegen. Jetzt ist er gerade bei:

Kurs Bitcoin

wie das NodeRed Dashboard vom Raspberry Pi im Docker anzeigt. Digitalwährungen wie Bitcoin gelten als riskante Geldanlagen, da sie im Kurs teils erheblich schwanken. Habe für alle Leser mal ein Backup Wallet Formular designt: „Bitcoin heute über 60.000 Dollar: Free Wallet Wiederherstellungs Vorlage für Bitcoin ua. Wallets (Wallet Recovery Sheet Template)“ weiterlesen

TWProviders 1.0 – mal was anderes als HAFNIUM – Installierte Sicherheitsprovider anzeigen

Hier ein neues Java-Programm TWProviders 1.0, das alle Sicherheitsprovider auf dem System (Raspberry Pi, Mac, Windows…) anzeigt. Mal so „just for fun“ programmiert, mal was anderes als Exchange-Lücken HAFNIUM – BSI ruft „IT-Bedrohungslage rot“. Es muss Java auf dem System installiert sein. Einfach das PrintProvider.class.zip (884 Byte) laden und das ZIP auspacken. Dann in dem Verzeichnis starten mit

java PrintProvider

Also das Programm laden, auspacken und starten:

Das sind z.B. die 12 von einem Raspberry Pi 4:

Mit diesm Programm kann nun auch leicht in einem Script oder in der Konsole nach Providern oder so gesucht werden, z.B. mit grep

java PrintProvider | grep Secure

Ergebnis:
SUN (DSA key/parameter generation; DSA signing; SHA-1, MD5 digests; SecureRandom; X.509 certificates; PKCS12, JKS & DKS keystores; PKIX CertPathValidator; PKIX CertPathBuilder; LDAP, Collection CertStores, JavaPolicy Policy; JavaLoginConfig Configuration)

Sollte kein Java vorhanden sein, kommt es zu dieser Fehlermeldung. „TWProviders 1.0 – mal was anderes als HAFNIUM – Installierte Sicherheitsprovider anzeigen“ weiterlesen

Kryptographisch sicherer Zufallszahlengenerator NodeRed-Flow mit dem Raspberry Pi und Hardware Random Number Generator (RNG) und GUI

Heute gehts mal kurzt um die Praxis. Im letzten Artikel ging es um kryptographisch sicherer Zufallszahlengenerator mit dem Raspberry Pi und Hardware Random Number Generator (RNG).

Man unterscheidet übrigens grundsätzlich zwischen nicht-deterministischen und deterministischen Zufallszahlengeneratoren. Nicht-deterministisch ist ein Zufallszahlengenerator, wenn er auch bei gleichen Ausgangsbedingungen unterschiedliche Werte liefert, so wie der hier vorgestellte. Da die Implementierung einer Software-Prozedur in der Regel deterministisch arbeitet, muss zur Realisierung eines nicht-deterministischen Zufallszahlengenerators ein externer (beispielsweise physikalischer per Hardware) Vorgang der auf dem Raspberry Pi läuft einbezogen werden.

Nun eine Anwendung als NodeRed-Flow um kryptographisch sichere Zufallszahlen zu generieren die dann als Seed ua. auch für Bitcoin verwendet werden können.

Der Flow läuft übrigens auch erfolgreich auf einem NodeRed das in einem Docker-Kontainer läuft. Es wird übrigens die Schnittstelle mit head -c 128 /dev/hwrng abgefragt und der Timeout auf 2 Sekunden gesetzt. Wer größere oder kleinere Zahlen braucht, kann die 128 anpassen. Die 512 Bit kann man übrigens auch für Bitcoin gut gebrauchen 😉

Hier eine kleine Gui dazu: … „Kryptographisch sicherer Zufallszahlengenerator NodeRed-Flow mit dem Raspberry Pi und Hardware Random Number Generator (RNG) und GUI“ weiterlesen

Kryptographisch sicherer Zufallszahlengenerator mit dem Raspberry Pi und Hardware Random Number Generator (RNG)

Zufallszahlen kann man leicht online über random.org ermitteln. Es können da Münzen geworfen werden:

Es können verschiedene Währungen und Anzahl ausgewählt werden. Leider geht nicht Bitcoin. Aber die sind auch gut…

Auch Passwörter, Lotterie, Zeit, Zeichen, Wörter und andere Zufallszahlen können dort generiert werden.

Aber wie kann man Zufallszahlen generieren, die auch noch den hohen kryptografischen Anforderungen entsprechen? Mit Hardware (cryptographically secure pseudo-random number generator (CSPRNG)). Muss man da teure Crypto-Generatoren kaufen? Nein, ein kleiner Raspberry Pi reicht auch schon.

Der Raspberry Pi (Zero ua.) enthält, mit dem Chip BCM2708 / BCM2835 auch einen Hardware Random Number Generator (RNG). Welchen Chip der Pi hat, wird ausgegeben mit: cat /proc/cpuinfo.

Im Idealfall wird die Erstellung von Zufallszahlen durch eine nicht deterministische Entropiequelle gespeist. Das kann zum Beispiel ein hardwarebasierter Zufallsgenerator sein (PI) oder auch ein hybrider Generator. Für kryptologische Anwendungen sollten nicht-deterministische Generatoren verwendet werden, denn nur bei diesen kann garantiert werden, dass sie nicht reproduzierbar oder vorhersagbar sind.

Zugriff darauf erhält man über die Schnittstelle: /dev/hwrng ( und die blockende /dev/random und die nicht blockende /dev/urandom).

Wir aktivieren nun mal die rng-tools für den Zugriff auf den RNG. … „Kryptographisch sicherer Zufallszahlengenerator mit dem Raspberry Pi und Hardware Random Number Generator (RNG)“ weiterlesen

Signieren von Nachrichten mit Digital Signature Algorithm (ECDSA) in Java und Elliptische-Kurven-Kryptografie (ECC) secp256k1

Wie werden in Java Nachrichten signiert und vom Empfänger validiert? Das geht mit ein paar Zeile aus dem Java Package java.security. Wir verwenden die auch in Bitcoin verwendeten Elliptische-Kurven-Kryptografie secp256k1. Was wollen wir zu Entspannung nach Feierabend machen?

Das wird in diesem BPMN-Diagramm dargestellt:

Hier die kommentierte Java Klasse: … „Signieren von Nachrichten mit Digital Signature Algorithm (ECDSA) in Java und Elliptische-Kurven-Kryptografie (ECC) secp256k1“ weiterlesen

Saugroboter: Automatische Navigation zum Mülleimer mit NodeRed und Demo Video

Für den Saugroboter habe ich noch eben eine weitere Funktion programmiert. Wenn man auf den „Staubbehälter leeren“ Button klickt, fährt er automatisch zum Mülleimer in der Küche.

Macht eine Ansage „Hier bin ich“ wenn er da ist, das ist bei mir nach 45 Sekunden der Fall, kann aber auch leicht angepasst werden. Dann habe ich 2 Minuten für das leeren des Staubbehälters vorgesehen. Dann fährt er automatisch mit der Reinigung fort. Hier kann man es sich in einem kurzen Video anschauen:

Das ist der dazugehörige NodeRed Flow, der auf einem Raspberry Pi 4 im Docker Kontainer läuft:… „Saugroboter: Automatische Navigation zum Mülleimer mit NodeRed und Demo Video“ weiterlesen

Mal was anderes als der beschlossene Neubau des Rathaus in Langenhagen für 68 Millionen „Bitcoin“: Heimautomatisierung mit NodeRed Xiaomi Saugroboter Flow

Das Neues Rathaus in Langenhagen soll mehr als 68 Millionen Euro kosten und 2026 fertig sein. Ich bin gespannt und werde es beobacchten.

Nun ist die Integration in NodeRed fertig, meine Steuerung für den Xiaomi-Saug-Roboter. Die App ist eigentlich ausreichend und macht fast alles was man braucht. Aber wenn man schon auf Hausautomatisation setzt, dann muss das natürlich auch da rein.

Auch ist die Gui etwas einfacher zu erreichen. Man kann auch weitere Szenarien implementieren. Z.B. bei Abwesenheit autom. saugen.

Was ich aber brauchte, war die Anforderung mit einen Klick, drei Räume zu reinigen. Auch die Zeitliche Steuerung wie z.B. jeden Tag die Küche saugen usw. ist nun noch einfacher. Auch kann nun von jedem Browser aus die Gui gestartet werden, ohne SW zu installieren. Z.B. vom Mac oder Laptop. Oder wenn die Haustür aufgeht, und ich nicht da bin, soll der Roboter den Flur saugen und die Ansage abspielen („Hier bin ich“) das vertreibt dann jeden Einbrecher;-) Habe es bisher noch nicht versucht, auch anderen Text wie z.B. Hundegebell abzuspielen. Dazu müsste ich ihn dann mit einer neuen Firmware flashen. Noch hat das Teil aber noch Garantie und läuft seit Monaten sehr gut und hat sich nur einmal „verlaufen“.

Hier der NodeRed-Flow:

Hier die GUI die auch auf dem Handy bzw. Tablet läuft:… „Mal was anderes als der beschlossene Neubau des Rathaus in Langenhagen für 68 Millionen „Bitcoin“: Heimautomatisierung mit NodeRed Xiaomi Saugroboter Flow“ weiterlesen

Kryptowährungen eingebrochen: Bitcoin zeitweise auf 45.000 US-Dollar gefallen deshalb nun NodeRed mit Hash RIPEMD-150 Node inkl. GUI

Eben eine neue Version des NodeRed Node node-red-contrib-cryptography in Version 0.0.4 veröffentlicht. Jetzt auch mit RIPEMD-160 hash. RIPEMD-160 bietet kürzere hash Werte (40 Zeichen) als SHA-265. Wird deshalb u.a. auch für Bitcoin verwendet. Hier nun endlich auch eine GUI nach „jahrelanger“ Entwicklung, wo einfach Testwerte eingegeben werden können.

Und der dazugehörige Flow:… „Kryptowährungen eingebrochen: Bitcoin zeitweise auf 45.000 US-Dollar gefallen deshalb nun NodeRed mit Hash RIPEMD-150 Node inkl. GUI“ weiterlesen

New NodeRed Node: Hash mit SHA-256

Wer in NodeRed einen SHA-256 hash ohne Konfiguration verwenden will, kann das Modul node-red-contrib-cryptography verwenden. Das JavaScript Modul habe ich geschrieben, um das Hashen zu vereinfachen. Es brauchen keine Einstellungen gemacht werden und es gibt keine weiteren Abhängigkeiten. Das Modul wird dann später noch um RIPEMD-160 ua. die für Bitcoin verwendet werden können erweitert.

Die erste Version, kann wie gewohnt in der Palettenverwaltung geladen werden: … „New NodeRed Node: Hash mit SHA-256“ weiterlesen

Wie „geht“ ein upload eines lokalen NodeRed-Nodes im tgz-Archiv Format über die NodeRed-GUI für Docker Kontainer?

Wie kann man einen lokalen Node von der Festplatte in NodeRed hochladen, wenn er nicht im Repository vorhanden ist und nur lokal auf der Platte liegt? Und wenn dann noch NodeRed in einem Docker Kontainer läuft, wie geht es dann? Es kann natürlich auch über die Kommandozeil des Raspberry Pi laufen, aber das will man ja nicht immer.

Hier eine kurze Beschreibung wie das geht. Der Button zum hochladen ist etwas versteckt, unter „Palette verwalten“ und „Palette“ und „Installieren„, im Dialog zu finden.

Nach einem klick, einfach das tgz-Archiv auswählen und hochladen. Dann ist unbedingt ein Neustart von NodeRed nötig. Das ist im Docker Kontainer mit einem Restart schnell gemacht.

Kommt es beim hochladen zu einem Fehler, kann es sein das das npm-Package für den Node nicht richtig erzeugt wurde. Die npm-Packages müssen mit npm pack im jeweiligen node_modul erzeugt worden sein, z.B. so: … „Wie „geht“ ein upload eines lokalen NodeRed-Nodes im tgz-Archiv Format über die NodeRed-GUI für Docker Kontainer?“ weiterlesen

Kryptowährung: Wir erzeugen uns heute mal einen privaten Bitcoin Key mit Java bevor der BTC Kurs auf über 50000 Dollar springt


Es ist bei Bitcoin sehr wichtig das Konzept zu verstehen, das man keine Online Verbindung für das generieren einer Bitcoion Wallet Adresse benötigt.
Das geht komplett Offline. Und ohne separaten Server, eine Webseite oder einen besonderen Service. Es wird nur etwas Mathe benötigt. Mit Java sind nur ein paar Zeilen nötig.

1. privaten Key erzeugen, dazu brauchen wir nur einen guten Zufallsgenerator der uns 32 Byte erzeugen kann. Könnte mal auch auswürfeln.
2. validieren ob der Key gültig ist

Hier der dokumentierte Code: … „Kryptowährung: Wir erzeugen uns heute mal einen privaten Bitcoin Key mit Java bevor der BTC Kurs auf über 50000 Dollar springt“ weiterlesen

Bitcoin: Public Key hashen mit SHA-256 und dann RIPEMD-160

public key hash für bitcoin

Der public Key wird zunächst mit SHA-256 gehasht. Der Output dieser kryptografischen Hashfunktion wird dann mit RIPEMD-160 gehasht, einer anderen kryptografischen Hashfunktion, die als Output eine 160 Bit (20 Byte) lange Zahl erzeugt. Wir nennen diesen letzten Hash den public Key Hash (PKH). Wie hier im BPMN Flow dargestellt: … „Bitcoin: Public Key hashen mit SHA-256 und dann RIPEMD-160“ weiterlesen

Mal was anderes als Schnee und Glatteis: Salzen mit SHA-256 in Java

hash, bitcoin,

Kryptografische Hashfunktionen können zur Integritätsprüfung verwendet werden, um Änderungen in Daten festzustellen. Bitcoin verwendet kryptografische Hashfunktionen sehr ausgiebig, um zu überprüfen, dass sich Daten nicht geändert haben. Zum Beispiel wird immer ab und zu – durchschnittlich alle 10 Minuten – ein neuer Hash der gesamten Zahlungsgeschichte erzeugt. Wenn jemand versucht, diese Daten zu ändern, wird dies sofort von jedem, der die Hashes überprüft, bemerkt.

Grundlegenden Eigenschaften von Hash:

-Gleiche Eingabedaten erzeugen den gleichen Hash.
-Leicht unterschiedliche Eingabedaten erzeugen sehr unterschiedliche Hashes.
-Der Hash hat stets eine feste Länge. Bei SHA256 sind dies 256 Bits.
-Die Holzhammermethode Trial-and-Error ist der einzige bekannte Weg, einen Input zu finden, der einen bestimmten Hash erzeugt.

Hier mal ein kleines Java Beispiel mit unterschiedlichen Libs und pur Java: … „Mal was anderes als Schnee und Glatteis: Salzen mit SHA-256 in Java“ weiterlesen

Wo gibt es Bitcoin (BTC) Faucet für das Bitcoin Testnet kostenlos?

Das Bitcoin Testnet ist eine alternative Bitcoin-Blockchain, die Entwickler zum Testen verwenden. Testnet-Münzen haben keinen Wert. Entwickler verwenden Testnet, um mit der Blockchain zu experimentieren, ohne echte Bitcoins zu verwenden oder sich Sorgen zu machen, dass die Hauptkette unterbrochen wird.

Thanks Dr.Kleinhirn.eu for the Mindmap

Hier drei Seiten, um Bitcoin im Testnet zu „kaufen“:… „Wo gibt es Bitcoin (BTC) Faucet für das Bitcoin Testnet kostenlos?“ weiterlesen

Java Bitcoin: BIP39 Mnemonic Generierung mit Adressen mit Java auf einem Raspberry Pi in 1 Minute – Crypto BPMN

Wie kann man für Bitcoin die geheimen Wörter, private und public Key und Adressen mit Java auf einem Raspberry Pi generieren? Hier mal ein Beispiel. Zuerst ein BPMN für den Überblick wie es läuft.

Bitcoin, key, crypto

Das geht in 1 Minute, mit diesen drei Schritten auf der Komandozeile … „Java Bitcoin: BIP39 Mnemonic Generierung mit Adressen mit Java auf einem Raspberry Pi in 1 Minute – Crypto BPMN“ weiterlesen

Java: Ausgabe Methode aller im System bekannten Security Providers oder safety first

Wer mal alle Security Provider im System ausgeben will, kann diese Methode verwenden:

Ergebnis auf einem Test-System: „Java: Ausgabe Methode aller im System bekannten Security Providers oder safety first“ weiterlesen

nmap scan von xml to html mit xsltproc auf Raspberry Pi mit Debian (Kali)

Es muss nicht immer Kali sein. Auch FFP2-Masken schützen keine Rechner, da muss man schon aktiv nach Sicherheitslücken suchen und stopfen. Auch ein Raspberry Pi mit Debian geht für das Scannen von Netzwerken mit nmap. Heute wollen wir das Ergebnis des Sicherheits-Scanns mal in eine lesbare HTML-Form mit xsltproc transformieren. Das geht in ein paar Minuten.

Der Aufbau soll sein:

Dann mal los, es sind nur 5 Schritte nötig:

1. Installieren von nmap und xsltproc „nmap scan von xml to html mit xsltproc auf Raspberry Pi mit Debian (Kali)“ weiterlesen

Mal was anderes als Corona-Impfstrategien: NodeRed Timer für den Raspberry Pi

Gerade in der Zeit der Corona-Pandemi sind Videokonferenzen oft angesagt. Um z.B. Meetings zu begrenzen können diese Countdown-Timer verwendet werden, um immer die Zeit im Blick zu haben. Hier der Gruppierte-Flow, der auch leicht an eigene Bedürfnisse bzw. Zeiten angepasst werden kann.

So sieht es dann im Browser aus: … „Mal was anderes als Corona-Impfstrategien: NodeRed Timer für den Raspberry Pi“ weiterlesen

YaCy oder das eigene Google nur anonymer

YaCy (von Yet another Cyberspace, homophon zu englisch ya see) ist eine Suchmaschine, die nach dem Peer-to-Peer-Prinzip – kurz P2P – arbeitet. Dabei gibt es keinen zentralen Server, sondern alle Teilnehmer sind gleichwertig.

Und sie läuft auf einem Raspberry Pi 4 B im Docker Container in 10 Minuten.

Hier der Eintrag für die docker-compose.yml, oder hier die ganze Datei: „YaCy oder das eigene Google nur anonymer“ weiterlesen

Impfbeginn in Deutschland – Mal was anderes: Wie können Header in PDF Dokumente mit iText 7.1 autom. auf jede Seite erzeugt werden?

Manchmal braucht man in automatisch generierten PDFs eine Überschrift auf jeder Seite.
Gesund oder Krank - Impfbeginn in Deutschland

Wie geht das mit iText 7?

Mit einen implementierten IEventHandler. Der dann nach jeder erzeugten Seite PdfDocumentEvent.START_PAGE einen Event generiert, der dann die Überschrift erzeugt. Dazu habe ich eine Klass HeaderHandler entwickelt. Es kann als Option auch entschieden werden ob auch auf der ersten Seite einen Überschrift erzeugt werden soll. Hier die Klasse:
„Impfbeginn in Deutschland – Mal was anderes: Wie können Header in PDF Dokumente mit iText 7.1 autom. auf jede Seite erzeugt werden?“ weiterlesen