Technical Specification

NFTs are primarily either digitally created assets, or tokenized real-world assets on the blockchain.

Since Jan-2021 Non Fungible Tokens (NFTs) have gained a lot of attention in terms of assets for trading highlighted videos of basketball, digital artwork of artists, music royalties of musicians, having their own domain, and tweets of Twitter accounts.

And we are still very much in the early stages of adoption which opens up a plethora of opportunities for future use cases as adoption continues.

Hebys.io allows users to manage NFT transactions without going through confusing steps of wallet creation, metamask linking, minting etc. and enable the customers to trade NFTs seamlessly.

UI/UX

The UI/UX of the marketplace is designed based on a large research, picking the best features from the leading marketplaces and adding additional layers to provide the best experience to the users.

Technology Stack

  • Blockchain Programming Language: Solidity

  • RDBMS: PostgreSQL

  • Web App: ReactJS (Javascript and Typescript)

  • Mobile App: React Native (Javascript and Typescript)

  • Backend: C#.Net Core Web API

  • Integration: RESTful API

  • Container: Docker

ERC Protocols

Token standards like ERC-20 and ERC-721 require a separate contract to be deployed for each token type or collection. This places a lot of redundant bytecode on the Ethereum blockchain and limits certain functionality by the nature of separating each token contract into its own permissioned address. With the rise of blockchain games and platforms like Enjin Coin, game developers may be creating thousands of token types, and a new type of token standard is needed to support them. However, ERC-1155 is not specific to games and many other applications can benefit from this flexibility.

New functionality is possible with this design such as transferring multiple token types at once, saving on transaction costs. Trading (escrow / atomic swaps) of multiple tokens can be built on top of this standard and it removes the need to “approve” individual token contracts separately. It is also easy to describe and mix multiple fungible or non-fungible token types in a single contract.

Hebys allows listing of a wide range of Non Fungible Token standards including ERC 721 and ERC-1155. But ERC-1155 is used as the default protocol for minting.

Hebys-minted NFTs work with all external systems that support the ERC-1155 standard such as OpenSea.

Software Architecture

On-Chain vs Off-Chain

Off-chain and on-chain transactions are both suitable depending on the use case. In many ways, on-chain transactions are ideal for cryptocurrency transfers, while off-chain transactions are perfect for non-crypto related transactions. Off-chain transactions are a “private” form of blockchain, thus good for projects requiring a high level of privacy such as decentralized identifiers (DIDs) and personally identifiable information (PII).

Hebys combines aspects of both on-chain and off-chain transactions to develop hybrid transactions that require instant transactions that are not costly and need to be decentralized for transparency.

File Storage-IPFS

You may come across NFT assets that are hosted on platforms such as Amazon S3, Google Cloud, or even Dropbox. None of these solutions are well suited for something that you almost certainly want to prove the authenticity of. Think back to trading cards. Some of the rarest trading cards have an authority come in to verify their authenticity and provide certificates proving that authenticity. For digital items, this isn't possible.

At least, not by just looking at the digital asset. Instead, we can leverage content addressability to prove the authenticity of a digital asset. When the asset is created, it can be added to the IPFS (Interplanetary File System) network. In doing so, a content identifier (CID) is generated. That identifier is unique to that asset. If someone had a copy of the assets and made a slight modification, the CID would change and anyone in the world would be able to see that the copy was not the original and thus (maybe) not as valuable.

Multi-Chain

NFTs can be minted either on Ethereum, Binance Smart Chain or Avalanche. Other NFT-compatible blockchain platforms will be implemented as well in the following project phases.

Scalability

Wallet Support

A key thing to consider before purchasing an NFT is where you can store it. Similar to when purchasing cryptocurrencies, you will need an electronic wallet to store your digital assets.

Hebys supports multiple providers such as Metamask, Dapper, Gnosis Safe, Frame, Web3 Browsers, Portis, Fortmatic, Squarelink, Torus, Authereum, D'CENT Wallet, Arkane and WalletConnect

Source Code and Version Management

Source code and version management is an important concept of SDLC-software development life cycle in order for developers to collaborate and make changes to shared projects while keeping detailed track of their progress.

Hebys team uses GitHub.com and the smart contract source code is public as of now.

https://github.com/hebys/nft-marketplace-smart-contract

Logging

Audit logs take note of just about every change within a system, providing a complete track record of the system’s operations. Therefore, audit logs are a valuable resource for admins and auditors who want to examine suspicious activity on a network or diagnose and troubleshoot issues. These audit logs can give an administrator invaluable insight into what behavior is normal and what behavior isn’t. A log file event, for example, will show what activity was attempted and whether it succeeded. This can be useful when identifying whether a system component is misconfigured or likely to fail.

Code Review and Analysis

Hebys' DevOps automation also performs continuous inspection of code quality to perform automatic reviews with static analysis of code to detect bugs, code smells, security vulnerabilities, and reports them.

It covers a wide area of code quality checkpoints ranging from styling errors, potential bugs, and code defects to design inefficiencies, code duplication, lack of test coverage, and excess complexity.

Cloud

Test environment is hosted on UpCloud and the production will be chosen amongst AWS, UpCloud and Digital Ocean.

Security

We continuously keep following state-of-the-art security measures and features with OWASP - Open Web Application Security Project's recommendations beside our team's corporate experience especially in the banking sector which has the highest security rank among private sectors.

The entire platform is audited by multiple security experts and runs over 100+ security tests. The platform provides IP blacklisting, blacklist tracking, 2FA, Data encryption, Anti DOS/DDOS layers, Network monitoring, Intrusion detection, Firewall, Server hardening, Ports management, Google authenticator and so on.

Block Explorer

Last updated