- exchange service will be run by trusted third party who meets security requirements
How can you meet security requirements when there is no secure communication channel on the internet which can obfuscate the IP addresses of the communicating parties?
Except maybe Bitmessage?
We tried to use TOX.
I can't readily find any mention about TOX using high-latency onion routing nor Bitmessage-like PIR (everyone sees everything) in order to obfuscate the IP address of the sender and recipient. Does TOX do this?
Tor is low-latency (with very few onion hops), arguably a honeypot, and thus can not be fully trusted.
Based on our experience, every system for secure communication that exists is being actively targeted for disruption of service.
Bitmessage finally (after several weeks of my posts in their forum) implemented a variant of my suggestion to mitigate the spam.
But PIR is not a scalable design. We really need the high-latency onion layer network with paid nodes, so we can resolve Tor's vulnerabilities. Also we need to use several layers of encryption including quantum proof such as McEliece, because if everything is being recorded then eventually our prior anonymity will be cracked ex post facto (and that means jail time for participants later in life).
Debian packages do not have deterministic builds, so we cannot be assured there are not back doors in the package binaries that are not present in the source.
Deterministic builds are not sufficient to guarantee there are no back doors, instead you need to compile the compilers yourself using multiple compilers to compile the compilers with (and even that doesn't provide an absolute guarantee).
https://www.schneier.com/blog/archives/2006/01/countering_trus.htmlhttps://blog.torproject.org/category/tags/deterministic-buildsThe state of computer security right now is very bad.
We can't possibly fix this every where within even a year or two.
What we can do is build a more secure network communication as a first line of defense that is needed by everyone. Then we can pick up next in line priorities that apply to the widest swath of software that would be motivated about security.
You can not possibly get any traction if you need to perfect the universe first.
Skycoin is using Golang instead of PHP (MtGox) or C++ (like Bitcoin), so we can guarantee that there are no buffer overflows that will allow computer to be hijacked from the Skycoin client (unlike Bitcoin). At best, an attacker will be able to crash the Skycoin client.
When I looked at it, Golang had afair fundamental design flaws with expression of higher level semantics, and vulnerabilities also creep in semantically.
You seem to be trying to perfect the world from the bottom up, instead of trying to strategize around priorities.
You appear to need a strategist.
... achieving security will require fundamental changes to toolchains, compilers and operating systems and not just the patching of individual exploits.
How are we going to write our own languages, compilers, and toolchains if we don't first create a $billion market cap so we have the funds to do this?
If you go raise $1-5 million in an IPO, you will quickly burn through that and it will not be sufficient. Plus you will try to do too much at once, not having a good prioritized strategy.
Whereas, I have an idea how to get off the ground immediately without any IPO funding (or very small funding maybe $100,000 max) and generate $billions in revenue for the developers over time in order to actually change the world.
If you have socialist attitude (do not value the importance of the money side of things), you won't be able to accomplish your wide ranging goals.
Again I think you need help. You are excellent nerds (better than me), but you need strategy help. I need some extra brain power (and coding help) on the technical side in order to insure I can accomplish my ideas.
But we can't seem to acquiesce to each other.
We cant protect against web-browsers, Java or security vulnerabilities in the operating system. There was recently an exploit in firefox, that would allow your computer to be hijacked through javascript. You merely needed to click a link and a buffer overflow exploit was triggered in an XML parsing library that Firefox used as a dependency.
You can't possibly protect the user's computer from code they run that is not yours.
You worried about details which are too low-level when we haven't even yet solved the high level issues such as how do we communicate over the internet without revealing our IP address.
Skycoin uses a web-browser (local web-client). By default Google Chome saves everything you type into fields and sends it to a remote server to be saved (form autocomplete). So we had to package our own version of Chrome and V8 into the Skycoin repo. This is working, but is only so-so. That is what the ./gui.sh script is.
Why bother! Just tell the user to not run Chrome! Come on guys, you need to learn how to "ship it" and not "perfect the universe" first.
CoreOS, Docker and LLVM are bringing us much closer to these goals. We will not need to implement everything from scratch. It will however be a very expensive process, taking years. We are realistically look at a cost $4 to $15 million dollars over five years and seven dozen small, high intensity six month projects that can be completely by one to three developers.
As usual, estimates in software are always an order-of-magnitude too optimistic. You won't get even close to the resources you need with an IPO.
As another user has commented, if you raise $millions, then the upside is too risky to justify investing. All those fools who bought the Ethereum IPO are going to learn the hard way.
This has to be worked through very carefully to ensure that it would not introduce any edge cases, so will be something we look at for the second generation consensus algorithm implementation. I dont think there is time to fit into this iteration.
I think the existing Skycoin consensus design is 51% attack proof, because the number of nodes required for performing the attack is much larger than the number of mining pools that need to collude and if it occurred, the chain would just fork and run both chains until they were pruned by hand and the bad nodes are kicked off by hand. So it is not clear what the economic incentive for a 51% attack in Skycoin, or why anyone would attempt it. Its more annoying than anything else.
How much time are you going to waste down the low priority rabbit hole of perfecting nature?
Eventually you will learn the hard way that consensus is never decentralized. How many thought experiments and then learning from the real world implementations will have to go through?
There are so many factors such as even social engineering, but it comes down to the fact that humans have large brains and thus prioritize self-interest.
I am not against developing your consensus algorithm to see where it ends up, but it is a lower priority need at the moment. That should happen later when the $billions in development funding is rolling in from a success coup in the investment market.
The number of nodes that need to collude to successfully attack is at least the top 2% of the nodes (absolute worst case). With 10,000 nodes in the network, that means 200 people need to collude to merely attempt an attack. In Bitcoin, only the top two or three mining pools need to collude to attack the network.
How many people voted for Obama or Merkel?
Do you want to scale this to the masses? Or are we just playing a delusion game and keeping this within the crypto zealot market where we can pretend we have decentralization (e.g. Bitcoin today)?
In Skycoin, even if they succeed in attacking the network, one approach merely forks the network into two concurrent branches and it is resolved by hand, by individual node operators.
Since when did Grandma bother with such technical duties?
And what if node owners are paid to run a client which has been patched with code to serve some nefarious interests? What if this is presented to them as a net positive, i.e. offers some improvements in transaction clearing speed or some other desireable trait.
There are so many vectors to introduce failure of decentralized consensus I can't possibly enumerate them all.
In Skycoin the network security does not depend on the coin price
My flippant thought is that is impossible. Why would interest in the coin not decline if it was under attack?
The danger is that if we dont solve the last problem, that we will have Bitcoin like systems, but they will be controlled by the banks and not the public.
The public never controls anything, they are always controlled by the banks.
Decentralized consensus is a lie that doesn't exist in reality.
Analogous to how the fools who vote now don't realize the political system is captured by the banks, the crypto zealot fools don't realize the decentralized consensus systems will be captured by the banks too (via the government, NSA, etc).
Don't forget that the NSA has a black budget in the $5+ trillion range. Even Donald Rumsfeld admitted on national TV the evening before 9/11 that the $3 trillion was missing from the Pentagon budget. The records for this investigation were destroyed at the Pentagon when the plane (or missle) hit the Pentagon.
To me you appear to be very smart kids playing with Tinker Toys. You are not serious. If you want to be serious, you need to get brutally realistic about what is realistically feasible and what is instead "pie in the sky".
If you expect to perfect the universe and prioritize ideological "pies in the sky" then you will fail.
This is really a question about whether we end up with the Bitcoin technology in a walled garden, with gate keepers or whether it remains decentralized.
No the question at hand is whether you guys want to wake up from your myopia and get real, or if you prefer to mess around in delusions.
I say that with a high level of respect for your technical capabilities. I think you need help directing your talents to a better focus.