Image for post
Image for post

CodeChain Faucet is a tool for obtaining free CCC for the Corgi test network. To read about the Corgi test network itself, give this link a visit.

Before going on, you will need a wallet to receive CCC. Please refer to Jae Won Park’s article on how to create one.

Once you have created your wallet and signed in, it will lead you to the main wallet page.


Image for post
Image for post

A blockchain’s asset management model is largely divided into the UTXO model and the account model. The UTXO model is used in Bitcoin, while the account model is used in Ethereum. CodeChain has adopted the UTXO model and supports partial signing. Through partial signing, it is possible to implement more complex forms of asynchronous transactions without the need of escrows. In order to understand partial signing, one must first understand the UTXO transaction model. In a transaction, the input is the output of the previous transaction(pointing to the asset owned), and the newly created output takes over the previous output and becomes a new type of asset. By new type of asset, it can mean that the owner has changed or the amount of the asset has been divided, etc. …


The Schnorr signature is an elliptic curve digital signature, which emerged as an alternative to ECDSA, and is also implemented in CodeChain. You can find more information about this in Bitcoin’s Schnorr BIP, and there are several articles that explain the concept and applications of the Schnorr signature(link1, link2), so be sure to check those out.

Image for post

Firstly, the four major advantages of the Schnorr signature are as follows:

  1. Schnorr signatures are easier to operate and slightly faster than ECDSA. …


A blockchain is often compared to a DB. There is clearly something in common, since both allow you to store and view information. If you want to store data in a blockchain and create various applications that utilize blockchain technology, you must be able to query stored data freely.

Image for post
Image for post

“Return a list of transactions contained in a block during a specific time window”

In commonly used RDBs, and NoSQL DBs, we can simply execute the above query. You can also create indexes in time fields to quickly handle them. However, blockchains do not create indexes other than some of the more frequently used fields. In other words, it is very unlikely for blockchains to provide the above query natively. There are significant constraints on the queries provided by the RPC APIs because they do not create an index unless it is information that is crucial for the blockchain. …


Currently, CodeChain is running on the first testnet, ‘Husky’. Being the first testnet, there were numerous patches in order to improve stability. One of the bugs was that the CodeChain node terminated unexpectedly or a network deadlock occurred while the nodes were synchronizing with one another. When we faced this unexpected problem, it was difficult to pinpoint which exact node had a problem, and consequently, debugging proved to be an arduous task as well. In addition, there were problems when applying patches to a large number of nodes, or checking whether each individual node had matching versions.

In order to solve the problems stated above, we initialized the CodeChain Agent project. …


CodeChain opened its first testnet, codenamed ‘Husky’. CodeChain also provides CodeChain Explorer, allowing users to visually observe Husky’s data. A block explorer is an essential tool for blockchains. Without explorers, users would have no idea whether transactions were successful or what their accounts’ current balance is. In fact, users wouldn’t even know if the blockchain is actually running without personally querying the blockchain.

CodeChain Explorer portrays CodeChain network’s data through graphs and images, and also enables users to check the node’s connection status and versions. …


If you are or have been involved in blockchain development, then you must be aware that one of the most important methods for token distribution is airdropping. While providing blockchain services, there may be times when one must host various events to distribute money or items to users. That is precisely why we developed CodeChain Helicopter, and in today’s post, let’s discuss what exactly CodeChain Helicopter is.

Image for post
Image for post

What is CodeChain Helicopter?

CodeChain Helicopter is an airdrop tool that distributes assets and coins for free. The helicopter that is responsible for distributing the assets will have a platform and asset account with CCC and various assets stored inside. We are currently running the Helicopter on our testnets, Husky and Saluki. For the sake of simplicity, only Husky Helicopter’s settings will be discussed in this article. Every 24 seconds(arbitrary value chosen for testing purposes), the Helicopter will randomly choose a target platform account to which CCC will be transferred to. Currently, the airdrop distributes 0.001 CCC per cycle. Assets are also dropped in a similar manner. However, since assets cannot be distributed in fractions, the amount of assets dropped is randomly chosen between the values of 0 to 10. Furthermore, assets are not given to random users, but dropped in a certain location, where anyone can find and claim them. Finally, the condition for transparency is met by the utilization of CodeChain Explorer. …


Image for post
Image for post

Rust is a language that utilizes the RAII idiom, resulting in different code depending on when the object is destroyed. For instance, let’s take a look at the code below.

This code creates an instance of Service and waits until it is terminated. This code is syntactically correct. However, if you wanted code where Service performs some action until termination, then this code is wrong. Since the Service object is not bound to any variables, this object is destroyed at the end of the second line.

If you want the Service object to stay alive until wait_for_exit is finished, you need to change the code as shown…


Image for post
Image for post

Creating a game with meaningful currency has been difficult in the past. Mainly, this is due to inflation, as game developers can easily create an infinite amount of money within the game to their liking. Soon, the in-game currency’s value will be lost as more and more currency becomes issued. In addition, there are many cases where hackers ruin fair gameplay by discovering exploits to farm a large sum of gold that’s enough to disrupt the entire game’s economy.

Blockchains can offer a solution to this problem, and CodeChain tackles this problem through its properties of asset minting. When minting assets using CodeChain, the amount being minted in that instance is important. This is because assets that are minted in other instances are different asset types. …


The third CodeChain Dev Meetup was held yesterday. CodeChain Dev Meetup is a regular event held weekly, where developers, who participate in the open-source CodeChain project, gather and discuss about the development process, participate in code peer reviews, listen to new technical seminars, etc. In this week’s meetup, there was a total of 12 participants. 8 of those participants are a part of the CodeChain team, and 4 of them are outside contributors.

After Ji Young Song’s brief self-intro of himself, the technical seminar went underway. In this week’s meetup, Kwang Yul Seo presented the Schnorr signature. The Schnorr signature has a simpler algorithm when compared to ECDSA, and due to Schnorr’s efficient signing and verification process, it is in the spotlight as a next generation signature algorithm. The Decred project has already implemented Schnorr signatures and Bitcoin is considering to introduce the algorithm as well. …

Seung Woo Kim

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store