簡體   English   中英

如何使ERC20代幣持有者的錢包地址保密?

[英]How to keep wallet address of an ERC20 token holder private?

這是令牌成為ERC20令牌所需的接口

contract ERC20Interface {
    function totalSupply() public constant returns (uint);
    function balanceOf(address tokenOwner) public constant returns (uint balance);
    function allowance(address tokenOwner, address spender) public constant returns (uint remaining);
    function transfer(address to, uint tokens) public returns (bool success);
    function approve(address spender, uint tokens) public returns (bool success);
    function transferFrom(address from, address to, uint tokens) public returns (bool success);

    event Transfer(address indexed from, address indexed to, uint tokens);
    event Approval(address indexed tokenOwner, address indexed spender, uint tokens);
}

我想將誰擁有我的令牌的地址保密。 因此,我刪除了轉移事件和批准事件。 我還把balanceOf函數設為私有。

公眾人士還可以通過某種方式找出誰擁有我的代幣之一? 公共人士還可以通過某種方式知道何時進行交易?

是的,比特幣和以太坊的主要特征之一是它們是公開的。 當任何人使用您的智能合約時,他們的所有行為必定會有計划地記錄在區塊鏈中。

請參閱此稱為智能合約方法的TX 注意我如何看到誰向誰發送了什么,調用了什么函數以及帶有什么參數。

它是私人的嗎?

沒有

公眾人士還可以通過某種方式找出誰擁有我的代幣之一? 公共人士還可以通過某種方式知道何時進行交易?

可以檢查合同的存儲,也可以檢查交易數據。 此數據必須是公開的。 您能做的最好的事情就是使您的中級用戶更難找到此信息(盡管知道自己在做什么的人可以將其挖掘出來然后發布)。

它是ERC20代幣嗎?

沒有

這是令牌成為ERC20令牌所需的接口...我刪除了Transfer事件和Approval事件。 我還把balanceOf函數設為私有。

請注意,刪除這些內容將使其不再是ERC20令牌。 這些在ERC20規范中是必需的。

現在怎么辦?

公共區塊鏈上的私人交易是一個持續的研究領域。 如果您真的想實現此目標,則需要深入研究該領域的最新研究,並熟悉ZK-SNARKS和替代產品。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM