Kaspa Anhänger schießen gegen BTC

Ist zwar off topic, aber warum sind Validatoren zentralisiert und was hat das mit POS zu tun? Und von welchen Anbietern sprichst du?

Weil es keine simple Datenbanken sind. Auch Bitcoin ist das nicht. Ich kann jetzt aber schwer mehrere Stunden über die Technologie schreiben. Vielleicht springt aber mal der eine oder andere über seinen Schatten und beschäftigt sich damit. Das würde viele Fragen von selbst auflösen bin ich überzeugt.

1 „Gefällt mir“

Du sprichst von der Notwendigkeit von SmartContracts. Außerdem behauptest Du Bitcoin und x-Layer Technologien könnten diese Anforderung nicht erfüllen.

Deshalb frage ich Dich: Kennst Du ein Netzwerk, dass dezentral ist und Smart Contracts ermöglicht?

Ich nicht.

Außerdem: Selbst wenn wir solch ein hypothetisches Netzwerk haben. SmartContracts gehen in der Regel mit Realwelt-Interaktion einher. Wer kommuniziert diese Information mit der Blockchain (Stichwort: Oracle Problem)?

Beispiel:
Miete per Smart Contract (AirBnB oder so). Jetzt wird die Wohnung chaotisch hinterlassen. Upsi. Jemand muss mit dem Smart Contract interagieren. Aber welche Entität? Wer prüft den Zustand der Wohnung? Wer speißt die Information wie in die Blockchain?

Bitcoin ist tatsächlich eben keine solche Datenbank und ist eine tolle Umgebung für UTXOs. Es erfüllt genau diesen einen Zweck. Den des P2P Electronic Cash Systems. Es existiert ohne, dass es Informationen aus der Realwelt bräuchte. Die UTXOs sind rein digital/virtuell.

Steile These: Für die meisten Smart Contract Anwendungen braucht es ohnehin eine zentrale Entität, weshalb es eh eine stumpfe Datenbank tut.

Change my mind.

3 „Gefällt mir“

Wo? Das unterstellst du mir. Warum machst du so etwas?? Darauf möchte ich jetzt bitte eine konkrete Antwort!

Ich habe gesagt, dass Bitcoin nicht alles kann, was andere chains können.

Ich schon. Da du aber alles andere als Bitcoin als zentral definierst (habe ich aus anderen Posts von dir gelernt gelernt), ist es sinnlos diesen Punkt weiter zu betrachten. Es gibt viele chains mit tausenden privat betriebenen Knoten und Validatoren. Angeblich alles zentral. Die paar Miningpools bei Bitcoin sind aber natürlich völlig dezentral, weil man ja umdelegieren kann (bei ganz kleiner Auswahl). Aber egal, das Thema brauchen wir nicht behandeln, es würde zu nichts führen. Alles zentralisiert außer Bitcoin. Amen.

Wieder, es hat nichts mit meiner Aussage zu tun. Bitcoin hat nicht alle Funktionalitäten der anderen chains. Plötzlich kommt jemand mit dem Oracle Problem um die Ecke, das btw auch Bitcoin nicht löst. Was soll das? Bleib doch bei meiner Aussage, wenn du meine Aussage widerlegen möchtest.

Der Punkt ist, dass man auf anderen chains überhaupt einen SC hat. Bei Bitcoin nicht. Damit kann Bitcoin nicht alles was andere chains können. Ob das nun gut, schlecht, sinnvoll, wasauchimmer ist, sei dahingestellt. Dein Beispiel zeigt es ja auch, Bitcoin kann es einfach nicht implementieren (im derzeitigen Zustand).

Richtig. Und andere chains erfüllen auch andere Zwecke. Ganz einfach.

Wieder: Zentrale Entität. Das hat nichts mit meiner Aussage zu tun ist zweitens falsch. Ich denke, du hast in Bereich auch noch nie gearbeitet, oder?

Gerne, ich helfe dir sogar dabei.

pragma solidity ^0.8.0;

contract PaymentAndSum {

    // Function to receive funds
    function receiveFunds() public payable {}

    // Function to calculate the sum and send to the specified address
    function calculateAndSendSum(uint256 n, address recipient) public {
        uint256 sum = 0;

        for (uint256 i = 1; i <= n; i++) {
            sum += i;
        }

        // Check if the contract has enough funds to send the sum
        require(address(this).balance >= sum, "Insufficient funds");

        // Send the sum to the specified address
        payable(recipient).transfer(sum);
    }
}

Ganz simpler SmartContract. So und jetzt realisier das mal auf Bitcoin. Bitcoin kann ja alles, was die anderen chains auch können. Also ein Kinderspiel. Oder doch nicht?

Change my mind.

PS: Ich finde Bitcoin toll, aber es ist für Bitcoin extrem schädlich, wenn laufend Dinge über die Fähigkeiten des Netzwerks behauptet werden, die es nicht erfüllen kann. Das schreckt Neulinge nur ab, weil es wie propagandistisches Geschwurbel klingt.

6 „Gefällt mir“

Vielleicht habe ich Dich dann einfach missverstanden, falsch interpretiert.

Vielleicht haben wir ja Konsens, wenn ich sage, dass ich Smart Contracts (größtenteils) aufgrund des Oracle Problems für unnötig halte.

Bitcoin muss für mich niemals Smart Contracts realisieren können.

Für mich ist Bitcoin Geld und das kann es ziemlich gut.

Zumindest sammelt sich langfristig bei PoS Systemen eben die Macht bei einigen wenigen. Es findet also eine Zentralisierung statt. Finde ich blöd, ja.

Bitcoin wollte ja auch nur Geld sein.

Die Frage ist außerdem wie sinnvoll diese Funktionalitäten wirklich sind?

Aber es hat, wenn man Kryptographie vertraut, dieses Problem nicht.

Auf jeden Fall nicht in dem Maß wie es klassische Realweltinteraktionen haben.

Dann haben wir im Kern vermutlich einen Konsens.

Ich zweifle schlichtweg an dem Nutzen von Smart Contracts. Bzw. an der Notwendigkeit der Umsetzung auf einer Blockchain (die zur Zentralisierung neigt).

Sie bieten die Funktion. Ob sie damit wirklich einen Zweck (außer dem Selbstzweck) erfüllen wage ich zu bezweifeln.

Lassen wir das eben liegen, ob es mit Deiner Aussage zu tun hat oder nicht.

Es geht um Zentralität. Du sagst „hey, es gibt (ausreichend) dezentrale Blockchains“.

Wieder meine Frage: Smart Contract für die Miete, weil Person X sich Y Anteile an einer Immobilie gesichert hat.

Wer prüft wie, dass alle Vertragspartner sich an die Abmachungen halten und der Smart Contract tatsächlich smart und automatisch arbeiten kann?

2 „Gefällt mir“

Okay, dann fasse ich mal zusammen.

  • Du hast zum eigentlichen Thema nichts zu sagen. Du hast deine eigenen Themen aufgemacht. Warum auch immer.
  • Beide von mir konkret gestellten Fragen hast du ignoriert.
  • All in all, du magst keine SmartContracts. Das ist dein gutes Recht, aber weder das Problem von Bitcoin, Crypto oder irgendeiner Blockchain.

Na dann schreib das mal doch bitte Roman ganz schnell, in jedem Interview wird das anders gesagt. :wink:

Schön dass du es jetzt einsiehst. Sie bieten die Funktionalität, Bitcoin nicht. Was du persönlich darüber denkst tut nichts zur Sache.


Es scheint hier im Forum Tradition zu sein, dass sich Leute ihre Beiträge gegenseitig liken, egal was drinnen steht. Ich möchte somit bitte alle jene bitten, die den Aussagen meiner Vorredner beipflichten, das von mir gestellt SC Programm, auf Bitcoin zu deployen. Gerne können natürlich Bitcoin Script und BitVM verwendet werden. Angeblich der SmarContract Killer auf Bitcoin. Ich lerne gerne dazu, dass Bitcoin das auch kann.

3 „Gefällt mir“

Doch. Ich sagte, dass ein Trilemma nicht lösbar ist. Immerhin ging es hier ursprünglich um Kaspar und die Behauptung, dass dieses Netzwerk das Trilemma ja absolut lösen würde.

Ich habe lediglich gefragt mir Kaspar zu erklären, als wäre ich fünf Jahre alt.

Das war mein direkter Beitrag auf das Thema des Threads.

Welche Fragen hast Du denn zum Thema Kaspar gestellt? Ich scheine sie tatsächlich übersehen zu haben.

Wir hatten ausführlich hier mehr oder weniger direkt (im Zusammenhang mit dem Arbeitsnachweis) darüber diskutiert, wenn es Dich interessiert.

Naja, aber eine Funktionalität ist ja nicht ausreichend, um etwas bewerten zu können. Wir müssen schon den Sinn von SCs diskutieren, bevor wir dies als Qualitätskriterium einführen, ob gewisse Blockchain dies leisten können oder nicht.

Wenn ich zur Bewertung komme, dass es keine SCs braucht, dann entfällt jede Forderung an Bitcoin nach der Umsetzung von SCs.

Ich brauche keine (vermeintlichen) Lösungen für Probleme, die ich durch SC ebenfalls als nicht lösbar ansehe.

Das ist eine Interpretation Deinerseits.

Ich like Beiträge, die mir gefallen. Und ich gehe davon aus, dass die allermeisten hier im Forum diesen Button ebenso verwenden.

Bevor ich mir Gedanken dazu mache. Nenne mir einen guten Grund, weshalb dieses
Programm irgendwo deployed werden sollte?

Bevor ich mir Gedanken dazu mache. Nenne mir einen guten Grund, weshalb dieses Programm irgendwo deployed werden sollte?

Damit es die Funktionalität hat, die es sonst nicht haben würde! Eine Funktion die es nicht hat hat es nämlich nicht außer es hat sie. Und zu bewerten hast Du das ersteinmal nicht!
Hat er doch erklärt, mensch. :upside_down_face:

1 „Gefällt mir“

@Buzz

Ich widerspreche dir trotzdem wehgement dass Smart Contracts, zumindest wie sie in anderen Chains realisiert sind nicht genauso in Bitcojn realisierbar sind!

Denn eines darfst du nicht vergessen: Nur weil der Smart Contract in anderen Chains innerhalb der Blockchain funktioniert, muss sein Kontext immer auf Echtwelteingaben reagieren und das ist der Punkt von @HODLer : Wo liegt der unterschied ob ein Algorithmus also extern ausgeführt wird und mit der Blockchain interagiert, also je nach Eingaben unterschiedliche Bitcointransaktionen auslöst oder ob der Smart Contract innerhalb der Blockchain lebt und innerhalb der Blockchain ausgeführt wird aber trotzdem von den Inputs der Ausßenwelt abhängt?

Mit der Bitcoinblockchain kann jeder beliebig interagieren und beliebige Algorithmen schreiben die automatisiert Transaktionen ausführt. Das kann und konnte Jeder Mensch jederzeit seit es die Bitcoin Blockchain gibt! (Um mal kleinlich zu sein, jede Wallet ist so eine Interaktion, einfachstes Beispiel: Überweise jeden Monat einen Bitcoin an meinen Vermieter als Miete.) Und diese Algorithmen kannst du sogar in der Blockchain verankern und mittels Hashes beweisen dass sie ausgeführt worden sind und diese Algorithmen kannst du auch beliebig komplex machen und jeden möglichen Sachverhalt der Menschen abbilden. Du bist nichteinmal an eine eigene Programierspreche gebunden dabei. Aber diese Programme werden eben nur nicht innerhalb der Blockchain berechnet und das hat gleich mehrere Vorteile: Die Miner können sich auf ihre eigentliche Arbeit fokussieren ohne von irgendwelchen globalen Berechnungen unterbrochen werden. Nicht jede teilnehmende Node muss den Quellcode ausführen, ihnen reicht die Bestätigung dass irgendein Rechner die Berechnung ausgeführt hat und das mittels Hash in der Blockchain beweist. Außerdem nimmt das Komplexität vom eigentlich wichtigen Teil der Blockchain, die Transaktionen und die Historie, damit wird die Entwicklung weniger fehleranfällig. Und es gibt wahrscheinlich noch weitere Punkte.

Dein Beispielprogramm kannst du auch problemlos so umschreiben, dass du Beweisen kannst, dass es privat ausgeführt wurde, die gezeigten Transaktinoen ausgelöst wurden und dass der Quellcode nicht verändert wurde. Du musst den Quellcode nur einmal hashen und diesen Hash in die Blockchain schreiben. Eventuell müsstest du noch einen Beweishash bei jeder Ausführung in die Blockchain schreiben. Damit kannst du bei jeder Ausführung beweisen dass es korrekt ausgeführt wurde, so wie der Quellcode es vorgibt. Und dabei ist es egal ob es dein Heimrechner oder tausende nodes ausführen. Und bei Bedarf kannst du den Quellcode auch ohne Blockchain veröffentlichen. Alle anderen Nutzer interessieren sich sowiso nur dafür, ob die Transaktinoen, die dein Rechner ausführt valide sind oder eben nicht.

Ich Persönlich würde Hodler sogar widersprechen: Die Menschheit hat einen Bedarf an Verträgen und Verträge sind zwischenmenschlich sogar sinvoll weil sie vertrauen zwischen einander schaffen. Und Smart-Contracts sind dabei nur die nächste digitale Stufe. Sie haben definitiv ihre Daseinsberechtigung und Anwendungsfälle. Wo ich @hodler aber uneingeschränkt zustimmen muss ist, dass diese Verträge nichts innerhalb der Blockchain zu suchen haben weil wie schon geschrieben die Verträge innerhalb einer Blockchain ein Vertrauen genießen dass sie nicht erfüllen können (Orakelproblem). Sie können aber problemlos neben der Blockchain bestehen und mit ihnen Interagieren.

Es klingt vielleicht schön und lässt sich gut verkaufen, aber „Blockchain Generation 4“ bietet aktuell keinerlei Innovation gegenüber „Blockchain generation 1“. Eigentlich ehr im Gegenteil: Es suggeriert eine Sicherheit die diese Blockchains einfach nicht bieten. Erstens weil die Quellcodeausführung in einer Datenbank (Blockchain) nichts zu suchen hat und zweitens weil viele dem Irrglauben unterliegen die Blockchain lügt nie, was aber stark davon abhängt was für Infos man hineinschreibt.

Zumindest konntest du keinerlei Vorteile nennen, die nicht auch mit Bitcoin realisierbar sind weil alle anderen Lösungen genauso am Orakelproblem hängen bleiben wie bei Bitcoin. Zugegebenermaßen vielleicht sind andere Projekte deutlich einfacher und billiger für Smart Contracts aber dafür ist Bitcoin deutlich sicherer. Nicht jede Anwendung muss immer in den first Layer, auch Smart Contracts kannst du problemlos in den Second Layer auslagern, gerade wegen dem Orakel-Problem.

Und auch bei dem Pruning muss ich dir wehgement widersprechen. Es macht einen Unterschied ob man die komplette Historie verliert oder nur alle Transaktionen des Second Layers. Deswegen sind die Second Layer Lösungen auch nie so sicher wie das Hauptnetzwerk, für die meisten Anwendungen wie Kaffe kaufen oder Smart Contracts aber sicher genug. Sobald aber die komplette Historie verloren geht ist nicht mehr sichergestellt, dass ein Angreifer einfach Coins aus dem nichts erstellt hat.

Mal als Analogie: Wenn du in einem Dorf mit speziellen Münzen handelst (nur diese Münzen sind Geld), dann hast du auch nur den Ist-Zustand aber nie die Historie. Denn du könntest jederzeit die Münzen der Leute zählen und weißt wer was hat. Aber du könntest nie verifizieren ob nicht ein Dorfbewohner betrübt und heimlich selber neue Münzen herstellt und somit eine Inflation erstellt. Durch das Abzählen der Münzen kannst du lediglich feststellen dass es eine Inflation gab, aber nicht woher diese kommt. Das ist der unterschied zwischen Historischer Buchführung und lediglich der Buchführung des Ist-Zustandes.

3 „Gefällt mir“

Deine persönliche Berwertung spielt keine Rolle. Entweder Bitcoin kann alles, was andere chains auch können, oder eben nicht.
Ich lasse mich gerne überzeugen, aber ich will nicht „trusten“, ich will „verifien“.

Okay, let me verify it!

Bevor wir hier weiter philosophieren und den Quellcode(?!) hashen, machen wir den ersten Schritt.

Bitte delpoyed das von mir gepostete Programm als dApp auf Bitcoin. Danach können wir gerne weiter sprechen. So lange das aber nicht passiert ist zweifle ich daran, dass Bitcoin es überhaupt leisten kann.

Don’t trust, verify! Ganz im Sinne von Bitcoin.

3 „Gefällt mir“

Ich bin tatsächlich von einer Definition a la:
Smart Contracts sind digitale Verträge, die in einer Blockchain gespeichert sind und automatisch ausgeführt werden, wenn vordefiniert Bedingungen erfüllt sind.

