Search content
Sort by

Showing 20 of 36 results by appamatto
Post
Topic
Board Bitcoin Discussion
Re: Be careful of speading misinformation
by
appamatto
on 18/12/2010, 23:55:12 UTC
I've just finished listening to another Internet radio interview about bitcoin, and although some mistakes should be expected, please avoid spreading the meme that Satoshi is a "world renown" cryptologist.  He is not well known worldwide outside of this bitcoin community, and may not have training in cryptography.

Or rather, *nothing* is known about Satoshi outside of bitcoin, and most I've talked to believe it's a pseudonym.

I too was under the impression that Satoshi worked at a university somewhere due to his publishing of the bitcoin details in a paper.  Most non-academic projects don't do this.  When people said Satoshi was just a pseudonym, I was like "No way, there's a paper that lists all of his credentials, etc." and then when I checked I realized the only identifying information in that paper is his email, hosted at a free email provider.  Searches based on that email yield only bitcoin-related results.

Ironically, he is now a world renowned cryptologist.
Post
Topic
Board Bitcoin Discussion
Re: BitDNS and Generalizing Bitcoin
by
appamatto
on 18/12/2010, 23:49:14 UTC
I am under the impression that nothing codewise is getting done.

I'm working on bitx.  You can follow my (slow and leisurely) progress at the fossil repository (http://bitx.appamatto.com) and my blog (http://appamatto.com).  Once that's done, I'll work on either the bitcoin on bitx implementation or on bitCA, which seems to be the better way of doing DNS and related services.

I think theymos/nanotube are working on their proposal as well.  There are probably other proposals that don't require additional block chains or changes to changes to bitcoin proper, but even then it seems a little to early for finished products.
Post
Topic
Board Bitcoin Discussion
Re: BitDNS and Generalizing Bitcoin
by
appamatto
on 18/12/2010, 17:47:48 UTC
So lets assume that the private key for 'bytemaster' has been compromised.   Bytemaster issues the command to invalidate it.  Now 'bytemaster' is up for bids to the highest bidder.  All trust must be placed in the public key and not the name itself.  Transferring the name to a new owner would have to reset the trust.

Seems like the solution to this problem is to have a 'backup key' such that when the primary key is nuked the backup key takes over.  There could be multiple 'backup layers'.    To transfer a name would require signing the transfer will ALL backup private keys.  When a key is compromised the backup key could then be used to replace the primary key without destroying the reputation of the owner.

Now a site like 'google.com' could give out the private key to 'trusted' admins and lock away their 'backup key' in a secure vault without having to assume the risk of their valuable 'name' being destroyed by one dishonest admin.

I don't think invalidating a name should put it up for bids.  I think the name is just done at that point.
Post
Topic
Board Bitcoin Discussion
Re: BitDNS and Generalizing Bitcoin
by
appamatto
on 17/12/2010, 03:16:10 UTC
3.  A user looks up Site A in the BitDNS record and gains it's IP address AND Hash(KeyA)

I don't know about step 3.  That is, I wonder if it's sufficient to simply have A's public key and then get the IP address through other means, making sure it's signed by A's key.

Yes, all than needs to be included in the block chain is Site A's name and a hash of Site A's Public key.  Gaining access to the site via their IP address can be done through any method.  The point is that it is impossible to 'pretend' to be 'Site A' without having Site A's private key.

Right.  I'm thinking that this could be a huge boon to security and privacy.

I'm not sure that it makes sense to talk about "sites" in particular, but I think we're on the same page.

One problem with certificates is that sometimes the private keys are secretly leaked to government agencies or "discovered" by other third parties.  I think an important part of this system would be a "kill signal", that is a way for a name to self destruct by signing the order with its private key.

This way, whistleblowers who discover a private key would be able to anonymously convey the message that the site's security has been compromised.  There is no reason for their pseudonym or their public key to appear in the system anymore because there is no way to recover from such a private key exposure.  For instance, if a new public key were created and "blessed" by the old one, we couldn't tell if this was an action taken by the authentic person or the imposter.
Post
Topic
Board Bitcoin Discussion
Re: BitDNS and Generalizing Bitcoin
by
appamatto
on 16/12/2010, 19:43:18 UTC

1.  The owner of Site A, create a private/public key pair, this par contains a Public Key.  The owner then Hashes the public key and creates Hash(KeyA).
2.  The owner of Site A then creates a new BitDNS transaction that contains "SiteA" and Hash(KeyA).
3.  A user looks up Site A in the BitDNS record and gains it's IP address AND Hash(KeyA)
4.  Then this user, navigates to Site A's IP address, and is sent Key A, and a signed welcome message.
5.  The user checks if Hash(BitDNS KeyA) == Hash of (IP KeyA).  If this is true, then a man-in-the-middle attack is impossible.


I don't know about step 3.  That is, I wonder if it's sufficient to simply have A's public key and then get the IP address through other means, making sure it's signed by A's key.
Post
Topic
Board Bitcoin Discussion
Re: BitDNS and Generalizing Bitcoin
by
appamatto
on 16/12/2010, 15:59:10 UTC
With public key registration you could associate arbitrary information like ip addresses, ssl certificates, ... ?

Or has public key naming already been solved?

All the chain needs to include is a name and a fingerprint of a public key.  Anyone who uses that name can supply the public key, and people can cross-reference the public key with the fingerprint.

The system is simple and secure.

I agree that it is simple.

I think a reliable database of pseudonym to public key (or hash of public key, etc.) mappings could solve a variety of problems.

For example, i2p has an issue distributing eepsite keys in some trusted manner.  And, we're all aware of problems with DNS.

It seems to cover the "irrevocable eternal resource identifier" aspect of DNS but not the "pseudonym to pseudonym transferable virtual property" aspect.

A search for "distributed certificate authority" yields many academic results.  I wonder if any of these provide the same guarantees that a block chain based approach would?
Post
Topic
Board Bitcoin Discussion
Re: BitDNS and Generalizing Bitcoin
by
appamatto
on 16/12/2010, 15:45:14 UTC
With public key registration you could associate arbitrary information like ip addresses, ssl certificates, ... ?

Or has public key naming already been solved?

All the chain needs to include is a name and a fingerprint of a public key.  Anyone who uses that name can supply the public key, and people can cross-reference the public key with the fingerprint.

The system is simple and secure.

I agree that it is simple.

I think a reliable database of pseudonym to public key (or hash of public key, etc.) mappings could solve a variety of problems.

For example, i2p has an issue distributing eepsite keys in some trusted manner.  And, we're all aware of problems with DNS.

It seems to cover the "irrevocable eternal resource identifier" aspect of DNS but not the "pseudonym to pseudonym transferable virtual property" aspect.
Post
Topic
Board Economics
Re: Inflation and the end of 50 BTC per block (from technical discussion)
by
appamatto
on 16/12/2010, 06:27:11 UTC
There is no incentive for early user to promote your inflationary currency, appammato.

There's no incentive for saving if it is eroded repeatedly by inflation.

Your value is not being eroded.  Your coins represent your percentage of work put into the block chain.  That ratio will never be broken.

Let me recalibrate my understanding.

Every computer will be essentially generating bitcoin. Essentially, it is hyperinflation. However, this distort economic calculation to a really bad level. Everything you invest in looks like a profit, when it's actually not.

There is still no incentive to save, because your saving is becoming worthless every single day due to inflation. Basically, it rewards the biggest generator at the expense of everybody else, except those who borrows money.

In the bitcoin economy, the generators still benefit disapportionately, but it will also benefit those who save. In other words, everybody who save win, except those who borrows money.

Investors in business will be forced to be more conservative or efficient at finding economic opportunity.

I'm not sure why there would necessarily be price inflation given that the marginal increase in btc is relatively small and can in any case be forecast.
Post
Topic
Board Economics
Re: Inflation and the end of 50 BTC per block (from technical discussion)
by
appamatto
on 16/12/2010, 06:02:38 UTC
There is no incentive for early user to promote your inflationary currency, appammato.

There's no incentive for saving if it is eroded repeatedly by inflation.

Your value is not being eroded.  Your coins represent your percentage of work put into the block chain.  That ratio will never be broken.
Post
Topic
Board Bitcoin Discussion
Re: Datacasting the blockchain
by
appamatto
on 16/12/2010, 05:59:19 UTC
That would be a really efficient way of downloading the block chain, especially for poor communities. You can use Bitcoin with even the most primitive dial-up connection if you can get the block chain.

It's probably possible to allow people to download a "block digest" containing the first few few bytes of all addresses in that block. This wouldn't work with non-standard transactions, but it should allow general use without downloading entire blocks. Even this might be too much data for super poor communities in Africa, though.

Is multicast/broadcast functioning at all?


No.  It would be a compromise that the Bitcoin community isn't interested in at this time.  It shouldn't be hard to do if the time came for it.

I meant ip multicast and broadcast (not sure if that was clear)
Post
Topic
Board Bitcoin Discussion
Re: BitDNS and Generalizing Bitcoin
by
appamatto
on 16/12/2010, 05:55:56 UTC

Hmm, I don't think that the longer the wait the less chance of success...


There is some compoetition in the form of dot p2p project.

I wonder if more thought should be put into the nature of names.  Is providing an abstraction over ip the real intent?

What about registering a public key, so that you could later use the name as a pseudonym and show that you're the true owner?

With public key registration you could associate arbitrary information like ip addresses, ssl certificates, ... ?

Or has public key naming already been solved?
Post
Topic
Board Economics
Re: Inflation and the end of 50 BTC per block (from technical discussion)
by
appamatto
on 16/12/2010, 05:39:29 UTC
I have read repeatedly that the achilles heal of Bitcoin is that 50% CPU threshold.  I have never heard of another one I believe might exist - the possibility that the Bitcoin community gets very large, and then has factions, the block chain forks, and the system crumbles in the face of FUD while two or more camps argue which leg is correct (sort of like a country that started out with a Constitution or a religion that started out with a Bible or Koran and now has two large factions eternally asserting their particular interpretation of it).  Two religious factions can go their own way and live their own separate lives on separate lands, but if they must trade while they can't agree on what constitutes the existence of money, the money may as well not exist.  If Bitcoin is in its "constitution" phase, I would submit that the time to address something like this is now.

That design decisions concerning inflation and other factors are "hard-wired" into the network suggest some inflexibility and the ability of another network to swoop in and cut users a better deal.

The only attack I've considered any kind of threat to bitcoin is the presence of a network better than bitcoin.  I think it's likely that the biggest sticking point is the reward-for-work in bitcoin, which is tied to inflation.

It's easy convince the predominately libertarian early adopters that a fixed money supply is worth giving a handful of early adopters over a quarter of the total bitcoins that will ever be created.  But bitcoin may have a hard time crossing the chasm if new users get for terahashes what people were getting for megahashes a few months ago.

Some of the heretics on irc have mentioned keeping the 50 btc block reward indefinitely, having a steady perma-inflation.  I'd go one step further and say that the number of coins generated in a block should be proportional to the rarity of the block's hash.  In other words, a block with 15 leading zero bits should generate twice the number of coins that a block with 14 leading zero bits in the hash.

This would probably be called "hyper-inflation".  Why not keep the reward the same--from the first hash to the last hash?

As it is, I feel that we're in a giant pyramid scheme where present petahashes are being offered up so that bitcoins from the genesis block can ever-increase in value.
Post
Topic
Board Economics
Re: Growing the Copyfree Movement
by
appamatto
on 16/12/2010, 05:26:04 UTC
... And if someone used my public domain software in these jurisdictions, who would they face legal threat from?
One threat is from heirs of the original author, who claim that because the coypright disclaimer is unlawful, they retain the copyright and are therefore "owed" a lot of money.

Is this related to estoppel?  Even if the copyright disclaimer is unlawful, it was clearly intended by the copyright holder, and I don't see how a person could seek to benefit by showing that they are in contravention of the law.
Post
Topic
Board Bitcoin Discussion
Re: Base-less Block Chains (Broadcast-only bitcoin)
by
appamatto
on 16/12/2010, 05:22:25 UTC
Bitcoin can already work like this, just not as an absolute.  This is similar to my own 'datacasting' concept.

What is your datacasting concept?


Use the search function.  Look for 'datacasting' and 'Dash7'

Quote

One reason why I think bitcoin can't work like this is that a client who only saw new blocks wouldn't be able to know whether the transactions contained within were valid or not.  This seems to require balance sheets...

that is the chicken and egg problem, isn't it?  A client that uses balance sheets cannot independently verify transactions based on blocks prior to it's own initial startup, but a client that uses the full blockchain to verify transaction history doesn't need balance sheets.

If the client has block 5 and its balance sheet he can verify both block 6 and block 4 by fast-forwarding or rewinding the new/old transactions on the balance sheet.  Verification in this case means "if the beginning of the chain is verified then so are all the nodes up until the end."

The client may end up with multiple long chains, which will either be connected in some way or one will be an attacker's chain.  The client should be able to request older blocks until the point where the chains connect or the attacking chain is overpowered.

I think you get too much fragmentation if you only get new blocks, but the idea of "mostly broadcast" may still be a good aim, given that the number of old blocks required to remove all doubt may be quite few.
Post
Topic
Board Bitcoin Discussion
Re: Datacasting the blockchain
by
appamatto
on 16/12/2010, 05:14:10 UTC
That would be a really efficient way of downloading the block chain, especially for poor communities. You can use Bitcoin with even the most primitive dial-up connection if you can get the block chain.

It's probably possible to allow people to download a "block digest" containing the first few few bytes of all addresses in that block. This wouldn't work with non-standard transactions, but it should allow general use without downloading entire blocks. Even this might be too much data for super poor communities in Africa, though.

Is multicast/broadcast functioning at all?

For information that needs to be retransmitted repeatedly it seems much more efficient than p2p, although I'm not sure what to do when nodes need a retransmit.
Post
Topic
Board Bitcoin Discussion
Re: Base-less Block Chains (Broadcast-only bitcoin)
by
appamatto
on 15/12/2010, 15:03:37 UTC
Bitcoin can already work like this, just not as an absolute.  This is similar to my own 'datacasting' concept.

What is your datacasting concept?

One reason why I think bitcoin can't work like this is that a client who only saw new blocks wouldn't be able to know whether the transactions contained within were valid or not.  This seems to require balance sheets...
Post
Topic
Board Bitcoin Discussion
Base-less Block Chains (Broadcast-only bitcoin)
by
appamatto
on 15/12/2010, 08:14:20 UTC
I'm not sure the etiquette about referencing my blog articles on this forum.  Let me know if this is a bad idea.

http://blog.appamatto.com/2010/12/base-less-block-chains.html

I wrote an article about designing a bitcoin-like protocol that allows new clients to determine the proper head-of-chain by receiving only "new" blocks.  In other words, the system would become broadcast-only and there would be no method to request old blocks from peers.

I'm still grappling with the idea, but I think that if timestamps are present in the protocol, attacks on new clients should be at least prohibitively difficult.  If timestamps are not present then there is a "history attack" where an attacker rebroadcasts blocks from the entire history of the chain, forking the chain at the last moment.  The history attack is pretty difficult to pull off since old hands won't rebroadcast nodes that aren't new.

Broadcast-only-ness allows for some interesting properties including lower network and disk usage, but it can be weak against lost blocks.

Naturally this method would require a balance sheet-based implementation of bitcoin.
Post
Topic
Board Bitcoin Discussion
Re: Mining cartel attack
by
appamatto
on 13/12/2010, 01:52:19 UTC
Instead, in a "mining cartel attack", I'm proposing that a substantial number of "miners" who possess a substantial fraction of the computing power of the network, but not necessarily 50% of the network, could form into a cartel that would only recognize blocks generated by each other.  Perhaps they would let a few other blocks get past them from time to time to hide this attack, but the vast majority of the new blocks recognized by this cartel would have to be produced by cartel members.  BTW, the "letting a few other blocks past" also reduces the percentage of the network needed by this cartel to pull off this attack as those other blocks are actually contributing to the overall strength by including "independent miners".

This is interesting.  So the cartel miners could effectively possess more than 50% CPU by "allying" with some normal miners.

I think the problem is this:

Let's say the cartel has 1/3 CPU, and decides to allow 1/2 of all non-cartel blocks through.  Thus, the cartel network would consist of 2/3 CPU.  What figure should this be compared with to see if the cartel will win?

I think the answer is 100%, because the system as a whole allows both cartel blocks and non-cartel blocks.  100% CPU power for the system, 2/3 CPU for the cartel.  What's worse, the cartel's behavior will net it much fewer than the 1/3 of the blocks that it was entitled to because sometimes it will be operating on an incorrect block chain.

The cartel is trying to "ally" with some non-cartel blocks.  Amusingly, it is actually the network as a whole that reverse co-opts the cartel by accepting cartel blocks without prejudice.
Post
Topic
Board Economics
Re: Growing the Copyfree Movement
by
appamatto
on 12/12/2010, 23:54:59 UTC

Thanks for the links.  I didn't realize that the wtfpl and the unlicense were actually public domain dedications.  I had thought about using the cc0 previously, the main advantage of which is that it falls back to a permissive license in places where that is necessary.

I decided against cc0 because it a much more involved license and I think that disallowing disclaimers of copyright is absurd.  Where are these jurisdictions, really?  And if someone used my public domain software in these jurisdictions, who would they face legal threat from?
Post
Topic
Board Economics
Re: Growing the Copyfree Movement
by
appamatto
on 12/12/2010, 23:49:55 UTC
I think that you did, however, brush off my point: it's not about what terms I want, or what terms any person in particular wants.  It's not about which particular pieces of information have which legal restrictions.  It's about the innovations that won't happen because there are restrictions on the uses of that information.

It's about not wanting to threaten people with legal ramifications or make contributors feel like they're backing freedom when they aren't.  Because really, that's what a license is: a legal threat masquerading as a platform for freedom.

You are certainly entitled to your opinion on this issue, but I will say you have a long and tough road ahead if you are trying to get your political ideas turned into public policy and law, or for that matter widely accepted custom if you hate the concept of laws themselves.

What I don't understand is the attack upon copyleft principles when most of those who are involved with copyleft content development mostly support your view that substantial legal restrictions on the use of copyrighted content is wrong.  Copyleft supporters aren't your "enemy", but rather entities like Microsoft and Disney should be.  Of course I'm repeating myself now.  90%+ of the "licenses" on content (I would say 99% but copyleft licensing has made some inroads) have nothing at all to do with "freedom" or even "copyleft", but are purely to do with "proprietary" copyright restrictions.  By far and away the most common and to me the worst offender is the "end-user licensing agreement" (EULA) often seen with computer software but includes other products as well.  This is the "shrink-wrap license" where some courts have ruled that simply opening a package is the equivalent of signing and notarizing a contract.  Really, there are bigger fish to fry here, and attacking the copyleft community is only going to backfire any effort to further your cause.

Perhaps I guess the idea is to convince those in the copyleft content development community that licenses like the GPL are somehow evil and should be abandoned.  The arguments here aren't don't a good job as they aren't dealing with the causes that create licenses like the GPL.

I think you're mischaracterizing my "attack" on the GPL.  There are clearly licenses that are worse.

I don't think you're right about the causes of the GPL.  The GPL is from an era when the BSD system was under legal attack, and there wasn't a developed tradition of public domain or permissive licenses.  Now, there are exceedingly healthy commercially- and community-supported non-copyleft projects, many of which will replace their more restrictive GPL counterparts.

I think the two "causes" of the GPL today are 1) the viral requirement of useful GPLed components and 2) the notion that the GPL is a tool for freedom.  I think the second is a faulty notion; it can be argued that there are eras where swords are tools for healing, but thankfully we're long out of harm's way on that one.

About the copyleft community: I'm not really going to dissuade anyone who has investment in the GPL.  My goal is really to be a voice for those who hadn't really thought about the issue deeply or didn't notice the viable alternatives but are attempting to produce the least amount of legal threat to their fellow man.