Vite Technical AMA Live Broadcast Translation — Part 1

Featuring Allen Liu, Director of Technology at Vite Labs

Vite Editor
Vite Labs

--

On September 26, Vite labs held its first technical AMA event featuring Allen, blockchain expert and head of Vite technology. During this AMA, Allen provides his valuable insight on Vite’s technology and future roadmap. Due to many questions from the community following the event, we have consolidated the answers to them in this article.

Allen’s Bio:

Blockchain expert. China University of Science and Technology / Fudan University graduate. Former HP technical director, IBM system architect and product manager. Over 10 years of industry experience. Scrum agile development expert, PMP.

Q1. On 9/25, Vite public chain mainnet was launched, showcasing features as promised in Vite’s white paper. The support for construction on the Vite chain and ecosystem is tightly coupled with the backing from its formidable technology development team. Could you briefly introduce the Vite technical team?

Vite has teams in Beijing and Silicon Valley. Our Silicon Valley colleagues are mainly responsible for the business and community development of overseas markets. The Beijing team includes technology, products and operations. The current technical team consists of 25 people, accounting for 60% of the team, and is the main driver for technical development. Most of these colleagues come from well-known software companies, including Baidu, Tencent, Meituan, etc. More specific information can be found on the official website here.

Q2. Vite is the world’s first public chain based on DAG to implement smart contracts. Since more and more DAG public chains are appearing on the market, what advantages does Vite have over other DAG public chains?

Vite has three important characteristics: free, fast, and safe.

Vite is the world’s first open source DAG public chain that fully supports smart contracts. Its mainnet is already online, supporting heavyweight dApps such as ViteX, our decentralized exchange. It is the first free smart contract public chain. There is no cost for user transfer of assets, developer debugging, or calling of smart contracts. To make transactions secure, Vite uses Snapshot chain technology to solve common security risks in DAG.

In comparison to other projects, Vite is confident in open sourcing its code for community testing. We believe that under the theme of decentralization, making open source code is the first priority of a mature public chain project.

Q3. What is Snapshot chain technology and how does it solve DAG’s security flaw?

Vite uses a block lattice-based DAG ledger structure, with one chain per account. Each transaction references a hash of the previous transaction in the account. The transaction is divided into two types: “request transaction” and “response transaction”. A response transaction needs to reference the hash of the corresponding request transaction.

This DAG structure has an inherent security flaw. This is because transactions are grouped by account. One transaction is only attached to the end of the account chain of the account to which it belongs. Transactions from other accounts will not automatically become successor entries of this transaction. Therefore, the probability that some transactions will be rolled back will not decrease over time. Vite uses an original Snapshot chain technology to take snapshots of the account chain status and attach it to the Snapshot chain every second. An attacker can’t roll back transactions on any account chain without successfully rolling back the snapshot chain, thus making up for this security flaw.

Q4. What is the difference between Vite’s Solidity++ and Ethereum’s Solidity?

Just like C++ and C, the name Solidity++ comes from Solidity. In terms of basic syntax, Solidity++ is compatible with Solidity and retains most of Solidity’s keywords and directives. The biggest difference between the two is the semantics for a message call. In Solidity, a contract call is a synchronous call, while in Solidity++ it is an asynchronously call. Smart contracts written in existing Ethereum Solidity code require minor modifications in order to be compatible with Solidity++.

Q5. VITE has a built in 3% annual inflation for its coins. Although the Vite chain has several staking options, VITE coins have few actual consumption and burning scenarios (invoking smart contracts and coins). So, in the face of a total annual inflation of 3%, the Vite project has not revealed scenarios to increase consumption and burn Vite tokens. Will there be any burning scenarios? Will there be technology-related consumption and burning scenarios?

This is a very good question. As an important tool to balance token inflation, the current scenario for burning Vite tokens is the deployment of smart contracts (10 Vite), coinage (1,000 Vite) and opening trading pairs (a total of 10,000 Vite, of which 5,000 Vite are burned, and the other 5,000 Vite added to the exchange’s dividend pool). In the future, the Vite public chain will add more token burning scenarios to reduce the probability of hyperinflation. Some of these scenarios will be related to newly added ecosystems on the Vite chain, while others will be supported in existing Vite protocols, such as the use of timed scheduling contracts and naming services. Timed tasks and naming services will be supported in Q4 2019.

Q6. How are success/failure scenarios accounted for in asynchronous processing? Is there a similar rollback mechanism for transaction processing?

Vite has a block lattice ledger structure. Under such a set up, it is impossible to encounter a success/failure scenario. If, for example, a request transaction is recorded but the request was not confirmed via a response transaction by the “recipient”, the entire transaction is deemed as a failure. As such, a rollback mechanism is not necessary.

A request transaction is not immediately “confirmed” by the system — for a recorded transaction to be confirmed, the recipient’s private key is required to be signed and broadcast. If the recipient does not use his/her private key to sign and broadcast the transaction (in the so-called “failure” state), the transaction will not be confirmed.

Q7. In Vite’s September biweekly report, it’s reported that Vite wallet Android 2.6.0 version of the airdrop is compatible with android 10.0. How soon will a mainland China friendly version of the client be launched? What is the difference between the airdrop control mechanism used in this version of the Vite wallet? From a security standpoint, will anti-spam features be strengthened? Under the premise of “attack prevention”, what kind of technical means is used in this version of Vite wallet to prevent and hinder attacks from hackers?

Since Android 10 opted out of device fingerprints, the way to obtain user identity information through IMEI is no longer feasible in Android 10. Therefore, we have adopted a new scheme for distributing airdrops for Android 10 users. This solution does not compromise security. Moreover, while maintaining the original security guarantee, we have reduced the pain points for our China-based users in accessing Google services. Most domestic users do not need to tunnel through the firewall to verify their identity, thus making it more friendly to our Chinese fans.

Q8. The white paper mentions that Vite’s development tools are similar to those of Ethereum’s, with some additional features. Does that mean Ethereum DApps can run on Vite with only small modifications?

Yes, it is Vite’s design goal to minimize the migration cost from the Ethereum dApp ecosystem. This is why we have made our developer kit maximally compatible with EVM. However, due to some semantic differences (the difference between synchronous and asynchronous models), a smart contract written in Solidity still needs to be modified in order to be compatible with the asynchronous call model of Solidity++. Solidity++ is currently the main development environment for the Vite platform. We recommend using VSCode and installing the Solidity++ plugin. It will provide keyword highlighting, code completion, local environment deployment, query contract status and debugging, etc., which is convenient for existing Ethereum developers.

Q9. How will Vite attract developers to build on the Vite ecosystem?

Following Charles’ answer to this question, we’ve set up a special eco-fund to support ecosystem projects. One of our main attractions is the provisioning of free quotas for third-party dApps, thereby reducing developer costs. We will promote development on the ecosystem and attract more developers to build on the Vite ecosystem through a series of developer incentives, contests and hackathons.

Q10. Following Vite’s mainnet successful launch, what are some of its follow-up development priorities?

Following the mainnet launch, new features will continually be added. In addition, there will be continual maintenance and daily iterative upgrades. Additionally, Vite’s technical team will now be able to focus on R&D for Vite 2.0, which will be a multi-chain platform. Currently, resource-intensive chain applications such as cryptocurrency exchanges deploy vertical sidechains for performance optimization. Inter-chain communication uses decentralized cross-chain solutions. The main chain and side-chain consensus verification utilizes zero-knowledge proof and supports multiple virtual machines. At present, Vite2.0 is still in its research stage. There will be more discussion of its progress and features in the future.

And…that’s a wrap for Part 1! You can find Part 2 here.

--

--