Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save ABISprotocol/ae96f6026056b94c6682 to your computer and use it in GitHub Desktop.
Save ABISprotocol/ae96f6026056b94c6682 to your computer and use it in GitHub Desktop.
Essential ABIS System Requirements (abis.io) in BCN
Bytecoin / BCN
1. Multisignature feature, to enable multiple parties to specify when a certain microdonation may occur,
or to develop preferences for what sort of types or categories of microdonations should be supported
through recurrence or a similar scheme as may be utilized in a multiparty context.
2. Provision within wallet to set mix_in count at user preference for certain transactions, so that the
desired mix_in number may be established as part of the user's anonymity preference.
3. Wallet system which enables recurring donations contingent upon user specification of threshold,
such that with threshold count of W (where W = a BCN amount that includes the amount of microdonation,
and a fee, or a portion of fee for bundled microdonations which may be provided through an extension of
payment protocols), any transaction at or above W (where W includes microdonation and fee, and may also
include a transfer amount that is designated for a purchase where that amount to be transferred for
a purchase is distinct from any microdonation and corresponding microdonation fee amount) will trigger
a release of microdonations at preferences set by the user, wherever microdonations together are an amount
less than W and greater than zero, for microdonations which are at amounts of X, Y, and Z [or X+Y+Z],
as examples.
4. Code Snippets, Suggestions for Implementation (Published on Sept. 1, 2014):
Note that these are initial suggestions intended to stimulate development discussion,
and require vetting, refinement, and adjustment. These can thus be changed, used as the
basis for a new issue or pull request, or simply used for general implementation discussion.
[Dependencies](https://github.com/amjuarez/bytecoin/blob/master/README)
Under [TxDustPolicy](https://github.com/amjuarez/bytecoin/blob/master/src/wallet/WalletSendTransactionContext.h) at dustThreshold, addToFee, addrForDust, change to store dust
for incorporation into a future microdonation, and establish fee policy for microdonation.
Under [WalletUnconfirmedTransactions](https://github.com/amjuarez/bytecoin/blob/master/src/wallet/WalletUnconfirmedTransactions.cpp), establish and include pending microdonations in UnconfirmedTransactions,
and incorporate threshold count of W (see 2.a.3 above) as point where transfer of microdonations
is initiated.
Under [WalletTransferDetails](https://github.com/amjuarez/bytecoin/blob/master/src/wallet/WalletTransferDetails.cpp), establish exception for unusedDust.push_back
Under [WalletUserTransactionsCache](https://github.com/amjuarez/bytecoin/blob/master/src/wallet/WalletUserTransactionsCache.cpp), establish method for storing of user preferences for W (see 2.a.3 above),
as well as user preferences for which addresses shall receive recurring microdonation at amount
equal to user preference when W is met or exceeded.
Test in simplewallet CLI (intention is for eventual inclusion in an intuitive 'click-and-go' GUI
that saves user preferences within a simple but visually interesting BCN wallet).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment