Skip to content

Instantly share code, notes, and snippets.

@metacoin
Last active April 29, 2016 15:37
Show Gist options
  • Star 5 You must be signed in to star a gist
  • Fork 2 You must be signed in to fork a gist
  • Save metacoin/10dea79e15294950c8c3 to your computer and use it in GitHub Desktop.
Save metacoin/10dea79e15294950c8c3 to your computer and use it in GitHub Desktop.

Alexandria

Keeping History Honest

Joseph Fiscella

joseph@blocktech.com

Introduction

With the advent of the decentralized proof-of-work system introduced in Satoshi Nakamoto’s “Bitcoin: A Peer-to-Peer Electronic Cash System”, and because of the subsequent proliferation of alternative versions of this software, the idea of a decentralized ledger of cryptographically proven information has been popularized[1].

Bitcoin is a clever solution to the Byzantine Generals Problem, which describes the issue of trusting data transmitted over a network where there exists the danger of faulty or dishonest broadcasting nodes[2]. The Bitcoin protocol mandates that all information on the Bitcoin network is stored in the blockchain, which is a data structure comprised of blocks found via the proof-of-work mining algorithm. Bitcoin’s timestamping mechanism creates a distributed trustless consensus network that can be used to prove information existed before a certain time.

Using any digital signature algorithm, it is also possible to prove that the information in the blockchain is certified by a user who knows the private key matching the corresponding public key in that signature.

Purpose

Enter Project Alexandria. Combining the concept of a decentralized, trusted, timestamped ledger with the idea of data permanence, it is a solution to the problem of data disappearing from the internet. Project Alexandria is censorship-resistant, impossible to change, cannot be deleted, and combats data loss due to catastrophe and negligence. Using Florincoin, a peer-to-peer digital currency based on Bitcoin, data can be stored forever in the blockchain. Florincoin is unique in its simplicity; unlike Bitcoin, the Florin protocol allows for external data to be stored in blocks.

Bitcoin and peer-to-peer systems are currently difficult to understand for the majority of internet users, and Project Alexandria will provide a means for everyone to have a chance to harness this new technology. Project Alexandria will have a web front-end as well as a locally running client for independent verification. The Florin blockchain, via a proof-of-existence protocol similar to CommitCoin, will store relevant data for users[3].

Storage of Information

Storage of Information Information in the Florin blockchain is stored in transactions submitted to the network. The technical specifications are as follows:

  • Each block has a set maximum of ~1 MB (1,000,000 bytes).
  • New blocks are generated every 40 seconds.
  • Each transaction can store up to 528 bytes of text.
  • Each transaction, without any text, is at minimum 300 bytes.
  • ~621 KB of text data can be stored per block.
  • It is recommended to provide a 0.25 FLO fee per transaction.
  • Transactions can be sent to the blockchain for free, but are low priority, and may not be mined for days/weeks/months (depending on network conditions).
  • 134,136,000 KB of data (134 GB) can be stored in the blockchain per day.
  • It would cost 63,504,000 FLO to store 134 GB in the blockchain. Only 41,000,000 FLO exist right now, and only 160,000,000 will ever exist. The process for storing information can be manual or automated; automated accounts will provide payment in advance while manual users will pay-as-they go.

License

GPL.

References

  1. Satoshi Nakamoto, 2009, “Bitcoin: A Peer-to-Peer Electronic Cash System”.
  2. Lamport, L, 1982, “The Byzantine Generals Problem”.
  3. Jeremy Clark and Aleksander Essex, 2011, “CommitCoin: Carbon Dating Commitments with Bitcoin”.

Hooray, Free Software!

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