30

In every DLT, a transaction have a probability to be valid. (In Bitcoin, a transaction is valid as long as it is written in the longest chain, so the probability for your transaction to be invalid is the probability that a longer chain exists somewhere without your transaction). In a blockchain like Bitcoin: 2 conflicting transactions cannot be in the ...


18

IOTA uses Proof-of-Work as an anti-Sybil measure. Every transaction has some PoW tied to it, the transactions reference other transactions which the transaction issuer treats as valid, so a transaction is like a vote for all the transactions it references directly or indirectly. Among conflicting transactions the one with the highest number of votes is ...


6

I can't answer how it will behave in case the coordinator is shut down and the network is actually decentralized as described in the whitepaper. Right now, the branch that gets confirmed by the coordinator, a special central node run by the Iota Foundation, is the one that gets accepted as valid by every conforming full node.


3

It is not easy to explain this in a few words. Therefore, I recommend to go over this consensus presentation first: https://github.com/noneymous/iota-consensus-presentation/blob/master/README.md This is, how it is designed to work without any coordinator. The presentation talks about reattaching a transaction. In the meantime you can do a promote which is ...


3

IOTA's Proof of Work is directly comparable to Hashcash, as it serves a similar purpose to prevent spam, and in our case, also to prevent sybil-attacks. -Official IOTA FAQ More about the Hashcash can be found on its wikipedia page.


3

A single IOTA node can already handle around 1000 transactions per second, this is quite a bit but probably not enough in the future. Once this becomes an issue sharding can be a solution. This means that only a part of the tangle is handled by cluster of nodes that for example only handle transactions starting with the letter 'A'; Another cluster will be ...


2

Iota currently uses Curl hashing algorithm for proof of work. It was developed internally by IOTA team as a ternary (uses base 3 numbers, like all Iota, instead of binary) cryptographically secure algorithm, but was ultimately shown insecure for cryptographic applications (I don't know how it affects its performance as PoW, maybe some ultra-ASICBoost is ...


2

Generally speaking, the double-spend which is directly and indirectly referenced by more transactions (i.e. has a larger cumulative weight) will most probably get confirmed. This is because more nodes will have accepted that double-spend and will thus impose their consensus on the rest of the network (eventually) by simply ignoring/orphaning the other double-...


2

When a part of the network (e.g. a satellite swarm of 4 devices, each are IOTA full nodes, floating into space planning to return in 4 years) decouples from the rest of the network a Subtangle is created. These 4 nodes then attach transactions (pay each other) to this Subtangle because they are no longer connected to the main Tangle (because they are too ...


2

The coordinator plays a role in the network today only because fullnodes accept it. The current version of the IRI handle milestones (i.e. transactions issued by the coordinator) with specific code (basically, any transaction validated by a milestone is considered confirmed). A tangle with a centralised coordinator owned by another entity than the IOTA ...


2

It traverses through ancestors until it reaches a recent memory-persisted snapshot of balances, creates a new potential state, and then checks to see whether any addresses resolve to a negative value.


1

MCMC ("Markov Chain Monte Carlo") is used for tip selection in IOTA. It is not mandatory, but the default iri algorithm (see Does the Tangle enforce a tip-selection algorithm?) White paper says: "The MCMC algorithm of this section, which is adopted by a considerable proportion of nodes, defines a probability distribution on the set of tips" So the part of ...


1

I am pretty sure that the name is a coincidence. In general statistics, "Monte Carlo algorithm" refers to an algorithm that does not calculate an exact result, but performs several random simulations and then uses the simulation results to estimate the exact result. IOTA's algorithm is called "Markov Chain Monte Carlo" (Wikipedia link), and I think the "...


1

Double spends are resolved once your transaction or bunch of transactions is attached to the main tangle. 1) COO in mainnet: The COO emits milestones every minute. Once your transaction is indirectly approved by a milestone which will happen quickly, your transaction is confirmed 2) no COO in mainnet: The weight of your transaction grows over time. In the ...


1

At the moment, we rely on Milestones issued by the Coordinator. In the future we might be able to rely on weight, which is the DAG equivalent of chain length. I don't know if Iota will need a Coordinator forever. If the honest transaction rate reaches a certain point, I think we could get rid of it entirely, but with current PoW (Proof of Work) and ...


1

A team working on a spamming tool tried to implement GPU transaction spammer but they ran into big issues with OpenCL as of 20/2/2018. The library is not ready as it always crashes, so it's whether to dig into the OpenCL or wait.


1

IOTA has some OpenCL context Library: https://github.com/iotaledger/clcontext But I don't know what you can do with it. Maybe this is what people ware referring to.


1

Offline transactions (AKA flash channels) requires an online tx to start and an online tx at the end. In the meantime, all transactions between participants can be offline. (be aware that 'offline' here means 'not connected to a full node') The idea is that to initiate a flash channel (i.e. a bunch of offline transactions): participants must deposit an ...


Only top voted, non community-wiki answers of a minimum length are eligible