Whitepaper – Coming Soon
Ankr is a scalable blockchain that implements a “Proof of Useful Work” consensus mechanism as well as multi-chain Plasma and oracle services.
Ambition is one of those things that can both be extremely good and extremely risky – on one hand, you have the capability of creating something that no one else has done before, but on the other hand you take a massive chance with your time, effort, and usually, money. Ankr is the latest entry in the ICO scene that looks to be heating up, both in terms of hype (the support behind this is quite massive) as well as in the technical solutions that the team is offering to investors and the crypto ecosystem as a whole.
So what is Ankr? You can basically envision this project in a few different ways, as they are looking to tackle a few challenges in one go. Ankr is essentially a competitor to Ethereum, however it boasts several improvements over the current leading smart contract platform:
- Proof of Useful Work consensus mechanism
- Trusted Hardware with Intel SGX computation
- Oracle Services with their NOS system
- Native Plasma
Let’s go over these now.
Proof of Useful Work
In the case of Bitcoin, Ethereum, and most other chains Proof of Work is the common consensus mechanism that is used – basically, if you want to verify your transactions you need to be willing to contribute a certain amount of hashpower to the main chain. This combined hashpower that verifies and keeps the record of all current transactions on the ledger strengthens the overall network over time, as it becomes more costly to perform a 51% attack against all of the accumulated hashpower of the network.
The downside to this, of course, is that the actual computation that these GPU’s are doing is in many cases completely pointless and doesn’t really help anyone in the real world. What this global computer is doing is verifying transactions on a transparent network – what it’s doing in the backend is pointless math puzzles to try and get a result within an arbitrary range as specified by the current block difficulty.
The concept here has been talked of before – rather than having all of these computational resources being wasted on pointless puzzles, why not use this hashpower towards an actually useful cause? This is one of the main features of Ankr.
In my opinion, however, this is likely not something that can be reasonably expected to succeed given the current mechanics of blockchain infrastructure. You can dictate a CPU to do “useful work”, but you also need to define what that useful work actually entails – thereby creating more technical overhead and causing more rules to be amended to the platform. Secondly, if you actually want your work to be trusted, you’ll need to replicate this useful work across many other nodes – this redundancy in the computation makes even useful work completely inefficient when it comes to the energy cost of producing these results.
Here’s where the second part of Ankr comes in however – their Trusted Hardware portion.
Unfortunately, the secure enclave which Ankr relies upon is severely compromised and weak – at every level – making the entire platform unbelievably dangerous in security terms. The keys can be compromised, the enclave is wide open to specific attacks, and it has excellent potential as a malware delivery vehicle which could easily compromise the entire network very rapidly. Here are just some historical problems we’ve seen with SGX:
1. Intel SGX – RSA keys compromised
On 27 March 2017 researchers at Austria’s Graz University of Technology developed a proof-of-concept that can grab RSA keys from SGX enclaves running on the same system within five minutes by using certain CPU instructions in lieu of a fine-grained timer to exploit cache DRAM side-channels. One countermeasure for this type of attack was presented and published by Daniel Gruss et al. at the USENIX Security Symposium in 2017 Among other published countermeasures, one countermeasure to this type of attack was published on September 28, 2017, a compiler-based tool, DR.SGX, that claims to have superior performance with the elimination of the implementation complexity of other proposed solutions.
2. Intel’s SGX secure enclave – wide open to Spectre-type attack
Researchers at Ohio State University have created the SgxPectre attack, which is capable of reading all the contents of Intel SGX-powered secure enclaves.
3. SGX as malware delivery vehicle
As has been publically dissected in different areas of the Internet, SGX can potentially be used as a transport vehicle for malware – doesn’t sound particularly appealing for a blockchain infrastructure. Here’s an excerpt from Virus Bulletin:
Unfortunately, SGX is also a prime weapon for use in malware. For better or worse, it currently looks like Intel will not be giving the option for ‘trusted anti-malware vendors’ to access the contents of enclaves to make sure they are safe. Thus, malware can, in principle, freely create enclaves to prevent the operating system/hypervisor/anti malware from knowing what it is executing. Coupled with ubiquitous connectivity, the spectre of small loaders downloading sophisticated packages of malware remotely via an encrypted link rears its head.
As an aside, Ankr has an Oracle solution tacked onto its offering – while this kind of thing has not really been solved yet, the implementation that Ankr has decided for their project is dubious at best. Essentially, trusted hardware will be able to access JSON and other filetypes from websites secured by SSL connections. That’s it. If you want to bribe an Ankr oracle all you will need is a website with an SSL certificate and manage to trick the system into thinking you are a legitimate data provider.
Even if that wasn’t the case, this is still an extremely dependable and centralized solution. Why bother with decentralizing your computation and ledger if you are going to feed centralized data into it? Targets will be obvious and available, and even if they’re not it makes little sense to put your smart contract on something like Ankr for the NOS oracle service when you can simply use Oraclize on Ethereum.
If the purpose of Ankr was the diversify and decentralize the data inputs there should be a more sophisticated method of data retrieval that amounts to more than simply going to an HTTPS site and downloading their JSON files – at the very least some kind of data aggregation would work better than simply trusting singular sites and services.
It’s also another level of complexity that ultimately feels like it does not need to be a part of the product – Ethereum for example, leaves all of the smart contract and actual building of the infrastructure to third parties. There is no need to slow down your own development time and take resources away from the actual foundation of what you’re trying to build.
I do have an internal copy of the Ankr whitepaper on my desk that I managed to read before it comes out to the public – funnily enough, they misuse the term “sharding” in their paper when they are really talking about a Plasma implementation. This can actually be seen as the one truly unique proposition that Ankr brings to the table – no other chain comes to mind when I think of Plasma enabled blockchains. Some similar solutions do exist (as an example with Zilliqa’s Sharding) but nothing aside from the Loom Network sidechain concept really comes close here.
Plasma is essentially creating smaller blockchains that are only used to transact and verify a specific set of data – let’s say you’re Wells Fargo and you’re only interested in verifying your own company’s dapp. You can create a childchain with its own original consensus mechanism that will then be much easier to manage and doesn’t have to commit all of the transactions to the main chain. This is a method of speeding up transactions, as you only need to periodically commit a hash of the current state of the entire childchain to the main network, thus increasing scaling exponentially.
Of course that comes with its own massive downsides. A network like Ethereum can reasonably scale with Plasma childchains due to the sheer amount of available hashpower, which will manage to secure the entire network against threats – if a newly minted chain is attempting to splinter off their resources into many smaller chains I can only see the end results being a complete disaster. There’s also a security requirement to Plasma known as an “exit” – essentially, what this means is that users who commit to a Plasma childchain can safely exit the chain in the event of malicious parties manipulating a childchain. There is no mention of any kind of Plasma safeguards in the Ankr whitepaper.
Ankr is an interesting little project, but it arrives far too late in the scene with no real innovations or advantages that aren’t already being served by other chains. If you’re looking for a sharding implementation, perhaps consider Zilliqa – if you want an Oracle service, then the upcoming ChainLink or Zap are better options. If you want actual computation, then Elastic or Golem are likely your best bets.
I might be seen as a rather diehard Ethereum fan (which ultimately I am) when I say that most of these projects that look to simply slightly improve on what Ethereum does won’t work. We’ve already seen the catastrophic failure of projects like EOS, Cardano remains the fever dream of researchers despite having systemic problems, and most other ETH killers simply lack any kind of punch. Compared to other truly revolutionary projects such as Holochain and Urbit, Ankr provides very little in the way of real innovation, gets absolutely no one excited about its technical offering and it’s an easy bet to say that this won’t be getting any real support in the future. wAnkr is, unfortunately, a pass.
Disclaimer: Keep in mind that the Whitepaper I am currently reading is a draft version that is not intended for public use – please #DYOR and due diligence when the official whitepaper releases to double check if the team has fixed some of these obviously glaring flaws.