Live data from Hacker News

Is Git a Block Chain?

domustower.com

41–50 of 55 posts

Re: Is Git a Block Chain?

#42
I'll quote myself (http://blog.oleganza.com/post/85111558553/bitcoin-is-like):

Bitcoin is like Git: in Git (a distributed version control system) all your changes are organized in a chain protected by cryptographic hashes. If you trust the latest hash, you can get all the previous information (or any part of it) from any source and still verify that it is what you expect. Similarly, in Bitcoin, all transactions are organized in a chain (the blockchain) and once validated, no matter where they are stored, you can always trust any piece of blockchain by checking a chain of hashes that link to a hash you already trust. This naturally enables distributed storage and easy integrity checks.

Bitcoin is unlike Git in a way that everyone strives to work on a single branch. In Git everyone may have several branches and fork and merge them all day long. In Bitcoin one cannot “merge” forks. Blockchain is a actually a tree of transaction histories, but there is always one biggest branch (which has the value) and some accidental mini-branches (no more than one-two blocks long) that have no value at all. In Git content matters (regardless of the branch), in Bitcoin consensus matters (regardless of the content).

Re: Is Git a Block Chain?

#43
Here is how a website can implement git in a decentralised blockchain-like consensus.

Launch Gitcoin.com. The company's shares are called gitcoins which is a premined cryptocurrency by gitcoin.com. The aim of the company is to balance the distribution of shares according to their value, to maximize its own value. Parties who support this company's cause or want to gain a monetary incentive out of the value that gitcoin would gain would mine gitcoins or buy them in exchanges.

Authors publish the meta data about their content hashed with any private key they want. Each of these private key is a separate logical 'view' for showcasing the Authors content. For eg, one private key each for friends, business and everyone, so that one category cannot view the contents of the other, and the share the respective public keys with concerned parties using any medium. The aim would be to earn gitcoins and go and sell them at an exchange to earn a living wage.

The consumers of code would pay for the code they want to view to the public key, which is also a gitcoin address, which they already have! This automatically sends gitcoins to the author.

All code is open to everyone. If you have a public key you can view its associated code and change it, by sending money to it. Gitcoin.com takes a cut in providing this service.

This website also invents two brand new features in a website - no password and no captcha!

- No Password because you can view any code if you send money to it. Authors will keep the rates very high and share a new private category's public key to people they wanna give discount to. You can have as many identities you like and can club, fork and terminate them.

- No Captcha because captchas were invented to prevent robots. But robots are not always bad. So we want people to build helpful reddit-like robots but not bad ones. Gotcon.com solves this by allowing all robots according to an economic incentive motive. For ex, a user can build a good robot that shows the issues list corresponding to a gitcoin address. People pay this robot in gitcoins and so this robot has enough gitcoins to open the community desired code. But if a bad robot tries to spam this good robot, people will simply create a new address and copy all previous data and move to it, all of this at a click of 'block' button.

So basically, by changing the behavior of block button to create a decentralised copy of gitcoin.com itself and then moving to it eliminates the bad actor immediately and making it yet expensive for him to keep paying to see the code.

Re: Is Git a Block Chain?

#44
post #9
post #3

No, its not. Its just a chain. There's no block. The block in a blockchain is everything to do with distributed / trustless conscensus.

Imagine how cool it would be if I could share a guid for my repo - and then your bit client (let's call it gitcoin, or maybe just bit) can fetch new commits from a distributed block chain (essentially the git log). Github is no longer an intermediary or a single point of failure. Private repo? Don't share the guid.

That sounds like gittorrent[0]. Never went anywhere, unfortunately.

[0] https://code.google.com/p/gittorrent/

Re: Is Git a Block Chain?

#45

Yes they are Merkle trees. But the missing part of a blockchain is the incentive part. Obviously you don't even need git or anything so complicated for a blockchain. All you need is a network of computers that would periodically: * receive all the transactions (or their hashes) that occurred * sign this with some HMAC, and publish it * then we know that the transactions occurred by X time of course, the question is h…

All of the complexity of bitcoin (including having and paying miners) comes from the requirement to be completely distributed, with no authority that could refuse to include "bad" transactions. But if you're not signing any black- or grey-hat documents or transactions, then you can just pick a trustworthy central party to receive the hashes and publish the chain. The startup GuardTime has been doing document timestam…

This is a more straightforward description of what GuardTime does than anything the company themselves have managed to publish.

Re: Is Git a Block Chain?

#46
post #9

Earlier quoted context omitted.

Imagine how cool it would be if I could share a guid for my repo - and then your bit client (let's call it gitcoin, or maybe just bit) can fetch new commits from a distributed block chain (essentially the git log). Github is no longer an intermediary or a single point of failure. Private repo? Don't share the guid.

http://www.Gitchain.org (begun by Factom's dev Yurii)

https://github.com/gitchain/gitchain / https://news.ycombinator.com/item?id=7758608

Re: Is Git a Block Chain?

#48
post #9
post #3

No, its not. Its just a chain. There's no block. The block in a blockchain is everything to do with distributed / trustless conscensus.

Imagine how cool it would be if I could share a guid for my repo - and then your bit client (let's call it gitcoin, or maybe just bit) can fetch new commits from a distributed block chain (essentially the git log). Github is no longer an intermediary or a single point of failure. Private repo? Don't share the guid.

Isn't a distributed GitHub just git? The GUID for a repository is the repository URL, the git log is your distributed block chain, and your bit client is just git.

The only reason GitHub is an intermediary and single point of failure is because it's much more convenient than raw git. There's nothing that stops you from dropping your git repo on a webserver, Amazon S3 bucket, or any other data store. Heck, my last startup used Heroku as our master git repository because we didn't want to pay for a private GitHub repository.

Re: Is Git a Block Chain?

#49

Yes they are Merkle trees. But the missing part of a blockchain is the incentive part. Obviously you don't even need git or anything so complicated for a blockchain. All you need is a network of computers that would periodically: * receive all the transactions (or their hashes) that occurred * sign this with some HMAC, and publish it * then we know that the transactions occurred by X time of course, the question is h…

All of the complexity of bitcoin (including having and paying miners) comes from the requirement to be completely distributed, with no authority that could refuse to include "bad" transactions. But if you're not signing any black- or grey-hat documents or transactions, then you can just pick a trustworthy central party to receive the hashes and publish the chain. The startup GuardTime has been doing document timestam…

The problem is, as zkhalique said, that while it's easy to show a transaction happened before time X, it's hard to show it after. The single publisher (in this case the Financial Times or GuardTime) could have refused to include the transaction. Or the transaction might have not happened. How do you know which it is? What I pay you 10,000 bicoins and I promise GuardTime 3,000 to retract that fact later?

Re: Is Git a Block Chain?

#50

Earlier quoted context omitted.

I feel like that's not really a fair statement. With git, if you change the history, it effectively tosses out the old tree and creates a new one with new hashes. You're really not modifying the old history, you're saying "Get rid of the current history tree and create a new one with this change in it". You can do the same with Bitcoin, you could modify your copy of the blockchain to insert some new transaction, and…

The difference is that for the git chains it is not possible for anyone to independently verify what the true chain is. You can rewrite history and it will be just as correct as the first one. PoW (Proof of Work) makes it impossible to just "replay all the subsequent transactions that happened", because your fake chain will have significantly less proof of work.

Only if they're getting the chain for the first time. Git becomes... fairly wrothful if someone rewrites the history on a remote branch.
Post reply on HN