Սահմանում
Allowance-ը անվտանգության հիմնական մեխանիզմ է, որը սահմանում է քանակական սահմանափակում այն բանի վրա, թե ինչ կարող է անել մեկ այլ հասցե՝ սովորաբար smart contract-ը, օգտատիրոջ թոքեններով։ Այն ներկայացնում է նախապես տրված ծախսման կամ կառավարման սահմանաչափ, որը սովորաբար պահվում է թոքենի contract-ի ներքին հաշվառման մեջ։ Allowance սահմանելով՝ թոքենի տերը վերահսկելի լիազորություններ է փոխանցում այլ սուբյեկտի՝ առանց թոքենների սեփականությունը փոխանցելու։
Շատ թոքենային ստանդարտներում allowance-ը սերտորեն կապված է approval մեխանիզմների հետ, որոնք գրանցում են, թե որքան է թույլատրված տեղափոխել կոնկրետ նշանակված ծախսողին։ Այս կառուցվածքը գործում է որպես մանրամասն մուտքի սահման, որը սահմանափակում է թոքենների շարժը միայն այն առավելագույն քանակով, որը հստակորեն թույլատրված է։ Արդյունքում allowance-ը կենտրոնական դեր ունի այն բանում, թե ինչպես են դեցենտրալիզացված հավելվածները կիրառում Access Control-ը օգտատերերի մնացորդների նկատմամբ։
Համատեքստ և օգտագործում
Allowance-ը սովորաբար օգտագործվում է, երբ օգտատերը փոխազդում է on-chain հավելվածների հետ, որոնք կարիք ունեն ժամանակավոր կամ շարունակական թույլտվության՝ օգտատիրոջ անունից թոքեններ տեղափոխելու համար։ Allowance-ի արժեքը գործում է որպես անվտանգության սահմանագիծ, այնպես, որ նույնիսկ եթե ծախսողը կոմպրոմետացվի, նա չի կարող գերազանցել նախապես սահմանված սահմանաչափը առանց նոր թույլտվության։ Քանի որ allowance-ը մշտական on-chain գրառում է, այն ուժի մեջ է մնում, քանի դեռ չի փոփոխվել կամ զրոյացվել։
Սխալ կարգավորված կամ չափազանց լայն allowance-ի կարգավորումները կարող են մեծացնել ռիսկերի ազդեցությունը, օրինակ Approval Exploit pattern-ների դեպքում, երբ վնասաբեր կամ սխալներով contracts-ները չարաշահում են տրված թույլտվությունները։ Այդ պատճառով allowance-ը դիտվում է որպես Access Control-ի դիզայնի հիմնական տարր թոքենային էկոհամակարգերում՝ ձևավորելով, թե որքան անվտանգ են լիազորությունները փոխանցվում և սահմանափակվում պրոտոկոլի մակարդակում։