
Red Team Coin لعمليات تعدين العملات الرقمية.
RedTeamCoin هو تنفيذ لتجمّع تعدين عملات رقمية قائم على تقنية البلوكتشين، مصمم لاختبارات الأمان المصرح بها وعمليات الفريق الأحمر. مبني بلغة Go مع دعم عملاء Java، يحاكي هجمات التعدين الخفي في العالم الحقيقي لمساعدة المؤسسات على تقييم قدراتها في الكشف وتقدير الأضرار المحتملة الناتجة عن عمليات تعدين الجهات الخبيثة.
تمكّن هذه الأداة فرق الأمان من إظهار سيناريوهات هجمات التعدين الخفي بشكل آمن وقانوني على الأنظمة المؤسسية، وإنتاج تقارير تأثير شاملة، والتحقق من ضوابط الأمان—كل ذلك ضمن بيئة خاضعة للسيطرة باستخدام بلوكتشين معزول وغير عام.
لماذا استخدام RedTeamCoin؟
مكونات النظام:
شغّل RedTeamCoin في أقل من 5 دقائق:
أوبونتو/ديبيان:```bash sudo apt update sudo apt install -y golang-go protobuf-compiler
**macOS:**```bash
brew install go protobuf
Windows:
git clone https://github.com/xyplex3/RedTeamCoin.git cd RedTeamCoin
make install-tools make deps
make build
### التحقق
تحقق من اكتمال البناء بنجاح:```bash
ls -lh bin/
# Expected output: server and client binaries (1-5 MB each)
./bin/server --help
# Expected output: Usage information for the server
1. ابدأ الخادم:```bash make run-server
يجب أن ترى مخرجات مثل:```text
RedTeamCoin Mining Pool Server
Authentication Token: abc123def456...
Dashboard URL: http://localhost:8080?token=abc123def456...
gRPC server listening on port 50051
2. ابدأ عامل تعدين (في طرفية جديدة):```bash make run-client
يجب أن ترى نشاط التعدين:```text
Connected to mining pool at localhost:50051
Registered as miner: miner-hostname-1234567890
Mining block #1... Hash rate: 2.5 MH/s
Block found! Nonce: 98765, Hash: 000000ab1cd...
3. عرض لوحة المعلومات:
افتح عنوان URL من الخطوة 1 في متصفحك، أو انتقل إلى:```text http://localhost:8080?token=YOUR_AUTH_TOKEN_HERE
سترى إحصائيات في الوقت الفعلي تشمل المعدّنين النشطين، ومعدلات التجزئة، والكتل المستخرجة.
**ملاحظة:** يستمع الخادم على جميع واجهات الشبكة - استبدل `localhost`
بعنوان IP الخاص بالخادم للوصول عن بُعد.
## كيف يعمل
يعمل مجمع التعدين باستخدام آلية إجماع إثبات العمل:
1. يقوم الخادم بتهيئة سلسلة الكتل باستخدام كتلة التكوين
2. يتصل المعدّنون عبر gRPC ويسجلون مع IP/اسم المضيف
3. يوزع الخادم مهام العمل (قوالب الكتل)
4. يحسب المعدّنون تجزئات SHA-256 للعثور على nonces صالحة
5. يقدم المعدّنون الحلول عند تحقيق هدف الصعوبة
6. يتحقق الخادم من الكتل ويضيفها إلى سلسلة الكتل
7. تعرض لوحة المعلومات إحصائيات الوقت الفعلي ونشاط المعدّنين
تتطلب كل كتلة إيجاد تجزئة بعدد محدد من الأصفار البادئة
(صعوبة قابلة للتكوين). يحصل المعدّنون على 50 RTC عن كل كتلة مستخرجة.
### تدفق البيانات```text
Client Miner Server
| |
|--RegisterMiner(IP,Hostname)->|
|<--RegistrationResponse-------|
|--GetWork()------------------>|
|<--WorkResponse(Block)--------|
| [Mining: compute hashes] |
|--SubmitWork(nonce,hash)----->|
| | [Validate proof-of-work
| | and add block to chain]
|<--SubmissionResponse---------|
|--Heartbeat(stats)----------->|
|<--HeartbeatResponse----------|
HTTP (الافتراضي):```bash ./bin/server
- خادم gRPC: المنفذ **50051**
- لوحة التحكم على الويب: **http://localhost:8080**
**HTTPS/TLS (موصى به):**```bash
# Generate certificates (one time)
./generate_certs.sh
# Start with TLS
RTC_SERVER_TLS_ENABLED=true ./bin/server
ملاحظة رقم 1: مع HTTPS، ستعرض المتصفحات تحذيرًا أمنيًا للشهادات الموقّعة ذاتيًا. انقر على "خيارات متقدمة" ← "المتابعة إلى localhost".
ملاحظة رقم 2: ستعمل لوحة تحكم الويب وخادم gRPC على جميع واجهات الخادم ويمكن استخدامها بدلاً من localhost.
الاستخدام الأساسي:```bash ./bin/client
**شغّل عدة معدّنين:**
افتح محطات طرفية إضافية وشغّل `./bin/client` في كل منها.
#### معدّنو Java
توفر RedTeamCoin تطبيقين لمعدّني Java:
##### عميل Java gRPC (بدون واجهة رسومية)