Lassen wir allerdings die Bedienung der Speicherung auf der Blockchain und auch die Ausführung auf dieser weg, dann bin ich völlig bei Dir.

Natürlich sehe ich genügend Anwendungen für einen Bedarf an digitalen, automatisierten Verträgen.

Also nur, um das nochmal klarzustellen:
Ich habe nichts per se gegen digitale Verträge, die automatisch vordefinierte Bedingungen ausfüllen. :slight_smile:

Genau das ist mein Punkt.

SC, gerne. Aber nicht innerhalb der Blockchain.

Glaube wir haben vollen Konsens. :slight_smile:

1 „Gefällt mir“

Unnötiger Finanzkram, tatsächliche Verträge werden vom Staatsapparat abgesichert, der mit Richtern deren Einhaltung versichern kann.

:wink:

2 „Gefällt mir“

Was wird sich wohl ein Bitcoin Newcomer denken, wenn er den Thread bis hierher zu Ende gelesen hat?

Es werden Behauptungen zu Bitcoin, der eierlegenden Wollmilchsau aufgestellt und in langen Posts findet sich hauptsächlich Gewäsch.
Dann wird eine konkrete Anforderung gestellt, um aus dem Gewäsch mal einen konkreten Punkt zu machen. Und es passiert… nichts. Es wird weiter gewaschen und philosophiert, die Maxis kommen immer mehr ins Schwimmen und suchen händeringend nach Halt.
Der Neuling beginnt zu zweifeln, ob Bitcoin wirklich so omnipotent ist. Nach weiteren Beiträgen wird klar, Bitcoin kann einfach nicht alles, was andere Blockchains nach fast 15 Jahren Entwicklung können. Das bedeutet nicht Bitcoin sei schlecht, es bedeutet viel mehr, dass (zum Glück) Entwicklung stattfindet.

Am meisten fällt jedoch auf, dass es scheinbar ein Ding der Unmöglichkeit ist, einfach zuzugeben „Ja, neuere Blockchains haben andere Fähigkeiten als Bitcoin. Punkt.“
Was ist daran bitte so schwer? Mein Auto kann auch nicht fliegen und ist es deshalb schlechter als ein Flugzeug??
Warum wird immer wieder so ein Gewäsch verbreitet, a la Fliegen ist doch gar nicht so gut, gib mir mal einen Grund warum Fliegen eine Anwendung hat, Fliegen sollte man gar nicht, Wenn ich Flügel an meinen VW Käfer schraube fliegt er auch!

Bitcoin kann ja nichts dafür, dass viele Leute ihm Eigenschaften zuschreiben, die er nie hatte und nie haben wird. Das macht Bitcoin nicht schlecht, aber ein Dienst wird ihm dabei auch nicht erwiesen, ganz im Gegenteil. Unser Neuling würde sich hier wohl denken, dass irgendwas mit Bitoin nicht stimmen kann, wenn so eine simple Aufgabe wie diese dApp nicht realisierbar ist.

Und ganz nebenbei. Ein SmartContract der off chain, also nicht dezentral ausgeführt wird, hat bereits einen Namen. Computerprogramm. Gibts seit über 60 Jahren, würde ich nicht als den großen Wurf betrachten. :wink:

4 „Gefällt mir“

Genau das ist es!
Und in einem Compuerprogramm kann ich auch BTC statt Euro oder ETH zum Bezahlen hinterlegen.

Nur kenne ich keine Blockchain, die mir ausreichend dezentral ist und gleichzeitig Smart Contracts anbietet.

Nenn’ mir eine UTXO basierte Blockchain, die wirklich dezentral ist und SCs anbietet? Ich kenne nach wie vor keine. Trotz 15 Jahren Entwicklung.

6 „Gefällt mir“

Keine Ahnung.
Ich kann dir aber sagen was ich dachte, als ich mich als Goldbug vor ca. drei Jahren endlich auch mal mit Bitcoin beschäftigt hatte:
Es war ein großes Aha! Oho! Achsojadasistjagenial!

