Uvedena donacija - usluga donacija za zadatke koju sami hostuju


Uvedena donacija - usluga donacija za zadatke koju sami hostuju

RћSЃRѕR ± RμRЅRЅRѕSЃS, Rё:

  • KISS;
  • self-hosted;
  • bez naknada (na primjer, bountysource i gitcoin uzimaju 10% plaćanja);
  • podrška za mnoge kriptovalute (trenutno Bitcoin, Ethereum i Cardano);
  • očekuje se (i obezbeđeno) da podržava GitLab, Gitea i druge Git hosting usluge u budućnosti.
  • globalna lista zadataka iz svih (odnosno jedne, u trenutku pisanja vijesti) instanci dalje donate.dumpstack.io.

Mehanizam rada za GitHub od strane vlasnika spremišta:

  • (opciono) trebate da implementirate uslugu, možete koristiti gotova konfiguracija za NixOS;
  • treba dodati GitHub Akcija — unutra se poziva uslužni program koji skenira zadatke projekta i dodaje/ažurira komentar o trenutnom stanju novčanika za donacije, dok je privatni dio novčanika pohranjen samo na serveru za donacije (u budućnosti, uz mogućnost preuzimanja offline za velike donacije, za ručnu potvrdu plaćanja);
  • u svim trenutnim zadacima (i novim) pojavljuje se poruka od github-actions[bot] sa adresama novčanika za donacije (primer).

Mehanizam rada osobe koja obavlja zadatak:

  • komentar na urezivanje označava tačno koji problem ovo urezivanje rješava (vidi. zatvaranje problema pomoću ključnih riječi);
  • tijelo zahtjeva za povlačenje navodi adrese novčanika u određenom formatu (na primjer, BTC{adresa}).
  • Kada se prihvati zahtjev za povlačenjem, plaćanje se vrši automatski.
  • ako novčanici nisu navedeni ili nisu svi navedeni, tada se isplata sredstava za nespecificirane novčanike vrši u zadane novčanike (na primjer, ovo može biti novčanik opšteg projekta).

Sigurnost:

  • površina napada je uglavnom mala;
  • Na osnovu operativnih mehanizama, servis bi trebao biti u mogućnosti da samostalno šalje sredstva, tako da će pristup serveru u svakom slučaju značiti kontrolu nad sredstvima - rješenje može biti samo rad u neautomatiziranom načinu rada (npr. potvrđivanje ručna plaćanja), što je vjerovatno (ako je projekat dovoljno uspješan da neko donira za ovu funkcionalnost, onda nije vjerovatno, ali definitivno) da će jednog dana biti implementiran;
  • kritični dijelovi su jasno razdvojeni (u stvari, ovo je jedan pay.go fajl od 200 linija), čime se pojednostavljuje pregled sigurnosnog koda;
  • kod je prošao nezavisnu provjeru sigurnosnog koda, što ne znači odsustvo ranjivosti, ali smanjuje vjerovatnoću njihovog prisustva, posebno u svjetlu planirane regularnosti pregleda;
  • postoje i oni dijelovi koji se ne kontroliraju (na primjer API GitHub/GitLab/itd.), dok se moguće ranjivosti u API-ju treće strane planiraju zatvoriti dodatnim provjerama, međutim, generalno, problem u trenutnom ekosistem je nerešiv i van dometa (moguća ranjivost sa, na primer, mogućnošću zatvaranja tuđih zahteva za povlačenjem i time dodavanja koda u tuđe projekte - ima mnogo globalnije posledice).

izvor: linux.org.ru

Dodajte komentar