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

Bitcoin Verde Explorer: CashAddr, SLP, and Memo Support #10

Closed
joshmg opened this issue Feb 3, 2020 · 3 comments
Closed

Bitcoin Verde Explorer: CashAddr, SLP, and Memo Support #10

joshmg opened this issue Feb 3, 2020 · 3 comments
Labels
enhancement New feature or request explorer Related to the explorer module funded Sponsorship goal reached for this issue funding wanted Sponsorship is requested for this issue node Related to the node module

Comments

@joshmg
Copy link
Member

joshmg commented Feb 3, 2020

Bitcoin Verde Explorer: CashAddr, SLP, and Memo Support

GitHub Issue #10

Problem Description

Currently Bitcoin Verde's Block Explorer only provides basic support for CashAddr and SLP.
The Bitcoin Verde node itself supports rich support for CashAddr and SLP, which means users without access to the node via RPC have a degraded experience when compared to readily available alternatives.

The Bitcoin Verde node and explorer currently do not have any support for Memo.

End-users and developers rely on block explorers to check the validity of their actions on the blockchain.
The support provided by the current state of the explorer is considered minimal, which deters users from using the explorer to its full potential.

Fully supporting the SLP and Memo actions taken by users would provide viable redundancy for other block explorers, and increases the choice of platform for users and those running their own block explorer.

These additional features enable other developers to easily review what Bitcoin Verde considers valid.
This is especially valuable for OP_RETURN-like applications, since their status is not inherently validated by miners.

Value Proposition

This solution will provide the following benefits:

  • attract users to the Bitcoin Verde explorer that prefer the use of the CashAddr format
  • attract users to the Bitcoin Verde explorer that use SLP for tokens
  • attract users to the Bitcoin Verde explorer that use the Memo protocol for messaging
  • allow other developers to easily review the validity of their OP_RETURN-based transactions to cross-validate implementations and consensus
  • keep support for the legacy address format while also adding CashAddr support

Solution Overview

Since the Bitcoin Verde node has rich support for SLP and CashAddr, most of the improvements performed will only affect the User Interface of the Bitcoin Verde Explorer.

CashAddr Support

  • The explorer will enable a toggle setting to display between Legacy addresses and CashAddr addresses.
  • This preference will be remembered by application for each user.
  • The user will be able to query for both Legacy and CashAddr addresses.

SLP Support

  • The explorer will display a tabulated view for all SLP functions (Genesis, Send, Mint, etc) per transaction.
  • The explorer will display an icon associated with the SLP token, similar to simpleledger.info.
  • The explorer will continue to display the SLP validity of SLP-like transactions.

Memo Support

  • Bitcoin Verde will be extended to parse Memo protocol transactions.
  • Memo transactions will be indexed by the node.
  • A routine will be implemented to back-port the indexes for nodes that are currently synced.
  • RPC calls will be updated to include Memo data, similar to the functionality provided for SLP.
  • The explorer API will be updated to include transaction Memo data.
  • The explorer will display tabulated Memo data, similar to bitcoin.com.

Solution Milestones

  1. CashAddr Support

    The first milestone will consist of all User Interface changes to the explorer to facilitate CashAddr.

  2. SLP Support

    The second milestone will consist of all User Interface changes to the explorer to improve existing SLP support.

  3. Bitcoin Verde (Node) Memo Support

    The third milestone will consist of all node changes required to support the Memo protocol, including RPC calls.
    This milestone excludes all Memo support for the explorer.

  4. Bitcoin Verde (Node) Explorer Support

    The fourth milestone will consist of all explorer changes required to support the Memo protocol.

Estimated Relative Complexity

  • Milestone 1 - 8 / 80 (10%)
  • Milestone 2 - 16 / 80 (20%)
  • Milestone 3 - 40 / 80 (50%)
  • Milestone 4 - 16 / 80 (20%)

Budget

This proposal does not have a minimum starting budget.

Completing this proposal will require approximately 80 hours.
At a rate of 0.5 BCH/hr, the total requested budget for this proposal is 40 BCH.

Funding Address

Funding this proposal may be sponsored by sending Bitcoin Cash to the following address:

1MEM6WAbHmDc2yi44HoneBtjc5xoeT9hcy
(bitcoincash:qrw73v53ewavdd4ezr5wd8tn2pyqeyhmxgekjtjr0x)

Authorization Signature:

The signature is signed with our primary donation address which can be found on bitcoinverde.org.

The signature message consists of the double-sha256 of the following format:

Issue-Number | Issue Title | Funding Address | Estimate Hours | Budget BCH

Notes:

  1. The pre-image includes the concatenation symbol.

Pre-image:

10|Bitcoin Verde Explorer: CashAddr, SLP, and Memo Support|1MEM6WAbHmDc2yi44HoneBtjc5xoeT9hcy|80|40

Signature:

HHaC5XDFXl7YWtabXH6PCGafq0BTZvq3Xa0yqOIpxwkYBRR4s6uhcXX/G6IrNYQvkqUa62Jhuo7X7HIXNb1IcwA=

@joshmg joshmg added enhancement New feature or request funding wanted Sponsorship is requested for this issue explorer Related to the explorer module node Related to the node module labels Feb 3, 2020
@joshmg
Copy link
Member Author

joshmg commented Feb 4, 2020

Milestone 1 completed with Commit e2134af03787f09195de0f54dea8258a890caa7c .

@joshmg
Copy link
Member Author

joshmg commented Feb 7, 2020

Milestone 2 completed with Commits 0b286927722706a832acb801b02ad48d72bf3612 and 2f09474cbf46fa69eac34f0cc5741e85fe0533b1.

@joshmg joshmg added the funded Sponsorship goal reached for this issue label Aug 25, 2020
joshmg added a commit that referenced this issue Nov 9, 2020
    Reduced disk footprint to less than 300GB.
    Reduced initial sync to less than 24hrs.
    Reduced required CPU/Memory resources.
    Resolves funded feature #7.
    20201115 HF support (ASERT DAA).
    Stabilizes block time intervals at 10minutes/block.
    CashAddr and SLP support for Explorer
    Partly resolves funded feature #10.
    Improved logging performance and space-efficiency.
    Added historic checkpoints support to improve security during IBD.
    Fixed an issue preventing communication to Bitcoin Unlimited nodes.
    Added peer-discovery via DNS.
@joshmg
Copy link
Member Author

joshmg commented Mar 15, 2021

Memo completed and merged into development and is available on bitcoinverde.org.

Relevant commits: 7c996d9, 4843cb7, 1f6a77f.

@joshmg joshmg closed this as completed Mar 15, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request explorer Related to the explorer module funded Sponsorship goal reached for this issue funding wanted Sponsorship is requested for this issue node Related to the node module
Projects
None yet
Development

No branches or pull requests

1 participant