The trend of cryptocurrencies is flaring up like never before these days, as more individuals are tempted to use blockchain based, decentralized cryptocurrencies. Due to their decentralized peer-to-peer (P2P) nature, cryptocurrencies have won the hearts of decentralization advocates, crypto-anarchists and libertarians. Nevertheless, given the fact that cryptocurrencies cannot be controlled by any form of intermediary, or third party, they can be easily used for funding terrorism, buying drugs online and other forms of illegal activities. A group of researchers have recently published a paper that can put an end to this via an approach that involves “Freezing of Assets” using an Ethereum token.
To be able to implement the researchers’ “Freezing of assets” approach, an administrator has to be able to freeze accounts that involve any illegal activities. During the past couple of years, many innovations have emerged to improve the proof-of-work PoW algorithm of cryptocurrencies and to add a form of a central minter, or a central administrator, across cryptocurrency networks.
A group of scholars from London conducted a research that presented a novel cryptocurrency that they named “RSCoin”. The coin can be partially controlled by central banks, along with a group of distributed authorities that aid in shielding the network against double spending attacks; thus, promoting partial centralization and full transparency. RSCoin has efficiently omitted wasteful hashing and represents a scalable cryptocurrency.
The Code For Freezing of Assets:
To deploy their approach, the researchers used Ethereum and the code for “freezing of assets” was appended in Ethereum’s code. The code they used has the ability to mine the testing ethers that could be consumed easily for all of the experiment’s tests. The “MyToken” contract is selected for deployment which will open the door for modification of a large number of constructor parameters according to a user’s preferences. The code will be modified by adding the “freezing of assets” feature which would help end the use of cryptocurrencies in illegal activities.
Freezing of Assets:
Freezing is different from account deletion, as freezing will guarantee that the currency’s balance would remain intact; the only difference would be that the user won’t be able to move the funds to other accounts. You can note on the below figure that the used code consists of a group of functions and variables. This piece of code can be added anywhere within the contract’s code. The only thing that has to be modified is the mappings of our code which should be arranged with the contract’s mappings and the events of our code have to be also arranged with the contract’s events.
The below figure shows that the code considers all accounts to be unfrozen by default and whenever needed, the owner may mark any account as frozen.
All funds in a frozen account will remain intact, the only difference is that they cannot be transferred. If the owner finds out that the use case is legitimate, he/she can change the state of the account from FreezedAccount to ApprovedAccount.
Implementation of the Code:
Now, a token with the “freezing accounts” feature has been created. Deployment plays a pivotal role in this cryptocurrency due to the different nature of this coin. As we already have test ethers, the smart contract can be created and the system will charge some gas. The more is the expedited gas, the faster a transaction would be executed. Under normal circumstances, a smart contract will receive 12 confirmations, before a smart contract is made. With more confirmations, the probability of successful smart contract execution will be higher.
The below figure shows how the addition of the owner, or the central administrator, is done. This represents the individual who will be responsible for performing all activities, i.e. the owner will be able to freeze or unfreeze (approve) any account’s assets across the coin’s network. The owner’s coin address has to be added in the provided space as shown on the below figure.
Now, the created token can be used as a cryptocurrency and can be sent to anyone, anywhere in the world. However, before the receiver can actually receive the funds, he/she has to do the task in the above figure. He/she has to enter the token’s initiation address and the remaining details will be auto-filled. Occasionally, details won’t be auto-filled due to network problems, so they might be needed to be entered manually. Once all details have been entered successfully, the receiver would be able to see the amount in his/her wallet.