OneLedger Code Review: Business Modularization
OneLedger introduces us to the concept of business modularization in blockchain, which is a fancy way of saying that it aims to bridge decentralized and centralized technologies. It’s not entirely novel but it does reflect the growing consensus that the reality of blockchain is that it will likely work in tandem with existing technology, and not necessarily as an end-of-times replacement for all that exists today.
So it’s hitting a few buzzwords that we expect to see these days.
“OneLedger is an enterprise blockchain solution that is focused on bridging centralized enterprise technologies with emerging decentralized technologies such as Bitcoin and Ethereum.” — Cross-chain bridge. Check
“OneLedger provides an SDK and API to make coding easier than before. We have the concept of Business modules that will allow developers to package sophisticated strategies.”
“We released our MVP (minimum viable product) at the end of June. In July, we released the atomic-swap feature between Ethereum and Bitcoin”
Still an MVP? Looks like it is being actively developed (in the branches). 9 contributors.
paulwhomer and alexjlan look like the two heavy lifters in the project.
We have /consensus/ /core/ /lite/ and /node/
Starting with /core/ last updated 10 months ago. Ignore that for now, we will look into their active commits later.
Just a struct for inputs and outputs. Very straight forward mapping.
Let’s assume this code isn’t being used. Let’s move on.
Consensus, 5 months ago.
“Track current state of the consensus” — empty file. I guess it accurately tracks the current state of the consensus then…
Tendermint, BFT vote. Moving on.
Should have started here, ok, essentially I’m skipping everything and only going to look at the “synchronized swaps on Hashed Timelocks”.
Is this the SDK? It doesn’t do anything.
From these scripts I’m assuming you need to run a BTC and ETH node locally along with the OneLedger node.
Very MVP code. It is almost a year later. Where has the work gone into?
Identities are just a data structure linked to a chain and account like a foreign key mapping.
Just talks to a local client, the scripts were right. This is a super basic implementation.
“Atomic swaps” are just a sequence wrapper. You can still manipulate the sub-chain accounts during this process.
OneLedger Code Review Conclusion:
Raised $15,000,000 for a bit of wrapping code, an API, and another tendermint chain. No thank you. I don’t see what value this brings to the ecosystem.
Want this to support 10 chains? Then you are running 10 full nodes, good luck managing that infrastructure. This isn’t feasible as a decentralized product. Cross-chain SDK’s already exist, built for free and for fun. And you don’t need to run nodes to use them.
Last thought though, I skipped OLVM, it seems they are putting a lot of effort into it, I don’t know what it is, so it could be amazing, but I didn’t look at it.
You can chat about OneLedger in our Telegram group.
Disclaimer: Crypto Briefing code reviews are performed by auditing what is on display in the master branch of the repo’s made available. This was performed as an educational review and any comments in the article are the opinion of the writer. It is normal for code to change rapidly, hence we timestamp our code reviews so that they present a snapshot at a moment in time. Information contained herein should not be used as any comment or advice on the project as a whole.
OneLedger Review Timestamp: January 30th 2019