Dusk Network Explained9th January 2019
Did you ever hear about Dusk Network and tried to read their whitepaper, but felt lost after reading the first page? Well I’ve tried to simplify it a bit and explain you how Dusk Network is utilizing new tech to open up the security market. If you like it, please check out more of my stories on https://butwhybitcoin.com
A new cryptocurrency project on the block is Dusk Network which attempts to take the utility Ethereum and the privacy of Monero and combine them.
If one is familiar with Ethereum, then you would know about the phenomenon known as Initial Coin Offerings (ICO) that is taking place over the world. If you’ve had the unfortunate chance to be blasted with stories from people bragging about making over 10 times their money in a few weeks with cryptocurrencies in late 2017 at the kitchen table, it has most likely been through an ICO.
In fact, I myself first started seriously looking into ICOs when my cousin told me about one he entered called WABI, which eventually went from $0.24 (public rate) to peak at $5.39, netting a 22 times return over the course of a month. Of course, that peak did not last, highlighting the risk in this domain.
The concept itself comes from the ‘normal’ Initial Public Offerings (IPO) that is done by private companies, selling off shares or parts of a company off to the public in order to raise funds to grow the business. ICOs are similar in the way that the company sells off a portion of the total amount of coins they will create, that would eventually be used in return for the company’s services provided in the future.
An easy example would be to think about an airline company setting up 1,000,000 loyalty frequent flyer points and selling 500,000 of that to the public. By using blockchain and setting up the points this way, reassures the customers that there is in fact a limit to the number of points and more cannot be created out of thin air and diluting the worth of the points you currently hold (inflation), similar to one of the problems that Bitcoin was created to solve with money.
However, there are a key number of differences between ICOs and IPOs.
What are the differences between IPOs and ICOs?
Those services do not necessarily exist yet.
Because many of these companies are start ups raising money for their project, it is unlikely that the services that they are offering will be available until years to come, if at all. These tokens are basically an IOU you can resell, and only useful if the company succeeds.
You do not own any part of the company or its assets.
For IPOs you are essentially buying a portion of the company which could include its assets and profits. You also have a say in how the company is run, even if your say is small, as that power is divided between the number of shares. This is not the case for an ICO. You are not entitled to their earnings nor do they necessarily have to listen to your opinions on how they should run their business. If they do end up going bankrupt, you are not entitled to any claim.
Information does not need to be disclosed.
A private company forfeits many benefits once going public. They are now forced to disclose financial reports and must have a board of directors. They have to report to governing bodies relevant to the country they are based in, for example the Securities and Exchange Commission (SEC) in the United States. As a company that has completed an ICO, they have no need to do such things (for the moment anyway), as they are still private companies.
So why would anyone invest in ICOs?
Despite all these risks and clear disadvantages, ICOs exploded in popularity in 2017, with some projects even raising billions singlehandedly. So what are the advantages that attract so many people into investing in ICOs?
The answer is profit and liquidity.
All investors are driven to high returns on investments and the ability to cash in these coins and tokens with relative ease makes it very attractive. The quick access to the newly minted coins meant that investors could quickly flip for profit, multiplying their capital in a short amount of time. I mean who doesn’t like to make money quickly with good cash flow?
Due to the demand of ICOs, Ethereum, the main platform for ICOs, had quickly jumped from $7 at the start of 2017 to quickly peak at $1,432 in January 2018. That is a return of 200 times in the span of one year. During the peak of ICO activity, I recall hearing people complaining that multiplying their money by 3–5 every few weeks was no longer enough anymore. That’s how much the expectations had risen and why all that had to change.
Why is everything changing?
Along with the surging popularity in ICOs, fraud and quick get rich schemes quickly became rife throughout the space. Get rich quick schemes to prey on those who wish to get rich quick. Projects were promising great returns without a solid business plan or anything more to show than a whitepaper (a report that is supposed to present a problem and detail a solution). Some lacking even that. This quickly attracted the attention of regulators, bringing with them stricter requirements, enforced upon new and existing projects alike.
Enter Security Token Offerings (STO)
While ICOs sell coins or utility tokens, things that can be potentially of no worth, security tokens are backed by company assets like shares, earnings, voting power or something else of value. This brings it much closer in alignment to other pre-existing investment offerings. Assuming that the regulations that will be put in place are similar to the ones IPOs face, Ethereum will not be able to fulfill those conditions.
Why can’t Ethereum host STOs?
In many major countries, the practice of insider trading is illegal. This basically means that for people with knowledge regarding a publically traded company that the public doesn’t know, they aren’t allow to trade stock or securities based on that information. This includes a competitor’s stocks or securities. These people will usually be directors, significant shareholders, and in the case of start ups, includes all employees.
Due to the public nature of Ethereum and other common ICO funding platforms such as NEO and ICON, all investment transactions are visible to everyone. One may argue that because the transactions are publically available, it would not constitute as insider trading as that information is public. However, consider the scenario where a prominent investment fund can manipulate the market using this public information to broadcast the fact that they’re heavily investing in a certain project. Due to the influence of their name, the price will go up, a form of market manipulation.
A lack of identity verification. Some countries are forbidden in taking part in ICOs due to legal issues. Currently the only solution is to vet these people outside of the blockchain via a third party website or service. However, this does not mean that it is necessarily that person participating in the ICO once verified.
Enter Dusk Network
Dusk Network, again, is internet money just like Bitcoin. Unlike However it will eventually feature smart contracts, the same ones Ethereum has which allows a developer to code special programs and put it on the blockchain, and more importantly host ICOs (or in this case, STOs).
What are smart contracts and what do they do?
If you already know what smart contracts are, feel free to skip this section, but for the benefit of others who don’t, I will give a quick introduction. A contract basically exists to make sure two or more parties fulfil its conditions. For example, you might have a contract between you and the company you work for, they have to pay you x amount for your services to them. It removes the necessity of trust, which might not exist between people performing a transaction especially if they do not know each other, as it is enforceable by law and breaking it has consequences.
A smart contract is a similar concept, however, instead of being written and drafted by lawyers, it is written by programmers, and instead of being executed by the court of law, it is executed by the blockchain and everyone running it.
Like real contracts, a smart contract’s use can be very versatile, and is only limited by what the programmer knows how to write. For example, I’ve always been paranoid of purchasing something off the internet. I’m sure many have had the same fear with their first purchase, ‘What if it never arrives?’, ‘What if it comes broken?’, ‘What if it’s the wrong thing?’. Thoughts that echo mine are the reason we have third party mediators like PayPal that will refund you when something goes wrong. But what if we had smart contracts?
By sending your payment into the smart contract, it would belocked until the conditions for its release is met. In this case, perhaps thetracking status on your parcel being changed from ‘in transit’ to ‘deliveredand signed’, and if not met within a certain number of days, will refund thepayment back to you. Because this is all executed automatically by a program,especially by one with code that’s visible to the public and cannot be changednor taken down (all features of the blockchain), there is little reliance onthe mood of the Paypal customer representative that is supposed to take yourside.
This is only one example of the use case of smart contracts and there are many more, as evidenced by the many projects Ethereum and blockchain technology has given birth to. Already there are projects to use smart contracts to handle loans, selling and buying processes, rentals, game content and of course, its biggest use case currently, raising funds. I must iterate this again, for this is only the beginning of things, and the possibilities are really only bound by our imagination.
Right, then how is Dusk Network any different from Ethereum?
Dusk Network is privacy orientated
Privacy on the blockchain isn’t anything new. In fact, there is already Monero, which is basically the private version of Bitcoin. However, Monero (and Bitcoin for that matter) currently lacks the functionality of smart contracts. And that is where Dusk Network attempts to combine both.
This may be an obvious question but why do we need privacy? Leaving aside your depraved hobbies or need to spend on things that should really never see the light of day, currencies need to be fungible. No, we’re not talking about fungus or those things you’re buying. Being fungible means that any individual unit of goods or commodity needs to be worth the same as any other. In other words, the dollar I’m holding needs to be equivalent in value to the dollar you’re holding or any other dollar out there (of the same type).
Now, if you’re anything like me, casually scrunching up notes and shoving it into my pocket, only for it to later emerge weeks later like a used piece of tissue, fungibility is a life saver otherwise I’d be living on the street by now. In fact, thanks to this rule, you can exchange your torn up notes for a new one, even if there’s less than 50% of it left. And no, you can’t rip it in half and replace them for two full new ones or stick bits from separate notes together and trade it in (I know, I’m disappointed my genius strategy didn’t work too).
But cryptocurrencies are digital, so how can they be possibly worth less than another? Due to the fact that the full history of Bitcoin and other non-private cryptocurrencies are up for display to everyone, eventually, because of questionable hobbies and crime, those things are going to be traced back to the coin. Now, some organisations or individuals (think politicians), do not want to be connected to such things, and because of that, the value of those coins would be worth less to people.
Now this is an issue because the purpose of money is to make trades easier and with an imbalance of value, it only makes things harder. Real paper money has this benefit where you have no idea whose shirt it has been down or what goods it has been used to pay for as there is no track of its history. This is where privacy on the blockchain is necessary.
How do privacy coins stay private?
If the whole point of the ledger is so that people can’t just duplicate coins how can any of it stay private? And if it is private, how do people validate or audit it anymore?
There are a few things needed to make this happen.
One time random addresses created for every transaction. Think of using a different forwarding address every time you receive mail. All incoming payments are still sent to your address, but no one except you can see how much mail you are getting and from where. The payments are not linked back to public address or transaction addresses, hence the stealth part of the name. Of course, if this happens how do you see your own transactions or have someone audit it? The solution to this is to have three different keys.
When creating a wallet, you will receive a public key as normal but instead of just one private key, you will have both a private view key and a private spend key. Individually the keys can be used to do as the names suggest and combined the two private keys will lead to your address. The private view key can be used as a read only address for accounting and auditing purposes.
Ring Signature Confidential Transactions (RingCT)
When you conduct a transaction on Bitcoin and other public blockchains only the one transaction is made so that it is easily verifiable. However, this also makes it easily traceable as it leaves a permanent paper trail on the blockchain. With privacy coins such as Monero, Ring Signatures are a way to create decoy transactions known as outputs, which are made using the sender’s account keys and decoy keys taken from the blockchain.
Sending transactions become like a group exercise, with the number of participating decoy addresses being called a ring signature size. These addresses are bunched together, with someone signing off the transaction for everyone else like a joint account. When combined with stealth addresses disabling transaction history tracking, it becomes very hard to see where the transaction is going and who is really sending it, giving all addresses involved plausible deniability. Much like when the teacher asks who threw the spitball but none of you say anything… and your classmates are constantly changing into other people.
Going one step further are Ring Signature Confidential Transactions, which also hide the amount being sent and the destination. How this works can be demonstrated with a bit of maths. It’s probably been a while since we’ve touched algebra so let’s keep it simple. If I had 100 DUSK and wanted to send you 50 DUSK, my transaction would be as follows:
Input: 100 DUSK
Output 1: 50 DUSK to you
Output 2: 50 DUSK to me as change
However, all people outside of you and I would only see something like:
Output 1: 5x
Output 2: 5x
Obviously, the transactions are more complex than that and thus even harder to determine what the amounts are. However, the downside of using such decoy transactions is that the blockchain gets much larger quickly over time. Roughly an 8 fold size increase compared to Bitcoin.
Eventually, Dusk Network will be moving onto Bulletproofs, a type of zero-knowledge proofs (a way of determining something is true, without having any knowledge of it), which will reduce the size further by making sure the information stored within the transaction doesn’t contain any unnecessary information like the decoy transactions. This makes transactions much smaller and faster, something of which Monero has recently implemented, reducing fees on their network by over 95%.
All these features are what currently exist in other cryptocurrencies. So what new features does Dusk Network bring to the table?
The Anonymous Network Layer
When data gets sent all around the internet, it follows a set of rules and instructions known as the protocol and to make sure that the data you’re sending around doesn’t get leaked to people that it isn’t intended for, encryption is necessary.
Centuries ago, when messages during war were delivered by hand, many of these were intercepted by enemy soldiers and had plans and tactics leaked. As a result, encryption standards improved gained wider use. You may be familiar with Caesar’s cipher, one of the earliest forms of encryption, where letters of your message are replaced by letters fixed by a number further down the alphabet.
with a 2 letter shift becomes:
This was fairly easy to crack by hand, and so with the introduction of computers, much harder algorithms were created and so the job of deciphering them quickly became no longer possible for humans.
However, while we have a number of protocols that are capable of encryption, they generally do not put much consideration into the user’s privacy. In most cases, your IP address, an online identifier for your computer, will be revealed. And while in most cases, the only information that can be extracted is your general location, in certain situations, your personal information can be extracted from your Internet Service Provider. As a solution, Dusk Network has proposed the Anonymous Network Layer in order to enable full anonymity over its network.
Garlic Routing: Making sure it can’t be traced back
You may have heard of The Onion Router (Tor), where one can browse the Internet anonymously. The Tor network is a network of servers that would hide your identity by moving your requests through themselves like a giant pinball machine. Anyone who tries to trace it will only see the traffic coming from one of those nodes. Think of your request as a box with something inside. This box is then wrapped many times with gift-wrapping paper (much like an onion) and passed on to someone. The person then unwraps a layer, which reveals a card telling you which person to pass it onto. Eventually when the layers run out, it will reach the true person it is intended for, who can find out what it is inside.
By making use of the Invisible Internet Project (I2P), a free open source project released over 15 years ago updated and maintained by volunteers, Dusk Network extends off onion routing into garlic routing by bunching messages together into one box (like garlic cloves), making it harder to track the messages’ origins and increasing data transfer speeds. Those messages, each with their own delivery instructions, are only revealed at the end.
One limitation with I2P however, is that it is unidirectional (the data goes in one direction) which suits some use cases like streaming or sending messages, but unsuited for when data needs to go in both directions at the same time in cases such as audio or video calls. This is where Dusk Network deviates and implements bi-directional routing which enables that functionality.
On top of that, it is able to offer anonymous file downloads and communications, including audio and video streaming using the same method. This works by connecting to a Voucher Seeder, node that lists all the active Dusk Network nodes, connecting to one and sending the data forward.
Hold on, if this data is being passed around the nodes, wouldn’t they have a copy of that information? And how would it keep communications secure if anyone with a node can just tap into it?
Secure Tunnel Switching: Keeping communications secure
When making an audio or video call, a communication line is opened up to the person you wish to contact via a number of nodes on the network. When the amount of time you have been communicated exceeds a certain amount, a new communication line is opened up and both are kept open until they are both in sync, a process known as bitmatching, at which point the old line is closed. This process is repeated as the communications continue. Not so different from having access to many different mobile phones and numbers and switching between them all throughout your call. In this manner, privacy is increased with no nodes holding more than a certain amount of encrypted communications nor will it be vulnerable to targeted attacks on the network.
Segregated Byzantine Agreement: What’s wrong with Proof of Work (PoW) and Proof of Stake (PoS)?
Where Bitcoin uses Proof of Work to secure the blockchain, we know by now that it is extremely power inefficient. Now this is done on purpose in order to make attacks on the network extremely expensive, thus making the network safer. However, this is not cost effective and it is damaging to the environment and so it could be expected that regulations could come in to curb it. As such, some currencies moved on to use Proof of Stake. Now, Proof of Stake is a different type of method for consensus, selecting the nodes that will determine what will be the next block on the chain using different sets of criteria such as the age of the coins being held or the amount of coins held by a wallet. Of course, as you can imagine, this serves only to make the rich richer as they gain more control of the network and as such, defeats the purpose of decentralisation.
So how do you proceed? Dusk Network has proposed a new method dubbed Segregated Byzantine Agreement. Sounds like a mouthful doesn’t it? What does it even mean? The name comes from the Byzantine General’s Problem, an agreement problem, where a group of generals commanding a part of the Byzantine army (Eastern Roman army) surround a city. Each general has the option of attacking or retreating, but it is important that the generals agree on one choice or else only part of the army will attack and suffer heavy defeat.
Now, normally this would be a simple problem to solve. If there were an odd number of generals, they need only submit their votes to each other and tally up the choices. However, complicating the problem is the fact that some generals are traitors that will purposely mislead the army. Because the generals are separated and thus need to be contacted individually, a traitorous general could send an ‘attack’ vote to half of the generals and a ‘retreat’ vote to the other half of the generals leading half to attack and the other half to retreat.
If not complicated enough, no general is going to send the message himself (what would be the point of being a general otherwise?), and thus we must factor in the chance that the messengers sent to each general could have a chance of being traitorous as well.
So what was originally proposed as a solution was the introduction of lieutenants rather than all generals. These lieutenants, if loyal, would always follow the command of the general. Immediately, some of the issues with what orders to follow have reduced. With 3 generals, if one is traitor, two armies will receive incorrect orders. However with 1 general and 2 lieutenants, if the lieutenant is the traitor, only 1 of the armies will have incorrect orders. However, what if it so happens that the general is the traitor? Then we still have a problem and we will continue to have that problem while more than 1/3 of generals are traitors.
In Dusk Network, generals take on the role provisioners and lieutenants take on the role of nodes. Nodes wishing to be provisioners have to commit and lock a minimum amount of resources in the system known as DUSK like in Proof of Stake systems in order to command more authority in the network. If selected from the pool to be part of the committee, they are then in charge of helping verify the block (Validation), selecting the next block (Voting) and deterring fraud (Notarisation). In return, they are provided with a steady return of DUSK as income for helping out.
On the other hand, regular nodes only handle the transactions and compete to generate the next block. As this is not Proof of Work, the computational power required is minimal and so even phones can act as such. On generating the next block, that node is rewarded with a sum of DUSK.
- Normal nodes attempting to generate a block lock in a certain amount of DUSK for a certain amount of time by sending it to a stealth address
- They are returned a priority score determined by reputation and a pseudo random process
- The committee are selected from a pool of nodes that have reached the minimum staking requirements to be provisioners
- The node with the highest priority score proposes the block
- Validation of the block is done by the nodes that voted in the previous winning block
- Voting is done by the current round of provisioners, if consensus is not reached, an empty block is added
- Notarisation is done by the nodes that voted in the previous winning block
- Node generating the winning block and all provisioners (not limited to committee) are rewarded with DUSK
As you may have noticed, due to step 6 adding an empty block if consensus is not reached, a fork will never occur.
How does this solve the problem of the rich getting richer?
Interestingly, while the greater amount of DUSK you stake increases your chance of being selected to becoming a provisioner, it also reduces the amount of return you receive in such a manner that even if you were to split your stakes to aim to create several provisioners, it would not outweigh the chance reduction in being selected. As such, this promotes decentralisation of stakes and DUSK.
Real world use case
At the moment, it has been confirmed that a real estate fund in Malta has been in the works to tokenise their security and organise an STO with DUSK Network. In a simple scenario, if this real estate fund owns 100 properties and organises an STO with the properties as backing and sells 500 out of 1000 tokens, if you purchase 100, you will technically own 10% of the fund and the properties. This includes any returns via rent or capital growth that the properties are responsible for. Through STOs like this, means that a cheap and effective way into property investment or similar is available if you did not have the money to full invest in one alone.
What about Identity Verification or KYC (Know Your Customer)?
In order to meet regulations and legal requirements for ownership transfer of securities, identity verification is needed (otherwise how can you prove you own a particular asset later?). In these cases, the Dusk protocol allows for a Confidential Security Token Standard that allows third parties to issue security tokens that can only be transferred to an address with the identity verification data passing regulatory requirements.
The development team
The team responsible for the development is split into three components.
This is made of an internal team gathered by Dusk Network and are responsible for the core elements of the network, such as the Segregated Byzantine Agreement consensus mechanism and the Secure Tunnel Switching system. Led by;
Project and Tech Lead
Lead VM Architect
As suggested, this team is responsible for researching and development of improved methodologies and balancing of the ecosystem such as rewards output and reputation system. This will directly provide the necessary information to the other two development branches.
Dawn Public Development
Rather than employing purely internal development, having community developers ensure that fresh ideas are always in abundance and are not bound by the constraints of the team. Dawn developers are compensated as is appropriate by the foundation after the code has been reviewed and approved. This branch will focus on user experience, localisation, wallets and block explorers.
The business team
Business Development Team
Expanding business influence, acquiring potential partnerships and developing relations is all part of the work left to this team. Without anyone to use the infrastructure that you have built, it would be kind of pointless wouldn’t it? The team is composed of the marketing team, advisors and partners.
Business & Product Dev
PR & Communication
Business & Project Manager
Partnerships & Business Dev
Tokenised Securities Consortium
In order to launch STOs, a major use case for the Dusk Network as ICOs were to Ethereum, a group well experienced in the domain of IPOs and their requirements are required.
No team is complete without a team of advisors to fill in the gaps where needed, usually with the wealth of experience in their respective industries.
James Roy Poulter
Wentworth Hall Family Office
Cross Border Consulting
Want to read more of these stories? Check out my website and subscribe for the newsletter; https://butwhybitcoin.com/
Dusk Network Explained was originally published in Hacker Noon on Medium, where people are continuing the conversation by highlighting and responding to this story.