Author Topic: Issue decentralized securities using Peershare  (Read 320 times)

Offline Jordan Lee

  • Jr. Member
  • **
  • Posts: 8
  • Karma: +3/-0
  • Peershare Architect
    • View Profile
Issue decentralized securities using Peershare
« on: September 28, 2013, 06:08:29 pm »
The shutdown of BTC Trading Corp and Litecoin Global has caused me to consider if there is a way for businesses to manage publicly held shares in a decentralized fashion. I realized it is possible to leverage Peercoin and proof of stake to accomplish this in an elegant and resilient way using a design I will call Peershare. I'd like to present my preliminary design and have my plan criticized and improved by the community. I am seriously considering doing most or all of the development of Peershare myself. Though I am very busy with prior development commitments, I think Peershare can be a critical enabler that brings depth and sophistication to the crypto economy so that it may be worthy of being prioritized above what I am currently focusing on. I'm hoping a community discussion will clarify whether that is true.

First I will talk about what the solution looks like technically. Next I will explain the advantages it offers over centralized security exchanges such as BTC Trading. I will wrap up by walking through what a couple Peershare use cases might look like.


Technical Specifications of Peershare

The solution will consist of two main components: (1) A new type of blockchain which uses only proof of stake. Multiple instances of it will be used as each one contains a single company's shares. (2) A substantially altered version of the Peercoin client which will facilitate the transfer of Peershares and the automated distribution of associated dividends in the form of Peercoins.

Peershare does not require any changes to the Peercoin blockchain or protocol (no hard fork).

Peershare blockchains:
To construct the template for company specific instances of a Peershare blockchain a Peercoin fork will be the starting point and then the following changes will be made:
1.   Completely eliminate proof of work.
2.   Require that each Peershare address in the blockchain contain a Peercoin public address as a property.
3.   Make the chain produce 100,000 shares in the genesis block (for an IPO).
4.   Because it is anticipated that many of these blockchains will exist on a single client, they need to be small. Transaction volume is expected to be much lower than that for Peercoin, so it would be appropriate to have less frequent and smaller blocks. A block generation target of 60 minutes [Update: may be appropriate with the time interval between blocks halving every two or three years. This would improve confirmation times over the long run while still reducing the cost of storing blockchains over time considering SSD storage pricing are halving every 12 to 18 months.]
5.   Each company starting a Peershare blockchain could choose their own parameters and alterations if they felt the defaults were not optimal for their needs.

Combined Peershare and Peercoin client:
1.   The user interface will have a drop down list to allow users to select Peercoin or a particular type of Peershare (for example, it might list Peercoin, Crypto-Trade, Basic Mining, Ltc Miner, etc).
2.   The Overview, Send coins, Receive coins, Transactions and Address Book which currently exist in the client will relate to the user drop down selection, which will be Peercoin or a specific type of Peershare. When a new Peershare address is created, the client also creates a Peercoin address. The public key is added as a property of the Peershare address while the Peercoin address and private key is added to the client's wallet in the usual way.
3.   Create a popup form accessible from the menu to distribute dividends. A user simply enters the total amount of Peercoins they want distributed as dividends and then selects the Peershare chain they want those delivered to from a drop down list. Behind the user interface a list of all Peercoin addresses contained in the selected Peershare blockchain is constructed along with the amount of dividend each should receive based on the proportion of shares held at each Peershare address. Peercoins are then distributed from the wallet as dividends through the Peercoin blockchain.


Advantages of Peershare over a centralized solution such as BTC Trading Corp

1.   Automated dividend distributions require no third parties: Dividends are sent directly to shareholder wallets from the issuer's wallet using only the Peercoin blockchain. The issuer need only enter the total amount of dividend to be sent. The rest is automated. After placing Peershares in a wallet in the same simple way a user places Peercoins in their wallet, dividends simply appear as Peercoins in the user's wallet when issued by a company.
2.   Somewhat decentralized exchange of Peershares: Exchange of Peershares are decentralized in the same way exchange of Peercoins are. For example, if Vircurex shut down and ceased trading Peercoins, they would continue to be available at BTC-e, Crypto-Trade, Bter, etc., without any disruption. The present scramble we are seeing by issuers using BTC Trading to re-list their securities on another securities exchange would never occur because the issuer provides the key functions of IPO and dividend distribution themselves so shares can be traded on many exchanges or even person to person.
3.   Lack of exposure to regulatory interference: GLBSE and BTC Trading appear to have been shut down by pressure from regulators. Peershare eliminates the need for securities exchanges to assume the responsibilities of executing IPOs, distributing dividends, and screening companies before listing. Regulations for companies issuing their own shares are much more limited than regulations for securities exchanges. Also, with Peershare, regulators would have to confront dozens or hundreds of independent businesses instead of being able to confront one single securities exchange. It's likely regulators would find businesses issuing Peershares to be in compliance or too small to bother with.
4.   Privacy: Peershare not does not require any identifying information from shareholders or even issuers. Issuers would not be in a position to require their shareholders to identify themselves if pressed to do so.

 
Hypothetical use case: Example of IPO

CryptoSafe is a brand-new start up that intends to develop a hardware wallet for crypto-currencies. They decide to use Peershare to raise funds through an IPO and later distribute dividends to shareholders.

CryptoSafe acquires the open source Peershare code and create a new genesis block. The genesis block contains 100,000 shares of CryptoSafe. They secure the network by minting Proof of Stake blocks which will add approximately 1% to the total number of shares each year. They secure an agreement with Crypto-Trade and Cryptsy to facilitate exchange of CryptoSafe shares. They keep 60,000 shares as an owner's stake and continue to secure the network with it. They transfer 20,000 shares to their Cryptsy account and 20,000 shares to their Crypto-Trade account. An IPO is put into motion by placing sell orders for these 40,000 shares at the IPO price, which is 20 Peercoins per share. Individuals may become shareholders by buying CryptoSafe shares at one of these exchanges and then withdrawing the shares from the exchange using their Peershare wallet. When all 40,000 shares are purchased, CryptoSafe will have 800,000 PPC to fund development of their hardware wallet.

Six months later CryptoSafe delivers their first product and receives their first revenue, which is the equivalent of 20,000 PPC. Fulfilling their promise to shareholders, the CFO opens the Dividend Distribution form from the Peershare client menu, then enters 20,000 PPC as the amount to distribute and selects CryptoSafe as the Peershare to distribute to. After confirmation, the client initiates Peercoin transactions to deliver a little less than 0.20 PPC for each of the approximately 100,500 CryptoSafe shares by examining the CryptoSafe blockchain. If a CryptoSafe address held 100 shares, then approximately 20 PPC would be sent to the Peercoin public address embedded as a property of that CryptoSafe address. The exact amount sent per share would be: (20,000 PPC - transaction fees) / total number of CryptoSafe shares.


Hypothetical use case – Example of delisting from a centralized security exchange

Best Miner is currently listed on a centralized security exchange such as BTC Trading and would like to delist and take advantage of Peershare instead.

First, Best Miner raises a motion to make the switch. It is approved. Next, they change a single number in the Peershare blockchain source code to make the genesis block produce the number of shares they have actually issued instead of the default number of shares. They start the blockchain and secure it using a server on hand. They arrange to have Best Miner Peershares traded at a couple of exchanges. Shareholders download the Peershare client configured to use Best Miner (which only requires a .conf setting) and each shareholder sends Best Miner their public Peershare address. Trading at the centralized exchange is halted. Shares are transferred to the Peershare addresses supplied. Trading continues at exchanges such as Crypto-Trade and Cryptsy.

Discussion

One of the issues to be managed is the cost of transaction fees incurred for dividend distributions. It is possible that fees could exceed dividends or take an unacceptably large proportion of them. Companies issuing Peershare will likely choose longer intervals for dividend distribution. Shareholders will learn aggregate all their shares into a single address to minimize transaction fees, which will be subtracted from the dividend sent by the software. Other methods for minimizing transaction cost for dividend distribution could evolve in the market outside the scope of the system. For instance, it is conceivable that an exchange could pass dividends along to their account holders off blockchain while inexpensively receiving the dividend themselves via the blockchain by keeping the shares of exchange account holders lumped together on a single address. There is also a good chance that the Peercoin transaction fee of 0.01 per KB could be reduced in the future.

Finally, I would like to invite comment and critical evaluation of this plan. In particular I welcome input from Sunny King, super3, hsk81.

If you are interested in using Peershare as an issuer please say so in this thread, or contact me by PM or Bitmessage me at BM-2D9MHYUoyS9DcRDrYHn4ESDxwNz4MkWb6F. When it is ready to implement I will be happy to offer assistance to Peershare issuers to make sure everything goes smoothly.
« Last Edit: September 29, 2013, 09:59:45 pm by Jordan Lee »
Bitmessage: BM-2D9MHYUoyS9DcRDrYHn4ESDxwNz4MkWb6F

Offline irritant

  • Jr. Member
  • **
  • Posts: 40
  • Karma: +3/-0
    • View Profile
Re: Issue decentralized securities using Peershare
« Reply #1 on: September 28, 2013, 06:35:51 pm »
interesting concept, still need to read it a couple of times,

4.   Because it is anticipated that many of these blockchains will exist on a single client, they need to be small. Transaction volume is expected to be much lower than that for Peercoin, so it would be appropriate to have less frequent and smaller blocks. A block generation target of 60 minutes and block size limit of 250 KB might be appropriate.

if it works, this could be the main use for ppcoin, and exceed the transaction volume of ppcoin (for a while), don't know if that really matters

Offline Jordan Lee

  • Jr. Member
  • **
  • Posts: 8
  • Karma: +3/-0
  • Peershare Architect
    • View Profile
Re: Issue decentralized securities using Peershare
« Reply #2 on: September 28, 2013, 07:05:44 pm »
if it works, this could be the main use for ppcoin, and exceed the transaction volume of ppcoin (for a while), don't know if that really matters

Peershare could become the main use for Peercoin, at least short to medium term. It's hard to know whether the Peershare blockchains would exceed the transaction volume of Peercoin. It depends on whether people trade Peershares or receive dividends on Peershares more often. Peershare trades occur on a Peershare blockchain, but all dividend disbursements create transactions on the Peercoin blockchain.
Bitmessage: BM-2D9MHYUoyS9DcRDrYHn4ESDxwNz4MkWb6F

Offline albi

  • Jr. Member
  • **
  • Posts: 8
  • Karma: +0/-0
    • View Profile
    • Personal website
Re: Issue decentralized securities using Peershare
« Reply #3 on: September 28, 2013, 08:47:32 pm »
This is genius. Not only it solves current stock trade problems, but also creates big possibilities for PPCoin... Please, just please don't stop working on that.
BTC: 1M1Xqm3GKNawhdKSNXgymYB72TBUnS9z4r
XPM: Aa8hrQ3R5HAjTHPw4zediU1EnHGft5UdgS

Offline MeBeingAwesome

  • Jr. Member
  • **
  • Posts: 44
  • Karma: +2/-0
    • View Profile
Re: Issue decentralized securities using Peershare
« Reply #4 on: September 28, 2013, 09:42:55 pm »
Love this idea!
PPC: PSKZWfowiCQuUCDQ5HJXt2Xyp7cJW5X2ev
XPM: AdKCSYFyp6LC88SySjmmQ3NzBSPiA8qUq4

Online sandakersmann

  • Jr. Member
  • **
  • Posts: 48
  • Karma: +2/-0
    • View Profile
Re: Issue decentralized securities using Peershare
« Reply #5 on: September 28, 2013, 10:51:48 pm »
Sounds very interesting  :)
Bitmessage: BM-2D92kLJrQffPFk2dwziMrayWu8rxt8K2th

Offline mhps

  • Full Member
  • ***
  • Posts: 73
  • Karma: +2/-0
    • View Profile
Re: Issue decentralized securities using Peershare
« Reply #6 on: September 29, 2013, 07:08:07 am »
Interesting idea. After reading it a couple of times, can you tell me in simple words why does PeerShare need PeerCoin? It seems any cryptocoin will serve the need (distrubuting dividend).
In your first example if the company has to mine on its specific blockchain in order to secure the network, will the newly generated blocks dilute existing share holders' stakes?
If there are a lot of trading of PeerShare (within an exchange or among individuals) wouldn't the block rate have to be high enough to accomodate the need to clear trading transactions?
PPC PU6zS8RRBWP2UxhuRFengGsu8n4tEYB5xV XPM AJAgBpPjGQoL38mrtW91dVqhbMHqu25vfG

Offline Jordan Lee

  • Jr. Member
  • **
  • Posts: 8
  • Karma: +3/-0
  • Peershare Architect
    • View Profile
Re: Issue decentralized securities using Peershare
« Reply #7 on: September 29, 2013, 10:41:36 am »
can you tell me in simple words why does PeerShare need PeerCoin? It seems any cryptocoin will serve the need (distrubuting dividend).

While it is certainly possible to implement Peershare using Litecoin or Bitcoin as the chain to distribute dividends, it is much cheaper to use Peercoin. One of the key limitations of Peershare will be transaction costs to distribute dividends. Right now the suggested Bitcoin transaction fee is $0.06 (0.0005 BTC), the Litecoin fee is $0.02 (0.01 LTC) and the Peercoin fee is $0.002 (0.01 PPC). While Bitcoin and Litecoin fees are not presently enforced by miners, I believe they will be as the 1MB block size limit is approached.

