The following is a transcript of the first chat between Sunny King (Peercoin) and Daniel Larimer (Bitshares). It took place on 05/08/14.
Sunny King: Hi guys
NewMoneyEra: Hi Sunny, It is great to hear from you.
Sunny King: Thanks We have a chat today here today with folks from bitshare I think
NewMoneyEra: Oh, Ok. I really think your previous chat about security of PoS for Peercoin was clarifying to many.
NewMoneyEra: It sure was helpful to me
Sunny King: that’s good to hear. There are quite some questions collected recently from the community
Sunny King: so if we have time afterwards maybe I can go through a few of them
NewMoneyEra: Well, until others check in on bitshare, may I ask a couple of questions?
Sunny King: sure
Jordan Lee: Hi everyone
NewMoneyEra: Mike Hearn says his next implementation of bitcoinj will be exclusively through tor. What do you think of that?
NewMoneyEra: hi Jordan
Sentinelrv: Hey everyone, I was able to get away from work just for a little bit.
bytemaster: Hello everyone
Jordan Lee: Hi bytemaster
Sunny King: @NewMoneyEra having a good proxy/tor support is a good thing I feel that bitcoin has regressed a bit in this regard since v0.8
fuznuts: Today is Thursday, the 8th of May, 2014 Welcome to another Beyond Bitcoin Dev Voice Hangout. Today we have two of the greatest minds in crypto meeting to converse and answer the community’s questions. Daniel Larimer visits Sunny King in his humble abode for coffee and biscuits. We remind you to visit the BeyondBitcoinShow subreddit to ask and vote on questions. The format for today’s discussion will be to cover the beyondbitcoin community voice’s questions and then open chat. I will gladly moderate this and post the questions in chat in order of priority from highest voted to least voted.
fuznuts: Are you both ready Dan and Sunny?
Sunny King: feel free to go ahead, so let’s introduce each other first
fuznuts: From Xeroc: I wonder weather peershares and bitsahres could collaborate. As I see it they are more like competitors, atm. Both use separate chains for separate DACs. Both have a main distribution of initial value by some coin (AGS/PTS, and PPC). Not sure if its possible to join efforts. If not, competition is of course useful
bytemaster: I am Dan Larimer, head of the bitshares project, creator of the term DAC (Distributed Autonomous Company) and inventor of Delegated Proof of Stake
fuznuts: what are your thoughts Sunny? Dan?
Sunny King: nice to meet you Dan
bytemaster: Our goal with bitshares is to enhance the economic model of crypto-systems with an eye toward profitability based upon viewing the ledger as a corporate ledger and applying standard accounting procedures
bytemaster: I am glad to meet with you Sunny
Sentinelrv: I just wanted to say for the record that Jordan Lee is responsible for Peershares, so he should chime in here as well if he wants to.
bytemaster: From what I heard through the grape vine our philosophies of freedom are similar and I look forward to seeing how we can work together
Sunny King: @Xeroc there is certainly such possibility in the future, Dan and I just meet for the first time
bytemaster: What do you know of what we are doing?
Sunny King: So Dan in your model of corporation I assume that both share holders and employees can be anonymous?
bytemaster: ‘Corporation’ is just a metaphor
bytemaster: ie: Bitcoin is a DAC
bytemaster: The goal of the metaphor is to perform economic analysis of the design of systems.
Sunny King: I haven’t read much about your work yet but I did give it a bit thought last couple months regarding this direction of cryptocurrency
Jordan Lee: As open source projects, I’m sure there will be opportunities to learn from one another and share code. The Peershares template and and Bitshares X have very different designs and goals, however.
bytemaster: I see you adopted the ‘Shares’ metaphor for Peershares
fuznuts: could you elaborate Jordan?
Sunny King: I think a new class of digital assets would rise together with cryptocurrency that I would call ‘cryptoproperty’
bytemaster: I think one way we could cooperate is to help establish a common language and definition of decentralizing and crypto-assets
bytemaster: could you describe crypto-property?
bytemaster: we have been calling Bitcoin and Peercoin crypto-equities
Jordan Lee: yes, that is right. They represent ownership of the network and whattever business they are associated with.
Sunny King: that means a new class of private property that’s purely controlled by keys to a decentralized network
bytemaster: BitUSD is a digital asset that is market-pegged to the value of a dollar (within certain tolerances)… which is different from a IOU_USD tracking system.
bytemaster: ie: crypto-property could be a registration for vehicle titles
bytemaster: but because the DAC/Network is not sovyn over legal ownership it is almost meaningless
bytemaster: So I think there are two classes of digital assets… ones with ‘intrinsic value’ and ones that are ‘ious’
bytemaster: ie: bitcoin/peercoin have intrinisic value (loaded term I know) because they are not an IOU
Sunny King: not in that sense, it’s in the sense that the holder of the key has full control of the property ownership, ie cannot be deprived by other entities
fuznuts: could you give an example for the audience Sunny?
bytemaster: I agree with that
bytemaster: A bitcoin, peershare, namecoin name, and BitUSD are examples of crypto-property
bytemaster: A Ripple IOU credit is not
bytemaster: How are you (Sunny) developing new kinds of cryptoproperty and how does that differ from crypto-currency?
Sunny King: for example, think about games/simulations such as secondlife, the virtual goods/assets in a game, currently is not cryptoproperty but has some potential to become one
bytemaster: Great examples Sunny
fuznuts: so this would be a good tie in with the next question–if you guys are ok that
bytemaster: So someone could create a virtual world like second life where the property rights / land rights / etc are managed on a blockchain
fuznuts: if not I’ll put it on the backburner
fuznuts: Next Question with a solid tie-in is from Fuzzybear: My question would be what business would each of you most like to see incorporate Peershares, Peercoin and bitShares?
Sunny King: of course IOU’s, shares and financial assets all have the potential to become cryptoproperty at least to some degree
bytemaster: The value of that virtual world would depend upon the client used to interact with it
bytemaster: Fuzzy Bear: I would like to see merchants using BitUSD for money with ATMs… and of course centralized exchanges is the #1 goal
bytemaster: I think there is a future for crypto-technology to replace the record keeping rules and procedures for major corporations.
Sunny King: Dan though I am not convince about your bitUSD idea, unless there is a mechanism for redeemability?
bytemaster: BitUSD is an experiment that we will run to prove whether a prediction market can function as a market pegging solution.
bytemaster: It is redeemable for $1 worth of BTS
bytemaster: it is similar to a contract for difference
bytemaster: except we make the long positions fungible
bytemaster: In the worst possible outcome we have multiple trusted sources publish price feeds upon which margin is called.
Sunny King: What do you mean by $1 worth of BTS? Is there anything relevant to dollar inside BTS network?
bytemaster: At the end of the day 1 BitUSD is backed by 2 UDS worth of BTS (initially)
Jordan Lee: how will the price of BTS be determined within the context of the system?
bytemaster: Users of the system place bids, asks, and short positions
bytemaster: someone going short pledges BTS as collateral
bytemaster: thus the short and long agree to the price
bytemaster: (there is a minimum market depth required before trading can begin)
bytemaster: So two people who each old BTS make opposite bets about which way the dollar will move against BTS
bytemaster: the person who thinks the dollar will go down places funds in collateral which is used to payout in case the dollar goes up.
bytemaster: At the time of the payout the person who thought that dollars would go up would get enough BTS to be worth about $1 on the market
bytemaster: You can have a ‘dollar’s worth of anything’ including bitcoin, gold, or silver
bytemaster: what you really care about is purchasing power
bytemaster: so someone wanting to leverage up on BTS can make a leveraged bet against someone who wants price stability of a dollar.
Sunny King: So there is some value at issuance initially, but still there is no credible link to USD. For that matter you can call it bitAnything it’s just a name change?
bytemaster: you pair these people up on the blockchain and they exchange risks… one gets leverage, the other stability
bytemaster: The credible link to USD is the same thing that gives prediction markets credible links to election outcomes, the number of beans in a jar, etc.
bytemaster: every member of the community is attempting to predict what everyone else will do in the future
fuznuts: This question from Liondani may be an interesting tie-in here: What would you advice to Dan Larimer to make bitshares even more powerfull? I mean if you were Dan, what would be your next steps to have the maximum gains/advantages? Have you something in your mind that is probably very interresting and could fit on bitshares philosophy? Would you even change something?
bytemaster: and investing accordingly
bytemaster: Liondani, I think Sunny and I still need to get to understand each other first
bytemaster: perhaps for this discussion we can focus on more readily understood DACs… lottery, DNS, etc?
Sunny King: @Liondani That’s a tough question for me, as I am really no expert on bitshare, so far I am mostly only aware they operate the protoshare network and will issue many more blockchains known as DAC
bytemaster: Have you read our DPOS white paper?
bytemaster: I think what we share in common is proof of stake
Sunny King: no
Sunny King: but feel free to give a quick summary for me
bytemaster: In summary, the shareholders continuously elect keys to deterministically sign blocks on a fixed schedule.
bytemaster: clients automatically vote for or against these ‘delegates’ based upon their performance
bytemaster: blocks can be produced at high speeds
bytemaster: with high reliability
bytemaster: and 100% of shareholder opinion is reflected
bytemaster: but it is automatic in most cases
bytemaster: similar to Nxt transparent forging but instead of random shareholders, a consensus group of professionals that can be fired at will
Sunny King: what kind of performance measure you use for the automatic voting process?
Jordan Lee: how will votes be cast and communicated?
bytemaster: votes are automatically cast with every transaction, no special process
bytemaster: # of blocks missed… #of transactions received but not included in the block #of transactions included that were not previously broadcast
bytemaster: they can also be fired with crypto-graphic proof of forgery
bytemaster: or production of an invalid block
bytemaster: Lets talk about issues I see with other POS systems and I would like your opinion
Sunny King: Is the purpose of this to defend against 51% attack?
bytemaster: Primary purpose is to decide who should produce the next block
bytemaster: To do so in a way that does not involve any ‘mining randomization’
bytemaster: In a way that minimizes required mining rewards
bytemaster: Keeps peoples private keys off line
bytemaster: allows us to increase block production rate without forks
bytemaster: and yet still has everyone represented
bytemaster: encourages high quality and reliablity
bytemaster: Users can vote for or against any delegate
bytemaster: which means that even if someone has 45% of the shares, 45% of the others can vote against their delegates and the resulting 10% will decide
bytemaster: but delegates only have one power: to exclude transactions
fuznuts: *link to DPOS White Paper: http://bitshares.org/security/delegated-proof-of-stake.php *
bytemaster: if they abuse this power then they are replaced.
Jordan Lee: So when a transaction is made, a single vote is entered for or against a particular delegate?
bytemaster: every unspent output is voting for or against someone…
bytemaster: there is one vote per share
bytemaster: total of all votes (For and against) == money supply
Sunny King: Seems quite complex to me. Do you have a reasonable implementation of it yet?
bytemaster: Yes, I have an implementation that was tested briefly last week
bytemaster: and an updated version that will be out this week
Jordan Lee: how are the votes determined, communicated and counted?
bytemaster: every ‘unspent output’ is labeled with who those shares are voting for
bytemaster: (or against)
Sunny King: What happens if the delegates collude to exclude all votes against them?
bytemaster: There are 97 delegates
bytemaster: if 51% collude
bytemaster: and are provably excluding blocks from the 49%
bytemaster: it is no different than a Bitcoin 51% attack… and the shareholders have the option of a hard fork to continue
bytemaster: with bitcoin you cannot hardfork a 51% attack
bytemaster: key: eliminate barriers to entry
bytemaster: question for peercoin: does hashing power give two people with identical stake a different advantage?
Sunny King: no
bytemaster: how does peercoin select the next block producer?
Sunny King: proof-of-work is used only for minting purpose, it does not directly involve in network security
bytemaster: once minited
bytemaster: you must select the producer of the next block
bytemaster: how do you decide who?
Sunny King: that’s the thing, there is no ‘voting’ involved, any client could test for their coins for eligibility to mint block
bytemaster: can two coins be eligible at the same time?
Sunny King: yes, but that’s similar to two blocks found around the same time in bitcoin, not common
bytemaster: However an important difference is that the hashing operation is done over a limited search space (more specifically one hash per unspent wallet-output per second) instead of an unlimited search space as in proof-of-work, thus no significant consumption of energy is involved.
Sunny King: there is a proof-of-stake difficulty similar to the proof-of-work difficulty used in bitcoin, to keep block rate relatively constant
bytemaster: that is the key I was looking for
bytemaster: so someone with more hashpower could search the full space faster
bytemaster: someone with more smaller balances could search faster still
Sunny King: not really, it’s meant that typical computer can exhaust the search space pretty easily
bytemaster: but you get one search space per output right?
bytemaster: So if you have 10000 outputs + hash power to process them you have an advantage over someone with 1 output with the same total balance
Sunny King: right. it doesn’t give you any advantage if you split coins becuase the chance of getting a hit is proportionally smaller
bytemaster: correct… but the hash rate is 2x
bytemaster: Your system is clearly proven and solid…
bytemaster: and in most cases we are splitting hairs on theoretical attacks
fuznuts: potential malevolent actors like to split hairs too…please do not be afraid to be open about how you think attacks may occur
Sunny King: if you have hundreds of thousands of small coins, you have the same minting power if you combine them into larger output. Granted too many small coins may cause a typical computer unable to keep up with minting, but that’s only a disadvantage to attackers
bytemaster: I think the philosophy is what is important and in my case that philosophy is that control belongs in the hands of shareholders
bytemaster: PEERCOIN does that to some extent, it would be nice if you did not have to leave your private keys online to have an influence
bytemaster: It would also be nice if you could delegate it.
Sunny King: If you automatically votes wouldn’t it need to have private keys online as well?
bytemaster: One of the advantages of having delegates hired for the position is that you can scale to large blockchains with high bandwidth requirements while still keeping power in the hands of the shareholders.
bytemaster: You have to be online to sign a transaction…
bytemaster: no special voting process takes place.
bytemaster: You can observe behavior while having your keys locked.
bytemaster: no one makes special transactions to vote unless there is some kind of emergency and urgent need to fire someone… normal transaction volume will fire a non-performant delegate in less than 24 hours.
nox-: A bit late to the discussion, wouldn’t this be the same as being as to mint on a three party signed coin? You wouldn’t need to leave your computer on/wallet online (same as ‘delegating’ achieves) and the blocks are still minted from your staked coins
bytemaster: Question: how do light weight clients validate a peercoin transaction
Sunny King: yes it does bear some similarity
bytemaster: Lets make some assumptions about an attacker…
bytemaster: they would hold a large number of coins to accumulate a large amount of coinage
bytemaster: in many small balances.
bytemaster: as time progresses the probability of them finding X blocks in a row grows
bytemaster: especially if most of the normal miners continually consume their coindays
bytemaster: so as an attacker wishing to perform a double spend… I just wait… build up power… then attack
nox-: Doesn’t the coinage of the staked coins clear once you’ve found a new block? (Might be wrong on that, but sure I read it somewhere)
Sunny King: For the patient attackers we put in a limit since v0.2 the coin-age use for stake minting power is limited to 3 months max.
Sunny King: @nox- yes coinage of the stake is consumed after a sucessful mint
nox-: And assuming we’re talking about an online wallet service where people can store their coins to avoid leaving their computers on, it won’t be in their interest to perform an attack on the network
bytemaster: I am afraid we may have gotten off track on POS debate Could you tell me more about your goals and visions going forward
bytemaster: it is good that there is a max of 3 months…
Sunny King: My immediate goal is to keep peercoin and primecoin network in good shape, updated with the progress of bitcoin network
bytemaster: (having a 3 month max doesn’t change the equation too much for an attacker though assuming the regular miners are always attempting to maximize the blocks they find and thus minimize the average CDD available to the honest individuals)
bytemaster: How does peershares fit into everything?
Sunny King: On the cryptoproperty front I think Jordan’s team is doing some good work. I would probably look into bitcoin sidechains to see how it should work with peercoin and primecoin
bytemaster: Any metric on what percent of peercoin is being used for mining?
bytemaster: Lets talk about sidechains
bytemaster: because from my understanding of the system it requires approval if BTC miners or it relies entirely on hashpower for security
bytemaster: Jordan’s team? Link?
Sunny King: Oh Jordan is leading the peershare project.
bytemaster: I would like to understand the sidechains proposal better too to see if it can be adapted to POS
bytemaster: so perhaps that is an area of collaboration… if side chains can work ( and I have my doubts) then it would be a great innovations.
SirCoinGame: that’s the team link
fuznuts: this is a question I had on the subreddit: This question is for both Sunny King and Bytemaster: Are their any projects that require client-side testing but need more people in order to improve progress? Would you like to see both community’s pool their resources to help both projects along?
Sunny King: Sure we could help each other on that. As far as I can see it should be okay, I have thought about similar designs way back when I talked about data applications in peercoin
Sunny King: I used to call them auxiliary blocks/blockchains
bytemaster: it seems to me that the main chain cannot validate a side chain without relying on a simplifying assumption such as a trusted signature or hash power
bytemaster: otherwise the side chains have to be fully processed by the miners on the main chain
Sunny King: Dan so how many blockchains are your team currently running or close to launch and how many are in the pipe?
bytemaster: PTS is the only one currently running
bytemaster: BTS X, ME, Music, DNS, and Lotto are in the pipe
bytemaster: they share 95% identical code
bytemaster: the main holdup at this point is the POS algorithm… which I suspect we will have worked out this week
Sunny King: Using bitcoin dev’s term, if it’s pegged one way, i.e. bitcoin is destroyed when moving to sidechain, it’s probably easy to achieve opt-in
bytemaster: that doesn’t achieve a peg… with BitBTC under BitShares X we can peg a digital asset to BTC just like the dollar (assuming it works).
bytemaster: ie: proof-of-burn doesn’t give something value.
bytemaster: except as an upgrade approach
Sunny King: I don’t think data applications always require two-way peg, but if bitcoin achieves that with opt-in it would be nice.
fuznuts: doesnt it achieve the effect of giving the bitcoins still in circulation an increase in value?
bytemaster: yes, you pay bitcoin holders a ‘dividend’ when you apply proof-of-burn
bytemaster: and then you issue assets in the new system.
bytemaster: its an allocation strategy… that encourages migration from Bitcoin…
Sunny King: no the term peg used in sidechain term is different from what you mean in bitUSD
bytemaster: I know it is
bytemaster: the peg occurs because the funds are frozen on BTC and then reactivated
bytemaster: with our system it is pegged to the value, but not by redeemablility
fuznuts: only to redeemability in BTS, correct?
bytemaster: in effect I could summarize side chains like so:
bytemaster: you send Bitcoin to an address controlled by the ‘private key’ of the side chain.
bytemaster: You can spend the funds on the bitcoin network again by signing with the ‘private key’ of the side chain.
fuznuts: so that is effectively an infusion of capital
bytemaster: NXT is soon to implement Transparent Forging
bytemaster: documentation on it is thin
bytemaster: but from what I can gather it allows people to delegate their forging power to other keys
bytemaster: they then ‘transparently’ select the next address to forge a block
bytemaster: if they do not forge a block, the address is removed from the set of potential addresses for 24 hours
fuznuts: as opposed to delegating based on defined parameters in transparent code
bytemaster: they do not use it today
bytemaster: (from what I can gather… I would love an opportunity to pick their brains for a bit)
fuznuts: DPOS would effectively take out the potentially corrupting “human element” correct?
bytemaster: NXT does too
bytemaster: With NXT every address is a delegate
fuznuts: but I can choose to delegate you
bytemaster: that gets to produce a block proportional to their stake.
fuznuts: which means 51% of the network could do the same and thus achieve a 51% attack?
bytemaster: it would be like having no vote limit on delegates in our system, nor any negative votes
fuznuts: if 51% of the assets are owned by just a few people, that is an issue…or am I missing something?
bytemaster: and then randomly selecting a delegate to vote based upon their total delegated balance
bytemaster: the weakness is of course the randomization process
bytemaster: it seems like what we all need to do as idea leaders in this community is get together sometime
bytemaster: and really hash out all of these different ideas.
fuznuts: this is a good point
fuznuts: as an initial meetup
bytemaster: Sunny, Nxt, etc all have bright people
fuznuts: this was a good introduction
bytemaster: we all have different insights and are attempting to solve the same problem.
bytemaster: finding a way to classify threat models
bytemaster: It was very nice to meet you Sunny and I think we could both learn a lot by working together.
bytemaster: This particular format is difficult, but having two separate communities seems to divide the process.
bytemaster: ie: if we could unite the communities under a common banner of proof of stake… then that would be a solid move.
Sunny King: Dan nice meeting you and great chat. Feel free to drop me an email at firstname.lastname@example.org.
bytemaster: Thanks Sunny.
fuznuts: Thank you for hanging out with us Sunny. One final thing before we end this
fuznuts: I would personally be very interested in getting it set up for the peercoin community to join up on the Beyond Bitcoin mumble server
fuznuts: i have found that we have a good place for conversations using both voice AND chat
fuznuts: it would enable everyone else to speak in voice, sunny to listen and respond via the chat box
fuznuts: in the short period of time I have spent researching it, it looks like Mumble also has the ability to be used over Tor
irritant: you know teamspeak?
fuznuts: yes. it was one of my original potential choices
fuznuts: but I felt it would be best to go with an Open Source solution
fuznuts: since we are a largely open-source community
irritant: i have to check out mumble
fuznuts: I am hoping we can find a way to give you the opportunity to use this service Sunny
fuznuts: And to the rest of the group, I would love to have you all join up
Sentinelrv: Fuznuts, can you provide us a link to the details of your server?
Sentinelrv: For those interested?
fuznuts: As I see it, we have a lot going against us with regard to POW mining and the power structure built around it
fuznuts: of course
Sunny King: @fuznuts I’ll look into that. fuznut you haven’t introduced yourself I think
fuznuts: Mumble will be used to lower barriers of entry for our community to start allying
fuznuts: I’ll go ahead and give the mumble server information here:
fuznuts: This is the free service provided for anyone—especially DAC dreamers! Label: BeyondBitcoin Address: vx31.commandchannel.com Port: 2077 Username: “Your Forum Handle Here” Password: w0rldCh@NG3rsUN!t3 Please stop in and stay awhile. Feel free to send any problems or concerns to me via pm on the forum.
fuznuts: We would love to have weekly or biweekly meetups between your devs and the “community voice”
fuznuts: We then record these meetups, you get to keep it as well and Legend, the host of the Beyond Bitcoin Podcast will edit and make a show
fuznuts: it will be posted on the website when it is up and running in the coming week(s)
Sunny King: @fuznuts Could you drop me an email as well?
fuznuts: I would gladly do so
fuznuts: I appreciate both your and Dan’s intentions
fuznuts: so I want to do whatever I, just a little guy here, can do to help the community increase both the value proposition for each other—and more importantly, the ability to change the world for the better
fuznuts: I will send a test email from beyondbitcoin@gmail.
NewMoneyEra: Sunny, Presuming that someday you will probably discontinue PoW mining from Peercoin, what criterion will you likely be considering to make that decision?
Sunny King: @NewMoneyEra, that’s not in the plan for immediate future. proof-of-work minting inflation rate is already very low.
Sentinelrv: fuznuts, I’ll make up a transcript of this later on. I’m currently at work for the next 5 hours.
NewMoneyEra: Thank You
fuznuts: thank you man
Sunny King: Go now thanks all have fun guys