Dazu gabs ein riesen Geschrei der ganzen shitcoins, was die nicht alles können und warum die ja viel besser sind und überhaupt. So wie jetzt eben oder vielleicht sogar noch mehr. Und ich habe damals wie auch heute nicht verstanden, was diese coins eigentlich wollen. Welches Problem lösen sie oder wozu sind sie überhaupt da?
Ja, sie generieren kurzfristig unglaubliche Gewinne und füllen die Taschen einiger weniger und danach kacken sie ab. Selbst ETH weiß doch bis heute nicht, was es eigentlich sein will. Eine Spielplatz für Programmierer vielleicht.

Bitcoin ist für mich ein unglaublich faszinierendes Gebilde und die ganzen Schnullicoins hängen dran wie die Zecken und versuchen irgendwie einen Teil davon abzusaugen. Irgendwann fallen sie dann ab und werden zerlatscht.

Und so getroffen, gereizt oder aggressiv die ganzen Shitcoiner stets reagieren, merkt man ganz schnell wie viele Emotionen oder wahrscheinlich auch nur die Hoffnung auf den großen Gewinn dahinterstecken. Wie kleine Kinder denen man das Spielzeug kaputtmacht…

Und rückblickend bin ich so froh, dass ich als Neuling nicht auf diesen ganzen Schwachsinn reingefallen bin. Ich hätte nur verloren.

6 „Gefällt mir“

Nein und ich habe auch euer Problem erkannt. Ihr glaubt wirklich SmartCOntracts sind Verträge!?! Du hast noch einen sehr weiten Weg vor dir, aber ich bezweifle, dass du bereit bist, den ersten Schritt zu gehen.
Passen dazu

Du willst einfach keine kennen. Als erste fällt einem hier natürlich Cardano ein, dass das UTXO Modell von Bitcoin übernommen und noch erweitert hat, um dadurch die SC Möglichkeiten zu implementieren.
Mir ist schon klar, dass tausende staking pools für dich nicht dezentral sind, wohingegen Mining Unternehmen, die mehr als 50% Hashrate kontrollieren und ihre Miner KYCen völlig dezentral sind.
Abgesehen von den Staking Pools, die die Rolle der Miner übernehmen, gibt es noch zusätzliche full nodes im Netzwerk. Tatsächlich ist Cardano weit dezentraler als Bitcoin, aber das willst du einfach nicht hören.
Jetzt kommt sicher gleich, aber die Cardano Foundation blablaheulwein… Ja, die sind Hauptkontributoren des Quellcodes, der völlig offen und für jeden forkbar auf Github liegt. Passt jemandem eine Änderung nicht, spielt er das Update nicht ein. Wie bei Bitcoin. Aber ich erwarte hier sicher zu viel an Verständnis. Wenn jemand SmartContracts als digitale Verträge sieht, dann ist die Reise zum Verständnis der ganzen BC Technologie noch nicht einmal gestartet. DYOR! :wink:

Und mehr hättest du auch gar nicht schreiben müssen.
Kannst ja den Code von oben portieren und damit zeigen, dass du mehr Ahnung hast als die bösen Altcoiner, die nicht glauben mit der Erfindung des Feuermachens blieb die Welt stehen.

1 „Gefällt mir“

Ich denke, dass smart contractsProgramme sind, die auf einer Blockchain ausgeführt werden und es ermöglichen benutzerdefinierte Funktionalität auf einer bestehenden Blockchain, die Smart Contracts unterstützt, zu implementieren“.

Unter einem Vertrag verstehe ich eine „rechtsgültige Abmachung zwischen zwei oder mehreren Partnern“.

Insofern ist ein smart contract für mich ein Programm, dass in Übereinkunft zweier, oder mehrerer Vertragspartner, ein Folge von Anweisungen (bestehend aus Deklarationen und Instruktionen), um bestimmte Funktionen bzw. Aufgaben oder Probleme zu lösen, ausführt.

Aber, wenn Du konstruktiv diskutieren möchtest, dann darfst Du mir gerne erklären, was ein „Smart Contract“ ist? Du machst es Dir offensichtlich gerne leicht und sprichst anderen Kompetenzen ab. Dem Diskurs wäre es allerdings zuträglicher, wenn Du ihn um Dein Wissen erweitern könntest. :slight_smile:

5 „Gefällt mir“

Portier den Code und hör auf mit dem ständigen Geschwurbel. Ganz einfach!
Butter bei die Fische!

Wenn du das nicht kannst, ist alles über deine Wissen über SmartContracts und Bitcoin gesagt. Ohne viel Gequatsche.

