Bergbau

Andy O'Fiesh - Bitcoin Sicherheitsexperte

Andy war der zweite Entwickler, der Alan bei Armory bei der Entwicklung fortschrittlicher Armory Bitcoin Wallet-Funktionen half. Er ist ein erfahrener Softwareentwickler mit mehr als 20 Jahren Erfahrung in der Entwicklung von Enterprise-Software für Unternehmen wie Juniper Networks, Intel und Nortel.

Andy hat einen Abschluss in Systems Engineering und einen Abschluss in Informatik und Computersystemtechnik.

### PODCAST INTERVIEW TRANSKRIPT Trace Mayer: Dies ist Ihr Gastgeber, Trace Mayer, und wir haben mit uns Andy O'Fiesh. Er ist Seniorentwickler bei Armory, der die Bitcoin Armory-Brieftasche entwickelt. Willkommen im Podcast, Andy Ofiesh. Andy Ofiesh: Danke, Trace. Schön mit dir zu sprechen. Trace: Ja. Unser Thema für diesen Podcast dreht sich also um Brieftaschen und das ist 101, weißt du? Wir fangen gerade mit den wirklichen Grundlagen an. Also wie ist eine Bitcoin Wallet? Wie funktioniert es? Andy Ofiesh: Nun, ein Bitcoin-Wallet ist, wie Sie Ihre Bitcoin-Schlüssel organisieren und schützen, das ist Ihr öffentlicher Schlüssel und Ihr privater Schlüssel. Für diejenigen, die mit Bitcoin nicht vertraut sind, sind die Schlüssel im Wesentlichen der Schlüssel zum Ausgeben und Empfangen von Bitcoins. Wenn Ihnen jemand einen Bitcoin sendet, senden Sie ihn an Ihren öffentlichen Schlüssel. Also jeder kennt Ihren öffentlichen Schlüssel. Hoffentlich kennen nur Sie Ihren privaten Schlüssel. Es gibt also eine 1-1 Beziehung zwischen öffentlichen und privaten Schlüsseln. Eine der Auswirkungen von Bitcoin ist jetzt, dass es Daten in der Welt gibt, die direkt Geld wert sind. In der Vergangenheit musste ein Hacker Ihren Computer übernehmen und etwas damit machen, um Geld zu verdienen. Vielleicht greifen Sie auf Ihre anderen Finanzdaten zu und nutzen diese in irgendeiner Weise aus, aber mit Bitcoin ist es jetzt ein einstufiger Prozess. Greifen Sie auf Ihren privaten Schlüssel zu und nehmen Sie Ihr Geld. Es hat tatsächlich das Potenzial für Hacker-Computer erhöht. Es hat auch einen großen Anstieg der verfügbaren Technologie zum Schutz Ihrer Daten verursacht. Eine der Manifestationen davon ist die Bitcoin Armory. Wir arbeiten an vielen verschiedenen Funktionen und haben bereits einige Funktionen, die speziell entwickelt wurden, um Ihre privaten Schlüssel für Ihre eigenen Bitcoins zu schützen. ### Bitcoin Private Schlüssel | Wo der Gummi auf die Straße trifft Trace: Ja, also mag ich, wie man genau dahin kommt, wo der Gummi auf die Straße trifft. Es geht nur um den privaten Schlüssel, richtig? Andy Ofiesh: Ja. Trace: Sie müssen die Schlüssel respektieren und am Ende des Tages wird jemand diese Schlüssel oder einige andere halten. Ob es sich um Münzenbasis oder Kreis oder eine Bank handelt oder Sie als Einzelperson, wie jemand diesen privaten Schlüssel hält. Wenn wir jetzt einen privaten Schlüssel sagen, ist das eigentlich nur eine Zahlenreihe, oder? Andy Ofiesh: Nun, es ist wirklich eine Nummer, eine sehr große Zahl.Wenn wir über private Schlüssel sprechen, denken Sie daran, es ist nur eine große Zahl. In technischer Hinsicht ist es eine 32-Byte-Nummer. Wie groß ist 32 Bytes? 32 Bytes reichen aus, um jedem Atom im Universum eine Zahl zuzuordnen, also ungefähr wie groß 32 Bytes sind. Wenn Sie sich also vorstellen wollen, was es heißt, einen privaten Schlüssel zu haben, können Sie sich das folgendermaßen vorstellen: "Ich denke an ein Atom im Universum, können Sie das Atom erraten, an das ich denke?" In der Lage zu erraten, wäre das wirklich schwer. Das ist die Sicherheit auf der Basisebene, es gibt eine Zahl, die groß genug ist, um jedes Atom im Universum aufzuzählen und das geheim zu halten. Trace: Und wenn wir davon sprechen, dass wir zufällig einen davon erraten, ist das ziemlich unmöglich. Angesichts der aktuellen Gesetze der Mathematik und der aktuellen Gesetze der Informatik und Thermodynamik usw., wie Sie diese Zahl, diesen privaten Schlüssel nicht einfach erraten können, oder? Andy Ofiesh: Richtig, das kannst du nicht, denn das ist eine andere Sache, um die sich die Leute kümmern, wenn ich denselben privaten Schlüssel wie jemand anders habe. Wirklich, das ist gleichbedeutend damit, zu sagen, was wäre, wenn ich an dasselbe bestimmte Atom im Universum gedacht hätte, an das jemand anderes gedacht hat. Du könntest dein ganzes Leben lang versuchen und niemals eine Kollision von zwei Atomen im Universum haben. Trace: Aber, okay, wir kommen darauf zurück, wie, zum Beispiel, wie diese Zahlen generiert werden, weil wir eine "Kollision" bekommen und eine Kollision ist, wo zwei Leute mit dem kommen gleiche Nummer, oder? Andy Ofiesh: Ja, aber das kann wegen der Größe nicht passieren. Andy Ofiesh: Nun, es könnte passieren, wenn wir später etwas näher kommen, aber es könnte passieren, dass sich jemand zum Beispiel auf dasselbe Atom konzentriert. Andy Ofiesh: Oh, nun, ja, wenn du eine schlechte Entropie hast, dann kann das definitiv passieren und das ist der Schlüssel zur Entropie. Während Sie die Zahlen in Ihrem privaten Schlüssel sind groß genug, richtig, um jedes Atom im Universum aufzuzählen, ist Ihre Methode der Generierung dieser Zahl erweitern diesen Raum. Ich meine, es wird sich erweitern, um diesen Raum zu füllen. Also, wenn Sie sagen, wählen Sie eine zufällige Zahl, nun, sicherlich jemand anderes könnte die gleiche Methode, die Sie verwendet haben, um die Zufallszahl wählen und sagen, tun es so oft, um alle möglichen Zufallszahl gibt es und dann könnten sie setzen dass in einer Datenbank und versuchen Sie alle und sie werden eine Kollision mit Ihnen haben, wenn Sie das gleiche taten, was sie taten. Trace: Nehmen wir ein Beispiel. Es gibt eine Website namens brainwallet. org und Sie können tatsächlich den Quellcode herunterladen und auf Ihrem eigenen Computer laufen, so dass es gut ist, aber was Brain Wallet wirklich Art von Ankündigungen ist, dass Sie eine diese Passwörter erstellen können und das wird in einen privaten Schlüssel umgewandelt und so ist es sehr leicht zu merken. Zum Beispiel könnten wir das Wort "cat", c-a-t, verwenden, und das würde tatsächlich eine bestimmte Zahl erzeugen, richtig? Wie ein bestimmter privater Schlüssel? Andy Ofiesh: Ja, stell dir vor, du würdest einen Haufen Leute, die du kennst, kennen lernen, die für einen Mindestlohn arbeiten wollen und sie einfach auf diese Webseite stellen und sie dazu bringen, Sträuße und Trauben zu erzeugen von Brain Wallets und dann speichern Sie jeden in einer Datenbank und dann, nachdem Sie das vielleicht mit ein paar Dutzend Menschen getan haben und sie verbringen eine Woche damit verbringen, könnten Sie ein paar hunderttausend Brain Wallets in Ihrer Datenbank haben und jetzt Sie ' Ich habe ein paar hunderttausend Lottoscheine und Sie überprüfen diese gegen BlockChain.um herauszufinden, ob eines dieser Brain Wallets ein Gleichgewicht hat, weil eine deiner Arbeitsbienen vielleicht das gleiche Brain Wallet wie jemand anderes gewählt hat und wenn du das getan hast, bekommst du ihre Bitcoins. Trace: Okay, bevor wir darüber vor der Show sprachen und du eine Analogie hast, wie Bitcoins zu stehlen wie das Spiel Capture the Flag und so ist die Flagge der private Schlüssel jetzt scheint es, dass wir zwei verschiedene Möglichkeiten haben, diese Flagge zu stehlen. Wir können diese Flagge mit einem physischen Angriff stehlen. Da könnte jemand deinen Computer kompromittieren, deinen Computer stehlen oder dein iPhone stehlen und in der Lage sein, die privaten Schlüssel auf diese Weise zu bekommen, aber es könnte auch einen rein mentalen Angriffsvektor geben, oder? Da ist jemand in der Lage, Ihre Bitcoins wegen dieses Entropieangriffs zu stehlen. Andy Ofiesh: Nun, dieser Entropie-Angriff bedeutet im Grunde, dass ich jeden Bitcoin stehlen werde, der die gleiche Methode zum Generieren seines privaten Schlüssels verwenden möchte, die ich ausprobieren werde. Trace: Ja, lassen Sie uns ein Beispiel geben. Also habe ich die Armoury-Foren auf Bitcoin Talk gelesen und jemand hat vorgeschlagen, diese Brain Wallet-Funktion in Armory aufzunehmen. Diese spezielle Brain Wallet-Funktion und er stellte seinen eigenen Software-Code zur Verfügung. Natürlich war es Open Source, so wie wir es lesen konnten und alles andere als das erste, woran ich dachte, war, ob dies ein Angriffsvektor auf die Entropie ist, denn wenn er Leute davon überzeugen kann, ihre Armory-Wallets mit schlechter Entropie zu erzeugen Dort könnte ein potentieller Angriffsvektor sein und vielleicht kannst du ein bisschen darüber reden, wie wir das entdeckt haben und es nicht in Armory aufgenommen haben, wie es ein potentielles Risiko hätte sein können und wie wir tatsächlich Entropie in der Bitcoin Armory erzeugen Brieftasche. Andy Ofiesh: Nun, zuallererst kann jeder seine eigene Brain Wallet in Armory erstellen. Wir stellen es einfach nicht in der Benutzeroberfläche zur Verfügung. Im Grunde können die Leute mit Open-Source-Code machen, was sie wollen, und sie können sehr leicht den richtigen Funktionsaufruf finden, um ein Brain Wallet zu generieren und es in einer Befehlszeile zu verwenden und es so zu machen. Aber wir vertrauen darauf, dass jeder, der schlau genug ist, auch klug genug ist, die Risiken zu verstehen und es richtig zu machen. Zum Beispiel benutze ich dieselbe Funktion, um meinen privaten Schlüssel zu generieren, aber ich kam nicht mit einer Reihe von Wörtern, stattdessen nahm ich ein Kartenspiel und ich ging durch die ersten 40 Karten im Deck und ich notierte einfach die Initialen des Namens der Karte. König der Vereine wäre KC. Also gehe ich durch 40 Karten und ich habe ungefähr 80 Zeichen und ich gebe das in der Befehlszeile ein und ich erzeuge meinen privaten Schlüssel. Das hat viel Entropie, um den gesamten Raum der Atome im Universum zu bedecken. Das ist also eine anständige Technik. Einige Wörter, die nicht so gut sind, weil jemand anders mit den gleichen Worten kommen und deinen Bitcoin stehlen könnte. Diese Leute sind da draußen und sie versuchen genau das zu tun. Also versteckten wir dieses Feature und dieser Gentleman kam vorbei und er wollte es enthüllen, er wollte, dass die Leute von den Schönheiten des Brain Wallet erfahren und du hast sehr clever entdeckt, dass er diesen Angriff auf Leute ausführen möchte, die diese Funktion nutzen.Also wirklich, wir entmutigen das, indem wir es von der Benutzeroberfläche aus verstecken und auch jedes Mal, wenn du den Gründer von Armory reden hörst, Alan Reiner, wenn er über private Schlüssel und Entropie spricht, wird er denjenigen warnen, mit dem er gerade spricht die Gefahren von Brain Wallets und die Bedeutung von Entropie. Trace: Also, für einen neuen Benutzer zu Armory, der es im Standard-Modus ausführt, also nicht einmal für Fortgeschrittene oder Experten, wie erzeugt Armory die Entropie für sie und woher wissen wir, dass das sicher ist? Diese Waffenkammer wird nicht ihre Flagge stehlen? Andy Ofiesh: Nun, Sie können sicher sein, dass es sicher ist, dass Sie sich den Quellcode ansehen können, aber ich verstehe, dass für die meisten Leute der Quellcode keine Option ist. Es gibt Experten, die sich den Quellcode angeschaut haben und sie sind unabhängig und sie haben Kommentare gemacht und wenn Sie, wissen Sie, in Foren lesen oder zum Github gehen, wo der Quellcode gespeichert ist, können Sie die Kommentare anderer lesen und lese genug, um ihm zu vertrauen. Wir benutzen den Computer-Randomizer auf den Computern, auf denen die Software läuft, aber wir machen auch die Forschung durch, um sicherzustellen, dass die Zufallszahlen, die auf den verschiedenen Plattformen, auf denen Armory läuft, erzeugt werden, genug Entropie liefern. Wir fügen auch ein paar extra Schichten hinzu, nur für den Fall, so werde ich nicht in die Details davon gehen, aber selbst wenn eine bestimmte Plattform eine geringe Entropie hat, dann kompensieren wir das für das Hinzufügen ein paar zusätzlicher Schichten auf Das. Trace: Und das ist ein Schutz gegen diese potentiell einzige mentale Attacke und in vielen Fällen haben die Leute keine Ahnung, wie die Wallet-Software die Entropie erzeugt oder ob der Entwickler sogar sehr gute Vorsichtsmaßnahmen getroffen hat stelle sicher, dass die Entropie auf diese völlig zufällige Art und Weise erzeugt wird. Andy Ofiesh: Ja, naja, vor einem Jahr, ich glaube, es war irgendwann letztes Jahr, es gab eine bekannte Schwäche im Android, besonders im Android-Handy, und es gab einen Angriff gegen diese Schwäche Der Angreifer nutzte das bestimmte Telefon, um Millionen von privaten Bitcoin-Schlüsseln zu generieren, legte sie in die Datenbank und versuchte dann alle diese privaten Schlüssel und er konnte Bitcoins von einer Reihe von Android-Nutzern, die das Android verwendet hatten, stehlen Telefon, um ihren privaten Schlüssel zu generieren, weil das Telefon nicht genug Entropie hatte, dass es ein erfolgreicher Angriff war. Die Datenbank mit privaten Schlüsseln dieses Angreifers entsprach einigen privaten Schlüsseln von Android-Benutzern, und diese Benutzer verloren ihre Bitcoins, und das passiert bei schlechter Entropie. Trace: Mann, das ist eine gruselige Aussicht, nicht wahr? Wie könnte nicht nur ein Brieftaschen-Entwickler nur nachlässig oder nur irgendwie die Verästelung der Kryptografie und der Mathematik nicht vollständig verstehen, aber ein wirklich cleverer Brieftasche Entwickler könnte tatsächlich bösartig sein und eine wirklich coole Brieftasche da draußen, die Features hat, aber es könnte ein kleiner Weg für sie, um all diese privaten Schlüssel durch die Entropie zum Beispiel anzugreifen. Andy Ofiesh: Richtig. Trace: Und so ist es sehr wichtig, dass Ihre Bitcoins in einem sehr sicheren, vertrauenswürdigen, von Experten geprüften, offenen Portemonnaie aufbewahrt werden. Andy Ofiesh: Richtig. Also, hier ist die Sache, diese Funktion, die wir nicht den Leuten aussetzen wollen, weil sie sie vielleicht missbrauchen, diese Funktion ist eigentlich der Schlüssel, um die sicherste Brieftasche zu machen. Nun, sicher, weißt du, du rennst unsere Brieftasche auf jedem anständigen Computer, den wir unterstützen, aber wenn du es dir wirklich beweisen willst, dass Bitcoin Armoury nicht deine Bitcoins stehlen will, weil du uns vielleicht nicht einmal vertraust, Der Weg dahin ist, was ich getan habe, um deine eigene Entropie zu erzeugen. Sie können ein Kartenspiel verwenden. Sie können würfeln. Wenn Sie wirklich vorsichtig sind, werden Sie die Mathematik selbst machen und herausfinden, wie viele Würfel rollen oder wie viele Karten Sie zeichnen müssen, um genug Entropie zu erzeugen, damit niemand den gleichen privaten Schlüssel wie Sie hat. Trace: Jetzt macht das wirklich Spaß. Ich erinnere mich wirklich, als ein Freund von mir gerade von Bitcoin erfahren hatte und er in unserer Meetup-Gruppe war und das war das erste Mal, dass ich ihn traf und er meinte, ich erzeuge meine privaten Schlüssel offline mit Würfeln und er ist wie ich wirklich Ich wünschte, es gäbe ein Programm, das das getan hätte, und ich dachte mir, na ja, hast du nichts von Armory gehört und er war auch nicht gut, was das macht. Also erzählte ich ihm von Armory und das war sogar, nachdem ich Armory finanziert hatte und das nächste Mal, als ich ihn sah, hatte er ein Python Script geschrieben, wo er seine eigenen Würfelrollen als Entropie eingeben konnte und Sie wissen schnell etwas weiter und er Eigentlich ist ein Entwickler jetzt mit dem Airbitz Wallet, dem mobilen Wallet für iOS unterwegs und er hat auch einiges zum Bitcoin-Kern beigetragen, aber ich finde es sehr sehr hilfreich für Leute zu wissen, dass man mit Armory weiß, das Feature wurde so abstrahiert dass der neue Benutzer sich nicht mit diesem viel technischeren Teil beschäftigen muss, aber wenn die Leute wollen, können sie sich eingraben und ihre eigene Entropie erzeugen und sicherstellen, dass ihre Bitcoins absolut sicher vor diesem bestimmten Angriffsvektor sind, richtig? Andy Ofiesh: Genau. Trace: Nun, ich weiß nur, dass ich gerade auf ein anderes Thema gestoßen bin, das ist der Unterschied zwischen Kühl- und Warmlagerung, aber ich möchte in dieser Episode nicht darauf eingehen. Ich möchte nur, dass die Leute diese Bedingungen kennen. Wir haben auch einen anderen Begriff namens Coin-Control und das hat mit genau den Bitcoins zu tun, die Sie in einer Transaktion senden, weil einige der Brieftaschen wirklich durcheinander sind, was zum Beispiel einen Angriff auf Ihre Privatsphäre bedeuten kann. Also werden wir in einem späteren Podcast darüber reden, aber ich wollte diesen Podcast einfach einpacken, indem ich mich ein bisschen mit der Oberfläche beschäftige, ein paar Sicherheitsaspekte, eins, was ist Netzwerksicherheit und zwei, was ist Brieftasche Sicherheit und können Sie ein wenig darüber reden, wie Bitcoin Core des Bitcoin QT-Client konzentriert sich auf diese Netzwerksicherheit, während die Armory Wallet konzentriert sich auf die Brieftasche Sicherheit? Andy Ofiesh: Nun, was die Netzwerksicherheit betrifft, denke ich, dass wir über Ihre Fähigkeit verfügen, auf die Blockkette zuzugreifen. Wie sicher ist Ihr Zugang zur Blockkette? Dafür setzen wir auf Bitcoin Core. Wenn Sie also Armory verwenden, greifen Sie tatsächlich auf die Blockkette über Bitcoin Core zu. Wir nutzen also die Sicherheitsfunktionen von Bitcoin Core und etwas, mit dem wir uns nicht befassen müssen, da dies durch bereits existierende Software geschieht. Wir wollen das Rad nicht neu erfinden. Wofür Armoury innoviert wurde, sichert Ihren Geldbeutel und sichert Ihren Zugang zu Ihren Schlüsseln. So haben wir Bitcoin Core sicheren Zugriff auf die Blockchain-Informationen und Bitcoin Armoury sichert Ihnen den Zugriff auf Ihre privaten Schlüssel. Trace: Eine gute Art, dies zu analogisieren, wäre Capture the Flag, Ihre Flagge ist der private Schlüssel. Das ist das Geheimnis, dass Sie nicht wollen, dass irgendjemand es weiß. Andy Ofiesh: Richtig. Trace: Aber dann die Blockkette, die komplett öffentlich ist, also hat jeder Zugriff darauf, aber es ist immer noch wichtig für dich sicherzustellen, dass du eine korrekte Kopie der Blockkette hast, einen Block Kette, zu der sich das verteilte Netzwerk geeinigt hat, weil dort auch potentielle Angriffsvektoren sein könnten, oder? Andy Ofiesh: Richtig. Einer der Wege, auf dem Leute ihre Bitcoins verloren haben, ist, dass sie dazu gebracht wurden, Bitcoins an die falsche Adresse zu schicken. Hier kommt die Netzwerksicherheit ins Spiel. Anstatt also Ihre privaten Schlüssel zu stehlen, werden diese Angreifer Ihnen schlechte Informationen geben, wer welche Adresse bekommen hat und sie werden versuchen, ihre Adresse durch jemanden zu ersetzen, den Sie rechtmäßig bezahlen wollen, und dafür kann Ihre Netzwerksicherheit angreifen Sie. Es ist im Grunde ein Mann im mittleren Angriff, der verhindert, dass Sie genaue Informationen über den Status des Bitcoin-Netzwerks erhalten. Trace: Ja, und wir werden wahrscheinlich einen weiteren Podcast mit Jeff Garzik bei BitPay haben, wo wir ein bisschen mehr über all diese Netzwerksicherheitsaspekte sprechen. Also, wir haben einen guten Überblick darüber, was Geldbörsen sind. Wir haben öffentliche Schlüssel. Wir haben private Schlüssel. Wir verstehen, dass private Schlüssel nur eine Nummer sind, und das ist eine Nummer, die wir geheim halten müssen, richtig? Andy Ofiesh: Mmhmm. Andy Ofiesh: Wenn wir diesen privaten Schlüssel generieren, haben wir dieses Konzept der Entropie, das ist die Zufälligkeit, mit der wir das erzeugen. Dann haben wir Münzkontrolle, also müssen wir in der Lage sein zu kontrollieren, welche besonderen Bitcoins wir herum senden. Wir werden später darüber reden. Dann können wir Kühllager und Warmspeicher nutzen, weil wir Armory ausführen und all diese privaten Schlüssel generieren können. Das können wir auf einem Computer tun, den wir mit Software erstellen, die wir herunterladen und verifizieren, aber auf einem Computer, der das Internet nie berührt hat, richtig? Andy Ofiesh: Das stimmt. Trace: Und das ist eine große Sache. Andy Ofiesh: Ja. Trace: Das ist eine wirklich große Sache, denn das macht die Angriffsfläche sehr viel kleiner. Dann haben wir die Sicherheitsauswirkungen mit der Netzwerksicherheit und der Geldbörsensicherheit. Also gehen wir. Es gibt einen Überblick über Wallets, den wirklich wichtigen Teil des Portemonnaies, das ist der private Schlüssel, und hier befinden sich unsere Bitcoins und am Ende des Tages, jemand muss diese privaten Schlüssel halten und was Armory macht ist das Halten und Diese privaten Schlüssel sollten hoffentlich so einfach wie möglich und so sicher wie möglich erstellt und gesichert werden. Also, los geht's, das ist Episode 100 und vielen Dank, Andy Ofiesh, für den Bitcoin Knowledge Podcast, ein Seniorentwickler bei Armory Technologies, der die Bitcoin Armory Wallet entwickelt. Wir werden gleich wieder mit einer anderen Episode in ein paar dieser Bereiche gehen. Also danke, Andy Ofiesh. Andy Ofiesh: Danke, Trace. ### Ende des Transkripts