परिभाषा
Allowance एक सुरक्षा प्रिमिटिव है जो यह तय करता है कि कोई दूसरी address — आम तौर पर एक smart contract — किसी उपयोगकर्ता के tokens के साथ क्या करने के लिए, और कितनी मात्रा तक, अनुमति प्राप्त है। यह पहले से दी गई spending या प्रबंधन सीमा (cap) को दर्शाता है, जिसे आम तौर पर token contract की आंतरिक accounting में संग्रहीत किया जाता है। Allowance सेट करके, token holder बिना tokens की ownership ट्रांसफर किए, किसी दूसरी इकाई को सीमित और नियंत्रित अधिकार सौंपता है।
कई token standards में, allowance approval मैकेनिज़्म से काफ़ी क़रीब से जुड़ा होता है, जो यह रिकॉर्ड करता है कि किसी निर्दिष्ट spender को कितने tokens मूव करने की अनुमति है। यह संरचना एक सूक्ष्म (fine-grained) access सीमा की तरह काम करती है, जो token मूवमेंट को केवल उतनी अधिकतम राशि तक सीमित रखती है, जिसे स्पष्ट रूप से अधिकृत किया गया हो। इसी कारण allowance इस बात के केंद्र में है कि decentralized applications उपयोगकर्ता के balances पर Access Control कैसे लागू करते हैं।
प्रसंग और उपयोग
Allowance का उपयोग आम तौर पर तब किया जाता है जब कोई उपयोगकर्ता ऐसे on-chain applications के साथ इंटरैक्ट करता है जिन्हें उपयोगकर्ता की ओर से tokens मूव करने के लिए अस्थायी या लगातार अनुमति की आवश्यकता होती है। Allowance का मान एक सुरक्षा रेल (guardrail) की तरह काम करता है, ताकि यदि spender से समझौता भी हो जाए, तो भी वह नई authorization के बिना पहले से तय सीमा से ज़्यादा खर्च न कर सके। चूँकि यह on-chain पर स्थायी रूप से दर्ज रहता है, allowance तब तक प्रभावी रहता है जब तक इसे बदला या रीसेट नहीं किया जाता।
गलत तरीके से कॉन्फ़िगर की गई या बहुत व्यापक allowance सेटिंग्स जोखिम बढ़ा सकती हैं, जैसे Approval Exploit पैटर्न, जहाँ दुर्भावनापूर्ण या बगयुक्त contracts दी गई permissions का दुरुपयोग कर सकते हैं। इसी वजह से allowance को token ecosystems में Access Control डिज़ाइन का एक मुख्य तत्व माना जाता है, जो यह तय करता है कि प्रोटोकॉल स्तर पर permissions कितनी सुरक्षित तरीके से delegate और सीमित की जाती हैं।