Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature Suggestion] No Fee on User Side with Whitelisted UIA #22

Open
clayop opened this issue Dec 6, 2016 · 4 comments
Open

[Feature Suggestion] No Fee on User Side with Whitelisted UIA #22

clayop opened this issue Dec 6, 2016 · 4 comments

Comments

@clayop
Copy link
Contributor

clayop commented Dec 6, 2016

If a UIA issuer has authority to allow or deny users with whitelisting, a possibility of spam attack can be significantly reduced and easily controlled out. In this case, a UIA issuer may want to remove transaction fees from users to facilitate UIA usage, while the issuer pays the fee through the fee pool.

There is a potential customer in Korea(a local government) and if this feature is implemented, we are going to push it more.

Note: The original issuance is here

@nathanielhourt
Copy link
Contributor

nathanielhourt commented Dec 6, 2016

This sounds like a useful feature. In my work at FMV, we encountered some scenarios where this would substantially simplify the blockchain app.

@clayop
Copy link
Contributor Author

clayop commented Dec 6, 2016

Definately, especially for real-world use cases. One of the goal of charging fee is to prevent spam from anonymous attackers. However, if we know identity, or at least we have a control on access permission, we can kick the attackers out (even legally) or block suspicious accounts.

@oxarbitrage oxarbitrage added this to the Hardfork - New features, audits and reviews milestone Aug 13, 2017
@abitmore
Copy link
Member

This can be done in UI.

The business owner create another UIA, say, named XFEE, show it in UI as allowance or so, carefully maintain the core exchange rate, fee pool and white list, dynamically issue/send some amount of the UIA to users according to their reputation or whatever. Whenever a user transact, pay an amount of the UIA from the user's account, so equivalent CORE will be deducted from the fee pool.

@abitmore abitmore modified the milestones: Hardfork - New features, audits and reviews, Future Consensus-Changing Release Mar 29, 2018
@abitmore
Copy link
Member

Here is another approach. With a customized UI, the end user can feel no fee is involved, even no need to create a special fee asset, nor need to maintain the fee pool.

Knowledge points:

  • fees are paid after an operation got executed;
  • it's able to pull funds from another account.

Preparation:

  • initialize withdraw permissions for your user with withdraw_permission_create_operation

When a user requests a transfer, create a transaction which contains 2 operations:

  1. withdraw_permission_claim_operation: pull required fees (can be in BTS) from the account configured by asset owner, fees of this operation can be paid with a part of pulled funds,
  2. transfer_operation: the real transfer, pay fees with the rest of pulled funds.

Total fees required would be sum of the 2 operations.

UI/UX:

  • hide the fee field,
  • hide the withdraw_permission_claim_operation,
  • handle exceptions e.g. an user has exceeded her credits thus unable to pull funds (UI should already know that and why).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants