Hacker Newsnew | past | comments | ask | show | jobs | submit | b1db77d2's commentslogin

You can get semi decent USB webcams for $3 US shipped. Get a box load and some USB hubs. Done.


The Problem with webcams would be actually recording ~20 streams?


They're ASIC processors. It's already set in stone (silicon, whatever).


That occurred to me while writing the comment, but I assume there are other factors which could be worth monitoring and improving, for example network topologies or even cooling methods.


A little note about the "make a privkey" section of the signature example; it can sometimes* make invalid privkeys that are off the end of the EC curve. Only integers between 0x1 and 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364141 are valid in our particular case. Super unlikely to ever get a sha256 hash that matches the invalid portion, but it's worthwhile to point out.

* probably never, but worth mentioning


This curve order limit actually introduces a small bias. You can choose a number greater than a curve order, but then it'll be taken modulo the order, so some incredibly small amount of numbers will be biased closer to zero. In practice the probability to hit such numbers is less than 2^-128, so you may easily skip all checks and take the number as is. Of course, nitpickers will nitpick and that's why in all standards that describe key and nonce generation (BIP32, RFC 6979 etc), you'll see boilerplate code that checks for such numbers and does some extra cumbersome computations just to avoid these from happening.


Excellent point, added as annotation, thanks!


Which for something that's meant to be maintaining consensus is a fairly stupid move.


What you mean by this? Why would having multiple implementations, each having some input by core devs, be a bad thing?


In a decentralized consensus every single node must have the same behavior, handle errors the same way, make the same decisions based on the same core rules. Experience with Bitcoin has taught us that nobody is currently capable of duplicating the Bitcoin behavior perfectly. Many have tried such as bitcoin-ruby (ruby) and btcd (go), but they are plagued by almost constant issues of them having different states and getting forked off the network.

Starting with three different languages, three different codebases is absolute madness.


Madness? Tackling problems (consensus, protocol, etc) early on a "stupid move"? You believe that copying bugs (as something you'll have to do if you want to create a new btc node from scratch) is something we should strive for? Having another client to fall back to if there's a bug in one of the others is, again, "a stupid move"?

"Many have tried such as bitcoin-ruby (ruby) and btcd (go), but they are plagued by almost constant issues of them having different states and getting forked off the network."

This is _exactly_ why you should have multiple, clean room implementation from the start.

Oh btw, we've already got consensus with 3 full nodes for quite a while.


Getting consensus with 3 nodes is easy. Keeping it is the hard part.

You'll no doubt find that your daemons don't behave the way you'd expect cross platform, cross architecture.

Come back to this post when you fork, and tell me again that I'm talking nonsense.


It takes no effort to change the name and clone it completely.


True, but still the question remains which copy the public would adopt.

But I also see it as a a problem that Ethereum presumably doesn't have a huge user base yet.


Does it matter? Bitcoin has thousands of clones but they still manage to gain userbases.

http://mapofcoins.com/


Do they? I think a lot of them fail, apparently there are also practical issues with attracting enough mining power to make them secure.

Atm Bitcoin still seems the only safe bet for the long run.


It's not about number of users, it's about liquidity for the money/currency in question (whether it be bitcoins, litecoins or "ethers").

Ie. how much will selling/buying a certain amount of the currency affect the market price. This is what defines money: high liquidity (market depth). Something cannot be money without this property. It might have the potential to become money, though. But without liquidity it is as much money as baseball cards and wine.


Seeding the jar with BTC is speculated to be what Mastercoin did as well, it's not an unreasonable idea in the least.

It's essentially free except for the encumbered funds being unusable for a short period.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: