Feather Wallet Logo

Feather Wallet 2.5.2 wijzigingslog (2023-10-19)

Documentatiebrowser

Feather heeft nu een offline documentatiebrowser. Deze is toegankelijk door op de knop 'Help' te drukken in de wizard of door naar Help → Documentatie te gaan.

Voer een trefwoord in de zoekbalk in om de lijst met artikelen te filteren en overeenkomsten te markeren.

Als je een fout ziet of niet kunt vinden wat je zoekt, kun je overwegen een probleem te openen op de veder-docs repo.

Verbeterde foutmeldingen

In sommige gevallen geven foutmeldingen te weinig informatie om nuttig te zijn of te veel en wordt het verwarrend. Onlangs kwam ik het volgende tegen deze postdie dit probleem onder de aandacht bracht en me ertoe aanzette om een verandering door te voeren.

De meeste foutmeldingen komen uit de portemonneebibliotheek. Het schuwt het gebruik van interne terminologie niet en bevat vaak onnodige informatie, zoals verwijzingen naar de broncode. Dat is handig voor ontwikkelaars, maar niet zozeer voor gebruikers die proberen te begrijpen wat er fout ging en wat ze eraan kunnen doen.

Om dit aan te pakken, zijn veel foutmeldingen herschreven om ze duidelijker en bruikbaarder te maken. Ze moeten nu een formaat hebben dat antwoord geeft op de volgende vragen:

  • Welke actie ging er mis?
  • Waarom ging het mis?
  • [Wat kan ik eraan doen?]
  • [Waar kan ik meer te weten komen?]

Als je bijvoorbeeld een transactie probeert te verzenden terwijl de portemonnee nog niet klaar is met synchroniseren, zie je nu:

Als je op 'Help' drukt, wordt de docs-browser geopend met meer informatie over portemonneesynchronisatie om een nieuwsgierige gebruiker te helpen begrijpen waarom De portemonnee moet gesynchroniseerd zijn om een transactie te kunnen versturen.

Het schrijven van goede documentatie voor elk geval is een werk in uitvoering. Als u een verwarrende foutmelding ziet, overweeg dan het melden.

Zaad herstel

Er is een hulpmiddel voor zaadherstel toegevoegd dat kan helpen bij het herstellen van beschadigde of gedeeltelijke Polyseeds.

Af en toe krijg ik een e-mail van iemand die een portemonnee probeert te herstellen vanuit een reservekopie, maar sommige woorden niet kan lezen. Slecht handschrift, een koffievlek, een foto die slecht is bijgesneden, enz. Er ontbreekt te veel informatie om het praktisch te maken om er met de hand doorheen te gaan, maar niet genoeg om herstel rekenkundig onhaalbaar te maken.

Met de tool kun je alle informatie invoeren die je hebt over de zaadzin. Regex wordt ondersteund voor gedeeltelijke woorden. Het zal dan alle mogelijke zinnen doorlopen gegeven de opgegeven (hele, gedeeltelijke of lege) woorden. Polyseeds bevatten een 11-bits controlesom, dus alleen een subset van zaadzinnen is geldig. Een adres dat aan de portemonnee is gekoppeld kan optioneel worden opgegeven om automatisch te controleren of een van de geldige zinnen een portemonnee oplevert die het adres bevat.

Voor informatie over de toegang tot en het gebruik van de tool, zie de docs hier.

Tijdmachine hobbel

Veren zijn opstartbaar. Dit betekent dat de gereedschappen die gebruikt worden om Feather te bouwen vanaf broncode gebouwd zijn, en de gereedschappen die deze gereedschappen bouwen ook, en de gereedschappen die Feather bouwen ook. die gereedschappen ook, enzovoort.

Maar dit kan niet eeuwig doorgaan en iets kan niet uit niets ontstaan. Aan de basis van de pakketgrafiek staat een binair zaadEen minimale set binaries die niet vanaf broncode gebouwd kan worden. Dit was vroeger de ~60 MB Verder gereduceerd binair zaad.

Met deze release is onze Guix tijdmachine is bijgewerkt naar een commit op 15 mei. Feather builds profiteren nu van de Volledige bron Bootstrap. De root van de pakketgrafiek is nu een zwaar geannoteerde 357-byte programma, bekend als hex0.

Het is broncode van begin tot eind! Elke stap van het bouwproces is controleerbaar en we hoeven niet te vertrouwen op iemands potentieel kwaadaardig binaire bestanden.

Een belangrijk voorbehoud is dat, hoewel alle pakketten vanaf broncode worden gebouwd, het stuurprogramma dat wordt gebruikt om de initiële pakketten te bouwen dat niet is. Het elimineren van deze driver is de volgende stap in bootstrappable builds.

(Het werk is onderweg om bootstrappable builds naar de core Monero repo te brengen).

Attest vrijgeven

Feather releases zijn reproduceerbaar. Iedereen met een x64 Linux machine en Guix (de pakketbeheerder) geïnstalleerd kan een bit-voor-bit identieke kopie van alle release artefacten maken door het volgende uit te voeren een enkele opdracht.

De enige manier om te controleren of een release echt reproduceerbaar is, is door deze meerdere keren te bouwen, op verschillende systemen. Hoewel builds binnen een container Met een genormaliseerde bouwomgeving kan niet-determinisme nog steeds binnensluipen door (onder andere) eigenschappen van de bouwmachine, zoals de kernel, CPU-architectuur of het bind-gemounte bestandssysteem. Hoe diverser de verzameling machines is waarop de software gebouwd wordt, hoe zekerder we kunnen zijn dat er geen ongedocumenteerde vereisten voor reproductie zijn.

Deze release voegt release attestatie toe, ook wel geverifieerde reproductie. Als je bekend bent met Monero's reproduceerbare bouwproces, werkt dit op dezelfde manier als gitian.sigs. Iedereen kan Feather bouwen, de hashes van de uitvoer ondertekenen en indienen bij een gemeenschappelijke opslagplaats. De hashes kunnen dan vergeleken om te verifiëren dat de builds reproduceerbaar zijn.

Met release-attestatie kunnen gebruikers die niet vanaf broncode bouwen er zeker van zijn dat releases reproduceerbaar zijn, omdat meerdere bijdragers onafhankelijk identieke binaries hebben geproduceerd. Als er niet-determinisme optreedt, kan dit hersteld worden voor een release.

Een speciaal woord van dank aan /u/MoneroArbo voor het helpen verifiëren van de reproductie van deze release. Hun eerste build (voor 2.5.0) onthulde een ongedocumenteerde aanname over de host's umaskdie in de container lekt en niet-determinisme kan introduceren wanneer nieuw aangemaakte bestanden worden gearchiveerd.

Als je wilt helpen deze release te verifiëren, volg dan de instructies hier om Feather te bouwen en een attest aan te maken. We raden aan om een machine te gebruiken met ten minste 8 cores en 32 GB geheugen, hoewel dit geen vereiste is.

Officiële Flatpak-versie

Feather heeft nu een officiële Flatpak.

Er is veel moeite gedaan om ervoor te zorgen dat het dezelfde veiligheidsgaranties heeft als onze andere uitgaven. De Flatpak is bootstrappable en reproduceerbaar. Het is niet afhankelijk van runtimes van derden en vereist geen vertrouwen in de infrastructuur van Flathub.

De repository wordt gehost op feather-wallet.org en alle commits zijn ondertekend met onze vrijgave ondertekeningssleutelwaardoor gebruikers de echtheid kunnen verifiëren.

Het is ook klein vergeleken met de meeste Flatpaks, met een gewicht van slechts ~30 MB (gecomprimeerd). Dat is de (lege) runtime + applicatie. Het bevat alleen bestanden die nodig zijn om de applicatie te draaien, zelfs geen shell of coreutils.

Voor meer informatie over de overwegingen die hieraan ten grondslag lagen, zie post hier.

Om de officiële Flatpak te installeren, voert u simpelweg het volgende uit:

flatpak install --from https://feather-wallet.org

en volg de instructies hier om uw download te verifiëren.

Bugfixes en verbeteringen

  • Veer start nu precies één seconde sneller
  • Ontvangen: optie toegevoegd om gewijzigde adressen weer te geven
  • Wizard: selecteert automatisch de eerste portemonnee, als die bestaat
  • Grootboek: private viewkey is nu beschikbaar in Portemonnee -> Sleutels
  • Node gebruikersnaam/wachtwoord worden niet langer vergeten bij opnieuw opstarten
  • Mijnbouw: het toevoegen van extra opdrachtregelopties toestaan
  • Alle bestanden kunnen nu worden geselecteerd bij het importeren van (on)ondertekende transacties
  • Het Windows-installatieprogramma breekt nu af als het wordt uitgevoerd op een niet-ondersteunde versie van het besturingssysteem
  • Probleem verholpen waardoor het tabblad Geschiedenis niet werd bijgewerkt bij een inkomende transactie
  • Verzenden: donate beschrijving wissen als adres is gewijzigd
  • Probleem verholpen dat kon leiden tot een crash
  • Probleem met bouwen op Musl-platforms opgelost
  • Enkele cosmetische verbeteringen voor macOS

Andere wijzigingen

Veel (statisch gelinkte) afhankelijkheden zijn bijgewerkt in deze release. Waaronder Monero naar v0.18.3.1, Qt naar 6.6.0, OpenSSL naar 3.1.3, Boost naar 1.83.0 en Tor naar 0.4.7.15.

In afwachting van geanimeerde QR codes voor offline transactie ondertekening, werd de ZBar bibliotheek, gebruikt voor het scannen van QR codes, vervangen door de snellere en actief onderhouden ZXing-cpp bibliotheek.

Onze type2 AppImage runtime is bijgewerkt naar de nieuwste versie en gebruikt nu fuse3. Dit lost het volgende niet op een vraag met AppImageLauncher, die een foutmelding geeft bij het installeren van de AppImage. Gebruikers wordt aangeraden AppImageLauncher te verwijderen of de .appafbeeldingextensie uit het bestand.

In deze release vervalt de ondersteuning voor Qt 5, die EOL is sinds 26 mei en ontvangt niet langer publieke beveiligingsupdates. De minimaal vereiste Qt-versie om Feather te bouwen is nu 6.3. Officiële releases zijn in januari al overgestapt op Qt 6.

Twee documenten werden toegevoegd aan de repo:

Bekijk het laatste document als je meer wilt weten over waar het project naartoe gaat.

Vereisten voor macOS-codesigning

Het wordt steeds moeilijker om niet-ondertekende programma's voor macOS te leveren.

Apps voor Apple Silicon die gericht zijn op macOS 10.15 of hoger start niet als ze via het internet worden gedownload, zelfs als ze ad-hoc zijn gecodeerd, wat Feather nu doet.

Een workaround bestaat uit het verwijderen van een xattr met behulp van de terminal, maar dit is niet iets wat we redelijkerwijs kunnen vragen van niet-technische gebruikers.

Het is helaas niet mogelijk om een Apple Developer ID-certificaat te krijgen zonder mijn identiteit op het spel te zetten, iets waar ik me op dit moment niet prettig bij voel.

Als je in staat bent om een door Apple uitgegeven codecertificaat te verkrijgen en bereid bent om mij toegang te geven tot dit certificaat, neem dan contact op met [email protected]. Alle gemaakte kosten en tijd worden vergoed in XMR.

Opmerking: hoewel de huidige releases niet "gecodeerd" zijn volgens de definitie van Apple, zijn alle releases GPG ondertekend met onze release-signeringssleutel. Om de authenticiteit van een release te verifiëren, volg je de instructies in de installatiegids.

nl_NLNederlands