Presenteras donate – en självhostad donationsservice för uppgifter


Presenteras donate – en självhostad donationsservice för uppgifter

Egenskaper:

  • KISS;
  • självhostad;
  • inga avgifter (som ett exempel tar bountysource och gitcoin 10 % av utbetalningen);
  • stöd för flera kryptovalutor (just nu är det Bitcoin, Ethereum och Cardano);
  • stöd för GitLab, Gitea och andra Git-hostingtjänster förväntas (och är planerat) i framtiden.
  • ett globalt uppgiftslista från alla (just nu en, vid tidpunkten för nyhetsrapporten) instanser på donate.dumpstack.io.

Arbetsmekanism för GitHub från repository-ägaren:

  • (valfritt) det är nödvändigt att sätta upp tjänsten, man kan använda en färdig konfiguration för NixOS;
  • det är nödvändigt att lägga till GitHub Action — inuti anropas ett verktyg som skannar projektets uppgifter och lägger till/uppdaterar en kommentar om den aktuella donationens status, samtidigt som den privata delen av plånböckerna endast lagras på donationsservern (i framtiden med möjlighet att flytta den offline för större donationer, för manuell bekräftelse av utbetalningar);
  • i alla aktuella uppgifter (och nya) visas ett meddelande från github-actions[bot] med adresser till donationerna (exempel).

Arbetsmekanism från den som utför uppgiften:

  • i kommentaren till commit anges vilken specifik uppgift denna commit löser (se. closing issues using keywords);
  • i texten av pull request anges adresserna till plånböckerna i ett specificerat format (till exempel, BTC{address}).
  • vid godkännande av pull request genomförs utbetalningen automatiskt.
  • om plånböckerna inte anges, eller om inte alla anges, sker utbetalningen för de icke angivna plånböckerna till standardplånböckerna (till exempel kan det vara projektets gemensamma plånbok).

Säkerhet:

  • angreppsyta är överlag liten;
  • utifrån arbetsmekanismerna bör tjänsten kunna skicka medel själv, så att åtkomst till servern kommer att innebära kontroll över medlen oavsett — lösningen kan bara vara att arbeta i icke-automatiserat läge (till exempel manuell bekräftelse av utbetalningar), vilket sannolikt (om projektet blir tillräckligt framgångsrikt för att någon ska vilja donera till denna funktionalitet, så är det inte troligt, utan säkert) kommer att realiseras någon gång;
  • kritiskt viktiga delar är tydligt åtskilda (i grunden är detta en enda fil pay.go på 200 rader), vilket förenklar säkerhetsgranskningen av koden;
  • Koden har genomgått en oberoende säkerhetsgranskning, vilket inte innebär att det är fritt från sårbarheter, men minskar sannolikheten för deras förekomst, särskilt med tanke på den planerade regelbundna granskningen;
  • Det finns även delar som inte kontrolleras (t.ex. API:er från GitHub/GitLab/etc.), där eventuella sårbarheter i externa API:er planeras att stängas genom ytterligare kontroller. I stort sett är problemet i den nuvarande ekosystemet olösligt och utanför räckvidd (en möjlig sårbarhet som tillåter stängning av andras pull requests och därmed tillägg av kod till andras projekt har långt mer globala konsekvenser).

Källa: linux.org.ru

Köp pålitlig webbhotell med DDoS-skydd, VPS VDS-servrar 🔥 Köp pålitlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster