Java Programm zur Goldbachsche Vermutung mit Heap Analyse

Die Goldbachsche Vermutung ist eine der ältesten ungelösten Probleme in der Mathematik, die der Mathematiker Christian Goldbach 1742 in einem Brief an Leonhard Euler formulierte. Sie besagt:

Jede gerade Zahl größer als 2 lässt sich als Summe zweier Primzahlen darstellen.

Diese Vermutung ist in zwei Formen bekannt: „Java Programm zur Goldbachsche Vermutung mit Heap Analyse“ weiterlesen

Schlüsselverwendungszwecke aus X509 Zertifikaten im PEM Format mit Java auslesen und im Klartext ausgeben

Jedes Jahr am ersten Donnerstag im Mai ist Welt-Passwort-Tag. Er dient dazu, das Bewusstsein für die Bedeutung starker Passwörter zu schärfen. Also gestern. Dann mal heute ein kleines Javaprogramm zu Entspannung das den Verwendungszweck eine Zertifikats ausgibt. Schlüsselverwendungszwecke sind wichtig für die ordnungsgemäße Verwendung und Interpretation von Zertifikaten und spielen eine entscheidende Rolle bei der Sicherstellung der Sicherheit und Integrität von Kommunikationen und Daten. In ASN.1 („Abstract Syntax Notation One“) ist das beschrieben. ASN.1 ist eine formale Sprache zur Beschreibung von Datenstrukturen und -inhalten, die unabhängig von einer bestimmten Programmiersprache oder Hardwareplattform ist. ASN.1 wird häufig in der Telekommunikations- und Netzwerktechnik sowie in der Kryptografie verwendet.

Hier ein kleines Programm, das ein JUnit-Testzertifikat (Public, PEM Format) aus dem Dateisystem einliest, und die meisten Parameter des Zertifikats auf der Konsole ausgibt. „Schlüsselverwendungszwecke aus X509 Zertifikaten im PEM Format mit Java auslesen und im Klartext ausgeben“ weiterlesen

Wie kann eine mobileconfig für Apple Geräte (iPhone, iPad, iMac …) signiert werden?

Mit dem Apple Configurator erstellte Profile können in Apple Geräte übertragen werden. Diese mobileconfig-Dateien sind XML Dateien. Wenn man die signiert, wird in den Profilen ein grüner Haken und überprüft in grün angezeigt. Sonst steht da, nicht signiert in ROT.

und man hat noch weitere Vorteile. Der Apple Configurator ist ein Tool das hauptsächlich für die Verwaltung von iOS- und macOS-Geräten in Unternehmen, Schulen und anderen Organisationen verwendet wird. Es ermöglicht die Massenkonfiguration und Verwaltung von iOS- und macOS-Geräten über eine benutzerfreundliche grafische Benutzeroberfläche. Es hilft auch schon, wenn man ein Gerät hat, denn mache Einstellungen kann man nur über Profile einstellen, und für meine 6 Geräte wird die Verwaltung auch schon einfacher.

Nun zu einem kleinen Beispiel, wir wollen Zertifikate in ein Profile importieren und die Profile Datei signieren. Hier nun die nötigen Schritte:

Ich habe mal drei Zertifikate (Root, Intermediate und User-Zertifikat) mit meiner XCA erstellt, die auf einem Raspberry Pi 4 (headless) läuft (und auch auf iMac) und zwar so: „Wie kann eine mobileconfig für Apple Geräte (iPhone, iPad, iMac …) signiert werden?“ weiterlesen

Quicktest: Camunda Modeler v5.18.0 Crypto-Workflow als Video

Der Camunda Modeler ist eine Software, die verwendet wird, um Geschäftsprozesse und Workflows zu modellieren und zu visualisieren. Er wird von der Camunda Plattform unterstützt, die sich auf Business Process Management (BPM) und Workflow-Automatisierung spezialisiert. Nun mal ein Quicktest mit meinem Crypto-Workflows:

Hier nun das kurze Video: „Quicktest: Camunda Modeler v5.18.0 Crypto-Workflow als Video“ weiterlesen

PSPP (Teil 9) Zufallsstichprobe

Stichproben in der Statistik sind ein wesentliches Werkzeug, um Informationen über eine größere Population zu gewinnen, indem man nur einen Teil dieser Population untersucht.

Eine Zufallsstichprobe ist eine Auswahl von Elementen aus einer Gesamtpopulation, bei der jedes Element in der Population eine gleichberechtigte Chance hat, in die Stichprobe aufgenommen zu werden. Das bedeutet, dass jedes Element unabhängig und zufällig ausgewählt wird, ohne dass bestimmte Merkmale oder Eigenschaften bevorzugt werden.

Zufallsstichprobe können auch mit PSPP gezogen werden. Hier ist eine Anleitung dazu: „PSPP (Teil 9) Zufallsstichprobe“ weiterlesen

Curve25519 private/public Key generieren für Hidden Onion-Services inkl. sprechenden Domainnamen mit mkp224o

Hidden Onion Services sind eine Art von Tor-Service, die es Benutzern ermöglichen, anonym und sicher mit anderen zu kommunizieren. Um einen Hidden Onion-Service einzurichten, ist es erforderlich, einen privaten und öffentlichen Schlüssel zu generieren (Also vanity address generator for tor onion v3 (ed25519) hidden services).

tor Dank an Dr.Kleinhirn.eu für die Mindmap.

Curve25519 … eine elliptische Kurve, die für asymmetrische Kryptosysteme genutzt wird. Sie wird üblicherweise für digitale Signaturen und Schlüsselaustauschprotokolle genutzt und gilt als besonders schnell. Sie ist von der IETF als RFC 7748 standardisiert. Die Kurve ist nicht durch bekannte Patente geschützt. Sie ist Public Domain. „Curve25519 private/public Key generieren für Hidden Onion-Services inkl. sprechenden Domainnamen mit mkp224o“ weiterlesen

Tor Browser 12.5.6 und anzeige der drei Relais

Vor ein paar Tagen gab es ein Update auf eine neue Version.

Welche Onion Circuits werden verwendet? Infos zeigt der Toolbar-Button zu den aktuellen Kanälen und Verbindungen von Tor an. Das kann über diesen Button angezeigt werden:

Ein Kanal in Tor besteht aus drei Relais:

-Der erste relay oder entry guard.
-Dem zweiten Relais oder Mittelknoten.
-Dem Ausgangsrelais.

Was wurde gefixt? „Tor Browser 12.5.6 und anzeige der drei Relais“ weiterlesen

RSA Checkliste für SSL-Zerfikate erstellen mit XCA für Portainer

ECC wird oft als zukunftssicherer angesehen, da es auf mathematischen Konzepten basiert, die voraussichtlich auch bei Fortschritten in der Kryptanalyse sicher bleiben. RSA hingegen könnte anfälliger für Angriffe werden, wenn leistungsfähigere Computer und Algorithmen entwickelt werden. ECC wird aufgrund seiner Effizienz und Sicherheitseigenschaften RSA in vielen modernen Anwendungen ersetzen. ECC läuft aber halt noch nicht überall. Portainer kann leider noch keine ECC (secp256k1), deshalb in diesen Beitrag einer Zertifikatserzeugung mit RSA Key und XCA.

Es sind diese 9 Schritte nötig. Unten gibt es die Checkliste zum kostenlosen Download.

1. XCA installieren (https://hohnstaedt.de/xca/index.php)

2. XCA starten (XCA-Menü: Zubehör-XCA, http://blog.wenzlaff.de/?p=20761) „RSA Checkliste für SSL-Zerfikate erstellen mit XCA für Portainer“ weiterlesen

XCA – Certification Authority (Zertifizierungsstelle) mit Elliptische-Kurven-Kryptografie (ECC) secp256k1

In der Informationssicherheit und Verschlüsselung steht „CA“ für Certification Authority. Eine Zertifizierungsstelle ist eine vertrauenswürdige Organisation, die digitale Zertifikate ausstellt und verwaltet. Diese Zertifikate werden verwendet, um die Identität von Websites, Servern und Benutzern in verschlüsselten Kommunikationen zu überprüfen, z. B. bei der SSL/TLS-Verschlüsselung im Web. Hier ein Bild der XCA GUI unter Linux:

Gestern wurde eine neue Version 2.5.0 der XCA veröffentlicht. Dafür gibt es auf dem Raspberry Pi 4 noch kein Package.

Aber man kann es ja auch selbst compilieren und zwar so für den aktuellen dev 2.5.3 Stand:

„XCA – Certification Authority (Zertifizierungsstelle) mit Elliptische-Kurven-Kryptografie (ECC) secp256k1“ weiterlesen

BIP39 oder „From mnemonic to seed“ oder 340 Undezillion 282 Dezillion 366 Nonmillion 920 Oktillion 938 Septillion 463 Sextillion 463 Quintillion 374 Billiarde 607 Billionen 431 Milliarden 768 Millionen 211 Tausend 456

In drei Block-Beiträgen hatte ich schon von einem NodeRed Node geschrieben, den ich mal programmiert hatte. Damit kann man leicht 12 Wörter aus der Wortliste die aus 2048 englischen Wörtern besteht erzeugen. Die Wortliste gibt es aber auch in japanisch, koreanisch, spanisch, chinesisch, französisch, italienisch, tschechisch und portugiesisch.

Wir haben mal beispielhaft diese 12 Wörter generiert:

shiver machine depth spoil click mind solid angle spoon menu moon two

Das entspricht diesen BIP39 Seed in Hex:

964d44c0f02d265fa5326e3c791d7f44e01eefeaaca5e17d06dcdad63543a32b21767852cf77631afaec2457a3c5b731cd56c9e2fd7678506ca82ccac06af659

12 Wörter haben eine Entropie 128 Bit und eine Checksumme von 4 Bit (= 132 Bit). Bei 24 Wörtern sind es schon 256 Bit Entropie und 8 Bit Checksumme (= 264 Bit).

Bei 12 Wörtern aus 2048 ergibt sich 2048^12 = 2^132 Möglichkeiten. Wie groß ist die Zahl? Wir fragen mal Google: „BIP39 oder „From mnemonic to seed“ oder 340 Undezillion 282 Dezillion 366 Nonmillion 920 Oktillion 938 Septillion 463 Sextillion 463 Quintillion 374 Billiarde 607 Billionen 431 Milliarden 768 Millionen 211 Tausend 456“ weiterlesen

Wie kann das Wetter oder der Bitcoin Kurs leicht mit httpie auf einem Raspberry Pi abgefragt werden?

httpie ist auch auf dem Raspberry Pi in 5 Minuten installiert, es muss ja nicht immer curl sein. Um httpie auf dem Raspberry Pi zu installieren, ist nur ein Befehl nötig. Und schon hat man einen curl Ersatz mit intuitiver UI, JSON support, Syntax Hervorhebung und mehr. Alles wird in nur 8 Minuten in diesem Video gezeigt.

Folgende Befehle werden verwendet…
„Wie kann das Wetter oder der Bitcoin Kurs leicht mit httpie auf einem Raspberry Pi abgefragt werden?“ weiterlesen

Ethereum Light Node mit Geth Far Rim in go auf Debian Bullseye Raspberry Pi

Ein Node ist ein Computer, der Teil des Ethereum-Netzwerkes ist. Dieser speichert entweder eine unvollständige (Light Client, (Downloads all block headers, block data, and verifies some randomly)) oder vollständige (Full Node ( Downloads all blocks (including headers, transactions, and receipts) and generates the state of the blockchain incrementally by executing every block)) Kopie der Blockchain und schreibt diese permanent fort.

Da ich noch einen alten Raspberry Pi 2 B+ liegen hatte, habe ich da mal einen Light Node drauf installiert. Das geht mit dem Proof-of-Work Client Geth der für alle (viele) Betriebssystem vorliegt. … „Ethereum Light Node mit Geth Far Rim in go auf Debian Bullseye Raspberry Pi“ weiterlesen

Picocli 4.6.2 veröffentlicht bei CO2 794ppm, BTC 57800, XBT >66k, ETH 4717, BTC Block 709047


Vor ein paar Tagen wurde Picocli 4.6.2 veröffentlicht. An meinem heutigen Urlaubstag habe ich nun Zeit für einen Quicktest. Wie oben zu sehen, ist alles im TWEtherScan Projekt ok. Da habe ich auch eine große Testabdeckung der CMD-Api mit Picocli. Dieses Release fix einige Fehler auch mit dem Encoding. Aber, „This release has no breaking changes„.

Impfzertifikat validierung mit dem Raspberry Pi und Python und das zu „Don’t Shut Me Down“


Seit dem 10. Juni 2021 werden Impf-Zertifikate (sogenannte Impfbescheinigungen) in Deutschland in Impfzentren ausgegeben. Den QR-Code kann man auch mit einem Raspberry Pi validieren (von lateinisch validus „kräftig, wirksam, fest“) und den Inhalt des QR-Codes im Klartext ausgeben. Am Beispiel eines Raspberry Pi Zero W sind folgende 6 Schritte nötig.

1. Wir brauchen das Impfzertifikat, also den QR-Code als PNG oder JPG-Bild in einer Datei z.B. max-mustermann.png.
Wie z.B.:
qr-code impfzertifikat
Aber nur den QR-Code, nicht die ganze Seite des Impfzertifikats. … „Impfzertifikat validierung mit dem Raspberry Pi und Python und das zu „Don’t Shut Me Down““ weiterlesen

ETH-Kontostand via Web3j und Infura mit Java in 5 Schritten abfragen

Am 11. November letzten Jahres fürte der Ausfall von Infura dazu, dass viele zentrale Börsen die Abhebung von ETH und ERC20-Token gestoppt hatten. Zudem ließen sich Metamask, Uniswap und auch andere Anwendungen auf Ethereum nicht mehr nutzen. Infura scheint ein beliebter Dienstleister für Ethereum Nodes zu sein, auf den sich nicht nur kleinere Unternehmen und Projekte verlassen, sondern auch milliardenschwere Börsen wie Binance.

Für dieses Projekt soll dennoch mal die Infura-API verwendet werden, um den Kontostand einer ETH-Adresse zu ermitteln. Mit dem web3j Framework ist das auch in Java realisierbar. Hier der Architektur Aufbau:

Wir starten (wie immer) mit einem JUnit 5 Test: „ETH-Kontostand via Web3j und Infura mit Java in 5 Schritten abfragen“ weiterlesen

Smart-Contract Wrapper für Java mit web3j-maven-plugin erstellen


Es muss ja nicht immer remix sein, um ein Smart-Contract zu compilieren. Es geht auch wie oben dargestellt mit einem Maven-Plugin (oder Gradle) um mit Ethereum-Netzwerk zu interagieren. Also wie können Solidity Smart Contracts kompiliert und dafür eine Java-Wrapper-Klassen dafür generiert werden?

Wir nehmen als Beispiel mein bekannter Smart-Contract Gehirn.sol der den IQ auf der Blockchain festhalten kann und mit Solidity programmiert ist und speichern in in dem src/main/resources Verzeichnis.

Das Plugin wird mit mvn web3j:generate-sources gestartet und wie folgt in der pom.xml eingebunden: „Smart-Contract Wrapper für Java mit web3j-maven-plugin erstellen“ weiterlesen

Java Ethereum Wallet mit Web3j erstellen

Web3j ist ein sehr modularer und typsichere Library für Java und Android. Viele Module und Funktionen für das einfache arbeiten mit Smart-Contracts und Wallets auf der Ethereum-Blockchain (ETH), stehen bereit.

Hier nun ein kleines Beispiel, wie mit nur einer Java-Klasse und ein paar Zeilen Code ein eigenes File-Wallet im Json-Format erstellt werden kann. In einem weiteren Beitrag zeige ich dann, wie dieses File-Wallet in MetaMask importiert werden kann.

Folgende Abhängigkeiten sind in der pom.xml einzutragen, Web3j und die „alte“ (alt aber Apache) Json-Lib von Google, obwohl Web3j auch die Jackson Json Lib als transitive Abhängigkeit mitbringt. Es muss ja nicht immer Jackson sein 😉 „Java Ethereum Wallet mit Web3j erstellen“ weiterlesen

„I Am Not Satoshi Nakamoto“ oder wie kann eine lokale Blockchain erstellt werden und eine Transaktion mit Metamask durchgeführt werden

Wer eine lokale Blockhain erstellen will, kann das mit Ganache tun. Ganache ist auch mit den Bezeichnungen Trüffelmasse oder Pariser Creme als hochwertige Sahnecreme aus Kuvertüre und Rahm, die zum Füllen und Überziehen von Gebäck und Süßigkeiten verwendet wird bekannt.

Zurück zur lokalen Ethereum Blockchain. Mit dieser lokalen Blockchain werden die Entwicklungsprozesse sehr schnell. Ganache kommt als Kommandozeile (ganache-cli) und auch als GUI für Windows, Mac und Linux daher.

Was machen wir?
1. Install der lokalen Blockchain Ganache
2. Ganach local Netzwerk in MetaMask anlegen
3. Account in MetaMask anlegen
4. Eine Transaktion mit MetaMask auf lokaler Blockchain durchführen (1 ETH auf ein anderes Konto überweisen)

Nach dem Download und Install des Programms, kann man auf „Quickstart Ethereum“ klicken und man hat eine Blockchain mit 10 Adressen a 100 ETH wie hier zu sehen.

Nun wollen wir die 1. Transaktion auf der localen Blockchain mit MetaMask machen. Wir brauchen dazu die RPC-Server URL: http://127.0.0.1:7545 und die Chain ID: 1337.

Wir klicken in MetaMask auf „Spezieller RPC:

und geben die die URL und die Chain ID ein:

Dann klicken wir auf „Speichern“. „„I Am Not Satoshi Nakamoto“ oder wie kann eine lokale Blockchain erstellt werden und eine Transaktion mit Metamask durchgeführt werden“ weiterlesen

NodeRed: Kurze Durchsage der chinesischen Zentralbank: „The People’s Bank of China has declared all cryptocurrency payments illegal“

BTC/USTD

Dazu passend mein NodeRed Flow der auf einem Raspberry Pi 4 läuft:

Dazu der Bitcoin Flow (es gehen alle Cryptos) mit NodeRed implementiert. … „NodeRed: Kurze Durchsage der chinesischen Zentralbank: „The People’s Bank of China has declared all cryptocurrency payments illegal““ weiterlesen

Intelligenzquotient (IQ) auf der Blockchain sichern und Smart-Contract verifizieren

„Der Intelligenzquotient (IQ) ist eine durch einen Intelligenztest ermittelte Kenngröße zur Bewertung des intellektuellen Leistungsvermögens im Allgemeinen …“ wie in Wikipedia steht. Der IQ hängt von vielen Faktoren ab, unter anderem vom Alter der Person, Leistung der Testperson und Durchschnittsleistung der anderen Testpersonen. Der durchschnittliche IQ der Bevölkerung wurde auf 100 festgelegt.

Habe vor einigen Tagen eine Smart-Contract mit Solidity geschrieben, so das die IQ Werte in der Blockchain geschrieben und gelesen werden können. Der Smart-Contact für die Ethereum Blockchain heißt „Gehirn“.

Wie kann der Sourcecode eines Smart-Contract verifizert werden? Erkennbar ist es an den grünen Kreis auf den „Contract Tab“:

1. Muss ein API Key auf etherscan.io unter API-Key angelegt werden und in der .env Datei exportiert werden z.B. „Intelligenzquotient (IQ) auf der Blockchain sichern und Smart-Contract verifizieren“ weiterlesen

Quicktest zur heute veröffentlichen neuen JUnit 5.8.1 Version und auch Smart Contract Test mit Solidity auf der Blockchain

Heute ist eine neue Version von JUnit 5 veröffentlich worden. Wenn das kein Grund für ein Quicktest ist:

Ja es läuft noch. Mal was anderes, ein Phyton Test für ein Smart-Contract auf der Ethereum-Blockchain:

Und hier der dazu passende Smart-Contract mit Solidity: „Quicktest zur heute veröffentlichen neuen JUnit 5.8.1 Version und auch Smart Contract Test mit Solidity auf der Blockchain“ weiterlesen

Ether auf der Ethereum rinkeby Blockchain erhalten da Kurs bei < 3k

Es ist möglich, Ether auf der rinkeby Blockchain zu erhalten. Mit einer Ethereum Faucet können sich User etwas an Kryptowährung besorgen. Für SW-Entwicker ist das wichtig, denn man macht ja nicht viel auf dem Mainnet 😉

Hier mal in 5 Schritten von 0 auf 18,75 Ether (Kurs gerade <3k). Zum Schluss sieht der Kontostand dann so aus:

1. Die ETH Adresse auf die der Betrag gesendet werden soll ermitteln, und in die Zwischenablage kopieren. Dies geht hier …

z.B. diese 0x6f55a676d5862623bd79446133043AEf905718B8

2. Auf Twitter einen Tweet absetzen mit diesem Inhalt: „Ether auf der Ethereum rinkeby Blockchain erhalten da Kurs bei < 3k“ weiterlesen

Gehirn Smart Contract mit Solidity auf der Ethereum Blockchain compilieren und deployen mit Remix IDE auf Ethereum Virtual Machine (EVM)

Heute wollen wir ein Solidity Contract (Smart-Contract) auf der Blockchain mit der Remix-IDE im Browser schreiben. Dafür verwenden wir die Programmiersprache Solidity. Hier ein kleiner Überblick mit einer Mindmap (Danke Dr. Kleinhirn.eu) zu Sprache

Die Online Remix-IDE mit der Doku Remix-IDE-Doku sieht so aus:

Dann legen wir unseren Smart-Contract an, der den IQ mit Gebühren auf der Blockchain speichert und auch lesen kann.

Wir erstellen eine neue Datei Gehirn.sol „Gehirn Smart Contract mit Solidity auf der Ethereum Blockchain compilieren und deployen mit Remix IDE auf Ethereum Virtual Machine (EVM)“ weiterlesen

Treibt ABBA – „Don’t Shut Me Down“ den BTC Kurs auf über 50 k ?

Wer kennt nicht das Problem. Man wartet auf den Eingang einer Zahlung oder auf das neue ABBA Album und schaut mehrfach ob sie/es 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 … „I Still Have Faith In You“ …

All das macht dieser kleine Flow. Und warum soll das Dashboard nicht den Kontostand anzeigen?

„All the things I could do
If I had a little money
It’s a rich man’s world
Money, money, money
Must be funny
In the rich man’s world
Money, money, money
Always sunny
In the rich man’s world
Aha

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. … I Still Have Faith In You „Treibt ABBA – „Don’t Shut Me Down“ den BTC Kurs auf über 50 k ?“ weiterlesen

Wie können die Anzahl der ETH Transaktionen einer ETH-Adresse per Java REST-API abgefragt werden?

Wie hier schon beschrieben, geht das mit TWEtherScan zum Abfragen per REST-Api von Ethereum Informationen.

Hier die Beispiel Abfrage:

Und hier der entsprechende Java Code. „Wie können die Anzahl der ETH Transaktionen einer ETH-Adresse per Java REST-API abgefragt werden?“ weiterlesen

ETH Kurs und Gas Abfrage per Java Rest API via etherscan.io


Die ETH Kurse bez. Gas Preise können leicht per Java Rest-API erzeugt werden. Auch der Kontostand einer Adresse kann abgefragt werden (default BUY_ME_A_COFFEE). So überwache ich z.B. dauernd die

BUY_ME_A_COFFEE = 0x829F9e57c29ab683E964c76160B7B0BaB2727dD2

via Kommandozeile (und NodeRed) und warte bis jemand da was für Kaffee und Kuchen überweist. Der aktuelle Wert reicht noch nicht ganz für zwei Personen in Hannover 😉 Wer also mal testen will …

Wenn man sich auf etherscan.io angemeldet hat und einen Token hier hinzugefügt hat, kann man leicht die Abfrage machen. Es sind maximal 5 Abfragen pro Sekunde kostenlos möglich:

-k Api-Token

Ausgabe:

Der ganze Beispiel-Code liegt auf GitLab unter TWEtherScan.

Hier der Beispiel Code: „ETH Kurs und Gas Abfrage per Java Rest API via etherscan.io“ weiterlesen

Bitcoin (XBT) >38k wg. Amazon? – dann mal gleich ein private ECC Key auf dem Pi mit neuem OpenSSL 3.0.0-beta1 generieren

Ein 521-Bit private Elliptic Curve Cryptography (ECC) Key mit secp521r1 erzeugen. Kleiner geht auch 😉

Ganz einfach:

openssl ecparam -out private-key.pem -name secp521r1 -genkey

Ausgabe des keys mit cat private-key.pem z.B.: „Bitcoin (XBT) >38k wg. Amazon? – dann mal gleich ein private ECC Key auf dem Pi mit neuem OpenSSL 3.0.0-beta1 generieren“ weiterlesen

Onion Webseite mit Elliptische Kurve Curve25519 absichern

Hier nun noch ein Level von Sicherheit mit dem Raspberry Pi. Wie hier beschrieben kann eine Website leicht für jedermann mit eigener onion Domain im Darknet bereitgestellt werden. Die Seiten können nun aber auch noch mit einen Curve25519-Key gesichert werden, so das nur Nutzer die den Key haben auf die Seiten zugreifen können. Wenn man dann z.B. die Adresse

http://tokc2fifswouszmp4jy3ejizmchy4damvhmdug5crvkvfgmymbejkqqd.onion

aufruft, erscheint im Browser, oben links ein Schloß. Wenn man darauf klickt erscheint der Dialog:

Hier wird dann der private Schlüssel, den man vom Bereitsteller erhalten hat eingegeben. Für diese Seite ist es der Schlüssel:

JDSQ2RRI2SLYCN4SG6ZBP4DHE4TEHZG26EJS5R6FYBPH6AU3FVEA

Jeder der diesen privaten Schlüssel hat, kann nun auf die Seiten zugreifen. Wer das falsche Passwort eingibt, kann nicht auf die Seite zugreifen: „Onion Webseite mit Elliptische Kurve Curve25519 absichern“ weiterlesen

SSH Anmeldung an dem Raspberry Pi ohne Passwort mit Elliptische Kurve – ed25519 Key


Wenn man vom Mac (Windows geht natürlich auch) aus auf einen entfernten Raspberry Pi 4 B zugreifen will, kann man das auch ohne jedesmal ein Passwort eingeben zu müssen. Dafür kann das moderne ed25519 Key Verfahren verwendet werden.

Dazu muss auf dem Pi ein .ssh Verzeichnis mit einer authorized_keys Datei angelegt werden:

Dann in der /etc/ssh/sshd_config des Pi die folgenden Einträge setzen: … „SSH Anmeldung an dem Raspberry Pi ohne Passwort mit Elliptische Kurve – ed25519 Key“ weiterlesen

Kostenlos eine Webseite im Darknet mit Raspberry Pi bereitstellen über Onion Service


Wie kann kostenlos eine Webseite mit .onion Domain auf einen Raspberry Pi Zero bereitgestellt werden?

Man braucht keine kostenpflichtige Domain wie z.B. www.wenzlaff.info beantragen und bezahlen.

Die .onion Domain gibt es kostenlos. Wir brauchen nur tor und einen Webserver wie z.B. nginx.

Folgende Schritte sind auf dem Raspberry Pi nötig:

„Kostenlos eine Webseite im Darknet mit Raspberry Pi bereitstellen über Onion Service“ weiterlesen

Zum heutigen National Donut Day mit Curve25519 free private/public Key generieren für Hidden Onion-Services

Dank an Dr.Kleinhirn.eu für die Mindmap

Wenn man Wikipedia glauben will dann ist „Curve25519 … eine elliptische Kurve, die für asymmetrische Kryptosysteme genutzt wird. Sie wird üblicherweise für digitale Signaturen und Schlüsselaustauschprotokolle genutzt und gilt als besonders schnell. Sie ist von der IETF als RFC 7748 standardisiert.“
Aber sie wird auch für Onion-Services verwendet. Deshalb mal heute zur Entspannung für 10 Minuten einen public und privaten Key auf einem Raspberry Pi (Zero) generieren. Inkl. Hostnamen. Das geht so:

Hier mal der lauf auf meinem Pi: „Zum heutigen National Donut Day mit Curve25519 free private/public Key generieren für Hidden Onion-Services“ weiterlesen

TWHackSSH 1.0.5 nun auch auf Maven Central

TWHackSSH ist nun auch auf Maven Central erhältlich. Lange dort nichts mehr hochgeladen. Die habe jetzt auch eine schöne Übersichtsseite aller Abhängigkeiten mit Scann und mit E-Mail Benachrichtigung:

Jetzt geht der Download also auch darüber, wer das TWHackSSH haben will, kann über

https://search.maven.org/remotecontent?filepath=de/wenzlaff/twhackssh/de.wenzlaff.twhackssh/1.0.5/

gehen oder von diese Seite das Programm laden … „TWHackSSH 1.0.5 nun auch auf Maven Central“ weiterlesen

SSH Passwort Zugriff mit Brute-Force Script in 19 Sekunden oder „Versuch macht klug!“

Der Versuch macht klug und der Erfolg kommt schon mit dem Versuch und nicht erst wenn es klappt. Wer sein eigenes Passwort für den Raspberry Pi (oder auch jeden anderen Rechner) vergessen hat, kann es ja mal mit dem SSH Brute-Force Script von nmap versuchen. Und es ist auch erschreckend, wie schnell und einfach man ein passwortgeschützen Zugang hacken kann. Aber nur an eigenen Rechnern 😉

Wir habe hier mal, wie oben dargestellt zwei Raspberry Pi. Von dem pi oben links, machen wir mit der Brute-Force-Methode einen Scann des pi auf dem ein SSH Port Nr. 22 offen ist.

Dazu benutzen wir nmap. Das können wir installieren mit

sudo apt-get install nmap oder wie hier beschrieben selbst compilieren.

Nun checken wir, ob der SSH-Port Nr. 22 offen ist mit nmap: … „SSH Passwort Zugriff mit Brute-Force Script in 19 Sekunden oder „Versuch macht klug!““ weiterlesen