Skip to content

Latest commit

 

History

History
136 lines (106 loc) · 2.73 KB

File metadata and controls

136 lines (106 loc) · 2.73 KB

Comparison Of The Proposed ERC865 To BTTS

The ERC865 standard is still evolving, but the comparison below is based on the PROPSProject implementation as of Feb 17 2018.

ERC865 information: ethereum/EIPs#865

An implementation of ERC865:

Additional Events

The following 2 events are logged in the ERC865 implementation:

    event TransferPreSigned(address indexed from, address indexed to, address indexed delegate, uint256 amount, uint256 fee);
    event ApprovalPreSigned(address indexed from, address indexed to, address indexed delegate, uint256 amount, uint256 fee);

transfer

ERC865 has the following signature:

function transferPreSigned(
    bytes _signature,
    address _to,
    uint256 _value,
    uint256 _fee,
    uint256 _nonce
) public returns (bool);

BTTS v1.10 has the following signature:

function signedTransfer(
    address tokenOwner, 
    address to, 
    uint tokens, 
    uint fee, 
    uint nonce, 
    bytes sig, 
    address feeAccount
) public returns (bool success);

approve

ERC865 has the following signature:

function approvePreSigned(
    bytes _signature,
    address _spender,
    uint256 _value,
    uint256 _fee,
    uint256 _nonce
) public returns (bool);

BTTS v1.10 has the following signature:

function signedApprove(
    address tokenOwner, 
    address spender, 
    uint tokens, 
    uint fee, 
    uint nonce, 
    bytes sig, 
    address feeAccount
) public returns (bool success);

ERC865 also has the following functions:

function increaseApprovalPreSigned(
    bytes _signature,
    address _spender,
    uint256 _addedValue,
    uint256 _fee,
    uint256 _nonce
) public returns (bool);

and

function decreaseApprovalPreSigned(
    bytes _signature,
    address _spender,
    uint256 _subtractedValue,
    uint256 _fee,
    uint256 _nonce
) public returns (bool);

transferFrom

ERC865 has the following signature:

function transferFromPreSigned(
    bytes _signature,
    address _from,
    address _to,
    uint256 _value,
    uint256 _fee,
    uint256 _nonce
) public returns (bool);

BTTS v1.10 has the following signature:

function signedTransferFrom(
    address spender, 
    address from, 
    address to, 
    uint tokens, 
    uint fee, 
    uint nonce, 
    bytes sig, 
    address feeAccount
) public returns (bool success);