Recherche: BTCPay Server vs SHKeeper.io
osCASH.me GATE - Zusammenfassung und Empfehlung
Nach umfassender technischer Analyse empfehle ich BTCPay Server als Basis für das osCASH.me Payment Gateway Projekt, jedoch mit einer hybriden Architektur für MobileCoin-Integration über einen separaten Microservice.
Hauptgründe für BTCPay Server
- Überlegene Plugin-Architektur: Trotz fehlender Sandboxing bietet BTCPay Server mit .NET 8.0 und C# eine ausgereifte, gut dokumentierte Plugin-Entwicklungsumgebung
- Etabliertes Ökosystem: 6,952 GitHub Stars, 170+ Contributors und bewährte Enterprise-Deployments (Namecheap: $73M+ Umsatz)
- Sicherheitsmaturität: Formales Bug Bounty Programm, dokumentierte CVEs und aktive Security-Community
- Zukunftssicherheit: MIT-Lizenz, BTCPay Server Foundation und dezentralisierte Governance garantieren Langlebigkeit
Kritische Unterschiede
| Aspekt | BTCPay Server | SHKeeper.io |
|---|---|---|
| Technologie | C#/.NET 8.0, ASP.NET Core | Python, Flask/FastAPI |
| Plugin-System | Embedded, gleicher Prozess | API-driven, externe Module |
| Community | 6,952 Stars, 170+ Contributors | 345 Stars, <20 Contributors |
| Lizenz | MIT (permissiv) | GPL-3.0 (copyleft) |
| Cloud-Native | Docker-fokussiert | Kubernetes-first |
| API | Greenfield API v1 + BitPay-kompatibel | Einfache REST API |
1. SHKeeper.io Analyse
Technische Architektur
SHKeeper basiert auf einer Python-basierten Microservices-Architektur mit separaten Blockchain-Modulen. Die Hauptstärke liegt in der Kubernetes-nativen Deployment-Strategie mit Helm Charts. Das System unterstützt 15+ Kryptowährungen über dedizierte Fullnodes.
Architektur-Schwächen:
- Hohe Ressourcenanforderungen (BNB: 16 Cores, 64GB RAM, 3TB Storage)
- Begrenzte Plugin-Isolation trotz API-Ansatz
- Fehlende Webhook-Standardisierung
- GPL-3.0 Lizenz erschwert kommerzielle Forks
API und Dokumentation
Die API (v2.1.47) bietet grundlegende CRUD-Operationen mit API-Key-Authentifizierung. Die Dokumentation ist funktional aber limitiert - keine SDKs außer cURL-Beispiele verfügbar.
2. BTCPay Server Deep Dive
Plugin Development Framework
BTCPay Server v2.0+ revolutionierte die Plugin-Architektur:
public class MobileCoinPlugin : BaseBTCPayServerPlugin
{
public override void Execute(IServiceCollection services)
{
services.AddSingleton<IPaymentMethodHandler, MobileCoinPaymentHandler>();
services.AddSingleton<IMobileCoinService, MobileCoinService>();
}
}
Plugin-Vorteile:
- Voller Zugriff auf BTCPay Server Core-Funktionalität
- Entity Framework Integration für Datenbankoperationen
- Razor Pages für nahtlose UI-Integration
- Greenfield API Erweiterungen möglich
Plugin-Nachteile:
- Keine Sandboxing (Sicherheitsrisiko)
- C#-only Entwicklung
- Server-Neustart für Updates erforderlich
Greenfield API vs Legacy API
Die moderne Greenfield API bietet:
- OpenAPI 3.0 Spezifikation
- Granulare Permissions (
btcpay.store.cancreateinvoice) - WebSocket Support für Echtzeit-Updates
- Client Libraries (C#, Python, Node.js, PHP)
3. MobileCoin (MOB/eUSD) Integration
Technische Herausforderungen
MobileCoin erfordert:
- Intel SGX Hardware für Fog Services
- Full-Service API (JSON RPC 2.0)
- Keine C#/.NET SDK verfügbar
- Kein natives Webhook-System
Empfohlene Hybrid-Architektur
# Architektur für osCASH.me
services:
btcpay-server:
image: btcpayserver/btcpayserver:latest
environment:
- BTCPAY_PLUGINDIR=/plugins
mobilecoin-bridge:
image: oscash/mobilecoin-bridge:latest
environment:
- MOBILECOIN_API=http://full-service:9090
- BTCPAY_API=http://btcpay-server:49392
volumes:
- mobilecoin-data:/data
Der MobileCoin-Bridge-Service würde:
- MobileCoin Full-Service API in BTCPay-kompatible Calls übersetzen
- Polling für Transaktionsbestätigungen implementieren
- Webhooks an BTCPay Server senden
- eUSD/MOB Konversionen handhaben
4. Plugin-Architektur Vergleich
Modularität
BTCPay Server ermöglicht tiefe Integration aber mit Risiken:
- Plugins teilen Prozessraum (Performance-Vorteil)
- Direkte Datenbankzugriffe möglich
- UI-Komponenten nahtlos integrierbar
SHKeeper.io bietet bessere Isolation:
- API-only Integration
- Prozess-Trennung
- Sprach-agnostisch
Empfehlung für osCASH.me
Hybride Lösung: BTCPay Core + externe Services für kritische Komponenten
5. Fiat Gateway Integration
Integration Komplexität
| Provider | BTCPay Integration | Aufwand | KYC |
|---|---|---|---|
| NOWPayments | Plugin verfügbar | 2-4 Wochen | Optional |
| PayBis | Custom Plugin | 6-8 Wochen | Erforderlich |
| ChangeNOW | Custom Plugin | 4-6 Wochen | Optional |
| Sentz | Sehr komplex | 8-12 Wochen | Minimal |
PayBis Integration Beispiel
public class PayBisGatewayPlugin : BaseBTCPayServerPlugin
{
public override void Execute(IServiceCollection services)
{
services.AddScoped<IPayBisService>(provider =>
{
var config = provider.GetRequiredService<IConfiguration>();
return new PayBisService(
apiKey: config["PayBis:ApiKey"],
webhookSecret: config["PayBis:WebhookSecret"]
);
});
}
}
6. Technische Modernität
Performance und Skalierung
BTCPay Server (.NET 8.0):
- Kompilierte Sprache mit überlegener Performance
- Entity Framework Core für optimierte Datenbankzugriffe
- Begrenzte horizontale Skalierung
SHKeeper.io (Python):
- Interpretierte Sprache, langsamer
- Bessere Kubernetes-Skalierung
- Höhere operative Komplexität
API Design
BTCPay's Greenfield API ist enterprise-ready mit:
- Vollständiger OpenAPI Dokumentation
- Granularen Permissions
- WebSocket Support
- Multiple SDKs
7. Compliance & KYC Separation
Beide Plattformen unterstützen Zero-KYC by Design:
// BTCPay KYC Plugin (optional)
public class OptionalKYCPlugin : BaseBTCPayServerPlugin
{
public override void Execute(IServiceCollection services)
{
services.AddAuthorization(options =>
{
options.AddPolicy("KYCRequired", policy =>
policy.AddRequirements(new KYCRequirement {
AmountThreshold = 1000m
}));
});
}
}
8. Deployment & Operations
Ressourcenanforderungen
| Komponente | BTCPay Server | SHKeeper.io |
|---|---|---|
| Minimal | 2 CPU, 4GB RAM, 25GB | 4 CPU, 4GB RAM, 20GB |
| Production | 4 CPU, 8GB RAM, 200GB | 8 CPU, 8GB RAM, 100GB+ |
| Multi-Crypto | +2GB RAM pro Coin | +4-16 CPU, +8-64GB RAM pro Coin |
Docker Deployment (BTCPay)
export BTCPAY_HOST="pay.oscash.me"
export NBITCOIN_NETWORK="mainnet"
export BTCPAYGEN_CRYPTO1="btc"
export BTCPAYGEN_LIGHTNING="lnd"
export BTCPAYGEN_ADDITIONAL_FRAGMENTS="opt-save-storage-s"
./btcpay-setup.sh
9. Security Architecture
BTCPay Server Vorteile
- Bug Bounty Program (bis $5,000)
- CVE Historie mit verantwortungsvoller Offenlegung
- Hardware Wallet Integration (Trezor, Ledger)
- Multi-Signature Support
- PSBT für Air-gapped Signing
Sicherheitsbedenken
- Plugin-Sandboxing fehlt in beiden Systemen
- SHKeeper hat keine dokumentierten Security Audits
- BTCPay's größere Attack Surface durch Komplexität
10. Community & Ecosystem
Metriken Vergleich
| Metrik | BTCPay Server | SHKeeper.io | Faktor |
|---|---|---|---|
| GitHub Stars | 6,952 | 345 | 20x |
| Contributors | 170+ | <20 | 8.5x |
| Plugins/Module | 15+ | 5 | 3x |
| E-Commerce Integrationen | 20+ | 5 | 4x |
| Dokumentation | Umfassend | Basis | - |
Finale Empfehlung für osCASH.me
Architektur-Vorschlag
graph TD
A[osCASH.me Gateway] --> B[BTCPay Server Core]
B --> C[Bitcoin/Lightning Plugin]
B --> D[Ethereum Plugin]
B --> E[Monero Plugin]
A --> F[MobileCoin Bridge Service]
F --> G[Full-Service API]
F --> B
A --> H[Fiat Gateway Service]
H --> I[PayBis API]
H --> J[NOWPayments API]
H --> B
Implementierungs-Roadmap
Phase 1 (Wochen 1-4):
- BTCPay Server Deployment mit Bitcoin/Lightning
- Ghost CMS Plugin Development
- Android App API Integration
Phase 2 (Wochen 5-8):
- MobileCoin Bridge Service in Rust/Go
- eUSD Integration und Testing
- Webhook-System Implementation
Phase 3 (Wochen 9-12):
- Fiat Gateway Plugin (NOWPayments prioritär)
- USDT/USDC über Ethereum Plugin
- XMR Plugin Integration
Phase 4 (Wochen 13-16):
- PayBis Integration für Fiat On/Off-Ramp
- KYC Module (optional, plugin-basiert)
- Production Deployment und Optimierung
Technologie-Stack Empfehlung
# Empfohlener Stack für osCASH.me
infrastructure:
core: BTCPay Server v2.1.0+
deployment: Docker Compose (initial), Kubernetes (scale)
database: PostgreSQL 14+
proxy: nginx with Let's Encrypt
services:
payment_core: BTCPay Server
mobilecoin: Custom Bridge Service (Rust)
fiat_gateway: Custom Plugin (C#)
monitoring: Prometheus + Grafana
plugins:
- Bitcoin Core + Lightning (LND)
- Ethereum (with USDT/USDC)
- Monero
- Custom MobileCoin Connector
- Custom Fiat Gateway Aggregator
Kritische Erfolgsfaktoren
- MobileCoin Bridge: Separater Service in Rust für optimale MobileCoin SDK Nutzung
- Plugin Security: Implementiere zusätzliche Sicherheitsschicht für Plugin-Validierung
- API Gateway: Kong oder Traefik für API-Aggregation und Rate Limiting
- Monitoring: Comprehensive logging und alerting von Anfang an
- Documentation: API-first Entwicklung mit OpenAPI Spec
Langzeit-Perspektive
BTCPay Server bietet die beste Grundlage für osCASH.me weil:
- Bewährte Enterprise-Tauglichkeit (Namecheap Case Study)
- Aktive Entwicklung und Community Support
- Flexible Plugin-Architektur für Custom Requirements
- MIT Lizenz ermöglicht kommerzielle Nutzung
- Zukunftssicher durch Foundation-Backing
SHKeeper.io wäre nur dann vorzuziehen, wenn:
- Kubernetes-first Deployment absolute Priorität hat
- Sehr viele verschiedene Altcoins unterstützt werden müssen
- Das Team starke Python-Expertise hat
- GPL-3.0 Lizenz akzeptabel ist