![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
無限認可
什麼是無限認可?
無限批准是一種智慧合約程式設計實踐,通常被認為是有問題的。此編程功能允許給定的智能合約(在用戶授權後)存取用戶錢包中無限數量的代幣,而不僅僅是實際需要的數量。
以這種方式編程的智能合約的一個臭名昭著的例子是去中心化交易所 Bancor 使用的智能合約。當用戶第一次使用該系統時,他們必須授予智能合約授權,才能從錢包中提取無限數量的代幣。
Bancor 的智慧合約還包含一個漏洞,駭客可能會利用該漏洞竊取用戶授權合約管理的所有代幣單位。幸運的是,Bancor 的程式設計師在惡意行為者竊取代幣之前就注意到了這一點,並隨後修改了他們的系統,只要求批准所需數量的代幣。開發人員先發制人地「竊取」用戶資金,以便稍後歸還,以避免遭到駭客攻擊。
在圍繞 Bancor 的爭議之後,人們發現無限批准是去中心化應用程式程式設計師中非常流行的做法。加密錢包 ZenGo 的研究人員進行的研究表明,流行的去中心化應用程式具有無限或極大的批准量。