Donate の導入 - タスク用の自己ホスト型寄付サービス


Donate の導入 - タスク用の自己ホスト型寄付サービス

特徴:

  • キス;
  • 自己ホスト型。
  • 手数料はかかりません (たとえば、Bountysource と gitcoin は支払いの 10% を受け取ります)。
  • 多くの暗号通貨 (現在はビットコイン、イーサリアム、カルダノ) のサポート。
  • 将来的には、GitLab、Gitea、その他の Git ホスティング サービスをサポートする (そして提供される) ことが期待されています。
  • すべての (つまり、ニュース作成時点では XNUMX つの) インスタンスからのタスクのグローバル リスト donate.dumpstack.io.

リポジトリ所有者側から見た GitHub の仕組み:

  • (オプション) サービスをデプロイする必要があります。使用できます。 NixOS 用の既製の構成;
  • 追加する必要があります GitHub アクション — プロジェクトのタスクをスキャンし、寄付ウォレットの現在の状態に関するコメントを追加/更新するユーティリティが内部で呼び出されますが、ウォレットのプライベート部分は寄付サーバーにのみ保存されます(将来的にはそれを取得できるようになります)多額の寄付の場合はオフライン、支払いを手動で確認する場合)。
  • 現在のすべてのタスク (および新しいタスク) でメッセージが表示されます。 github-actions[ボット] 寄付用のウォレットアドレス付き ().

タスクを実行する側の作業のメカニズム:

  • コミットへのコメントは、このコミットがどのような問題を解決するかを正確に示しています (「. キーワードを使用して問題を解決する);
  • プル リクエストの本文では、ウォレット アドレスを特定の形式で指定します (例: BTC{アドレス}).
  • プル リクエストが受け入れられると、支払いが自動的に行われます。
  • ウォレットが指定されていない場合、またはすべてが指定されていない場合、指定されていないウォレットへの資金の支払いはデフォルトのウォレット (たとえば、これは一般的なプロジェクトのウォレットである可能性があります) に対して行われます。

安全性:

  • 一般に攻撃対象領域は小さいです。
  • 動作メカニズムに基づいて、サービスは独立して資金を送金できる必要があるため、サーバーへのアクセスを取得することは、いかなる場合でも資金を制御することを意味します。解決策は、非自動モードで動作することのみです(たとえば、確認手動での支払い)、これはおそらく(誰かがこの機能のために寄付するほどプロジェクトが成功した場合、可能性は低いですが間違いなく)いつか実装されるでしょう。
  • 重要な部分は明確に分離されているため (実際、これは 200 行からなる単一の pay.go ファイルです)、それによってセキュリティ コードのレビューが簡素化されます。
  • コードは独立したセキュリティ コード レビューに合格しています。これは脆弱性がないことを意味するものではありませんが、特に定期的に計画されているレビューを考慮すると、脆弱性が存在する可能性は低くなります。
  • 管理されていない部分もあります (例: API GitHub/GitLab/など)。サードパーティ API の潜在的な脆弱性は追加のチェックで解決される予定ですが、一般的に、現在の問題はエコシステムは解決不可能であり、範囲外です (たとえば、他の人のプル リクエストを閉じて他の人のプロジェクトにコードを追加する機能に脆弱性が存在する可能性があり、よりグローバルな影響を及ぼします)。

出所: linux.org.ru

コメントを追加します