Beiträge von Rumhocker

Als Gast bekommst du nur einen geringen Teil der Geschehnisse zu sehen.
Registriere dich jetzt kostenfrei und erblicke das volle Spektrum der eMark Gemeinschaft!

    Hallo,


    ich habe mir das Problem mal angesehen. Und ich muss dir leider recht geben. Das Wallet an sich kann keine Blöcke mehr erzeugen. Das ist mir vorher noch gar nicht aufgefallen. Ich versuche mal in Version 1.5 "setgenerate" wieder ein zu bauen. Dann sollte es mit dem Walletmining wieder gehen.

    Das Syncnode Konzept wurde in Bitcoin Version v0.8.2 eingeführt, um sicher zu stellen das wir alle mit dem Peer verbunden sind, welchen wir als letztes gefragt haben welches gerade der aktuelle Block ist. Der Name ist ein bischen verwirrend und hat nichts damit zu tun, von welchem Peer wir gerade die Blöcke downloaden sondern nur von welchem Peer uns die bloße Exsistenz eines Blockes mitgeteilt wird.


    Bei jedem Neustart des Wallets ändert sich meist auch die IP Adresse von syncnode: true
    Also nein, du kannst keinen 2ten oder 3ten Syncnode auf machen.
    Du kannst aber bestimmen, wenn du dich immer nur mit dem selben Syncnode verbinden möchtest:


    in der eMark.conf


    Code
    connect={IP you want as your sync node}

    Also ich kann keine Probleme feststellen.
    Die Forkrate ist nicht höher als sonnst und wird durch das Wallet ziemlich schnell erkannt (max 2-3Blöcke) und wieder auf die richtige Chain gelenkt. Sieht man sehr gut im Logfile. Also das funktioniert sehr gut.
    Das Transaktionen nicht durch gehen, kann ich nicht nachvollziehen.
    Und mit dem Blockexplorer wird wohl nix mehr. Die Datenbank ist einfach zu groß geworden für unseren Server. Und ich habe leider keinen anderen. https://bitcointalk.org/index.…9.msg17385177#msg17385177


    Rumhocker

    nee, so einfach ist das nicht. Die eMark hat ein fest einprogrammiertes Protokoll. Und das kann man nicht ändern. (außer bei einem Hardfork, wo alle Benutzer auf die neue Version updaten müssen)
    Da steht drin, daß die eMark einen Timedrift von +/- 2 Stunden zulässt. Das mag beim Bitcoin mit 10 min Blocktime größtenteils funktionieren, da die Blöcke da nicht (im schlechtesten Fall) im Sekundentakt kommen und alle Netzwertkteilnehmer alle Blöcke und deren Zeit kennen. Sollten aber mehrere Blöcke schnell hintereinander kommen, was beim POS nicht selten ist, und die Clienten kommen nicht hinterher und die Blockzeiten stimmen nicht werden die eben zu ophan Blöcken.
    Wenn alle Netzwerkteilnehmer die selbe Internetzeit hätten gäbe es auch nicht so viele Ophans.
    Also bester Rat ist die Zeiteinstellung des Computers immer syncronisieren oder eine neue version mit Timecheck und 10s Timedrift programieren und Hardfork machen.


    Selbes Problem hier. Von 20 POS Transaktionen werden vlt. 1-2 angenommen. Ist das bei allen POS Coins so?


    nein, das ist ein Problem der (alten) eMark. es findet kein Zeitabgleich mit irgendeinem Zeitserver statt. Und die eMark hat einen Timedrift von +/- 2 Stunden einprogramiert. Da könnt Ihr Euch vorstellen was das für die Blockzeit bedeutet.... Man könnte es ändern. Der Blackcoin hat es auch gemacht....


    habs jetzt mal versucht das neue Wallet auf dem RPi zum Laufen zu bekommen, bekomme aber im letzen Schritt (make) folgende Fehlermeldung:

    Code
    virtual memory exhausted: Nicht genügend Hauptspeicher verfügbar
    Makefile:1267: recipe for target 'build/main.o' failed
    make: *** [build/main.o] Error 1


    Zum Einsatz kommt der Raspberry Pi mit 512mb und 32 GB SD.
    Gibts da nen workaround oder ist es mit dem Modell garnicht mehr möglich?


    Das ist doch der PI B mit dem 2 USB Ports? Der sollte gehen. Ich habe es bei mir auch mit Version 1.3.2 laufen. Starte mal neu und mache dann nur den Schritt "make" . Wenns nicht geht, sende mal bischen mehr vom LOG. Vieleicht kann man da mehr sehen.

    Heute möchte ich mal wieder was zum Stand der derzeitigen Entwicklung sagen und kleine Zwischenergebnisse präsentieren.


    Welche Eigenschaften soll das iOS Wallet aufweisen? Es soll einfach aufgebaut, dezentral (also ohne einen Server oder Einstiegspunkt) funktionieren, keine Blockchain speichern und die privaten Keys dürfen nicht bei einer dritten Partei liegen oder das iPhone verlassen um Zahlungen zu tätigen.
    Fündig geworden sind wir bei BreadWallet, ein Bitcoin Wallet für iOS.
    Nachdem klar wurde, daß unser Wallet bis Protokollversion 60009 einige Funktionen nicht kann welche das iOS Wallet aber dringend benötigt um mit dem Netzwerk zu kommunizieren, wurde das Wallet 1.3 nochmal überarbeitet und ist zur Zeit mit Version 1.4 und Protokollversion 60010 in der Testphase.


    Gleichzeitig arbeiteten wir an dem BreadWallet um es für die eMark anzupassen. Dies stellt sich als der schwierigste Teil dar, da die Blockheader und die Blocklänge durch POS und TX-Comment sowie Transaktionsheader und Transaktionslänge anders als beim Bitcoin aufgebaut sind.


    Was funktioniert:
    Syncronisieren mit dem Netzwerk (ca 10 min für die ganze Blockchain)
    Empfangen von Zahlungen
    Anzeige des Verwendungszwecks


    Was funktioniert noch nicht:
    Senden von Zahlungen
    Anzeige des Synchronisationsstatuses


    Wenn jemand Interesse hat uns bei unserer Arbeit zu unterstützen, wir würden uns sehr über Hilfe freuen.
    Gibt es hier auch Androidentwickler der uns bei unserem Androidwallet weiter helfen könnte?


    Hier paar screenshots:

    ja, die Hashraten unterscheiden sich.
    1.1er wallets berechnen die Hashrate wie der Bitcoin ohne die POS Blöcke zu beachten. Das hat auch im ersten Jahr funktioniert. Jedoch um so mehr POS Blöcke dazu kommen desdo ungenauer wird die Berechnung. Zur Zeit haben wir POW/POS auch so ca. Faktor 1/6


    Das Netzwerk kennt den Begriff Networkhashrate nicht. Das ist nur ein berechneter Wert aus Zeit und Difficulty.
    Im 1.3er habe ich die Berechnung angepasst. Diese funktioniert jetzt so wie bei allen anderen (modernen) POS Coins. (Novacoin, Blackcoin, Reddcoin, ...)
    Beispiel Novacoin: https://github.com/novacoin-pr…src/rpcblockchain.cpp#L50
    Ich habe hier schon einiges dazu geschrieben:
    https://bitcointalk.org/index.…9.msg13122347#msg13122347
    Wenn man auf dieser Seite weiter liest, bekommt man einige weitere Informationen.

    Ja, das Wort Limit ist evl. unglücklich gewählt.
    Die Mindestgebühr für eine Überweisung liegt bei 0,001 DEM. Dafür kannst du 1000 Bytes senden. Dann kommen für jede weiteren 1000 Bytes 0.001 DEM dazu. Bis max 10.000 Bytes. Das heißt, daß man beim zusammenfassen meist 0.009 DEM Überweisungsgebühr hat, da die Transaktion irgendwo zwischen 9000 und 9999 Bytes liegt.
    Berechnet wird die Gebühr hier:
    https://github.com/emarkprojec…/master/src/main.cpp#L589

    oh, jeh...
    Also, es kommt mir bekannt vor. Irgendwo hatte ich mal vor langer Zeit einen Laptop vor mir stehen mit dem selben Problem bei einem anderen Coin. Nach langem suchen und googeln habe ich damals aber keine befriedigende Lösung gefunden. Irgendwie liegt es an NetFramework oder an irgendeiner ähnlichen Windoofs Kacke.
    Es liegt definitiv nicht am Coin.
    Als vorübergehende Lösung kann ich dir nur eine funktionierende peers.dat anbieten. Diese in den eMark Ordner kopieren und du hast wieder viele Verbindungen. Windoofs findet nämlich von alleine keine Peers außer dem fest einprogrammierten eMark Server.
    https://www.dropbox.com/s/1ggd8pmmnlsg59l/peers.dat

    Also die in der Anleitung genannten Schritte sind alles was man tun muß.
    Der Schritt "make" dauert ca. 2.5 Stunden. Kann man also getrost über Nacht laufen lassen.


    Möchte man sich mit seinem Windows (Linux, MAC) PC mit dem Raspi verbinden, hier "VMC Viewer" herunter laden:
    http://www.realvnc.com/download/
    Auf dem Raspi folgendes Paket installieren:


    Code
    sudo apt-get install tightvncserver


    starten mit:


    Code
    tightvnc


    mit VNC Viewer mit dem Raspi verbinden...

    Ich könnte eins bauen. Aber selber machen ist doch viel interesanter:



    Entpacke das Wallet mal auf deinen Desktop.
    Gehe in den verstekten Ordner C:\Users\k-h\AppData\Roaming und benenne den Ordner "eMark" in "eMarkAlt"um.
    Starte dann das Wallet vom Desktop aus neu. Das Wallet legt einen neuen Ordner eMark an.
    Dann brauchst du nur die wallet.dat und eventuell die peers.dat aus dem alten in den neuen eMark Ordner kopieren.