Smart contract development

Smart contacts are every Web3 project's cornerstone when it comes to safety, efficiency and features. We can help boost your project by designing and deploying highly gas optimized contracts and reliable contracts to the blockchain of your choosing.

More than just code

Smart contract development is more than just writing code. If you only care about hitting a deadline and getting the job done as quickly as possible, you’re likely to see unnecessarily high transaction fees, security flaws and missing features. By carefully designing smart contracts to fit your vision, our developers can give you peace of mind.

We are also very honest and vocal when we think something is not heading in the right direction, because we don’t just want to get the job done, we want to get it right.

What is a smart contract?

Smart contracts are the foundation of every web3 project. You can find them for example from every NFT collection as they all have their own smart contract, ERC20 tokens such as USDC are smart contracts of their own, marketplaces are running on their own smart contracts and also DEXs like UniSwap are run with their own smart contracts. Basically, all interactions other than native token (ETH) transfers require their own smart contract to be executed.

Smart contract is a program running on a blockchain, such as Ethereum, it acts as a digital agreement between different parties. Smart contracts have predetermined terms and conditions that are automatically executed when the contract terms are met. Without the need for a centralized authority, a legal system, or an external enforcement mechanism, smart contracts enable trusted transactions and agreements to be made between dispersed, anonymous parties. Smart contracts can be one of the most efficient and safest ways to implement and execute agreements between different parties.

Our priority list

At Lohko we have a strict order of rules we obey when developing smart contracts, which goes security, implementation logic and efficiency. The most important thing when developing smart contracts is their security, this means that if the wanted logic cannot be implemented securely, we will not implement it. Smart contracts are only safe if they are written with the best security practices in mind and for that, it is crucial to understand the ways smart contracts can be attacked.

Logic is in the second spot because we believe that logic should not be compromised just for efficiency. If we find an alternative way to greatly improve efficiency that changes the intended logic, we will always present those options to our clients and decide the best way forward together.

In the third spot, we have efficiency, which indicates gas efficiency. The cost for executing smart contract functions and deployment is determined by using gas, which in simple terms means that the more computationally complex the code of a smart contract is, the more gas it uses. Hence, optimizing smart contract code to reduce gas consumption is critical for the best user experience. Smart contracts are only efficient if written that way. We believe that efficiency is crucially important for the whole web3 ecosystem because in our mind users should never pay any more than necessary to execute transactions and the high cost of smart contract interactions will make you lose customers more likely than not.

Our smart contract development process

1 - Define the project logic, needs and constraints

We discuss and define the scope of the project with our customers to detail what is possible and what is not.

2 - Smart contract architecture

After defining the scope, we will design the overall architecture of smart contracts that will be developed for the project that represents the most secure and efficient way of implementing the desired logic.

3 - Development of the smart contracts

After contract architecture is drawn, we move to writing the actual smart contracts. We always write automated testing scripts during the development phase to ensure the intended logic works as it should. This phase involves deployments to testnets.

4 - Auditing

Once everything works on a testnet, we move to auditing the contract ourselves. This includes testing against a standard list of vulnerabilities, access control mapping and static & dynamic analysis. Static analysis analyzes accessible program states and execution patterns using low-level representations like control flow graphs and abstract syntax trees. Alternatively, dynamic analysis techniques such as fuzzing use random input values to execute contract code to detect actions that break security properties. Auditing is performed to check if the contract is secure and working as intended. After this internal audit, we always recommend our customers do external audits as well if their budget allows it.

5 - Deployment of the smart contracts

The smart contracts are deployed to the wanted blockchain(s) and all initial functions are run to make them ready for customer usage.

Lohko smart contract development

We offer smart contract development on all EVM-powered blockchains such as Ethereum, Polygon and Avalanche. You can see a full list of EVM-compatible chains here https://chainlist.org/. If the chain you are looking to launch in cannot be found on the previous link, feel free to contact us and we can see if launching on your intended blockchain is possible. Smart contract languages we use for development are Solidity and Vyper.

We have extensive experience in smart contract development from DeFi Summer of 2020 to this date. We have over 40 smart contracts live on different main networks and millions of dollars have gone through our contracts safely and securely without exploits or hacks.

Add in future: You can read this blog post if you are interested in smart contract security in detail. Read this post if you are interested in smart contract gas efficiency.