IOTA Research

Header Research

IOTA Research

In this subject area, everything is very fast-moving and possibly not all descriptions are always up to date. This is also due to the fact that one is not always informed about the progress of the individual subareas, or the IF does not yet want to lay its cards fully on the table.

IOTA Research

More Details

Adaptive PoW

The IF is researching new algorithms to avoid congestion or bottlenecks in transactions in the Tangle.

Flash Channels

Flash Channel is the IOTA version of Bitcoin’s Lightning or Ethereum’s Raiden. It is an offline payment channel for deposits and withdrawals that enables instantaneous, high-throughput transactions.

IOTA-Area-Codes (IACs)

IACs are short, tryte-coded location codes that can be used to tag and retrieve IOTA transactions related to specific locations.

Verifiable Delay Function

The IF is currently exploring the possible alternative to PoW called Verifiable Delay Function. Unlike PoW, such functions are not parallelizable, which makes it inefficient to use FPGAs to achieve a large boost in their computing speed.

Flash Channels

Header Research

Flash Channels

Flash Channels are the IOTA version of Bitcoin’s Lightning or Ethereum’s Raiden. It is an offline payment channel for deposits and withdrawals that enables instantaneous, high-throughput transactions. This is possible because there are only two transactions in the IOTA Tangle, opening and closing a flash channel. Essentially, they provide a way for the two counterparties to trade at high frequency without waiting for each transaction to be confirmed on the public IOTA network.

Flash channel or a very similar feature will eventually be part of IOTA Streams. Two people can interact using microtransactions outside the Tangle by providing collateral in advance to a mutually controlled address. However, this only works for 1:1 payments.

Sources

www.iota.org

IOTA-Area-Codes (IACs)

Header Research

This article is a translation of the German IOTA Beginner’s Guide by Schmucklos.

IOTA-Area-Codes

The IOTA protocol is very flexible and can be used in different ways. Two different types of transactions are possible, the value transaction using the IOTA token and the message (zero value, only data / information). The IOTA protocol can be easily extended by creating a second layer on top of the base protocol. Both IOTA Streams and Flash Channels are perfect examples of such solutions.

The IF in person of Lewis Freiberg (Director of Ecosystem) proposes another 2nd layer solution. IOTA Area Codes (IACs) allow building IOTA based applications with geographic reference. IOTA transactions could be tagged and / or retrieved based on geographic features.

What are IOTA area codes (IACs)?

IACs are short, tryte-coded location codes that can be used to tag and retrieve IOTA transactions related to specific locations.

IACs are typically 10 trytes long and represent an area of 13.5 m x 13.5 m, with an additional location (11 trytes) a grid of 2.8m x 3.5m can be represented. IACs are a direct copy of the Open Location Codes, also called Plus Codes, proposed by Google Zurich in 2014. There are some minor modifications to make them compatible with the coding of IOTA.

When publishing information on IOTA, there is currently no way to easily identify transactions that refer to a geographic area. To find transactions that relate to a geographic area, you must register your transactions with a centralized service, such as a data marketplace that collects, stores, and shares location data with consumers.

IACs allow someone to find a transaction that relates to a small area but the true value of this system comes from the ability to query large areas for related transactions.

IACs are currently intended to be a catalyst for the community. The standard, in its current format, is useful but could be much better. We encourage you to stop by Github and create some pull requests to improve the code or suggest examples.

More Details

Demo Application

Github Library

NPM Repo

Original Source

https://iota-einsteiger-guide.de/iota-area-codes-iacs.html

Adaptive PoW

Header Research

This article is a translation of the German IOTA Beginner’s Guide by Schmucklos.

Adaptive PoW – A Rate-Control Algorithm for More Protection and Fairness in the Tangle

The IF is researching new algorithms to avoid congestion or bottlenecks in transactions in the Tangle. Malicious nodes that cause damage via spam, DOS attacks or similar must be prevented from negatively affecting the network. Therefore, a control mechanism for the transaction rate of each node is essential to keep the Tangle running smoothly in the future. Beyond this standard anti-spam requirement against malicious nodes, the IF wants to develop an algorithm that achieves some level of fairness and guarantees that nodes with low computational power still have a high probability of having their transactions approved. The IF believes these are fundamental requirements to accelerate technology adoption.

A first possible way to address the problem of transaction rate control in the Tangle is to build a reputation system for Nodes that rates them and classifies them as “trustworthy” or “untrustworthy” if necessary. To this end a “good reputation” should be hard to get but easy to lose. If a node approves an invalid transaction, attempts to spam the network, or exhibits similar bad behavior, it is identified and digitally branded by other nodes. As a result, that node is classified as “untrusted” and its transactions are very likely not to be approved.

However, a reputation system is only a general-purpose approach, so it is not specific to transaction rate control. For these reasons, IF is exploring a new type of adaptable transaction rate control algorithm based on the following ideas:

  • some computational effort is required to perform a transaction
  • the computational overhead required to perform multiple transactions in a short time interval increases incrementally
  • while fast nodes can issue transactions more frequently, nodes with low computational power are still guaranteed to have their transactions approved with high probability

The two main components of the algorithm necessary to achieve the above goals are assigning a global identity to each node and to the actual adaptive transaction rate control mechanism that is based on different proof-of-work difficulties. Global node identities are mandatory to implement a transaction rates control mechanism in a distributed system. If each node has an identity, public-key cryptography can be used to sign a transaction and tamper-proof it to its issuing node. By introducing identities, a distributed system becomes vulnerable to Sybil attacks*, in which a malicious entity masks many fake identities and uses them to overcome transaction rate control and launch a coordinated attack or spam the network.

*Sybil attack is an attack on peer-to-peer networks by creating false identities. The attack may be aimed at, for example, influencing majority voting and network organization, deliberately slowing down the network, disrupting connectivity on the network, or, for example, eavesdropping on communications between other peers.

The IF wants to make such a Sybil attack more difficult through so-called resource testing, where each node identity must prove possession of certain hard-to-acquire resources. The IF has decided in its algorithm to prescribe a certain number of Iota Tokens as resource / security (stake) and to implement a simplified version of proof-of-stake. These are necessary requirements for each node with identity and only nodes with a minimum amount of Iota tokens as collateral are allowed to perform transactions. The number of IOTA Tokens (Stake) is not reduced. The new kind of customizable proof-of-work allows each node to issue transactions while penalizing spamming actions.

As an additional security measure, the IF wants the total number of transactions issued by a node to be limited. The higher the security (stake) of a node, the higher the number of transactions that the same node can issue. This threshold provides two benefits. First it ensures that even a user with infinite processing power cannot arbitrarily spam the network and second, a proper choice of threshold can minimize Sybil attacks.

Conclusion

The discrepancy between smaller general-purpose devices and optimized hardware in terms of proof-of-work performance lies in the speed of computations. Therefore, any proof-of-work based transaction rate control would ultimately disregard smaller resource poor devices. Conversely, a purely stake-based system would lead to a centralization in which only the “rich” users (nodes) can participate.

For a good transfer rate control algorithm, the IF would like to combine the two approaches mentioned above. Slow nodes with low collateral (stakes) can do a few transactions at cheap rates, while at the same time faster nodes cannot spam the network due to a limit on the number of transactions.

Original source

https://iota-einsteiger-guide.de/adaptive-pow.html