Varför jag har nöjt mig med Electrum Bitcoin Wallet PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

Varför jag har nöjt mig med Electrum Bitcoin Wallet

Detta är en åsiktsledare av Arman The Parman, en Bitcoin-pedagog som brinner för integritet.

Under många år har jag pysslat med olika Bitcoin-plånböcker och mentorerat många människor att hålla sina privata nycklar säkert. jag bestämde mig för "Electrum Desktop Wallet” som min favorit och mest mångsidiga mjukvaruplånbok.

I den här uppsatsen kommer jag att beskriva några av Electrums funktioner, och mina gillande och ogillar. Det här är inte en detaljerad guide om hur du använder det och får ut det mesta av det. Jag kommer inte heller att gå in på varför du bör hålla dina egna Bitcoin-nycklar; det antas att du vet och vill göra detta, men om du behöver veta varför det är viktigt, vänligen ta en titt på "Sex skäl att ta ut din Bitcoin från börser."

Jag har själv upplevt Electrums egenheter och utarbetat lösningar för att övervinna dem – om den används på rätt sätt är det den mest kraftfulla plånbok jag har stött på.

Electrum är för den person som är, eller strävar efter att vara, en "power" användare. Eftersom det tillåter så mycket kontroll, och på grund av min förtrogenhet med programvaran, väljer jag att lära ut den här plånboken till de flesta av eleverna som en del av min Bitcoin-integritet/säkerhet mentorskapskurs (även om vissa människor behöver något enklare att använda). Erfarenheten av att lära ut hur man använder det har verkligen hjälpt mig att förstå vad människor tycker är intuitivt och vad de tycker är knepigt.

För den nya Bitcoiner som gör det ensam, skulle Electrum vara helt säkert att använda, förutsatt att de tar sig tid och använder det i en testmiljö med endast ett litet antal satsningar till en början.

Operativ system

Electrum kan installeras på en Windows-dator, Mac-dator eller en Linux-dator, och viktigare för vissa, på ARM-chipdatorer (dvs. Raspberry Pi's).

Den kan även installeras på en telefon, men mobilversionens funktionalitet är dålig och dess anslutning till noder har varit oregelbunden, så jag rekommenderar inte den versionen. BlueWallet är ett bra alternativ till en telefonplånbok.

Laddar ner och verifierar

Att ladda ner och installera programmet är enkelt för Windows och Mac, och lite knepigt för Linux-användare, särskilt de som fortfarande lär sig att använda Linux.

För de som bara testar programmet, helt enkelt ladda ner och använda det utan att verifiera programvaran är bra – jag skulle helt enkelt inte göra det för stora mängder, eller om integritet är ett stort problem (dvs. om du har KYC gratis bitcoin måste du utöva god integritet för att hålla mynten oidentifierbara).

Om du faktiskt kommer att sluta använda den här plånboken för en betydande summa, bör du lära dig att verifiera programvaran med gpg. Du kan bygga dina färdigheter kring detta här.. Det kan du göra medan du väntar på min guide om hur du använder Electrum säkert/privat.

Miljö

Ett problem med Electrum är att om du kör programmet på det mest intuitiva sättet (dvs. bara dubbelklicka på ikonen) snarare än kommandoraden (med vissa flaggor), kommer du nästan säkert att ansluta till en slumpmässig Bitcoin-nod som kommer att exponera din plånbok och alla dess potentiella 8.6 miljarder adresser till ägaren av den slumpmässiga noden – ägaren kan vara ett övervakningsföretag, och där går din integritet (de kommer att få alla dina använda och oanvända adresser, och din IP-adress).

För att övervinna detta kommer jag att lära dig, i nästa omgång, hur du laddar upp en engångsplånbok först, optimerar dina nätverksinställningar (anslut till din egen nod, eller en du litar på), och först sedan laddar du din riktiga plånbok i Electrum.

Vissa människor kan gå vilse på vad jag menar med nätverksinställningar eller noder. Du kan lära dig mer om det här om du känner för att gå på en mycket viktig tangent.

Electrum Wallet har en mycket ren layout som visar dina adresser, även om du måste veta för att gå till menyn och välja "visa adresser" för att se den. Sedan får du en lista över dina första 20 mottagningsadresser markerade grönt (du har 4.6 miljarder av dessa men uppenbarligen inte alla visade), och en lista med dina första 10 mottagningsadresser markerade med gult (igen, du har 4.6 miljarder av den här typen ).

Många andra programvaruplånböcker visar dig inte en lista över adresser och ger dig bara en adress när du uppmanas att skicka mynt till plånboken. Detta döljer information från användaren för att göra saker enkelt, men användaren tenderar att förbli okunnig, eftersom möjligheten att lära sig inte finns. Jag har träffat många människor som använder Ledger Live eller Trezor-sviten, eller Blue Wallet på sin telefon, och inte inser att de har obegränsade adresser, än mindre något som kallas "ändra" adresser.

Electrum visar dig också en lista över alla dina UTXO: er (men du måste välja "visa mynt") för att aktivera det.

Electrum Server är nödvändig

Electrum Wallet kan inte ansluta till din Bitcoin Core-nod direkt. Detta är irriterande, men det gör att elektrum går snabbare. Mycket snabbare. Du behöver fortfarande Bitcoin Core, men du behöver även programvara som heter Electrum Server (av vilka det finns olika varianter var och en med sina fördelar och nackdelar, som jag inte kommer att gå in på här). Att installera Bitcoin Core är svårt nog för vissa människor. Att installera Electrum Server är MYCKET svårare, du måste verkligen vara ganska teknisk.

För enkelhet och positiv förstärkning rekommenderar jag folk att installera, för sin första nod, ett nodpaket som MyNode (se min guide) eller Raspiblitz (se min guide), innan du går vidare till att installera en nod och tillhörande programvara på en vanlig PC.

Dessa paket har vissa svagheter men är utmärkta till att börja med eftersom med en enda installationsprocess på en Raspberry Pi 4 får du många applikationer (som Electrum Server, Lightning, BTCPay Server, Mempool viewer – som du annars skulle behöva installera en av en, och eventuellt verifiera) och kostnaden är bara cirka 300 USD för all utrustning (mjukvaran är gratis). När dina kunskaper och intresse fortskrider, rekommenderar jag att folk tittar på mer avancerade nodinställningar (av vilka ingen blir dyr). Om du undrar varför du ska köra en nod överhuvudtaget, här är sex utmärkta skäl.

Skapande av plånbok

Jag tror att det är användbart att definiera de två typerna av plånböcker innan du går mycket längre:

  1. Mjukvaruplånbok – detta är programmet som hanterar dina privata Bitcoin-nycklar och adresser. T ex Electrum, Sparrow, Blue Wallet.
  1. Bitcoin-plånbok – med detta menar jag samlingen av unika adresser som skapas deterministiskt (och reproducerbart) från din mnemoniska fröfras (vanligtvis 12 eller 24 ord) – varje fröfras har 8.6 miljarder unika adresser som den kan komma åt/skapa.

Electrum skapar som standard plånböcker som inte är standard vilket är väldigt irriterande. Det vanligaste protokollet kallas BIP39 (Bitcoin Improvement Proposal 39) som nästan alla plånböcker kommer att använda.

Det betyder att de 12 eller 24 orden som din BIP39-plånbok skapade kommer att vara kompatibla med andra BIP39-plånböcker, så att om du tappar bort din mjukvaru- (eller hårdvaru)plånbok, kan du få tillbaka den genom att skriva in dina fröord i en kompatibel BIP39-plånbok – det behöver inte vara samma märke.

Electrum-utvecklaren har dock sina egna planer och tycker att branschstandarden är osäker (han har en oerhört orealistisk oro för BIP39). Istället för BIP39 skapar Electrum plånböcker baserade på sitt eget protokoll – som ingen annan plånbok använder som standard. Tyvärr, om du skapar en Electrum-fröfras kan du bara använda den fröfrasen med Electrum.

Viktigt är att Electrum låter dig återställa en BIP39-plånbok i den, men du måste veta hur. Det kommer dock inte skapa en BIP39-plånbok för dig. Men det finns sätt runt detta.

Du kan också helt enkelt ladda en enstaka adress i Electrum för att observera dess balans – den behöver inte ens vara din (även om du inte får idéer om att spendera saldot, det är inte möjligt om du inte laddar in den privata nyckeln, där om adressen skulle vara din).

När du skapar eller återställer en Bitcoin-plånbok med Electrum kan du välja vilken adresstyp du vill ha:

  • Legacy – dessa adresser börjar med 1 – de ursprungliga Bitcoin-adresserna.
  • Pay-to-Script-Hash – dessa adresser börjar alla med '3'.
  • Segwit – Från och med 2017 efter Segwit soft fork kunde du skapa "Pay-to-witness-public-key-hash" (även kallat "Native Segwit" eller "Bech32"). Dessa är de mest använda nu. De börjar alla med "bc1q."
  • Pålrot. Detta är nytt och stöds ännu inte av Electrum. Taproot var en mjuk gaffel 2021. Adresser börjar med "bc1p."

De tre första adresstyperna som listas har utökade publika nycklar som ser lite annorlunda ut från varandras. De börjar med xPub, yPub respektive zPub. Jag tror att taproot är tPub men jag håller fortfarande på att bli bekant med det. För mer utbildningsmaterial om Bitcoin offentliga och privata nycklar kan du läs här.

Etiketter

Denna funktion är inte unik, men väldigt viktig att ha om du vill behålla integriteten genom bra myntkontroll. Genom att märka dina UTXO:er vet du vilka du kanske vill undvika att spendera tillsammans med andra. Till exempel, om du har ett KYC-fritt eller blandat mynt, och du väljer det tillsammans med ett KYC-mynt och skickar den sammanlagda summan någonstans, så kan det privata myntet identifieras som tillhörande den som äger KYC-myntet (eftersom någon hade förmåga att spendera båda tillsammans). Gör inte det. Etiketterna kan sparas i en fil så att de kan laddas upp till en annan dator om du har dubbletter av plånböcker.

Myntval

Myntval är en fantastisk funktion. Du kan gå till dina adressfönster och välja det mynt du vill spendera – eller gruppera flera av dem för att spendera. Om du inte väljer vilket mynt du vill spendera, som alla andra program, kommer Electrum att välja det "bästa" myntet att spendera åt dig – men programvaran vet inte alltid vad som är bäst. Den vet inte vilka mynt som inte ska slås samman, vilka som är damattacker och vilka som är blandade. Om er vet detta, eftersom du har märkt dem, och sedan kan du bestämma hur du ska hantera det.

Skickar/ tar emot

Processen att skicka bitcoin-betalningar är mycket "finjusterbar." Du kan hålla det enkelt, men det finns också en avancerad knapp som jag uppmuntrar folk att alltid använda – åtminstone lära sig att bli bekant. Här kan du se exakt de viktiga delarna av Bitcoin-transaktionen – ingångarna (med Tx-ID och adresser), utdata, om några listade adresser finns i din egen plånbok eller inte (genom färgkodning), gruvavgiften och en förmågan att finjustera den, transaktionens storlek (i byte), om det finns en låstid och om ersätt-med-avgift är aktiverat. Du behöver inte veta direkt vad alla dessa saker betyder, men de finns åtminstone där och när du blir erfaren kommer du att veta vad du ska lära dig om.

När du tar emot kan du gå till mottagningsfliken och nästa oanvända adress kommer att tillhandahållas – med den kan du kopiera/klistra in efter behov eller generera en QR-kod. Alternativt kan du gå till adressfönstret och välja vilken adress du ser för att skapa en faktura. Du kan högerklicka, välja detaljer och du kommer att se en knapp för att skapa en QR-kod för adressen eller så kan du bara kopiera adresstexten.

Så snart en betalning görs till en adress och väntar i mempoolen kommer Electrum att visa dig betalningen med adressen, vilket är praktiskt – du behöver inte vänta på att en gruvarbetare ska bryta myntet för dig vet att betalningen kommer. Electrum låter dig också spendera ett sådant obekräftat mynt.

Om en avsändare har satt en mycket låg avgift och bekräftelsen tar ett tag, kan du skynda på betalningen genom att spendera den obekräftade transaktionen till en annan av dina adresser. I den andra (nedströms) transaktionen kan du lägga till en hög gruvavgift. För att samla in avgiften måste en gruvarbetare inkludera den första transaktionen (inte lukrativ) och den nedströmstransaktion du skapade (lukrativ) – varför? Eftersom den andra transaktionen är ogiltig tills den första transaktionen är giltig (eftersom du inte kan spendera mynt som teoretiskt sett inte existerar). Denna teknik kallas "barn betalar för förälder."

En annan teknik som är möjlig med Electrum, för att påskynda betalningar, kallas RBF (ersätt med avgift). Detta är inte möjligt för mottagare att göra som beskrivits ovan med "barn betalar för förälder." Istället måste en otålig mottagare fråga avsändare att utföra en RBF. Avsändaren kommer att skicka om den ursprungliga UTXO som har "förbrukats" men ännu inte bryts till blockkedjan. Den UTXO kan läggas i en alternativ transaktion (utgifter till samma adress som den första transaktionen, eller en annan), och med en högre gruvavgift. Oavsett vilken av de två transaktionerna som utvinns först kommer att vara giltig och den andra blir ogiltig.

Som en sidoanteckning tillåter RBF risken för bedrägeri. Om en mottagare (handlare) accepterar en obekräftad transaktion som "mottagen betalning" och levererar varorna till avsändaren av betalningen, har avsändaren en möjlighet att utföra en RBF-transaktion innan den ursprungliga betalningen bryts. De skulle använda sin egen adress som mottagare av betalningen och lägga till en hög avgift. När det blir minerat blir den ursprungliga transaktionen ogiltig, släpps av alla noder från mempoolen och saldot från handlarens plånbok försvinner. Det är därför du kommer att märka att Bitcoin-utbyten, när du sätter in bitcoin, kommer att vänta på bekräftelse på blockkedjan innan du krediterar ditt konto.

Multisignatur plånböcker

Electrum hanterar multisignature-plånböcker riktigt bra, och under en tid tror jag att det var den enda mjukvaruplånbok du kunde använda. Du kan ha cosigners med snabbtangenter (mjukvaruplånböcker) eller kalla nycklar (anslut hårdvaruplånböcker). De offentliga multisignaturnycklarna kan göras en i taget, på olika dagar, på olika ställen på olika datorer (eller hårdvaruplånböcker) – spridning av den minskar risken för en enda punkt av fel/attack. Hur långt du vidtar försiktighetsåtgärderna är upp till dig.

Extra detaljer om multisig plånböcker och nycklar kan hittas här, och jag kommer att ha en guide om hur du gör dessa plånböcker i framtiden. Processen för att skapa plånböcker är utmärkt men med några egenheter som blir irrelevanta när du väl känner till dem.

Jag gillar verkligen hur Electrum hanterar delvis signerade Bitcoin-transaktioner (PSBT), en viktig egenskap hos multisig-plånböcker, som diskuteras härnäst.

PSBTs

En Electrum bitcoin-transaktion representeras av bara en massa text (som i sig representerar binära tal, som all datordata är). Du har möjlighet att spara den texten i en fil, en QR-kod eller i urklippet (som text, för att kopiera/klistra in i ett e-postmeddelande till exempel). Den texten kan skickas var som helst och hur du vill. Om du är så benägen kan du extrahera texten och skicka den via e-post, ett fysiskt brev, morsekod, röksignaler, gravitationsvågor bakåt i tiden via ett svart hål eller tolkningsdans – det är upp till dig.

Electrum ger dig möjligheten att extrahera den texten och spara den, innan den är undertecknad, efter den är signerad eller i en multisignaturinställning när den är det delvis undertecknas.

Multisignatur är särskilt intressant. Om det till exempel finns 3 nyckelinnehavare runt om i världen kan du signera en transaktion på din dator, extrahera den delvis signerade Bitcoin-transaktionen, e-posta den (eller QR-koden över ett videosamtal) till en annan deltagare utomlands, de kan importera den, signera den, skicka den sedan till den tredje personen för signering och sändning. Nej, detta är inte unikt för Electrum, jag gillar bara hur Electrum hanterar det. Arbetsflödet är dock inte intuitivt och kräver övning.

Betala till många (PayJoin och CoinJoin)

Det finns en dold funktion (sök i menyerna) där du kan välja flera destinationer (flera utgångar) när du spenderar. Till exempel kan du ta 6.15 bitcoin och skicka 0.01 bitcoin till 615 olika anställda, allt i en transaktion. Den här funktionen låter dig skapa PayJoins manuellt – något som bara en minoritet av människor skulle göra, eller till och med förstå, men det är coolt ändå.

Pay to Many låter dig också skapa dina egna manuella CoinJoins. För mer information om vad det är och hur man gör det, se den här guiden.

Gap gräns

En viktig funktion som inte alla plånböcker har är möjligheten att ställa in gapgränsen. Som jag nämnde tidigare är varje plånbok en samling på 8.6 miljarder adresser. Programvaruplånboken måste ansluta till en nod och fråga om en adress har bitcoin kopplat till sig. Det kommer inte att kontrollera alla 8.6 miljarder av dem. Electrum frågar efter de första 20 adresserna. Om de är uted, kommer det att be om ytterligare 20, och så vidare. Det kommer att fortsätta med detta tills noden returnerar 20 oanvända adresser i rad.

Detta är ett sätt att förklara att standardgapgränsen är 20, men du kan ändra det. Varför skulle du? För ibland tillåter handlare kunder att själva producera bitcoin-adresser genom en betalningsapp (som min donationssida, hint hint). Om de första 20 kunderna gör fakturor (en adress vardera, ges sekventiellt av appen), och sedan den 21:a kunden genererar en faktura och betalar, kommer Electrum-plånboken att visas tom. Detta beror på att de första 20 adresserna kommer att efterfrågas, visa sig vara oanvända, och sedan kommer Electrum att sluta söka. Electrum låter dig ändra mellanrumsgränsen, t.ex. till 500, men det finns inga instruktioner, du måste söka på nätet eller hitta den här:

Du måste först gå till menyn: visa → visa konsol och sedan skriva det här kommandot i konsolen (naturligtvis kan "500" ändras till ett annat nummer):

wallet.change_gap_limit(500)

Med detta kommando kommer du att se 500 nya adresser i adressfönstret.

Tittar på plånböcker

Dessa är plånböcker utan privata nycklar, nödvändiga för hårdvaruplånböcker att ansluta till. De flesta med en hårdvaruplånbok använder programvaran på datorn som "kom med" enheten, men de är vanligtvis inte öppen källkod. Electrum är ett alternativ som kan användas med vilken hårdvaruenhet som helst.

Air-Gapped datorer

Det är möjligt att installera Electrum på en dator som aldrig kan ansluta till internet (Air-gapped dator). Den datorn kan användas för att kontrollera att fröfrasen en hårdvaruplånbok ger, skapade rätt adresser från fröet.

Till exempel kan du köpa en BitBox02-hårdvaruplånbok, och den skapar ett 24-ords frö åt dig, och från det skapar du adresser (med tillhörande privata nycklar dolda). Beroende på graden av paranoia du har (och mängden bitcoin du lagrar) kanske du väljer att inte lita på den inbäddade programvaran och först antar att adresserna den skapar tillhör VD:n till att börja med.

För att kontrollera att adresserna är äkta måste du lägga in fröorden i (återställa) en annan plånbok – t.ex. Electrum; och se till att Electrum genererar identiska adresser. Det är lätt nog, men du kan inte bara skriva frön i vilken gammal dator som helst med Electrum på. Tja, du Kan men du borde verkligen inte – skadlig programvara kan potentiellt extrahera dina tangenttryckningar och stjäla din bitcoin.

En lösning är att föra in fröna i Electrum på en ren och säker dator med luftspalt (eller en hårdvaruplånbok av annat märke).

Det billigaste sättet är med en Raspberry Pi Zero – de brukade kosta cirka $10 innan pandemi-inducerad brist. ARM-chippet på dessa enheter betyder att inte alla mjukvaruplånböcker är kompatibla. Electrum är och fungerar fantastiskt.

Så här bygger du din egen. Det är som en frösignerare men har Electrums fulla funktionalitet.

Signera/verifiera ett meddelande

En Bitcoin-transaktion är en betalning som innehåller ett mynt som tidigare var "låst" av en adress. För att låsa upp myntet (med hänsyn till reglerna för Bitcoin) och tillåtas att spendera det, med hjälp av offentlig/privat nyckelkryptering, måste man bevisa att de äger den privata nyckeln till adressen som finns i. Det görs med en signatur (med den privata nyckeln, men avslöjar den inte).

Den undertecknade transaktionen är i sig ett meddelande; lite datordata, även om det följer ett strikt protokoll.

Genom att använda offentlig/privat nyckelkryptografi, utanför Bitcoin, kan du faktiskt signera VILKA meddelande. Här är till exempel ett meddelande som jag signerade efter att jag valt en adress (och därmed dess privata nyckel). Nedan är meddelandet, adressen och signaturen (text som ser nonsens ut), som skapades efter att jag klickade på "signera".

Nu kan du eller vem som helst ta adressen, meddelandet och signaturen, lägga in det i Electrum (eller annan programvara), och verifiera att det verkligen var den korrekta privata nyckeln (som matchar adressen) som producerade det meddelandet (detta är faktiskt samma typ av verifiering som Bitcoin-noder gör för alla Bitcoin-transaktioner). Jag öppnar en annan plånbok som inte har den relevanta privata nyckeln, för att visa verifiering. Jag gick in i "verifiera meddelande"-fönstret, angav sedan alla detaljer som du ser ovan och klickade sedan på Verifiera:

image1

Kryptera/Dekryptera ett meddelande

I stället för att signering ett meddelande med offentlig/privat nyckelkryptografi, utdata kan vara en krypterad versionen av meddelandet (dvs. sammansmält och oläsligt) med hjälp av någon annans publika nyckel/adress. Den krypterade versionen kan sedan skickas till alla som har motsvarande privata nyckel, eftersom texten bara kan läsas när den privata nyckeln används för att vända processen.

image2

Du kan till exempel ha fått min offentliga bitcoinnyckel, krypterat det här meddelandet enligt ovan, mailat mig cyphertexten (den slumpmässiga texten i det nedre fältet) och eftersom jag har den privata nyckeln till den offentliga nyckeln kan jag vända det krypterade meddelandet till originalformuläret och läs ditt feltänkande meddelande. På så sätt kan du skicka text till mig över en osäker kommunikationskanal, och bara jag kan läsa den.

Detta är magin med offentlig/privat nyckelkryptografi, och en av huvudkomponenterna som gjorde Bitcoin möjlig. Vi borde alla vara tacksamma för att cypherpunkarna kämpade hårt, och vann, mot den amerikanska regeringen som försökte förbjuda det på 1990-talet.

Sammanfattning

Detta var en lång recension av Electrum Desktop Wallet. Förhoppningsvis har det väckt ditt intresse för att lära dig hur man använder det – jag kommer att släppa en guide om detta mycket snart. Under tiden kan det vara värt att öva på väldigt grundläggande Bitcoin-transaktioner genom att följa denna övning.

Detta är ett gästinlägg av Arman The Parman. Åsikter som uttrycks är helt deras egna och återspeglar inte nödvändigtvis de från BTC Inc Bitcoin Magazine.

Tidsstämpel:

Mer från Bitcoin Magazine