ERC-6268: Untransferability Indicator for EIP-1155

An extension of EIP-1155 for indicating the transferability of the token.


Metadata
Status: StagnantStandards Track: ERCCreated: 2022-01-06
Authors
Yuki Aoki (@yuki-js)
Requires

Abstract


This EIP standardizes an interface indicating EIP-1155-compatible token non-transferability using EIP-165 feature detection.

Motivation


Soulbound Tokens (SBT) are non-transferable tokens. While EIP-5192 standardizes non-fungible SBTs, a standard for Soulbound semi-fungible or fungible tokens does not yet exist. The introduction of a standard non-transferability indicator that is agnostic to fungibility promotes the usage of Souldbound semi-fungible or fungible tokens.

Specification


The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 and RFC 8174.

Smart contracts implementing this standard MUST comform to the EIP-1155 specification.

Smart contracts implementing this standard MUST implement all of the functions in the IERC6268 interface.

Smart contracts implementing this standard MUST implement the EIP-165 supportsInterface function and MUST return the constant value true if 0xd87116f3 is passed through the interfaceID argument.

For the token identifier _id that is marked as locked, locked(_id) MUST return the constant value true and any functions that try transferring the token, including safeTransferFrom and safeBatchTransferFrom function MUST throw.


Rationale


Needs discussion.

Backwards Compatibility


This proposal is fully backward compatible with EIP-1155.

Security Considerations


Needs discussion.

Copyright


Copyright and related rights waived via CC0.