لكن سؤالي في الدرجة الأولى لماذا لا يكون هناك تطابق بالبيانات بين المحفظة والمتصفح؟
لايوجد اي نوع من "عدم التطابق" اخي يحى كما نوه الاخ اوفين في الاعلى, الموضوع يحتاج.
يجب ان نفرق بين الاتي:
UTXO
ADDRESS
WALLET
ولنبدا بالترتيب
1- UTXO او Unspent transaction output :
في البتكوين لايوجد شي اسمه تحويل رصيد من حساب لحساب, مايحدث هوا نقل ملكية جزء معين من عنوان لاخر, لايوجد شي اسمها "رصيد" محفظة على البلوكتشين كل مايوجد هوا UTXO ومن يمتلكها, يمكن لنفس العنوان ان يمتلك اكتر من واحدة, مثلا يمكن امتلاك 10 اجزاء من 0.1 باجمالي 1 بتكوين, هنا يمكن ان نقول ان العنوان يمتلك 1 بتكوين بينما في الواقع هوا لا يمتلك ذلك بل يمتلك عشرة 0.1, يمكن دمجها في جزء واحد في حال قام بارسال ال 10 Inputs في Output واحدة حيت سيكون له UTXO واحدة بقيمة 1 بتكوين.
العنوان: كما تم شرحه في النقطة السابقة, العنوان لايوجد فيه شي, هوا فقط مجرد رقم, ولكن عند البحث عنه في البلوكتشين فانت في الواقع تبحت على UTXO اللملوكة لذلك العنوان, ويقوم المتصفح بجمع تلك القيمة ويقول لك ان هدا العنوان لديه 1 واحد بتكوين بدلا ان من ان يقول ان لديه 10*0.1.
المحفظة: المحفظة يمكن ان تحتوي على الاف العنواين, وكل عنوان يمكن ان يمتلك الاف ال UTXOs فالناتج الاجمالي الذي تراه في المحفظة هوا اجمالي ال UTXOs الواقعة تحت سيطرة العنواين التي تمتلكها, يمكنك الاطلاع على ال addresses من محفظة الكتروم وسوف تتفاجيء انك تملك العديد من العنواين وليس عنوان واحد.
الان لناخد تحويل ال 0.0065BTC الذي قلت فيه انك قمت بتحويل 0.0035BTC فقط.
https://www.blockchain.com/explorer/transactions/btc/bc43cf5014707cca4fe55f4bf459d45be7a0ac567c4df4c6e2229294bdf71237لاحظ هنا ان هدا التحويل يوجد به 2 inputs and 2 outputs.
رصيد عنوانك bc1qcgz7decp44zu8d26gjceuef0myz6j3ccljp5dm في ذلك الوقت كان 0.0065 ولكن تذكر ماقلت في الاعلى, الرصيد لايعني شي, فعنوانك كان يمتلك 2 UTXO واحدة بقيمة 0.0035 تحصلت عليها من هدا العنوان bc1qvzqk9g7fwp3vfeztfy70677y9j5l3yq3e9ex4t
والاخرى بقيمة 0.003000 تحصلت عليها من هدا العنوان 3KwPvRduFCweK27XMuos3JHZFkTs8yz1SM
يعني انك لم تستقبل ال 0.0065 في مرة واحدة.
حسنا : في ذلك الوقت ان اخبرت المحفظة انك تريد تحويل 0.0035 ماتفعله المحفظة هوا اولا محاول ايجاد UTXO بقيمة اكبر من هدا الرقم في حال وجودها سوف تستخدمها هي فقط, في حال عدم وجوده سوف تقوم باستخدام اكتر من UTXO ونظرا لانك لم تقم بحساب رسوم التحويل فان 0.0035 غير كافية لارسال 0.0035 , فلو كنت ارسلت 0.0035 - التكاليف, لكان هناك فقط مرسل واحد ومستقبل واحد
ولكن هدا لم يكن, فالمحفظة هنا استعانت ب UTXO اخرى بقيمة 0.003000 وهنا مايفسر وجود 2 inputs ستجدها مصنفة على FROM في الرابط الذي وضعته في الاعلى.
حسننا الان ماذا حدث ؟ نظرا لانه لايمكن ان ترسل جزء من UTXO وتبقي الباقي يعني ان المحفظة عليها ارسال 0.0035 + 0.003000 = 0.0065 ولك لان هدا الرقم اكبر من الذي تريد ارساله فقامت بارسال 0.0035 كاملة للعنوان الذي ادخلته حضرتك وهوا 1KMQ52hpR3Mha7RPKjcTLuffgwoF8XXBWw (يبدو كعنوان منصة لانه Lagecy) وقامت بارسال الباقي الى عنوان اخر تمتلكه المحفظة الخاصة بك وهوا bc1qu393pmyeztsret887mvxp3nx836gnaas9m3y58.
ان قمت بايعاد السناريو وارسلت 0.0035 - التكاليف كان سوف يكون تحويل واحد بقيمة 0.0035 لعنوان واحد
لو قمت بارسال 0.0065 - التكاليف كان سوف يكون هنا تحويل 1 من 2 Inputs لعنوان واحد.