Unternehmen, der US -Präsidentschaftskandidat Mitt Romney erinnert uns, sind Menschen. Unabhängig davon, ob Sie den Schlussfolgerungen zustimmen oder nicht, die seine Partisanen aus dieser Behauptung ziehen, hat die Erklärung sicherlich eine große Menge an Wahrheit. Was ist schließlich ein Unternehmen, aber eine bestimmte Gruppe von Personen, die unter einer Reihe spezifischer Regeln zusammenarbeiten? Wenn ein Unternehmen Eigentum besitzt, bedeutet dies wirklich, dass es einen Rechtsvertrag gibt, der besagt, dass die Immobilie nur für bestimmte Zwecke unter der Kontrolle der Personen verwendet werden kann, die derzeit sein Board of Directors sind – eine von einem bestimmten Satz von Aktionär modifizierbare Bezeichnung selbst. Wenn ein Unternehmen etwas tut, liegt es daran, dass sein Verwaltungsrat zugestimmt hat, dass es getan werden sollte. Wenn ein Unternehmen die Mitarbeiter einsetzt, bedeutet dies, dass die Mitarbeiter sich einverstanden erklären, die Kunden des Unternehmens nach einem bestimmten Satz von Regeln, insbesondere der Zahlung, Dienstleistungen bereitzustellen. Wenn ein Unternehmen nur eine begrenzte Haftung hat, bedeutet dies, dass bestimmte Personen zusätzliche Privilegien gewährt haben, um durch die Regierung mit reduzierter Angst vor rechtlicher Verfolgung zu handeln – einer Gruppe von Menschen mit mehr Rechten als alleine ordnungsgemäße Menschen, aber letztendlich dennoch die Menschen. Auf jeden Fall ist es nichts weiter als Menschen und Verträge bis hin zu Verträgen.
Hier stellt sich jedoch eine sehr interessante Frage: Brauchen wir wirklich die Menschen? Einerseits lautet die Antwort Ja: Obwohl zukünftige Maschinen nach der Singularität in der Lage sein werden, alle alleine zu überleben, wird eine Art menschliches Handeln für die physische Welt auf eine aufwöhnliche Zukunft einfach notwendig sein. Andererseits war die Antwort jedoch in den letzten zweihundert Jahren immer nein. Die industrielle Revolution ermöglichte es uns zum ersten Mal, die menschliche Arbeit durch Maschinen in großem Maßstab zu ersetzen, und jetzt haben wir fortgeschrittene digitalisierte Fabriken und Roboterarme, die komplexe Güter wie Automobile produzieren. Dies automatisiert jedoch nur den Boden; Entfernen Sie die Notwendigkeit von Ranglistenarbeitern und das Ersetzen durch eine geringere Anzahl von Fachleuten, um die Roboter zu pflegen, während die Verwaltung des Unternehmens unberührt bleibt. Die Frage ist, können wir uns dem Problem aus der anderen Richtung ausgehen: Selbst wenn wir immer noch Menschen benötigen, um bestimmte spezielle Aufgaben auszuführen, können wir stattdessen die Verwaltung aus der Gleichung aus der Gleichung entfernen?
Die meisten Unternehmen haben ein Leitbild; Oft geht es darum, Geld für Aktionäre zu verdienen. Zu anderen Zeiten beinhaltet es einige moralische Notwendigkeiten, die mit dem jeweiligen Produkt zu tun haben, das sie schaffen, und andere Ziele wie die Unterstützung der Gemeinschaften, die zumindest theoretisch manchmal in die Mischung eintreten. Im Moment existiert dieses Leitbild nur insofern als Verwaltungsrat, und letztendlich interpretieren sie letztendlich die Aktionäre. Aber was wäre, wenn wir mit der Macht der modernen Informationstechnologie das Leitbild in Code codieren können? Das heißt, erstellen Sie einen unantastbaren Vertrag, der Einnahmen generiert, die Menschen für die Ausführung einer Funktion ausübt und Hardware für sich selbst findet, ohne dass die menschliche Richtung von Top-Down-Anweisungen erforderlich ist?
Als Daniel Larmier von Bitcoins überreden wir uns wies darauf hin In seiner eigenen Erforschung dieses Konzepts kann Bitcoin selbst in gewissem Sinne als einen sehr frühen Prototyp von genau so etwas angesehen werden. Bitcoin hat 21 Millionen Aktien, und diese Aktien sind im Besitz der Anteilseigner von Bitcoin. Es hat Mitarbeiter und ein Protokoll für die Bezahlung: 25 BTC an ein zufälliges Mitglied der Belegschaft, ungefähr alle zehn Minuten. Es hat sogar eine eigene Marketingabteilung, die weitgehend aus den Aktionären selbst besteht. Es ist jedoch auch sehr begrenzt. Es weiß fast nichts über die Welt außer der gegenwärtigen Zeit, es hat keine Möglichkeit, einen Aspekt seiner Funktion abgesehen von der Schwierigkeit zu ändern, und es tut es nicht wirklich Tun alles an sich; Es existiert einfach und überlässt es der Welt, es zu erkennen. Die Frage ist: Können wir es besser machen?
Berechnung
Die erste Herausforderung ist offensichtlich: Wie würde ein solches Unternehmen tatsächlich Entscheidungen treffen? Es ist einfach, Code zu schreiben, der zumindest vorhersehbare Umgebungen eine bestimmte Eingabe erfolgt und eine gewünschte Maßnahme berechnet. Aber wer wird den Code ausführen? Wenn der Code einfach als Computerprogramm auf einem bestimmten Computer existiert, was verhindert dann, dass der Eigentümer dieses Geräts das Ganze herunterschaltet oder sogar seinen Code geändert hat, damit er sein gesamtes Geld an sich selbst sendet? Zu diesem Problem gibt es nur eine effektive Antwort: Verteilter Computer.
Die Art des verteilten Computers, nach dem wir hier suchen, entspricht jedoch nicht dem verteilten Computer in Projekten wie Seti@Home und Folding@Home. In diesen Fällen gibt es immer noch ein zentraler Server, der Daten von den verteilten Knoten sammelt und Anfragen sendet. Hier benötigen wir vielmehr die Art von verteiltem Computer, das wir in Bitcoin sehen: eine Reihe von Regeln, die sich dezentral seine eigene Berechnung selbst validieren. In Bitcoin wird dies mit einer einfachen Mehrheitsstimmung erreicht: Wenn Sie nicht dazu beitragen, die Blockchain mit der Mehrheitsnetzwerkleistung zu berechnen, werden Ihre Blöcke weggeworfen und Sie erhalten keine Blockbelohnung. Die Theorie ist, dass kein einzelner Angreifer über genügend Computerkraft verfügt, um diesen Mechanismus zu untergraben. Die einzige praktikable Strategie besteht im Wesentlichen darin, „mit dem Fluss einzugehen“ und ehrlich zu handeln, um das Netzwerk zu unterstützen und die Blockbelohnung zu erhalten. Können wir diesen Mechanismus einfach auf eine dezentrale Berechnung anwenden? Können wir einfach jeden Computer im Netzwerk bitten, ein Programm zu bewerten und dann nur diejenigen zu belohnen, deren Antwort mit der Mehrheitswahl entspricht? Die Antwort lautet leider nein. Bitcoin ist ein Sonderfall, da Bitcoin einfach ist: Es ist nur eine Währung, die keine Eigenschaft oder eigene private Daten trägt. Ein virtuelles Unternehmen müsste dagegen wahrscheinlich den privaten Schlüssel zu seiner Bitcoin -Brieftasche speichern – ein Datenstück, das in seiner Gesamtheit verfügbar sein sollte niemandnicht für alle, wie Bitcoin -Transaktionen sind. Aber natürlich muss der private Schlüssel immer noch verwendbar sein. Wir brauchen also ein System der Signiertransaktionen und sogar von Bitcoin -Adressen, die auf dezentrale Weise berechnet werden können. Glücklicherweise ermöglicht Bitcoin es uns, genau das zu tun.
Die erste Lösung, die sofort in den Sinn kommt, sind Multisignaturadressen. Angesichts einer Reihe von tausend Computern, auf die man sich verlassen kann, um die Unternehmen wahrscheinlich weiterhin zu unterstützen, lassen Sie jeweils einen privaten Schlüssel erstellen und eine 501-of-1000-Multisignatur-Adresse zwischen ihnen erstellen. Um die Mittel auszugeben, konstruieren Sie einfach eine Transaktion mit Signaturen von 501 Knoten und übertragen Sie sie in die Blockchain. Das Problem hier ist offensichtlich: Die Transaktion wäre zu groß. Jede Signatur macht ungefähr siebzig Bytes aus verweigert Transaktionen mit jedem Skript über 10.000 Bytes. Zweitens ist die Lösung spezifisch für Bitcoin; Wenn das Unternehmen private Daten für nichtfinanzielle Zwecke speichern möchte, sind Multisignatur-Skripte nutzlos. Multisignatur -Adressen funktionieren funktionieren, da es ein Bitcoin -Netzwerk gibt, das diese bewertet und Transaktionen in die Blockchain einfügt, je nachdem, ob die Bewertung erfolgreich ist oder nicht. Bei privaten Daten würde eine analoge Lösung im Wesentlichen eine dezentrale Behörde erfordern, um die Daten zu speichern und nur dann herauszugeben, wenn eine Anfrage bei Bedarf 501 von 1000 Signaturen enthält – und uns direkt dorthin zurückbringen, wo wir angefangen haben.
In einer anderen Lösung gibt es jedoch immer noch Hoffnung; Der allgemeine Name von Cryptographen ist „sichere Multiparty -Berechnung“. In der sicheren Multiparty -Berechnung werden die Eingänge in ein Programm (oder genauer gesagt die Eingänge in eine simulierte „Schaltung“, da sichere Multiparteiberechnungen nicht mit „If“ -Anweisungen und bedingten Schleifen verarbeiten) unter Verwendung eines Algorithmus aufgeteilt, der genannt wirdShamirs geheimer Teilenund jedem Teilnehmer wird ein Stück der Informationen gegeben. Shamirs geheime Freigabe kann verwendet werden, um Daten in n-Teile aufzuteilen, so dass alle K-von, aber keine K-1 von ihnen ausreichen, um die ursprünglichen Daten wiederherzustellen-Sie wählen, was K und N sind, wenn Sie den Algorithmus ausführen. 2-von-3, 5 von 10 und 501 von 1000 sind alle möglich. Eine Schaltung kann dann auf dezentrale Daten auf den Datenstücken bewertet werden, sodass am Ende der Berechnung jeder ein Stück des Ergebniss der Berechnung hat, aber während der Berechnung erhält eine einzelne Person den geringsten Blick auf das, was vor sich geht. Schließlich werden die Stücke zusammengestellt, um das Ergebnis zu enthüllen. Die Laufzeit des Algorithmus lautet O (N3), was bedeutet, dass die Anzahl der Berechnungsschritte, die zur Bewertung einer Berechnung erforderlich sind, ungefähr proportional zum Würfel der Anzahl der Teilnehmer ist. Bei 10 Knoten, 1000 Berechnungsschritten und bei 1000 Knoten 1 Milliarde Schritten. Eine einfache Milliarden-Schritt-Schleife in C ++ dauert ungefähr zwanzig Sekunden auf meinem eigenen Laptop, und Server können dies in einem Bruchteil einer Sekunde tun, sodass 1000 Knoten derzeit in etwa der Grenze der Rechenpraktikabilität liegen.
Wie sich herausstellt, kann eine sichere Mehrparteienberechnung verwendet werden, um Bitcoin -Adressen und Zeichen Transaktionen zu generieren. Für die Adressgenerierung ist das Protokoll einfach:
- Jeder generiert eine zufällige Nummer als privaten Schlüssel.
- Jeder berechnet den öffentlichen Schlüssel, der dem privaten Schlüssel entspricht.
- Jeder enthüllt seinen öffentlichen Schlüssel und verwendet Shamirs geheimen Algorithmus, um einen öffentlichen Schlüssel zu berechnen, der von allen enthüllten tausend öffentlichen Schlüssel rekonstruiert werden kann.
- Aus diesem öffentlichen Schlüssel wird eine Adresse generiert.
Weil öffentliche Schlüssel kann hinzugefügt werden, subtrahiert werden multipliziert und sogar durch Ganzzahlen geteilt, überraschenderweise funktioniert dieser Algorithmus genau so, wie Sie es erwarten würden. Wenn alle dann einen 501-of-1000-privaten Schlüssel auf die gleiche Weise zusammenstellen würden, könnte dieser private Schlüssel das Geld ausgeben, das an die Adresse gesendet wird, die durch Anwenden des 501-of-1000-Algorithmus auf die entsprechenden öffentlichen Schlüssel angewendet wird. Dies funktioniert, weil Shamirs geheime Teilen wirklich nur eine algebraische Formel ist – das heißt, es verwendet nur Addition, Subtraktion, Multiplikation und Abteilung, und man kann diese Formel „über“ öffentliche Schlüssel genauso leicht berechnen wie bei Adressen. Infolgedessen spielt es keine Rolle, ob der private Schlüssel zur öffentlichen Schlüsselkonvertierung vor der Algebra oder danach durchgeführt wird. Signiertransaktionen können auf ähnliche Weise durchgeführt werden, obwohl der Prozess etwas komplizierter ist.
Die Schönheit der sicheren Mehrparteienberechnung ist, dass sie sich über nur Bitcoin erstreckt. Es kann genauso einfach verwendet werden, um den Algorithmus für künstliche Intelligenz zu betreiben, auf den das Unternehmen für den Betrieb angewiesen ist. Das sogenannte „maschinelles Lernen“, der gebräuchliche Name für eine Reihe von Algorithmen, die Muster in realen Daten erkennen und Computern es ohne menschliche Intervention modellieren und stark in Feldern wie Spam-Filtern und selbstfahrenden Autos eingesetzt werden. Wirklich, jede Berechnung kann, wenn diese Berechnung in einen Schaltkreis auf den einzelnen Bits des Eingangs unterteilt wird. Es gibt natürlich eine gewisse Grenze für die Komplexität, die möglich ist. Die Umwandlung komplexer Algorithmen in Schaltkreise führt häufig zu einer zusätzlichen Komplexität, und wie oben beschrieben, kann Shamirs geheime Freigabe an sich selbst teuer werden. Daher sollte es nur wirklich verwendet werden, um den „Kern“ des Algorithmus zu implementieren. komplexere hochrangige Denkaufgaben werden am besten von externen Auftragnehmern gelöst.
Aufgeregt über dieses Thema? Freuen Sie sich auf die Teile 2, 3 und 4: Wie dezentrale Unternehmen mit der Außenwelt interagieren können, wie einige einfache sichere Multiparteiberechnungskreise auf mathematischer Ebene und zwei Beispiele dafür, wie diese dezentralen Unternehmen einen Unterschied in der realen Welt bewirken können, funktionieren.
Siehe auch:
http://letstalkbitcoin.com/is-bitcoin-overpaying-for-false-security/
http://bitcoinmagazine.com/7119/bootstrapping-an-autonomous-tecentralisierte-Corporationspart-part-interacting-with-the-world/
http://bitcoinmagazine.com/7235/bootstrapping-a-tecentralized-autonomous-corporation-spart-3-identity-corp/