@Buzz Danke für den Beispielcode. Du siehst ja wie weit es hier mit tatsächlichen Kompetenzen steht. Viel Gerade und Besserwisserei, keine hands on Fähigkeiten.

1 „Gefällt mir“

Kläre ins doch auf, denn…

@Lasonrisa Du schreibst viel ohne dabei viel zu sagen. Gehe doch auf deine Diskussionspartner ein!

@all sehr interessante Diskussion! :slight_smile:

6 „Gefällt mir“

Ich denke beide Seiten haben gewissermaßen recht, wobei aber von unterschiedlichen Punkten gesprochen wird.

Evtl. können ja beide Seiten, wie @piet vorschlägt, mal auf den Punkt der anderen Seite eingehen.

Punkt 1) Sinnhaftigkeit von Smart Contracts

@HODLer und @DasPie sprechen Smart Contracts auf einer Blockchain, die auf Realwelt-Eingaben (Oracles) angewiesen sind, generell die Sinnhaftigkeit ab. @DasPie hat das hervorragend zusammengefasst:

Anwendungen komplett innerhalb des Systems, die keine Oracles benötigen, sind sicher interessant. Aber ich kenne mich selbst nicht damit aus, was es so gibt.

Punkt 2) Möglichkeit von Smart Contracts auf Bitcoin

Natürlich können nicht beliebige Smart Contracts auf Bitcoin implementiert werden.

Die Bitcoin Script Sprache hat bewusst einen begrenzten Umfang (s.a. Blocktrainer Artikel). Insbesondere ist sie nicht Turing-vollständig. Für alle, die nicht so tief im Thema drin sind: Alle verbreiteten Programmiersprachen heutzutage sind Turing-vollständig, was nichts anderes heißt, als dass man praktisch jede denkbare Funktionalität damit umsetzen kann.

Das sicher bewusst von @Buzz gewählte Beispiel kann man z.B. nicht direkt in Bitcoin Script umsetzen, da Bitcoin Script keine Schleifen unterstützt.

Die Beschränktheit von Bitcoin Script ist ein bewusster Trade-Off zugunsten der Sicherheit. Smart Contracts können z.B. auf Bitcoin Side Chains (z.B. RSK) oder in Zukunft evtl. durch BitVM implementiert werden. Letzteres ist interessant, allerdings auch ein bisschen von Hinten durch die Brust ins Auge.

Hier zum Thema noch ein Zitat des Altmeisters:

Mastering Bitcoin 2nd Edition, Andreas M. Antonopoulos

Transaction Scripts and Script Language

[…] Script is a very simple language that was designed to be limited in scope and executable on a range of hardware, perhaps as simple as an embedded device. It requires minimal processing and cannot do many of the fancy things modern programming languages can do. For its use in validating programmable money, this is a deliberate security feature.

Today, most transactions processed through the Bitcoin network have the form „Payment to Bob’s Bitcoin address“ and are based on a script called a Pay-to-Public-Key-Hash script. However, bitcoin transactions are not limited to the „Payment to Bob’s Bitcoin address“ script. In fact, locking scripts can be written to express a vast variety of complex conditions. […]

Bitcoin transaction validation is not based on a static pattern, but instead is achieved through the execution of a scripting language. This language allows for a nearly infinite variety of conditions to be expressed. This is how bitcoin gets the power of „programmable money“.

Turing Incompleteness

The bitcoin transaction script language contains many operators, but is deliberately limited in one important way—​there are no loops or complex flow control capabilities other than conditional flow control.

This ensures that the language is not Turing Complete, meaning that scripts have limited complexity and predictable execution times. Script is not a general-purpose language.

These limitations ensure that the language cannot be used to create an infinite loop or other form of „logic bomb“ that could be embedded in a transaction in a way that causes a denial-of-service attack against the Bitcoin network. Remember, every transaction is validated by every full node on the Bitcoin network. A limited language prevents the transaction validation mechanism from being used as a vulnerability.

7 „Gefällt mir“

Das sich hier wirklich so viele Leute die Zeit genommen haben das so ausführlich zu behandeln. Respekt.

Klassischer „Ich bin ja eigentlich auch Bitcoin-Maxi, aber …“ Post. Da werden demnächst noch einige kommen.

Die ganzen klugen Investoren lachen sich sicher über die ganzen dummen Bitcoin-Bagholder kaputt :smile: