Coinhako: Storing and securing cryptocurrency transaction data with the power of Google Cloud

About Coinhako

Established in 2014, Coinhako is one of Asia’s first digital asset wallet services and stores more than 100,000 user wallets. Coinhako enables consumers to buy, sell, and secure Bitcoin and other digital assets on an easy-to-use platform.

Industries: Financial Services
Location: Singapore

With Compute Engine, Cloud SQL, and Google Kubernetes Engine, Coinhako facilitates secure access to cryptocurrencies for consumers in Asia and beyond.

  • Improves startup time for Compute Engine and other cloud resources by 30%
  • Achieves 10% cost savings from networking and storage costs by switching to Google Cloud
  • Enhances data security using Cloud IAM (Identity Access Management)

Cuts deployment time of new services by 50%

Cryptocurrencies have gained significant popularity since 2009 when Bitcoin was first introduced. A Fidelity Investment research study in 2019 found that 4 in 10 institutional investors are looking to invest in digital assets over the next five years. Coinhako is meeting this demand with one of the first exchanges in Asia to trade traditional currencies such as the Singapore Dollar for crypto assets such as Bitcoin.

“Trading cryptocurrency is like trading stocks. We can’t predict price swings that lead to traffic spikes. Google Cloud offers discounts for committed use that fit in very well for the volume we face. We can spin up extra resources but still enjoy a discount from on-demand prices.”

Gerald Ng, Software Engineer (DevOps), Coinhako

Cryptocurrencies trade in an unpredictable market. According to the International Monetary Fund, the deviation for daily Bitcoin prices is approximately ten times higher than in most major currency pairs such as Euro/Dollar. To provide customers with a reliable and secure digital currency platform, regardless of market fluctuations, Coinhako migrated to Google Cloud.

“Trading cryptocurrency is like trading stocks. We can’t predict price swings that lead to traffic spikes. Google Cloud offers discounts for committed use that fit in very well for the volume we face,” says Gerald Ng, DevOps Software Engineer at Coinhako. “We can spin up extra resources but still enjoy a discount from on-demand prices.”

Gerald adds, “We save about 10% of networking and storage costs by using Compute Engine and other products from the Google Cloud ecosystem. We like the flexibility of the committed use discount on Google Cloud that’s tied to usage rather than resource type as dictated by our previous provider.”

Speeding up resource creation on Google Kubernetes Engine

To understand Coinhako’s business, we need to understand blockchain, the underlying technology for cryptocurrencies. As the name suggests, blockchain is a chain of blocks storing transaction data such as date, time, and amount. Each block needs to be verified by a peer-to-peer network of computers, commonly known as nodes, before the transaction is complete.

Coinhako runs more than 10 blockchain nodes on Compute Engine to speed up the validation process without a third party. Nodes constantly exchange the latest blockchain data with each other to stay up to date.

“Using a microservices approach on Google Kubernetes Engine, we can easily isolate security concerns between components such as user wallets from frontend services.”

Gerald Ng, Software Engineer (DevOps), Coinhako

Due to size, it’s nearly impossible for consumers to store a copy of the blockchain on their mobile device. Ethereum alone takes up 282.91GB, and blockchain size grows with each new transaction. Apart from the trading platform, Coinhako offers a mobile application for consumers to access various cryptocurrencies at their fingertips. This digital wallet is secured by the user’s unique blockchain address and crypto keys.

Coinhako wants to rebuild legacy applications with a unified architecture as microservices applications in Kubernetes. By adopting microservices, developers can work independently on specific features and share common codes to speed up development.

“Using a microservices approach on Google Kubernetes Engine, we can easily isolate security concerns between components such as user wallets from frontend services,” says Gerald.

When comparing Kubernetes across cloud providers, the company chose Google Cloud because of its native Kubernetes support and rich integrated features.

“Google Kubernetes Engine is the most up to date with the latest release of Kubernetes and provides a uniform environment to run code. We now deploy microservices on Google Kubernetes Engine in half the time and effort that we used to spend with our previous cloud provider,” says Gerald.

Securing data on Google Cloud

Compared to its previous cloud provider, Coinhako can update Blockchain applications faster on Google Cloud to address protocol-based security flaws.

“We want to gain consumer trust and loyalty with a secure platform for digital asset transactions,” says Gerald.

As a cryptocurrency platform, Coinhako needs to be compatible with the crypto main network, commonly known as “mainnet.” When contributors discover a security flaw, the community releases a software update with security fixes. It’s critical for Coinhako to upgrade all nodes to the latest protocol as soon as possible.

“We used to spend up to an hour deploying changes on VM, followed by more time manually checking changes. We had to make sure the environment is the same so that we can deploy services to the different nodes in the same way,” Gerald explains. “On Google Kubernetes Engine, services are deployed at the click of a button.”

Apart from Coinhako’s security measures, the company also uses built-in security features on Google Cloud such as encryption at rest by default and Cloud IAM to minimize unauthorized access to customer assets.

“User-level security is greatly enhanced on Google Cloud. We use Cloud IAM to grant or revoke infrastructure access when employees join or leave,” says Gerald. “We can manage access control from one central location to see who has permission to what application.”

Simplifying database management with Cloud SQL

Coinhako uses Cloud SQL to manage customer data without having to build a database from scratch. Developers can easily connect to the cloud database service from applications on Google Kubernetes Engine and Compute Engine.

“Coinhako is a lean startup. Using fully managed services such as Cloud SQL means we can focus on our applications instead of spending time and manpower on administrative tasks.”

Gerald Ng, Software Engineer (DevOps), Coinhako

“Many of our applications need databases to store and query large amounts of data. Instead of hiring a database administrator to create and manage our database, we decided on Cloud SQL that is fully managed by Google Cloud,” Gerald notes.

Google Cloud takes care of database management, patch management, software updates, and backups to ensure 99.95% availability anywhere in the world. The fully managed cloud database is easy to set up so Coinhako can read or write data from the database.

“Coinhako is a lean startup. Using fully managed services such as Cloud SQL means we can focus on our applications instead of spending time and manpower on administrative tasks,” says Gerald.

Coinhako enabled automated backups on Cloud SQL so it is easy to restore lost data or recover from a problem with the cloud instance. Coinhako uses Cloud Pub/Sub to schedule a daily export of the Cloud SQL database in Cloud Storage.

Cloud SQL data is automatically encrypted in Google Cloud to minimize risk from hackers and other malicious attacks. Coinhako uses Cloud IAM policies to restrict access to sensitive information, such as database, on Compute Engine and Google Kubernetes Engine.

Brainstorming at Coinhako

Speeding up account verification with AI

Coinhako is looking into Vision AI to help customers get on board quicker. Similar to traditional financial institutions, Coinhako asks customers to provide ID cards when they open an account. Customers are allowed to trade in larger volumes if they declare more identity documents such as proof of address and facial recognition.

Right now, a compliance officer cross-checks documents with reliable data sources. It’s a manual process that’s time consuming and labor intensive, but Coinhako is looking to change this.

“We’re currently evaluating other Google Cloud products, such as Vision AI to automate the onboarding process for our customers and compliance team so that manual processes can be reduced,” says Gerald. “On top of that, there’s also the potential to weed out fraud and impersonation attempts and protect the original identity owner by running various detection and analysis algorithms on those documents. In the end, legitimate customers will be able to get onboarded faster.”

About Coinhako

Established in 2014, Coinhako is one of Asia’s first digital asset wallet services and stores more than 100,000 user wallets. Coinhako enables consumers to buy, sell, and secure Bitcoin and other digital assets on an easy-to-use platform.

Industries: Financial Services
Location: Singapore