37 votes
Accepted

Why does IOTA use a ternary number system?

Citing response of the IOTA's Co-founder David, Ternary is the optimal radix, actually Base E (2.71....) is, but you can't make processors like that. So it comes down to Base Binary (2) vs Base ...
user avatar
35 votes
Accepted

Is it possible to send pictures to the Tangle? What is the data limit per transaction?

Yes, you can upload images or any files or other data to the tangle. As long as their size is less than 2187 trytes you can put them into one tx (=transaction). If they are bigger (=more trytes) than ...
user avatar
  • 4,459
20 votes

Why does IOTA use a ternary number system?

Three questions were made: Why does IOTA use a ternary number system? What are the benefits of the ternary number system over the more traditional binary number system? Are there drawbacks to ternary ...
user avatar
  • 461
20 votes
Accepted

What is an IOTA "bundle"?

Transferring IOTAs from one address to another requires several different transactions: An output transaction that increments the recipient's balance by the desired amount. (usually) 1-3 inputs that ...
user avatar
  • 1,320
19 votes
Accepted

What is the IOTA transaction data structure?

Trinary Note In the "normal" world we have bytes & bits, where 1 byte is 8 bits giving us 2^8 = 256 possible data values for 1 byte. In the trinary world we have trytes & trits, where 1 tryte ...
user avatar
  • 1,663
17 votes

What information is leaked if I reuse an address?

Fragments of the private key of that reused address are leaked. An attacker could find a bundle hash (via brute-forcing) that can be signed with the leaked fragments. Luckily for the user, the window ...
user avatar
15 votes
Accepted

What information is leaked if I reuse an address?

To expand on CFB's answer, because IOTA uses Lamport signatures, half of the private key is leaked each time. This halves the security level of the address (from 54 trytes of security to 27 trytes for ...
user avatar
  • 1,358
11 votes

What is an IOTA "bundle"?

This cheat sheet present a bundle with : 2 outputs: 100 iotas to address B and 202 iotas to address C. the remainder : 49 iotas The inputs are comming from 3 addresses: A1, A2 and A3. In the ...
user avatar
  • 5,344
10 votes
Accepted

How are addresses calculated from the seed?

First, a subseed is derived from the seed Treat the seed as a (little-endian) number and add the index to it (a seed starting FEDCBA... and an index of 1 therefore results in GEDCBA.... Hash the ...
user avatar
  • 7,254
9 votes
Accepted

Why is the normalized hash considered insecure when containing the char 'M'

There was a bug in the wallet software related to absence of https://github.com/Come-from-Beyond/ISS/commit/de1a279450558848a81858fd57b023719eb9a0d3. "M" should be avoided to prevent leakage of the ...
user avatar
8 votes
Accepted

What is JINN project?

Here is the JINN website: http://iotanodes.org/jinn/ Nobody knows much about Jinn project except its global scope. The idea is to develop a low energy ternary processor. Everything else remains ...
user avatar
  • 5,344
8 votes
Accepted

A receive address is made public for donations, how do I safely withdraw funds?

How can I safely withdraw the funds a second time ? Second withdraw will be less secure. The security decrease exponential with every withdraw. There is nothing you can do against that. How can I ...
user avatar
  • 5,344
7 votes

What is an IOTA "bundle"?

A user will usually broadcast a collection of multiple transactions (also called a bundle) when interacting with the network. One bundle could consist of Withdrawal transaction (acquire funds to be ...
user avatar
  • 1,663
7 votes

What are the maths to convert bytes <-> trytes?

There are several ways to convert bytes to trytes, caused by the fact that you can take a different number of bytes at once to convert (the more bytes you take, the less space is wasted). In theory, ...
user avatar
  • 7,254
6 votes
Accepted

If I increment the first tryte of Seed A to obtain Seed B, why does Seed B retain some of the spent addresses of Seed A in it's history?

Every new address is generated by incrementing a seed and doing some hashing. This gives a useful feature: If you don't want to see the whole history of the transfers then increment the seed before ...
user avatar
5 votes

What is JINN project?

JINN is currently under NDA and doesn't release any information about its development. Here are some snippets of what we know about JINN via the developers on Slack: JINN is a low cost (target price:...
user avatar
  • 3,135
5 votes

What information is leaked if I reuse an address?

With every spend a random 50% of the private key is exposed. The reason that it is a one-time signature follows from what a second spend can reveal: The overlap of the 2 random 50% reveals can be ...
user avatar
4 votes

A receive address is made public for donations, how do I safely withdraw funds?

As far as I know Lets say you were receiving donations on Address X, my recommendation is to not use this address till you REALLY need to withdraw from it. After you withdraw from address X, make ...
user avatar
4 votes

Why is JINN Ternary?

The main reason for JINN to be ternary, is that it is based on development of a ternary general purpose processor. I have searched alot on this topic, but the only conclusion I can draw is that they ...
user avatar
  • 41
4 votes

Why is JINN Ternary?

JINN ternary microprocessor is not created for the desktop, laptop, tablet or smartphone markets. The markets that JINN is aiming for are the blue oceans of the Internet of Things, smart sensors, ...
user avatar
4 votes
Accepted

What is Qubic exactly? A programming language? An IOTA Smart Contract?

Qubic is the name of a protocol which will be built on top of the IOTA Tangle. The Qubic protocol provides general-purpose, cloud- or fog-based, permissionless, multiprocessing capabilities on the ...
user avatar
3 votes

Why are three trits in a tryte?

Trits are not very readable by humans, so English letters and a separator ('9') were used for combinations of 3 trits. Calling them "characters" would require to add "used in IOTA addresses" sometimes ...
user avatar
3 votes
Accepted

Converting bytes to trites using IOTA libraries

The method you mentioned converts each byte into 5 trits, so the output array needs to be 5 times the length of the input array. Note that this function is not suitable for encoding any byte ...
user avatar
  • 7,254
2 votes

What is a conflicting transaction?

Transactions are conflicting if they try to spend the same money from the same address (and the address does not include enough money to satisfy both at the same time - but this should not happen ...
user avatar
  • 7,254
2 votes
Accepted

How to save the bundle trytes to reattach after a snapshot?

Starting from the bundle hash, call the findTransactions API to get the transaction hashes of all transactions in your bundle. Pass the hashes to getTrytes to retrieve the transactions as tryte-...
user avatar
  • 7,254
2 votes

A receive address is made public for donations, how do I safely withdraw funds?

For now, you need to make sure that you consider an address a temporary place to receive funds for the exact reason you bring up: You will be compromising your security by withdrawing from a static ...
user avatar
  • 3,135
2 votes
Accepted

Where is the message in the transaction bundle?

The message is stored in the space where the signature normally would be. In the signatureMessageFragment of the first transaction in the bundle, there is GACDZCTCEAADTCGDGDPCVCTCGA and a whole lot of ...
user avatar
  • 1,358
2 votes

What are the differences between Qubic smart contracts and Ethereum smart contracts?

One main difference in the language: Abra is a functional language (source : "Qubic tasks are specified using an intermediate trinary-based functional programming language called Abra.") and Solidity (...
user avatar
  • 5,344
2 votes

Why were 4-byte integers chosen as the best way of storing individual trits within IOTA software?

I was in discord around the time this was originally posted. I figured someone would have provided the answer right after we discussed it... @Come-from-Beyond brought it up himself, and he said that ...
user avatar
1 vote
Accepted

What smart contract language does IOTA use?

IOTA will use a smart contract language called Abra - which is an intermediate trinary-based functional programming language. More information on Abra can be found here.
user avatar

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