Published 04 Aug by Cryptodiffer Team
IoTeX (IOTX) AMA with Cryptodiffer Team
AMA with IoTeX (IOTX) took place in our Discord channel on August 3rd.
IoTeX is a decentralized network for the Internet of Things (IoT) powered by a privacy-centric blockchain.
Learn more about IoTeX on their:
We would like to start with some general questions to introduce your team and project to our audience.
First of all, please explain to us briefly what is IoTeX?
IoTeX is a silicon valley startup building next-gen blockchain infrastructure for the Internet of Things. we focus on three key things: privacy, scalability, and interoperability. for privacy, we utilize privacy-preserving techniques to hide transaction value, sender, and receiver. for scalability, we have our roll-DPoS consensus mechanism and utilize layer 2 scaling in the form of our blockchain-in-blockchain architecture. and for interoperability, we will utilize our neutral infrastructure layer to connect various types of devices. all of these things are designed fully in-house, and we built our blockchain platform completely from scratch! we hope to power the future of IoT applications on IoTeX.
Tell us about your core team members background and how they started with the IoTeX?
We are proud to have a very diverse team - our technical team consists of over 10 Ph.Ds that have extensive industry experience as well. Our founding team consists of:
Raullen Chai - Ph.D in Cryptography and Research Scientist at University of Waterloo. Former Head of Cryptography R&D at Uber and Security Engineer at Google. 8+ years of experience in cryptography and blockchain.
Qevan Guo - Ph.D in Machine Learning and Computer Vision at National University of Singapore. Former Engineering Manager and Research Scientist at Facebook. Investor and advisor to several startups. 20+ publications and patents.
Xinxin Fan - Ph.D in Cryptography at University of Waterloo. Senior Research Engineer at Bosch, with 14 years of research and industry experience in information security and cryptography. 40+ publications and patents.
Jing Sun - Founding partner of Sparkland Capital. Led 40+ investments in blockchain, security, and IoT. Board director on numerous companies, with extensive experience in startups, investments, and building ecosystems.
Our founders got started with IoTeX due to a mutual desire to revolutionize the IoT space, and began working on IoTeX the middle of last year.
Since we have a lot of questions regarding the tokenomics, please explain to us what role does IOTX token play in the ecosystem?
Similar to other base layer blockchain platforms, the utility of our token serves as "gas" in the IoTeX ecosystem. the IOTX token is currently an ERC-20 token, which will be converted to a native token upon the launch of our Mainnet. the token's primary uses are:
Gas for the blockchain: transactions, execution of scripts / smart contracts, and use of network resources in the IoTeX network
Root chain and sub-chain management: provisioning of sub-chains and bidding for cross-chain communication bandwidth
Network-wide governance: staking pools for mining and voting rights for protocol upgrades
As we build out our product, more use cases for our token within and outside of the IoTeX network will be announced.
Thank you for answering these questions let’s move to more specific questions from our community.
Let’s talk about the competition:
We all can see the potential of IoT industry and its value in future, but how you plan to compete with other blockchain solutions? There are more than 20 projects in this industry (IOTA, IoTBlock, ioeX, IOTW, Beyond Protocol, Blockcloud, MXC etc.)
That's a great question - to us, it is very exciting that there is a lot of attention on the intersection of blockchain and IoT. just three months ago, we saw a lot of skepticism about supporting IoT with blockchain - today, we are glad to see the sentiment has fully changed. regarding how we differentiate ourselves, we understand our role in the blockchain ecosystem, and are focused specifically on building a robust and holistic infrastructure layer. many other projects you mentioned focus on one small component - for example, IOTA is trying to enable fee-less transactions with instant confirmation, but does not have the ability to support smart contracts, sub-chains, privacy, etc. which we are focused on providing. another advantage will be our development partners - we feel we devote a lot of time and effort to ensuring all of our partners succeed in building DApps on IoTeX, and we look forward to sharing more partners with you soon. we wholeheartedly believe that we have one of the most talented teams to pull it off!
Next question is:
What are the prime use cases for the IoTeX blockchain?
IoTeX is working hard on bridging the physical world with the blockchain. we get this question a lot about what use cases are most suited by IoTeX - we like to think about this as horizontal capabilities across industries instead of industry-specific verticals (e.g., smart home, renewables, supply chain). as one of the only blockchain projects that supports the integration of lightweight devices on the blockchain, we hope to cater to any use case that involves IoT devices.
Once data is stored on the blockchain, it is immutable and traceable. However, the original source of the data cannot be verified unless the data is attested (i.e., proven to come from a specific source/device), which is supported by IoTeX’s protocol. Today, there is an abundance of IoT data that cannot be fully trusted, rendering it unusable for formal research, sale to third parties, and other uses outside of the data owner’s domain. By connecting to IoTeX, the data generated by IoT devices can be attested and fully trusted, effectively making every device owner a “trusted data supplier”. This offers a number of new data-related opportunities:
* Provide trusted data privately to third parties and people outside of your immediate network - For example, research institutions can independently verify the original source of the data to ensure they are working with untampered data.
* Create a data marketplace - IoT data is extremely valuable to various third parties, such as insurance companies, big data / AI companies, medical corporations, etc. End users can choose whether to sell their data to these entities, and profits can be used to fund research or lower costs for users, as described below.
* Incentivize use of devices: Complete, continuous data sets are more valuable than fragmented ones. As a result, data buyers (e.g., insurers) can incentivize users to use their devices more often and provide more complete data. This could eliminate costs to users, and even be profitable for users.
in addition to these data-related use cases, our long-term goal is to enable machine-to-machine interaction, where various heterogeneous devices are able to trade data and value seamlessly and autonomously. this will be the foundation for true autonomous networks!
We have had few questions about IOTX token, first one is:
I'd like to ask a question regarding mass adoption of IoTeX as it is significant to any person who is one way or another connected to the project: crypto regulations are probably the hottest topic right now. Let`s assume that IoTeX will expand and be adopted in the USA and China as an underlying tech to support massive IoT industry and both governments would decide to mark cryptocurrencies as illegal. IOTX is for sure mandatory in IoTeX ecosystem for devices to communicate and so on so how such a problem would be dealt with?
First of all, let's hope that USA & China don't ban cryptocurrencies :smiley: (we don't think this will happen) one big goal of our token strategy is the "close the loop" on how the IOTX token is used. by this, we mean that we hope that the IOTX token can be usable outside of the IoTeX network, whether that is to purchase goods (end users/consumers) or to purchase / trade data from other networks. ultimately, we don't see regulation banning the USE of cryptocurrencies/utility tokens, only the issuing of them in ICOs or trading on exchanges.
overall, we see a lot of positivity in crypto regulation - multiple "hubs" are popping up (e.g., Malta, Jeju Island in Korea). once the rest of the world sees the economic impact of crypto and the new opportunities it brings, there will be a clearer regulation set.
The next two questions are related and we think it would be easier to answer both in one message.
IOTX token will be used as "fuel" for designed functions on the network. How do you envision the token velocity and fluctuations of crypto market impacting the price that various parties will receive/have to pay to be part of the network? In this bear market, how does the token price (if any) impact the project's budget or financials (employee compensation, marketing spend, etc)?
IoTeX token is mandatory for the technology without a doubt, however, this space may still need some time to evolve and hopefully overtake the fiat currencies. Until then some potential conservative partners of IoTeX may want to use the technology for many benefits over the centralized alternatives but wouldn't like to use cryptos just yet. How could this be solved if possible for the benefits for both sides?
Regarding the first question, we raised a solid private sale in February to accredited investors, and raised 25,000 ETH for 24% of the total supply of tokens - at the time, this was equal to $25M USD, and we think this provides enough runway for us to operate for the next few years at least. once the token price appreciates (crossing our fingers that we get out of this bear market), we believe the money we raised will be sufficient to cover all costs.
Regarding the second question, we don't necessarily see crypto and fiat as mutually exclusive - we hope that in the future, these two sides will coexist. The way to get corporations interested in the decentralized world is really through incentives. Blockchain technology is not only about the technology itself, but also about the fact that you can create brand new business models and incentive structures to trade data and transact in a completely trustless fashion. All incentive structures must be thought about deeply - it will take some time to get this completely right, but at the end of the day, corporations are interested in new revenue channels. Token economies will be one of them if we properly address the UI/UX (usability) and crypto-economics / incentives.
Now let’s talk about the partnerships.
What would motivate large companies to adopt IoTeX vs using their gigantic resources to develop in-house technology (or copy some of the existing blockchain projects, it's "open source" after all)? would smaller IOT companies have the foresight and resource to adopt the IoTeX platform?
Yes - we are focused on making the IoTeX blockchain easily usable and adoptable by companies big and small. It is true that our code is open sourced, but the ecosystem of development partners and ecosystem partners supporting our project cannot be replicated. The strength of a decentralized network lies in the size of the network/number of participants. In addition to building out our technology, our next biggest focus is on how to build this ecosystem - we have lots of new exciting partners that we are proud to showcase to our community, starting with your first partner that we announced yesterday: Lineable. Check it out at our official partnerships website: iotex.io/partnership.
Another thing I want to mention is even though major corporations have lots of resources, the nature of blockchain technology is very unique. Not everyone knows how to build out a blockchain architecture and infrastructure. Doing privacy on the blockchain also requires deep domain expertise in advanced cryptography. Two of our co-founders have 10+ years of experience in distributed systems for IoT, which cannot be easily replicated even with all of the money in the world. The good thing is we are not trying to be "the only IoT company out there". Instead, we are trying to build a platform to give other companies, both big and small, a significant "head start" by offering them a robust platform to build new applications on top of.
Since you have mentioned your first partner, there are two questions addressing the state of partnerships:
Could you shed some light on discussions with potential partners (customers) so far? Which key things do they focus on as they evaluate implementing blockchains and/or selecting blockchain projects? Were there areas of focus within IoTeX that changed in any way after those meetings? Which stages are most of those companies in terms of getting into blockchain (research vs. prototype vs. how many years until preliminary adoption in end market)? Who are usually the decision makers in those companies/institutions? Who would be the earliest adopters - IoT devices manufacturers or research institutions, large vs small institutions, or etc? Which countries have IoTeX been focusing on in terms of partnerships? What does IoTeX look for in terms of partners (types of technology, etc)
What is the process of working with the partners? do they initiate product development initiatives, or does IoTeX lead in the projects? How do they make sure the new upcoming product releases will still be compatible with IoTeX while both parties are continuously progressing on R&D?
Over the past year, we have engaged with a number of potential DApp builders. I would categorize them into three buckets: those that will build DApps from scratch, small-to-medium sized IoT companies and major corporations. The strategies and purpose of each of these types of partners are different, and we are working on all of them in parallel. We have actually seen the most traction with the smaller IoT companies, who will likely be the first ones to build DApps on IoTeX. Regarding major corporations, we will likely run PoCs in stealth mode with several, but the nature of these engagements is a much longer term. As far as who we like to partner with, we are focused on building both geographic diversity as well as use case diversity. We see our partners as extensions of the IoTeX project, so having "hubs" around the world in the form of our partners gives us more exposure/reach and also lets us learn about the nuances across various regions, such as culture, regulation, etc.
Every partnership will be different as far as goals/structure - we outline the goals/expectations of our partnership program in our Partnerships Program blog post (see link below). We think about our partners in two ways: development partners and ecosystem partners. Read more here, on Medium.
The next pair of questions will be about your roadmap and the current state of development.
Tell us something about recent achievements of IoTeX and goals for the next some months?
Testnet alpha was up and running in June. Roadmap suggests that beta version of the testnet is scheduled for this month. Is IoTeX going to deliver on time and how is development going regarding the smart contract and sub-chain management?
On the technical side, we have made some amazing progress over the past few months. In late April, we launched our first code release (Testnet Preview), which was fairly basic and offered transaction and block handling. Our latest code release (Testnet Alpha) improved the Testnet Preview code and added a number of new features, including support of our in-house crypto lib and support of our Roll-DPoS consensus mechanism. Over the next few months, we are focusing on adding scalability and robustness to our code, and are also introducing two exciting features in our next code release (Testnet Beta): subchain management and smart contracts. In October, we plan to launch our Mainnet Preview, which will follow the same trend of improving the efficiency and robustness of the prior code and adding new features. As some high-level goals, we hope to build out our root chain and sub-chains completely in 2018, and focus on privacy in 2019.
Testnet Beta will definitely be released in late August! As our community members know, we do not mess around when it comes to technical deadlines - we promise to launch our Testnet Beta with subchain management and smart contracts on time. Development so far is going well - we are learning a lot in the process, not just on the technical side but also the usability side. We are focused on understanding how to allow developers to port over their existing applications and smart contracts to IoTeX, and are working on robust developer documentation as well.
Recent technical development updates in July after the Testnet Alpha launch.
We have finished our “quality weeks”, fixing many code quality issues as well as improving the blockchain performance and robustness.
DB writes speed has been improved by 10x while crypto operations have been improved by 4x.
We have started using Kubernetes to deploy and monitor TestNet, and are in the process of pushing it to a greater scale.
We are improving Roll-DPoS consensus implementation and are continuing on the candidate pool and advanced crypto library integration.
We are investigating different virtual machine and smart contract technologies.
We are working on several research papers, which finalize the Roll-DPoS design and the consensus simulation framework.
Sounds good, our team was surprised by the amount of tech-related questions from the community, so let’s cover them all!
What will be the security measure to prevent root chain to be unaffected by sub-chains that do not function well or under attack or have bugs etc. Will IoTeX privacy feature cover the transaction data (receiver, sender, amount) or also smart contract data (inputs and outputs)?
Our consensus mechanism, Roll-DPoS, is how we will manage non-operating nodes or malicious attackers. For those that have not read our Roll-DPoS yellow paper (iotex.io/yellow-paper), our consensus mechanism is not just a re-structuring of DPoS to allow a more democratic voting process. It also adds instant finality of blocks, and support for large-scale IoT systems. One component of our consensus mechanism is we use PBFT, which is a fault-tolerant consensus component. As long as 2/3 of the block producing/verifying nodes are intact, It will tolerate non-functioning nodes. Furthermore, the fact that block producers are voted in means that they must maintain a certain reputation in the network - if they are constantly offline, then they will likely not be voted in again.
Regarding privacy - yes, our privacy-preserving techniques cover transaction sender (via ring signatures), receiver (via dual-key stealth addresses) and value (via bulletproofs, a type of ZK proof). Our longer-term ambition is to create privacy-preserving smart contracts, which is a topic that many privacy-focused projects are working on at the moment. Interested readers can take a look at our recent research paper on dual-key stealth addresses: https://iotex.io/dksap-iot
This one was hard, hah. Let`s move on to the next one:
You plan to create, with the help of your partners, specific devices to run on your technology. But, what type of devices will be the first and how do you plan to implement them?
In the IoT world, devices currently connected to their respective cloud or on-prem databases directly (device to the database) or via a gateway/router (device to a router to the database). The way that devices can connect ranges from cellular to WiFi to low power wide area networks (LPWAN) to even more options. Depending on the use case, our partners will connect to the blockchain in different ways and will follow a similar approach to what is going on today. The real difference is what happens once the data is on the blockchain - this is where a lot of the innovative capabilities will happen.
Regarding which devices will be connected first, we are very interested in wearables and sensors. These are both low power devices that have minimal compute and storage resources - to be able to run our blockchain on these devices is a challenge, but we like to start with the hard stuff first. Ultimately, these types of devices will have lightweight clients installed and will need to connect to a more powerful device (e.g., gateway/router) that can run the consensus mechanism on behalf of these low power devices. For more powerful devices (e.g., phones, cars, factory equipment), there is less challenge in connecting these devices due to their high compute/storage.
Will IoteX make rootchain-subchain protocol language-neutral, or will there only be one supported programming language? Also, will subchains have their own tokens?
Let us tackled your second question first:
The subchains can have their own token built on their subchain. We would like to provide high flexibility for the users of our subchains. While allowing subchains to define their own tokens reduces the utility of the IoTeX token on subchains, IoTeX hopes that will encourage more IoT DApps to be built on IoTeX’s platform. We hope IoTeX tokens will be utilized as the underlying cryptocurrency to help bridge the various tokens used on the IoTeX subchains. Allowing subchains to have their own token is an effective way to attract potential users/communities/companies to build their applications on subchains. With the rapid growth of subchains in the IoTeX ecosystem, people will be more confident about our technology and platform, thereby increasing the value of IoTeX token in the long run. Considering the salient features of IoT system such as interoperability and cooperation, IoTex tokens may become the baseline cryptocurrency to bridge different subchains.
Regarding your first question, the root chain is coded in golang, but developers can build their DApps in multiple programming languages. This goes back to the flexibility point: the root chain serves a specific purpose and is more "rigid" - it is meant to manage the subchains and enable cross-chain communication. The subchains are meant to be fully flexible and cater to a wide range of use cases. For smart contracts, the IoTeX virtual machine (VM) aims to support multiple popular programming languages for facilitating developers to write smart contracts. The support for different programming languages will be gradually added into the IoTeX VM with the development of the project.
How would the upcoming 5G wireless technology impact IoT and/or IoTeX specifically? Is wifi or Bluetooth connection enough for blockchain IoT applications, or doesn't really matter?
Similar to how different types of hardware/chips (e.g., ARM, MIPS, Artik, Semtech) are suitable for different use cases, different methods of connectivity are also more suitable for various use cases. For example, a 5G network is designed to be scalable, versatile, and energy efficient for connecting IoT devices, which aims to solve the challenge of combining communication and computation together for resource-constrained environments. However, the connectivity is expensive compared to others, such as LPWAN. To give another example, our new partner Lineable runs their devices on a LoRaWAN (long range wide area network) - the advantages of this are that is very cost efficient and has a range of 4km in urban areas and 40km in outdoors. Compare this to BLE (Bluetooth low energy) and WiFi, which have a range of only 100m. It is really about what use case you are trying to work with, and IoTeX hopes to support many types of hardware and connectivity.
Why use BoldDB and not Badger, is it a faster engine?
BoltDB is a mature database in golang while Badger is a relatively new database in golang that was released Nov 2017. When we make the design decision, stability/robustness of the dependencies is the most important things we care about. That being said, we welcome communities to implement IoTeX protocol in other languages using different underlying dependencies and share their experience with the IoTeX team so we can improve!
Next two questions are related so it makes sense to answer both of them in one message:
IOT transactions require a huge amount of data to be handled. How exactly will you manage them?
Where will all the IoT device data be stored? On hardware, or on the user/client side? Will the blockchain store all the data?
All of the heavy-lifting of the IoTeX network is handled by the pool of block producers (delegates), not by individual IoT devices (if they are resource-limited). This is why we chose to use Roll-DPoS, to concentrate the block production and maintenance of the network to specific delegates. There are IoT devices that are strong in computation/storage, e.g., autonomous vehicles, who could potentially join the delegate pool if they want.
Regarding storage of the IoT data, depending on the use case the data can either be stored on the blockchain itself or for more data-heavy transactions the data can be stored on the cloud or distributed file storage (e.g., IPFS) and only have the transaction hashes stored on the blockchain. There will be lots of transactions within the IoTeX network, which is why we are focused on using lightweight cryptography to make the operations as lean as possible.
How would you compare the pros and cons of public vs private blockchain for IoT? Wouldn’t private blockchain be more appropriate for “privacy” aspect of usage? What if companies like IBM open source their IoT applicable code (where are they now in terms of IoT blockchain)?
Both are needed for different scenarios. A private chain is definitely good for “privacy” but it sacrifices transparency and cannot be used as an anchor for trust, which are properties a public blockchain could provide. If IBM open sourced their entire IoT application code, that would actually be great news for the IoT ecosystem, including IoTeX. As far as I know, IBM considers IoT and enterprise blockchain (e.g., Fabric) as two parallel initiatives; and IBM is not moving forward as aggressively as we are.
To further clarify, IoTeX will support both permissioned (private) and permissionless (public) subchains. Private subchains can add a public key infrastructure (PKI) to manage who can participate in the respective subchain, which is an extra layer of privacy/security. However, they will still be able to share data across the IoTeX network via the root chain. We have seen a lot of desire from projects for permissioned blockchain capabilities, which is why many are looking into Hyperledger Fabric - we think that we can provide this functionality as well, and look forward to using it as both a way to create permissioned subchains for production-level use between trusted individuals/companies, as well as closed off networks for prototyping.
With what exactly will you support app developers in future?
Usability for our developers is a key focus for the future. To support our developers, we are currently working on comprehensive developer documentation, and plan to build SDKs to make launching a subchina/DApp very easy and effective. The initial version of the SDK will provide basic capabilities for a device to interact with a blockchain, e.g., read blockchain states and issue transactions/actions. As we get deeper into development, we will listen to our developers and add new SDKs that can lessen the burden of starting a subchain, as well as offer various template modules. In the long-term, we also hope to offer "subchains-as-a-service" to allow our DApp builders more capabilities (e.g., run analytics using an AI/ML subchain)
What is the transaction limit and as a sidechain is a limitation the same as for the master? And if not how does it increase?
First of all, IoTeX subchains and the root chain have a similar software architecture and theoretically they should have similar performance. Regarding our expected throughput, our long-term goal is to achieve a few thousand TPS on both the root chain and each side chain. In our architecture, you can add an unlimited # of side chains (all of which can communicate with each other via the root chain), which is one way that we increase scalability.
Another thing to point out regarding TPS is "not all transaction are created equal". In the IoTeX network, we offer completely private transactions by encrypting the sender, receiver, and value. This makes the transactions more heavyweight, as you need to attach various cryptographic proofs/signatures to the transaction to maintain privacy. To manage this tradeoff between privacy and throughput, we are incorporating lightweight privacy-preserving techniques to minimize the impact. Another differentiator of our transactions is that they have instant finality!
Thank you guys for the answers. It is time to finish our AMA, it was interesting to learn more about your project and our team wishes your project all the best. I would suggest you to make a final statement.
Thank you so much to the CryptoDiffer team and community - we really enjoyed your thoughtful questions! To close, we just want to say that we believe IoTeX is building something completely unique in the blockchain space - privacy, Roll-DPoS, smart contracts, subchains, support of various IoT devices, and more. These are not just buzzwords to us - these are all innovations designed completely in-house, which are necessary to support the FUTURE of IoT. We are a tech-focused team and we hope that you will dig deeper into our project! To learn more about our technology, please check out our white paper: iotex.io/white-paper and for more details on our latest partnership (more to be announced soon!), check out our new partnerships website: iotex.io/partnership
Also, please join our new IoTeX Discord group: https://discord.gg/TjZZFJ9