تخطَّ إلى المحتوى
Coinbosa
المنظومة السلسلة & BOSA المطوّرون من نحن الانضمام إلى المنظومة

البناء على Coinbosa Chain

السلسلة متوافقة مع EVM: تتصل بها MetaMask وHardhat وFoundry وethers.js وviem دون أي تكييف. وتصف هذه الصفحة ما يعمل، وتقول أين تقع الحدود — حدود نقطة الوصول العامة وحدود الشبكة معاً.

البدء

ثلاثة حقول، وتصبح الشبكة قابلة للوصول.

تُوصَف شبكة EVM بحفنة من القيم. وهي ليست نوايا: فهي تُطبَّق عند كل كتلة وتُقرأ من جديد على السلسلة.

الحقلالقيمة المطلوب إدخالها
اسم الشبكةCoinbosa Chain
عنوان RPC الجديدhttps://explorer.coinbosa.com/rpc
معرّف السلسلة262620x6696 بالنظام الست عشري
رمز العملةBOSA
الخانات العشرية18
عنوان المستكشفhttps://explorer.coinbosa.com

فتح الإضافة اليدوية

فتح قائمة اختيار الشبكة المنسدلة، ثم «إضافة شبكة» و«إضافة شبكة يدويًا». وتُدخَل Coinbosa Chain يدوياً: فهذا هو المسار المعتاد لشبكة لا تعرفها المحفظة مسبقاً.

نسخ الحقول

تستعلم المحفظة من نقطة الوصول وترفض التسجيل إذا لم يطابق المعرّف الذي تعيده العقدة المعرّف المُدخَل. وهذا الفحص يحمي من نقطة وصول تنتحل شبكة أخرى.

التحقق قبل التوقيع

تظهر الأرصدة بـ BOSA، ويتقدّم آخر كتلة على إيقاع توافق Parlia — الهدف: 5 ثوانٍ، والقياس: 5.018 ثانية على 500 كتلة متتالية.

الـ 18 خانة عشرية ليست إعداداً قابلاً للضبط. فالوحدة الأساسية للآلة الافتراضية Ethereum هي wei، وهي قيمة مثبَّتة في حساب gas كما في جميع المحافظ. ولا يوجد أي حقل يسمح بتغييرها.

الاتصال

إضافة الشبكة عبر الشيفرة.

يمكن لأي تطبيق أن يقترح إضافة الشبكة عبر نافذة تأكيد واحدة، دون أن ينسخ المستخدم أي شيء.

wallet_addEthereumChain
await window.ethereum.request({
  method: 'wallet_addEthereumChain',
  params: [{
    chainId: '0x6696',
    chainName: 'Coinbosa Chain',
    nativeCurrency: { name: 'Coinbosa', symbol: 'BOSA', decimals: 18 },
    rpcUrls: ['https://explorer.coinbosa.com/rpc'],
    blockExplorerUrls: ['https://explorer.coinbosa.com']
  }]
});

المعرّف يُمرَّر بالنظام الست عشري

26262 تُكتب هنا 0x6696، مسبوقة بالبادئة ودون صفر في المقدمة. وهذا أكثر أخطاء هذه الخطوة شيوعاً: فالمعرّف المُمرَّر بالنظام العشري يُرفض، غالباً دون رسالة واضحة. وeth_chainId يعيد الشكل نفسه.

نافذة التأكيد ليست ضماناً

يستطيع أي موقع أن يطلب إضافة شبكة، باسم ورمز من اختياره. أما ما يعرّف السلسلة فهو معرّفها، وبصمة كتلتها 0، وعنوان نقطة الوصول.

الأدوات

إعداد Hardhat وFoundry.

لا حاجة إلى أي إضافة خاصة: فبالنسبة إلى هذه الأدوات، Coinbosa Chain شبكة EVM كغيرها. ولا يتطلب الانتباه سوى نسخة EVM المستهدَفة.

hardhat.config.js
module.exports = {
  solidity: {
    version: '0.8.26',
    settings: { evmVersion: 'shanghai' }
  },
  networks: {
    coinbosa: {
      url: 'https://explorer.coinbosa.com/rpc',
      chainId: 26262,
      accounts: [process.env.CLE_PRIVEE]   // لا يوضع أبداً بنص صريح في المستودع
    }
  }
};
foundry.toml
[profile.default]
solc_version = "0.8.26"
evm_version = "shanghai"

[rpc_endpoints]
coinbosa = "https://explorer.coinbosa.com/rpc"

# forge script script/Deploy.s.sol \
#   --rpc-url coinbosa --broadcast

ترجم إلى Shanghai، لا إلى Cancun. فـ Solidity يستهدف Cancun افتراضياً: فبدون evmVersion: 'shanghai'

المفتاح الخاص لا يوضع أبداً في ملف إعداد. فهو يُقرأ من متغيّر بيئة أو من مخزن مشفَّر، ويبقى ملفه خارج المستودع. ولن يطلب منك أي فرد من فريق Coinbosa مفتاحك ولا عبارة الاسترداد أبداً.

DeFi & DEX

حزمة DeFi وDEX أصلية.

تتضمن Coinbosa Chain حزمة DeFi & DEX أصلية: يُصدر فيها المطوّرون عقوداً ذكية، وينشئون مجمّعات سيولة، وينشرون رموز BRC20 دون قيد.

إصدار العقود الذكية

يمرّ النشر عبر أدوات EVM المعتادة، تلك المُعدّة أعلاه. ومعاملة موقَّعة واحدة تكفي: لا شيء يُطلب، ولا شيء يُعرَض للموافقة مسبقاً.

إنشاء مجمّعات السيولة

تُنشَر المجمّعات كعقود عادية وتستند إلى رموز BRC20 في السلسلة، التي تُوصَف واجهتها أدناه.

نشر الرموز دون قيد

إصدار رمز BRC20 غير مشروط بأي إذن. والاتفاق الوحيد الواجب احترامه هو اتفاق الواجهة، للبقاء متوافقاً مع المحافظ والخدمات التي تتحدث ERC-20.

الرموز

معيار BRC20.

BRC20 — Bosa smart contract 20 — هو معيار الرموز في السلسلة. وواجهته متوافقة مع ERC-20: فأي محفظة، وأي جسر، وأي خدمة تتحدث ERC-20 تعمل دون أي تكييف.

IBRC20.sol — الواجهة الدنيا
interface IBRC20 {
    function name()        external view returns (string memory);
    function symbol()      external view returns (string memory);
    function decimals()    external view returns (uint8);
    function totalSupply() external view returns (uint256);
    function getOwner()    external view returns (address);

    function balanceOf(address compte) external view returns (uint256);
    function allowance(address proprietaire, address delegue) external view returns (uint256);

    function transfer(address vers, uint256 montant) external returns (bool);
    function approve(address delegue, uint256 montant) external returns (bool);
    function transferFrom(address de, address vers, uint256 montant) external returns (bool);

    event Transfer(address indexed de, address indexed vers, uint256 montant);
    event Approval(address indexed proprietaire, address indexed delegue, uint256 montant);
}

الملكية تنتقل على مرحلتين

هذا هو الفارق السلوكي الوحيد المُلاحَظ مقارنةً بعقد ERC-20 معتاد. فـtransferOwnership يعيّن مستلِماً في الانتظار، دون أن يتنازل عن شيء؛ ولا تنتقل الملكية إلا حين يستدعي هذا المستلِم acceptOwnership من عنوانه.

لماذا هذا الالتفاف

النقل في خطوة واحدة إلى عنوان أُدخل خطأً لا رجعة فيه: فلا أحد يملك مفتاحه، ولا يمكن استدعاء أي دالة محجوزة للمالك بعد ذلك، ويبقى العقد بلا مالك إلى الأبد. والمرحلة الثانية تثبت أن المستلِم يتحكم في العنوان.

ما يضيفه BRC20

getOwner يعرض المالك بصيغة موحَّدة. وmint محجوز للمالك ويُغلق نهائياً عبر finishMinting؛ أما burn فمتاح للحامل. وأخيراً، يتفادى increaseAllowance وdecreaseAllowance حالة التسابق في approve.

يوجد معيار يحمل الاسم نفسه على Bitcoin، دون أي صلة تقنية. فمعيار BRC-20 الخاص بنقوش Ordinals لا يشترك مع هذا إلا في الاسم: وكتابة «BRC20 الخاص بـ Coinbosa» ترفع اللبس.

الواجهة المتاحة

ما تقبله نقطة الوصول العامة.

تُستعمل العقدة العامة لقراءة السلسلة ولإيداع معاملات موقَّعة فيها. أما ما يتيح فحصها أو التحكم فيها فمغلق، والطلبات المكلفة محدودة: فبلا حدود، قد يستلزم طلب من مئتَي بايت مسحَ السلسلة كلها.

العائلةالحالةما يشمله ذلك
ethمفتوحةالكتل، والأرصدة، والتخزين، وتقدير gas، والسجلات، وإرسال المعاملات الموقَّعة.
netمفتوحةهوية الشبكة — ما تحتاجه المحفظة لإضافة السلسلة.
web3مغلقةينشر النسخة الدقيقة من العميل وبصمة commit الخاصة بها — قائمة أهداف جاهزة للاستعمال.
personal، adminمغلقةمفاتيح مخزن العقدة، والأقران، والخدمات، وكتابة الملفات.
debug، txpool، minerمغلقةالحالة الداخلية، وطابور المعاملات، وإنتاج الكتل.
النقلHTTPS، وPOST فقط — وأي طريقة أخرى تُرفض.
حجم الطلبمحدودة بسقف؛ وأي طلب أثقل يُرفض قبل المعالجة.
الاستدعاءات المجمَّعةمحدودة بسقف لكل طلب HTTP.
نطاق السجلاتمحدودة لكل استدعاء لـ eth_getLogs؛ والسجلات الطويلة تُقرأ على شرائح.
مرشِّحات السجلاتعدد العناوين والمواضيع البديلة محدود لكل موضع بحث.
أصل المتصفحفقط explorer.coinbosa.com؛ ولا يشمل ذلك الاستدعاءات من خادم إلى خادم.

نقطة الوصول هذه مصنوعة للقراءة وللإيداع. فهي لا تتيح اشتراك WebSocket: فالتطبيق يستطلع العقدة بدل أن يشترك. وإعادة قراءة حالة عند كتلة قديمة تستلزم عقدة أرشيف، يستطيع كل واحد تشغيلها انطلاقاً من المستودع.

التحقق

الأساس يُقرأ من جديد على السلسلة.

القيم أدناه هي قيم الورقة البيضاء. وهي لا تطلب أن تصدّقنا: فطلبان يكفيان لإيجادها.

آلية التوافق وزمن الكتلةParlia — الهدف: 5 s | القياس: 5.018 s على 500 كتلة
معرّف السلسلة26262 — الحماية من إعادة الإرسال EIP-155
تجاوز epochفترات المصادِقين مثبَّتة — مُتحقَّق منها عند الكتل 200، 400، 600، 800
عقد نظام التوافقمكتوب خصيصاً (Solidity / Go-Ethereum)، ويعمل مباشرة على السلسلة
معيار الرمز الأصليBRC20، متوافق مع ERC-20 — حزمة اختبارات آلية
عرض BOSA700,000,000، 18 خانة عشرية
بصمة الكتلة 00x8dcdadc247a98f33728cae944e20ce7c49c74b35cfba31495f85e98979018da6
جذر حالة الكتلة 00x93682eb9182a55531d47014b76a285b45d3e720a2951f9ffbdc67f52995f8c03
الإطلاق في الإنتاج7 أغسطس 2026
التحقق من هوية السلسلة
# doit renvoyer "0x6696" — soit 26262
curl -s -X POST https://explorer.coinbosa.com/rpc \
  -H 'content-type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"eth_chainId","params":[]}'

# doit renvoyer l empreinte 0x8dcdadc2... publiee plus haut
curl -s -X POST https://explorer.coinbosa.com/rpc \
  -H 'content-type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,
       "method":"eth_getBlockByNumber","params":["0x0",false]}'

الشيفرة عامة

العميل والعقود وملف genesis وبرامج النشر منشورة على مستودع Coinbosa. وإعادة توليد genesis يجب أن تعطي تماماً بصمة الكتلة 0 المنشورة أعلاه.

ما يعرّف السلسلة

الاسم والرمز يُنسخان؛ أما معرّف السلسلة وبصمة الكتلة 0 فلا. وهما ما يجب مقارنته قبل إرسال معاملة، والمستكشف يعرضهما صراحةً.

من ينشر هذه الشبكةالناشر، والمنظومة المبنية حول السلسلة، وتوزيع عرض BOSA.

فتح صفحة «من نحن»