Archiv des Autors: C.Baumann

Cheater ausgesperrt …

Das Problem beschäftigte Betreiber von (sha256 und quark) Mining Portalen monatelang: Die „fake hash vulnerability“. Damit konnte jemand, der einigermassen erfahren mit Kryptowährungen, Linux, Python, Stratum-Mining etc. ist, Mining Portale, die mit der gängigsten Software Version arbeiteten, betrügen. D.h. Shares uploaden, die nur durch Software generiert wurden und eine extrem hohe „Difficulty“ vorspiegeln. Eine Difficulty, die ausschliesslich mit spezieller Hardware erreicht werden kann.

Nach ein paar nächtlichen Recherchen, Debug Sessions und Tests an einigen Echtsystemen konnte ich den (eigentlich recht banalen) Fehler finden …

Und natürlich auch beheben und die Community informieren: https://github.com/Crypto-Expert/stratum-mining/issues/353

Recht interessant, wie ein „kleiner“ Bug in ein System einen Fehlerfaktor von 65535 hineinbringt. Traurig hat mich aber gemacht, dass der Entwickler sich mit „… habe ich eh gewusst … sah aber keinen Grund, das zu fixen …“ äusserte. Tja.

Jedenfalls können durch diesen Fix Cheater, die Kryptowährungen in unbekannter Höhe abgegriffen haben von den Stratum Servern automatisch erkannt und ausgesperrt werden.

Wie geht es weiter? Der Nachfolger von stratum-mining ist UNOMP. Schaue ich mir auch mal an. UNOMP bzw. die Vorgängerversion NOMP und diverse Forks davon werden weltweit x 100 oder 1000 mal eingesetzt.

Uiiii … der nächste Kandidat.

C2coin – Windows Wallet

Das C2coin Netz läuft jetzt seit einigen Tagen problemlos. Es wurde also Zeit, dass ich mich auch um eine Windows-Version der Software kümmere.

Diverse Recherchen im Web ergaben, dass das Compilieren der Binaries für Windows eine ziemliche Herausforderung darstellen soll. Und so war es auch …

Es dauerte mehrere Stunden, bis ich mich mit den beteiligten Komponenten halbwegs anfreunden konnte:

  • Die „Toolchain“ (Entwicklungsumgebung): MinGW, MSYS und Qt mit qmake, mingw32-make, G++ C-Compiler usw.
  • Die „Dependencies“ (notwendige Libraries): Berkeley-DB, Openssl und die Boost-Library.

Einige Stunden (und Fehlversuche) später war es dann soweit: Sowohl die „headless“ Version (c2coind.exe), als auch die GUI-Version (c2coin-qt.exe) wurden fehlerfrei übersetzt.

C2coin Windows Wallet

C2coin Windows Wallet

War jedenfalls eine interessante Herausforderung …

Downloads: Wallet für WindowsCoindeamon für Windows
Installation/Konfiguration: Readme
Kurzanleitung Mining mit Grafikkarten: Mining with GPUs

C2coin – meine eigene Kryptowährung

Mit Kryptowährungen beschäftige ich mich ja schon einige Zeit, irgendwann ist die Idee aufgekommen, auch eine „eigene“ zu entwerfen. Und es sollte natürlich wirklich eine eigene Coin werden und nicht nur ein Plagiat aus einem Altcoingenerator …

Also ging es ans Festlegen der Parameter, das Klonen des Litecoin Codes, Aufsetzen der Entwicklungsumgebung, Bearbeiten des Sourcecodes und schließlich ans Generieren des „Merkle-Hashes“, die Basis für das Erstellen (Mining) des „Genesis-Blocks“ – der Anfang einer neuen Blockchain.

In den Genesis-Block wird üblicherweise eine Information eingetragen, die am Tag der „Geburt“ eines Coins in den Medien zu finden war. Ich fand diese Meldung der Tageszeitung „Der Standard“ interessant:

Ausschnitt aus dem Genesis-Block

Ausschnitt aus dem Genesis-Block

Das Erstellen der Binaries unter Linux ging dann recht problemlos von der Hand, die Binaries unter Windows zu compilieren ist eine andere Geschichte, davon werde ich noch berichten …

GUI-Wallet unter Linux

GUI-Wallet unter Linux

Wozu das Ganze? Einerseits wollte ich einfach wissen, ob ich es kann. Darüber hinaus sehe ich es als Plattform für zukünftige Entwicklungen (z.B. proof-of-concepts) für Module im „Cryptocoin Ökosystem“ …

Der Code des Projektes ist auf Github zu finden.

Online QR-Code Generator

Die Open Source Library PHP QR Code hatte ich schon in einigen Projekten in Verwendung. Jetzt habe ich sie mit einem GUI ausgestattet, mit dem man folgende Parameter setzen kann:

  • Level der Fehlerkorrektur (Rekonstruktion von 7% bis 30% beschädigter Daten)
  • Größe des QR-Codes in „Pixels per Point“ (Point entspricht einem Punkt des QR-Codes)
  • Größe des Rahmens in Points
  • Transparenz des Hintergrundes
Screenshot QR-Generator

Screenshot QR-Generator

Der QR-Code wird in PNG-Format generiert, zusätzlich werden die Rohdaten („Points“) in Textform ausgegeben.

Der Generator ist unter http://multidec.web-lab.at/qr/ zu erreichen, mein Fork ist auf GitHub.

Für weitere Projekte (Online- oder Offline Generierung von QR-Codes, Integration in Applikationen etc.) stehe ich gerne zur Verfügung.

Bitcoin Zahlungen über Coinbase

Seit 11.9.2014 ist die in den USA populäre Bitcoin-Plattform Coinbase auch in 13 europäischen Ländern, darunter auch Österreich, verfügbar (die Futurezone berichtete darüber).

Das habe ich zum Anlass genommen, mir die Möglichkeiten der Integration des Payment-APIs von Coinbase anzusehen und praktisch auszuprobieren (visit link).

coinbase_demo

Ich werde noch weitere Varianten erproben und in das Demo aufnehmen.

Stay tuned!

„MoWi“ – MObile WalletInfo

Ein Tool für alle, die mehrere Cryptocoin-Wallets (Bitcoin, Litecoin etc.) am Laufen haben und die Übersicht behalten wollen … und zwar immer und überall.

Funktionsweise: Ein Serverscript (PHP) verbindet sich zu den (im LAN erreichbaren) konfigurierten Wallets, frägt über die RPC API-Calls „getinfo“ und „getmininginfo“ die Daten ab und stellt sie auf einer mobilen Webseite (mit jQuery Mobile) zur Verfügung.

Screenshot_2014-09-30-12-26-17 Screenshot_2014-09-30-12-26-26

Der Zugriff auf diese Daten kann z.B. mit https und Userauthentifizierung geschützt werden. Das Tool ist im derzeit im Testbetrieb.

Offline Wallet für eMark

Gemeinsam mit den Entwicklern der Cryptowährung DEM (Deutsche eMark) wurde ein Offline-Wallet erstellt („geforkt“), welches ich unter coinz.at/emark-offlinewallet/ betreibe.

dem-offlinewallet

Damit können e-Mark Adressen und deren private Schlüssel sicher (weil clientbasiert) generiert und als QR-Codes ausgedruckt werden, eine Voraussetzung für die sichere Aufbewahrung von Cryptocoins („cold storage“). Auch die Erstellung der Schlüsselpaare aus Passwörtern („Brainwallet“) ist damit möglich.

Liebe Grüße an die eMark Community an dieser Stelle 🙂

ÖRAG Immobilien App jetzt mit POIs aus data.gv.at

Die „ÖRAG Immobiliensuche“ ist als App für Android und iOS seit letztem Jahr erfolgreich auf dem Markt.
In der neuen Release wurde die Darstellung von POIs integriert, d.h. ein Immobiliensuchender kann sich komfortabel über die Umgebung seiner (zukünftigen) Immobilie informieren.

Die POIs stammen aus „data.gv.at – offene Daten Österreichs“ – http://www.data.gv.at/.
Sie umfassen: Öffentlicher Verkehr, Schulen, Kindergärten, Universitäten, Krankenhäuser, Parks, Märkte, Polizeistationen etc.

OGD-POIs_Android

Die Daten werden periodisch von den OGD-Servern geladen, vorverarbeitet und für die Apps auf einem eigenen Server zur Verfügung gestellt.

Das Projekt wurde für die ÖRAG Österreichische Realitäten-AG in Zusammenarbeit mit Artware Multimedia GmbH und Christoph Lederer abgewickelt.

Das App gibt es im Apple App Store und im Google Play Store.

Update 11/2016: Die App ist übrigens auch als Anwendung am Portal „data.gv.at – offene Daten Österreichs“ verlinkt:  https://www.data.gv.at/anwendungen/oerag-immobiliensuche/

Bitcoin-ATM – Userinterface

Auf der „Central European Bitcon Expo 2014“ lernte ich „GENERAL BYTES„, die tschechischen Hersteller von Bitcoin-ATMs kennen und übernahm spontan die Aufgabe, die Dialoge des Userinterfaces des „BATMTwo“ auf Deutsch zu übersetzen. Die Übersetzungen sind bereits in der aktuellen Softwarerelease verfügbar.

Bitcoin-ATM © by General Bytes

Bitcoin-ATM © by General Bytes

Kurzer aber interessanter Job …

Alles Gute für Euer Produkt und Gruß nach Prag!

Multi-Dec – neue Version

Das Konvertierungs-/Decodierungstoolkit Multi-Dec (multidec.web-lab.at) ist mittlerweilen (fast) weltweit im Einsatz, wie Google Analystics zeigt:

multidec_worldwide

Aufgrund einiger Anfragen habe ich die Funktionalität erweitert, jetzt können damit auch Zahlen beliebiger Länge zwischen den Systemen Base10 (dezimal), Base2 (binär), Base16 (Hex) sowie Base58 und Base62 (in jeweils zwei Varianten) konvertiert werden.

Weiterhin viel Spaß damit an alle User …

P.S.: Es freut mich, daß auch Wikipedia darauf verlinkt 😉