Skip to content

Latest commit

 

History

History
66 lines (49 loc) · 1.55 KB

mip-0005.md

File metadata and controls

66 lines (49 loc) · 1.55 KB
MIP: 5
Title: Documents
Author: Jason Chavannes <jason@memo.cash>
Status: Draft
Created: 2018-09-29

Abstract

Collaboratively add and edit documents stored on the blockchain. Use URI pointers to link documents together.

Motivation

Hyperlinking is the one of the core functionalities of the web. One of the drawbacks is to run a website you must host it 24/7 at a publicly available and discoverable location. Because of this many people rely on services to host their content for them. Using the blockchain, a one-time payment can get your document hosted indefinitely. This not only creates an uncensorable internet, it makes it practical to control your own content.

Specification

Add new protocol actions:

Action Prefix Values
Create page 0x6d40 location(181), title(181-len(location)), content_tx_hash(30)
Update page 0x6d41 last_page_tx_hash(30), update_code(2), <...>
Update content 0x6d42 (last_content_txt_hash(30)), content_diff(217/187)

Update codes:

Set page location 0x01 location(181)
Rename page 0x02 title(181)
Remove page 0x03
Set content 0x04 tx_hash(30)
Set image 0x05 image_uri(181)

Format of content diff:

Add data 0x01 char_start content
Remove data 0x02 char_start char_end
Update data 0x03 char_start char_end content

Example

  • 01 Hello world
    • Hello world
  • 02 5
    • Hello
  • 03 2 y
    • Hey

Reference Implementation

Planned

See Also