ما هو "نونس" في عالم العملات الرقمية؟ تعدين البيتكوين، إيثيريوم، التشفير
في ديسمبر 2010، وعلى منصة مؤتمر Chaos Communication في برلين، أعلنت مجموعة صغيرة تُدعى fail0verflow أنها استخرجت مفتاح التوقيع الرئيسي لجهاز PlayStation 3 من سوني. لم يستغل هذا الاختراق ثغرة أمنية في منحنى إهليلجي 256 بت، ولم يفك تشفير AES، بل استغل حقيقة أن نظام توقيع الشفرة من سوني كان يعيد استخدام الرقم نفسه في كل توقيع ينتجه. كان هذا الرقم عبارة عن قيمة عشوائية (nonce).
تظهر كلمة "nonce" نفسها في ثلاثة جوانب من عالم العملات الرقمية، لا يجمعها شيء تقريبًا. إنها المتغير الذي يُجري عليه مُعدِّن البيتكوين دوراتٍ تريليونية في الثانية بحثًا عن تجزئة كتلة صالحة. وهي العداد الذي تستخدمه محفظة الإيثيريوم لتسلسل المعاملات الصادرة، والسبب وراء حظر المعاملة العالقة لكل معاملة لاحقة تُوقِّعها. وهي القيمة الفريدة التي يحتاجها تشفير AES-GCM لمنع تسريب محتوى رسالتين مُشفَّرتين. كلمة واحدة، ثلاث وظائف، لا يمكن استبدال أيٍّ منها. إن الخلط بينها هو ما يُسيء فهم أخطاء "nonce too low"، وكيف يُصمِّم المُعدِّنون إعداداتٍ مستحيلة، وكيف تفقد أنظمة مثل PS3 جذر الثقة الخاص بها.
رقم عشوائي (nonce) مكون من 32 بت يُسمى "رقم يُستخدم مرة واحدة": الأصل
تنتشر الاختصارات العكسية في كل مكان. يُقال: "Nonce تعني رقمًا يُستخدم مرة واحدة". هذا صحيحٌ تقريبًا، لكنه غير دقيق تاريخيًا. فالكلمة الإنجليزية أقدم من علم التشفير بنحو 750 عامًا. وقد وردت عبارة "For the nonce" في مخطوطات اللغة الإنجليزية الوسطى حوالي عام 1200، وكانت تعني "لهذه المناسبة تحديدًا".
استعار علم التشفير مصطلح "الرقم العشوائي" عام 1978، مع بروتوكول مصادقة نيدهام-شرودر. هناك، لم تكن الخاصية المميزة هي العشوائية، بل التفرد ضمن نطاق محدد. ويكيبيديا، استنادًا إلى الممارسة العملية، تُعرّف الرقم العشوائي بأنه "رقم اعتباطي يُستخدم مرة واحدة فقط في عملية اتصال تشفيرية". وينطبق هذا التعريف على العداد، والطابع الزمني، والقيمة العشوائية، أو أي مزيج منها. المهم هو ألا يظهر الرقم العشوائي نفسه داخل النظام مرة أخرى مع المفتاح نفسه، أو في السياق نفسه.
كلمة واحدة تنجز المهمة، وتنقسم المهمة إلى ثلاثة أجزاء. يتغير رقم تعريف التعدين (nonce) في بيتكوين حتى ينخفض تجزئة الكتلة عن مستوى الصعوبة المستهدف. أما رقم تعريف الحساب (nonce) في إيثيريوم فهو عداد ترفض الشبكة تكراره. في التشفير المتناظر، يكون رقم تعريف التشفير (nonce) قيمةً مقترنةً بمفتاح، وإعادة استخدامه مرةً واحدةً فقط تُفقد التشفير دقته.
الكلمة فضفاضة، لكن السياقات ليست كذلك.

كيف تعمل خاصية "نونس" في تعدين البيتكوين؟
في بيتكوين، يشغل الرقم العشوائي (nonce) حقلاً من 32 بت داخل رأس الكتلة البالغ 80 بايت. أربعة بايتات. تتراوح القيم من صفر إلى 4,294,967,295. أي ما يقارب 4.3 مليار رقم محتمل، وهو رقم بدا هائلاً عندما كتب ساتوشي البروتوكول، ولكنه الآن يُستنفد بواسطة جهاز ASIC بحجم مكتب في أجزاء من الثانية.
التعدين هو سباق للعثور على قيمة في حقل معين تُنتج تجزئة صالحة للكتلة. خذ رأس البيانات المكون من 80 بايت. مرره عبر خوارزمية SHA-256، وهي دالة التجزئة المشفرة التي تعمل عليها سلسلة كتل بيتكوين، مرتين. سينتج عن ذلك رقم مكون من 256 بت. قارن هذا الرقم بالتجزئة المستهدفة التي تحددها صعوبة الشبكة، وهي آلية الإجماع التي تُفعّل إثبات العمل. إذا كانت القيمة أقل من الهدف؟ الكتلة صالحة، ويفوز المُعدِّن. إذا كانت أعلى من الهدف؟ قم بزيادة قيمة nonce بمقدار واحد وأعد التجزئة. يُكرر مُعدِّنو بيتكوين هذه العملية حتى يعثر أحدهم على قيمة nonce صالحة، وتُضاف الكتلة الجديدة إلى سلسلة الكتل.
لماذا هذا الحقل الصغير لمثل هذه المهمة الضخمة؟ لأسباب هيكلية. يُعدّ "الرقم العشوائي" (nonce) أرخص جزء في رأس الكتلة يمكن للمُعدِّن تغييره. كل حقل آخر له تبعيات. يُلخّص جذر ميركل معاملات الكتلة، لذا فإن تغييره يُجبر شجرة المعاملات بأكملها على إعادة الحساب قبل تجربة تجزئة جديدة. يتجاوز "الرقم العشوائي" كل ذلك. كل محاولة تجزئة مستقلة. زيادة "الرقم العشوائي" لا تُحقق تقدمًا يُذكر أكثر من اختيار قيمة عشوائية. إنها ببساطة طريقة القوة الغاشمة، مُغلّفة بلغة الإجماع.
صمد التصميم لمدة عام تقريبًا، ثم حطمته الدوائر المتكاملة الخاصة بالتطبيقات (ASICs). تستنفد أجهزة التعدين الحديثة كامل مساحة قيم "نونس" البالغة 4.3 مليار في أجزاء من الثانية، وليس في ثوانٍ. يعمل جهاز Bitmain Antminer S21 Pro بسرعة 234 تيراهاش في الثانية، ويستنفد حقل "نونس" بالكامل على هذا الجهاز في حوالي 18 ميكروثانية . اعتبارًا من مايو 2026، بلغ إجمالي معدل التجزئة لشبكة بيتكوين حوالي 996 إكساهاش/ثانية، مع صعوبة تعدين تبلغ 132.47 تريليون. يستهلك جهاز S21 Pro واحد كل قيمة "نونس" ممكنة عشرات الآلاف من المرات في الثانية بمفرده.
لذا، يتيح بروتوكول ساتوشي للمعدِّن خيارين نظيفين عند استنفاد مساحة 32 بت. الخيار الأول هو "الرقم العشوائي الإضافي"، وهو حقل مُضمَّن في scriptSig الخاص بمعاملة coinbase. يُشفِّره بروتوكول BIP34. يتراوح حجمه بين 2 و100 بايت، ويتحكَّم فيه المعدِّن. عند تغيير الرقم العشوائي الإضافي، يتغير مُعرِّف معاملة coinbase (TXID)، ويجب إعادة حساب جذر ميركل، ويتغير رأس الكتلة، ويُفتح بحث جديد عن رقم عشوائي 32 بت. الخيار الثاني هو تغيير الطابع الزمني أو تدوير بتات الإصدار ضمن النطاق المسموح به في البروتوكول. تقوم مجمعات التعدين اليوم بتدوير جميع هذه الخيارات كجزء من التشغيل العادي. يُعد تعديل الرقم العشوائي هو أقل تكلفةً من حيث التغيير. يليه تعديل الرقم العشوائي الإضافي. أما تدوير ميركل والطابع الزمني فيأتيان في مرتبة أبعد، وذلك حسب تكلفة إعادة حساب كل منهما.
عندما يقوم شخص ما بإنشاء تجزئة أقل من الهدف - ويطلق عليها عمال التعدين اسم "الرقم الذهبي" - فإن الكتلة الجديدة تنتشر عبر شبكة الند للند، ويتخلى كل منافس عن بحثه الحالي ليبدأ من جديد في الجولة التالية.
| نموذج ASIC | معدل التجزئة | حان وقت استنفاد قيمة nonce ذات 32 بت | كفاءة |
|---|---|---|---|
| Antminer S21 | 200 تيراهاش/ثانية | ~21 ميكروثانية | 17.5 جول/ثانية |
| Antminer S21 Pro | 234 تيرا هاش/ثانية | ~18 ميكروثانية | 15 J/TH |
| Antminer S21 XP | 270 تيرا هاش/ثانية | ~16 ميكروثانية | 13.5 جول/ثانية |
يُرسّخ مثالٌ واقعيٌّ حديثٌ هذا المفهومَ التجريديّ. الكتلة رقم 948,000، التي تمّ تعدينها في أوائل عام 2026، تحمل تجزئة الكتلة `00000000000000000001b01841afc366a4f999b291c8563ee0d0db956fc2db44` وقيمة nonce فائزة تبلغ 2,582,463,598 . هذا العدد الصحيح الوحيد، بالإضافة إلى باقي رأس الكتلة، أنتج تجزئة منخفضة بما يكفي لإضافتها إلى سلسلة الكتل. كلّ قيمة nonce أخرى حاولها المعدّن في تلك الجولة أنتجت قيمةً أكبر من اللازم.
هذا هو مفهوم إثبات العمل، من الناحية الميكانيكية. ليس لغزاً بالمعنى الحرفي للكلمة. إنه بحث عن قيمة عشوائية صالحة، يتم تمويلها بالكهرباء.
قيمة التجزئة العشوائية مقابل قيمة الحساب العشوائية: نفس الكلمة، وظيفة مختلفة
يُستخدم مصطلح "nonce" في العملات الرقمية لأغراض متعددة، ويُعدّ هذا التداخل أكبر مصدر للالتباس لدى المستخدمين الجدد. فـ nonce الخاص بتعدين البيتكوين هو متغير بحث، بينما nonce الخاص بحساب الإيثيريوم هو عداد. يشتركان في الاسم فقط، ولا شيء آخر تقريبًا.
| قيمة التجزئة (بيتكوين) | رقم الحساب (إيثيريوم) | |
|---|---|---|
| وظيفة | ابحث عن قيمة تجزئة صالحة أسفل الهدف | ترتيب المعاملات الصادرة لكل حساب |
| مكان عيشه | رأس الكتلة (32 بت) | حالة الحساب (عدد صحيح كامل، يبدأ من 0) |
| من الذي يُحدث الطفرة فيه؟ | جهاز التعدين، من حيث الأجهزة، مليارات في الثانية | المحفظة، تلقائيًا، واحدة لكل عملية إرسال |
| ماذا تعني كلمة "خطأ" | فشلت تذكرة اليانصيب، جرب الرقم العشوائي التالي | تم رفض المعاملة أو تعطلت |
| مرتبط بالإجماع؟ | نعم، هذا دليل على العمل | لا، هذا حماية من إعادة التشغيل |
قيمة التجزئة (hash nonce) هي رقم مؤقت يتخلص منه المُعدِّن. أما قيمة الحساب (account nonce) فهي حالة دائمة مُخزَّنة في سجل عنوانك على الشبكة. والخلط بينهما - أي اعتبار قيمة التجزئة (nonce) لكتلة بيتكوين بمثابة عداد تسلسلي - هو ما يجعل البعض يقرأون خطأ "nonce منخفض جدًا" في إيثيريوم، ويفترضون أن إعدادات التعدين لديهم معطلة. سلاسل كتل مختلفة، وظائف مختلفة، لكن الكلمة نفسها. حتى ضمن النظام البيئي الواحد، يعتمد دور قيمة التجزئة (nonce) في عمليات سلسلة الكتل كليًا على ما إذا كنت تراقب طبقة الإجماع أو طبقة الحساب.
مشكلة رقم الحساب العشوائي (nonce) في إيثيريوم ومشكلة المعاملات العالقة
كل حساب مملوك خارجيًا على شبكة إيثيريوم يحمل قيمة عشوائية (nonce) خاصة به. يبدأ العداد من الصفر، عند أول عملية إرسال للمعاملة. ومن ثم، يرتفع بمقدار واحد لكل معاملة تُضاف إلى كتلة. عند إرسال أي شيء، تطلب محفظتك من الشبكة القيمة الحالية، وتُضيف الرقم التالي في التسلسل، ثم تُوقع. تقبل الشبكة فقط قائمة الانتظار الصادرة بالترتيب الدقيق: القيمة العشوائية 0، ثم 1، ثم 2. لا يُسمح بوجود فجوات.
هذا الترتيب الدقيق هو ما يمنح إيثيريوم حماية ضد إعادة الإرسال. ترتبط المعاملة الموقعة برقم عشوائي محدد، ومنذ تطبيق EIP-155، ترتبط أيضًا بمعرف سلسلة محدد. لا يستطيع المهاجم إعادة بث معاملة سابقة تم تنفيذها كما لو كانت جديدة. فبحلول وقت وصول إعادة البث، يكون الرقم العشوائي للحساب قد تجاوزها بالفعل. ويقضي معرف السلسلة على عمليات إعادة الإرسال عبر السلاسل في نفس الوقت. داخل سلسلة واحدة، تبقى المعاملة المؤكدة في نقطة معينة على عداد قد انتقل بالفعل.
يُنتج هذا الترتيب الصارم نفسه المشكلة التي تواجهها محافظ إيثيريوم الجديدة باستمرار. تُرسل معاملة بمكافأة منخفضة جدًا، فيتجاهلها المدققون، ثم يُسقطها مجمع المعاملات من قائمة الانتظار ذات الأولوية. تبقى المعاملة عالقة - غير مؤكدة، وغير فاشلة، بل مُعلقة. والأسوأ من ذلك، أن كل معاملة لاحقة تُوقع من نفس العنوان تحصل على قيمة عشوائية أعلى. ترفض الشبكة التعامل مع أي منها حتى يتم تأكيد المعاملة العالقة أو استبدالها. معاملة واحدة بطيئة تُعطل قائمة الانتظار بأكملها.
يكمن الحل في آلية تُسمى "الاستبدال بالرسوم". تُعيد محفظتك بث معاملة جديدة بنفس قيمة "nonce" للمعاملة العالقة، ولكن برسوم غاز أعلى. يُحدد نموذج تسعير الغاز EIP-1559، المُعتمد في شبكة إيثيريوم منذ تحديث لندن في أغسطس 2021، القاعدة التالية: يجب أن تزيد المعاملة الجديدة كلاً من "maxFeePerGas" و"maxPriorityFeePerGas" بنسبة 10% على الأقل عن المعاملة الأصلية. هل ترغب في إلغاء المعاملة العالقة نهائيًا بدلاً من استبدالها؟ أرسل تحويلًا ذاتيًا بقيمة صفر إيثيريوم بنفس قيمة "nonce" العالقة، مع زيادة في رسوم الغاز. يستهلك هذا التحويل نفسه، وتُصبح جميع المعاملات اللاحقة في قائمة الانتظار متاحة.
للتوضيح، إليكم أرقام مايو 2026. متوسط الإكرامية ذات الأولوية يقارب 1.875 غيوي. تبلغ تكلفة إلغاء معاملة قياسية بقيمة 21,000 وحدة غاز حوالي 0.05 دولار في الأيام العادية، وترتفع إلى ما دون الصفر خلال فترات الازدحام. هناك درس واحد يتعلمه الجميع في النهاية بعد تجربة مريرة: استبدل دائمًا أقل قيمة للمعاملة المعلقة أولًا. زيادة الرسوم على معاملة لاحقة بينما لا تزال المعاملة السابقة عالقة لا يُجدي نفعًا.
يُغيّر تجريد الحساب هذه القصة قليلاً. تستخدم الحسابات الذكية ERC-4337 قيمة عشوائية ثنائية الأبعاد، حيث تُقسّم العدد الصحيح إلى "مفتاح" بطول 192 بت وتسلسل بطول 64 بت. تُشكّل المفاتيح المختلفة تدفقات معاملات متوازية. لا يؤدي توقف دفعة على مفتاح واحد إلى منع العمل على مفتاح آخر. لقد تطورت القيمة العشوائية للحساب أخيرًا من كونها مجرد عداد خطي واحد.
خرافة أخيرة تستحق التوضيح. لم يؤدِّ انتقال إيثيريوم إلى آلية إثبات الحصة عند دمجها في سبتمبر 2022 إلى إزالة قيمة "nonce" الخاصة بالحساب. ما اختفى هو قيمة "nonce" الخاصة بالتعدين الموجودة داخل رأس الكتلة، لأن اختيار المدققين يتم الآن عن طريق خانة محددة بدلاً من استخدام خوارزمية التجزئة. بقيت قيمة "nonce" الخاصة بالحساب في مكانها المعتاد، ضمن شجرة حالة الحساب.
القيمة العشوائية المشفرة في التشفير: النسخة الكارثية
إذا خرجت عن نطاق تقنية البلوك تشين، ستجد أن قيمة التشفير العشوائي (nonce) تؤدي وظيفة أكثر دقة. وإذا أخطأت في استخدامها، فستنهار الأرض من تحتك.
كل خوارزمية تشفير حديثة موثقة تربط مفتاحًا سريًا برقم عشوائي (nonce) خاص بكل رسالة. يستخدم AES-GCM، الخوارزمية الأساسية في TLS 1.3، 96 بت. وقد وضع معيار NIST SP 800-38D مواصفاتها. أما ChaCha20-Poly1305، البديل المُدوّن في RFC 8439 (يونيو 2018)، فينسخ نفس طول الرقم العشوائي (nonce) البالغ 96 بت ويربطه بمفتاح طوله 256 بت. القاعدة في كلتا الخوارزميتين، ببساطة: كل زوج (مفتاح، رقم عشوائي) يُنفذ مرة واحدة فقط. إعادة الاستخدام ليست تراجعًا طفيفًا، بل هي انحدار حاد.
كيف يبدو الانهيار؟ لنفترض إعادة استخدام قيمة عشوائية (nonce) في خوارزمية AES-GCM باستخدام مفتاح واحد. ثم نفترض أن مهاجمًا قد استولى على النصين المشفرين. يقوم المهاجم بإجراء عملية XOR بينهما. فينتج عن ذلك عملية XOR للنصين الأصليين. هكذا تُفقد السرية في خطوة واحدة. والأسوأ من ذلك، أن وضع المصادقة في GCM يُسرب مفتاح المصادقة الفرعي الداخلي - القيمة التي تُستخدم لتوقيع كل نص مشفر باستخدام هذا المفتاح. وبامتلاكه للمفتاح الفرعي، يكتب المهاجم نصوصًا مشفرة جديدة مُصادق عليها، ويقبلها المُستلم الشرعي على أنها حقيقية. وهكذا، حتى أحدث أنواع التشفير، باستخدام قيمة عشوائية خاطئة واحدة، تتراجع كفاءتها إلى ما دون مستوى إزاحة قيصر.
ليس أيٌّ من ذلك مجرد افتراض. فقد كشفت ورقة بحثية نُشرت في مؤتمر USENIX WOOT عام 2016 بعنوان "الخصوم الذين لا يحترمون أرقام التعريف العشوائية" عن فحص نقاط نهاية HTTPS في بيئات الإنتاج، حيث تم رصد 184 خادمًا تعيد استخدام أرقام تعريف عشوائية من نوع GCM. وتضمنت الإصدارات المعيبة صورًا محددة لنظام التشغيل Cisco IOS XE وبرنامج Radware ADC الثابت. ويتم تتبع هذه الثغرات الأمنية بواسطة CVE-2016-0270 والعديد من الثغرات الأمنية المجاورة.
كان اختراق سوني لجهاز PS3 في ديسمبر 2010 هو نفس الداء ولكن بتشفير مختلف: ECDSA. يتطلب كل توقيع ECDSA قيمة فريدة وسرية، تُكتب k . تجاهلت سوني في شفرة التوقيع هذه الخاصية، حيث استخدمت قيمة ثابتة k بشكل ثابت في كل توقيع. لو أعطيت مهاجمًا توقيعين ECDSA لرسالتين مختلفتين بنفس قيمة k ، لحصل على معادلتين خطيتين بمجهولين. حلهما يكشف مفتاح التوقيع الخاص، بصيغته المغلقة. شرح fail0verflow هذا الأمر بالتفصيل في مؤتمر Chaos Communication السابع والعشرين في برلين. انتشر مفتاح التوقيع الرئيسي لسوني على الإنترنت في غضون ساعات، وفقدت جميع أجهزة PS3 التي صُنعت سلسلة الثقة الخاصة بها دفعة واحدة.
يُزيل الحل الحتمي، المُدوّن في RFC 6979 عام 2013، مُولّد الأرقام العشوائية من العملية. يتم اشتقاق قيمة k من رمز HMAC للرسالة والمفتاح الخاص. نفس الرسالة، نفس المفتاح، نفس قيمة k - لا يوجد مُولّد أرقام عشوائية قابل للتلف. تُوفّر مكتبات بيتكوين الحديثة خوارزمية ECDSA الحتمية كإعداد افتراضي.
ينتج عن هذه القصص نتيجتان أساسيتان، غالباً ما تُربكان المطورين. مع تشفيرات AEAD (مثل AES-GCM وChaCha20-Poly1305)، يُعدّ استخدام قيمة عشوائية متوقعة (nonce) مقبولاً، حيث يعمل العداد. ويُشترط التفرد. أما مع توقيعات ECDSA وSchnorr، فالوضع معكوس. فاستخدام قيمة عشوائية متوقعة (k) يُعدّ كارثياً. إذ يجب أن تكون قيمة nonce المستخدمة في التوقيع فريدة وغير متوقعة وسرية في آنٍ واحد. إنّ الجمع بين هذين النهجين هو السبب الرئيسي لظهور ثغرات إعادة استخدام nonce في أكواد المحافظ المخصصة. وقد سجّلت عملية تدقيق مشروع Kopia للنسخ الاحتياطي لعام 2024 خطر تصادم عشوائي بين GCM وnonce على المفاتيح طويلة الأمد، كما تُشير تقارير اختبار الاختراق على حزم تطوير البرامج (SDKs) الأحدث إلى نتائج مماثلة شهراً بعد شهر.
نونْس مقابل الملح مقابل الحقن الوريدي: تجنب الخلط الثلاثي
يستخدم الناس ثلاث كلمات في التقارير الأمنية وكأنها تعني الشيء نفسه: ملح، وكلمة عشوائية، وكلمة رابعة. وهي ليست مترادفات.
يُستخدم الملح في تشفير كلمات المرور. يتم اختيار قيمة عشوائية لكل مستخدم، ودمجها في قيمة التشفير، وبذلك تتوقف جداول قوس قزح المُحسوبة مسبقًا لكلمة المرور "password123" عن العمل ضد قاعدة البيانات. يُخزّن الملح كنص عادي بجانب قيمة التشفير، ولا يُخفيه أحد. يُعدّ استخدام الملح نفسه من قِبل مستخدمين أمرًا غير مُريح، إذ يسمح للمهاجم الذي تمكن من اختراق أحدهما باختراق الآخر أيضًا. لكن لا داعي للقلق.
تُستخدم قيمة "nonce" في الرسائل والتوقيعات. تُستخدم لكل رسالة في التشفير المتناظر، ولكل توقيع في خوارزمية ECDSA. تكشف خوارزميات التشفير AEAD، مثل AES-GCM، قيمة "nonce" بشكل واضح، كما هو الحال مع "salt" بجوار "hash". أما خوارزمية ECDSA فتخفيها، وتتعامل معها كسر، وتتطلب عشوائية جديدة في كل مرة. في كلتا الحالتين، لا تُعدّ التصادمات مجرد مشكلة عابرة، بل هي قاتلة. يختفي الضمان بالكامل.
IV - اختصارًا لـ initialization vector - هو الاسم القديم لما يُسمى في المواصفات الأحدث بـ nonce. استخدمت أنماط CBC وCTR هذا المصطلح لسنوات. وقد تم تغييره في وثائق AEAD الحديثة، ويرجع ذلك في الغالب إلى أن كلمة "vector" كانت تُشبه كلمة "واجب رياضي" وكان الناس يُعيدون استخدامها باستمرار. أما كلمة "Nonce" فهي أكثر دقة في تطبيق القاعدة.
هل تحتاج إلى قاعدة واحدة يمكن تلخيصها في ورقة لاصقة؟ الملح يحمي سرًا تخزنه. والرقم السري يحمي سرًا ترسله.

لماذا يُعدّ رقم "nonce" مهمًا بما يتجاوز مجرد معلومات تعدين البيتكوين؟
النونْس عنصر صغير. اثنان وثلاثون بتًا في بيتكوين، وعداد في إيثيريوم، واثنا عشر بايتًا في AES-GCM. يحمل هذا العنصر وزنًا هائلًا مقارنةً بحجمه. بالنسبة للمستخدمين العاديين، تعتمد كل معاملة إيثيريوم عالقة، وكل مصافحة TLS مع موقع مصرفي، وكل توقيع ينتجه محفظة الأجهزة، على معالجة النونْس بشكل صحيح. أما بالنسبة للمطورين، فإن سوء معالجة النونْس هو المدخل الأكثر شيوعًا للأخطاء الكارثية في التعليمات البرمجية التشفيرية المخصصة. كانت حادثة PS3 حالة متطرفة، لكن نمط الفشل نفسه يستمر في الظهور في حزم تطوير البرامج (SDKs) الأحدث للمحافظ وأدوات النسخ الاحتياطي. بالنسبة لاقتصاد بيتكوين، فإن النونْس ذو الـ 32 بتًا، بالإضافة إلى آلية النونْس الإضافية، هو ما جعل تعدين ASIC أشبه باليانصيب في المقام الأول. أحد أهم خيارات التصميم التي اتخذها ساتوشي، مخفيًا بوضوح داخل حقل رأس عادي.
الرقم العشوائي (nonce) هو ما يُشير إلى أن هذا حدث مرة واحدة، بهذا الترتيب، وبهذه الطريقة تحديدًا . إذا أُزيل، فإن أي نظام يعتمد على التفرد ينهار إلى شيء يُمكن للمهاجم إعادة بنائه بسهولة. ينهار الإجماع. تختفي الحماية من إعادة الإرسال. تتسرب التشفيرات. تُزوّر التوقيعات.