Long term, the transaction costs of all three of these networks is likely to change significantly to reflect the cost of maintaining the network. The cost to maintain Peercoin is much smaller than for proof of work coins -- I would say as proof of work is phased out it will become something on the order of 1% of the cost to secure the Bitcoin or Litecoin network. Therefore, we can safely predict that Peercoin transaction fees will be by far the lowest long term.

In your first example if the company has to mine on its specific blockchain in order to secure the network, will the newly generated blocks dilute existing share holders' stakes?

Basically if all sharesholders were mining, then the proportion of shares owned by each would not change, though the total number of shares would increase by 1% a year. Minting proof of stake blocks does not transfer wealth the way proof of work blocks do. In practice, some shareholders will not mine and they will basically be paying a 1% per year fee to those who do for the service of securing the network.

It should be noted that each Peershare issuer can choose whatever size block reward they think is appropriate. It could be 0%. In this scenario, the shareholders (most likely just the issuing company) would mine for free just to maintain the value of their shares. Companies tolerate lots of expenses to indirectly maintain their share value, so this would likely work. However, it would not be nearly as robust as giving all shareholders a direct incentive to secure the network.

If there are a lot of trading of PeerShare (within an exchange or among individuals) wouldn't the block rate have to be high enough to accomodate the need to clear trading transactions?

Yes, block generation needs to be frequent enough to clear all transactions. There is a trade off between blockchain size and speedy confirmations. If a person holds Peershares from a dozen different companies, they will need to maintain twelve blockchains to hold their shares without counter party risk, so blockchain size needs to be kept to a minimum. To make sure transactions clear, the block size limit could be kept higher. A block size limit of 1MB and an extreme block rate of 24 hours would still permit approximately 4,000 transactions per day. It is unlikely any Peershare will have more transactions than that anytime soon. Also, where Peershare ownership will tend to be more concentrated than Peercoin ownership (many companies will maintain a majority stake), hard forks to produce blocks more frequently to accommodate more transactions are practical.
« Last Edit: September 29, 2013, 10:48:36 am by Jordan Lee »
Bitmessage: BM-2D9MHYUoyS9DcRDrYHn4ESDxwNz4MkWb6F

Offline mhps

  • Full Member
  • ***
  • Posts: 73
  • Karma: +2/-0
    • View Profile
Re: Issue decentralized securities using Peershare
« Reply #8 on: September 29, 2013, 01:36:51 pm »
Can we say PeerShares are PPC forks issued by a company to ditribute shares that can be traded in decentralized ways, and can deliver dividend?

A block size limit of 1MB and an extreme block rate of 24 hours would still permit approximately 4,000 transactions per day. It is unlikely any Peershare will have more transactions than that anytime soon.

If you observing what happened to mcxFEE at mcxnow you may think otherwise. Many people buy shares to speculate. The exchanges can clear transaction internally. But to withdraw or to trade between individual share owners confirmaiton time matters.
PPC PU6zS8RRBWP2UxhuRFengGsu8n4tEYB5xV XPM AJAgBpPjGQoL38mrtW91dVqhbMHqu25vfG

Offline super3

  • Full Member
  • ***
  • Posts: 52
  • Karma: +3/-0
  • Hello I'm new here
    • View Profile
Re: Issue decentralized securities using Peershare
« Reply #9 on: September 29, 2013, 08:43:02 pm »
This could give us the edge we need in the alt market.

Offline Jordan Lee

  • Jr. Member
  • **
  • Posts: 8
  • Karma: +3/-0
  • Peershare Architect
    • View Profile
Re: Issue decentralized securities using Peershare
« Reply #10 on: September 29, 2013, 10:14:18 pm »
While struggling with the tension between having small blockchains and fast confirmations, it occurred to me that the problem with blockchains taking too much disk space is a transient problem because blockchain growth is essentially linear (for a given volume of transactions) while available disk space growth is exponential. With the cost of SSD storage halving every 12 to 18 months, the time interval between blocks could be halved every three years. This would allow for the cost of storing blockchains to continue to decline while also providing faster confirmations over time.

I have updated the original post to reflect this change.

I welcome comment on this change.
« Last Edit: October 01, 2013, 12:13:56 am by Jordan Lee »
Bitmessage: BM-2D9MHYUoyS9DcRDrYHn4ESDxwNz4MkWb6F

Offline mhps

  • Full Member
  • ***
  • Posts: 73
  • Karma: +2/-0
    • View Profile
Re: Issue decentralized securities using Peershare
« Reply #11 on: September 30, 2013, 07:55:54 am »
While struggling with the tension between having small blockchains and fast confirmations, it occurred to me that the problem with blockchains taking too much disk space is a transient problem because


Well once thin client becomes standard in cryptocoin wallets, the size of the blockchain will become irrelevant to most users any way because they don't have a local copy of the blockchain. Wait. Maybe for POS coins it is different?
PPC PU6zS8RRBWP2UxhuRFengGsu8n4tEYB5xV XPM AJAgBpPjGQoL38mrtW91dVqhbMHqu25vfG

Offline irritant

  • Jr. Member
  • **
  • Posts: 40
  • Karma: +3/-0
    • View Profile
Re: Issue decentralized securities using Peershare
« Reply #12 on: September 30, 2013, 02:33:18 pm »
is it not possible to transfer the dividends internally? so it would not cost tx fee? 
and i was wondering, is it possible to automate the pay-out of dividends to the new owner, when shares have been transmitted from A to B?    something like transferring complete addresses? maybe it can be done, if you use the IPO blockchain addresses for the dividends, and the ppcoin blockchain for ownership... ,   i dont know if this is really good solution, but it would be great if it could be automated somehow


Offline Sunny King

  • PPC & XPM Architect
  • Sr. Member
  • *******
  • Posts: 115
  • Karma: +30/-1
    • View Profile
Re: Issue decentralized securities using Peershare
« Reply #13 on: September 30, 2013, 06:35:53 pm »
Very good work Jordan!

From technical design point of view, I can try to provide some comments to simplify it:

1) Peershare could talk to PPC wallet for managing PPC balances and transactions without directly managing them. It would greatly simplify Peershare client as it then does not need to directly connect to PPC network and access PPC block chain. This means a PPC wallet should be running in server (Qt) or daemon mode. When Peershare wants to create a PPC address it could do so via the dumpprivkey and importprivkey facility to sync between the two clients.

2) To run a PPC fork without proof-of-work probably needs some work, the first step is to create genesis block in such a way to work around the 30-day limit. This involves using a timestamp say 90 days older in the genesis block and create at least many thousands of outputs in the genesis block in order to facilitate the initial proof-of-stake generation.

Offline Jordan Lee

  • Jr. Member
  • **
  • Posts: 8
  • Karma: +3/-0
  • Peershare Architect
    • View Profile
Re: Issue decentralized securities using Peershare
« Reply #14 on: October 01, 2013, 01:14:47 am »
From technical design point of view, I can try to provide some comments to simplify it:

1) Peershare could talk to PPC wallet for managing PPC balances and transactions without directly managing them. It would greatly simplify Peershare client as it then does not need to directly connect to PPC network and access PPC block chain. This means a PPC wallet should be running in server (Qt) or daemon mode. When Peershare wants to create a PPC address it could do so via the dumpprivkey and importprivkey facility to sync between the two clients.

I'm glad to see Sunny valuing simplification. I have seen a lot of development projects fail because too many features were attempted at once. I'm definitely in favor of delivering an absolute minimum set of functionality at first, and leaving the option to add more features in subsequent releases.

In line with the value of simplification, I think Sunny's suggestion of leaving the Peercoin client untouched and separating the Peershare client is a great one. Even though the design is slightly less user friendly, it should speed development considerably. As I was considering this change, I realized it would be practical to simplify the client design even further by making the Peershare client specific to a single Peershare blockchain initially. Once again, this is not as user friendly as a client that can manage multiple Peershare blockchains, but it will save quite a bit of development time and bring the initial release of Peershare forward in time. Support for multiple Peershare blockchains in a single client will be a high priority for a second release. A combined Peercoin and Peershare client could later be be built into a third or subsequent release.

2) To run a PPC fork without proof-of-work probably needs some work, the first step is to create genesis block in such a way to work around the 30-day limit. This involves using a timestamp say 90 days older in the genesis block and create at least many thousands of outputs in the genesis block in order to facilitate the initial proof-of-stake generation.

This is pure gold from someone with much more familiarity with the architecture of the Peercoin blockchain than I currently have. This sort of suggestion will save me quite a bit of time. As I move forward I will post more details about my plan and approach to development. I hope Sunny and others with relevant expertise will jump in with suggestions like this about the best way to proceed to implement specific features.
Bitmessage: BM-2D9MHYUoyS9DcRDrYHn4ESDxwNz4MkWb6F