Skip to main content
18 votes

Simple explanation of Monero mechanics - how does Monero work?

First of all, there are no addresses on the blockchain. Imagine the blockchain as a bunch of lockers which all look the same. The blockchain holds only the records from which to which locker funds get ...
JollyMort's user avatar
  • 20k
11 votes

What is Monero's mechanism for defending against a double-spend attack?

Double spends are prevented by the use of key images, which are sent along with each output being spent in a transaction, and which are checked for uniqueness before allowing the transaction. In the ...
user36303's user avatar
  • 34.9k
10 votes
Accepted

What is Monero's mechanism for defending against a double-spend attack?

Each transaction generates a key image. In the CryptoNote protocol, key images used more than once are rejected by the blockchain as double-spends. When a new transaction is received, the miner need ...
revler1082's user avatar
  • 2,501
7 votes

Can a new platform / cryptocurrency be built on top of Monero?

The Monero blockchain can be used to send any information, as long as it's part of a transaction. There is a field (tx_extra) where you can effectively put whatever you want in there. It's really a ...
scoobybejesus's user avatar
6 votes
Accepted

Why do I see only one transaction key R=rG per transaction while there are multiple output keys P=H(rA)G+B to represent multiple denominations?

This question was cross-posted to Reddit and was answered by dEBRUYNE_1 citing luigi1111's article: You may have noticed that this scheme only gives Alice one output for Bob per r, but with auto-...
kenshi84's user avatar
  • 2,485
5 votes
Accepted

Pros and cons of Monero's potential Seraphis Protocol Upgrade

The following assumes the Seraphis upgrade is accompanied by the Jamtis addressing scheme. Pros: Massive improvement in ring size (privacy improvement). Increased modularity of transaction protocol (...
BusyBoredom's user avatar
5 votes
Accepted

Is the 10-block lock time a protocol rule? What rules accompany it?

A. Is this a wallet rule or a protocol/daemon rule? It's a wallet / daemon rule. The number of blocks is defined as a pre-compiler constant CRYPTONOTE_DEFAULT_TX_SPENDABLE_AGE. B. Does the rule only ...
JollyMort's user avatar
  • 20k
5 votes

Confused about the RingCT protocol

(1) I understand that currently, the range proofs are done with Borromean signatures, isn't it? Not ASLN? ASNL had a flaw, so it was changed to Borromean: What was the problem with ASNL forgery? (...
JollyMort's user avatar
  • 20k
4 votes
Accepted

Does Monero have zero-conf?

You're probably referring to the concept where a vendor will accept payment, even when the payment has not been included in a block. Sure, that works the same way in Monero that it does in Bitcoin. ...
scoobybejesus's user avatar
4 votes
Accepted

If I only have the one-time public and private key of a transaction, can I spend it?

That's right. Normally, your wallet uses your private view and spend keys to recover the one-time key and uses it to sign a transaction spending that one-time key. If you already have the one-time ...
JollyMort's user avatar
  • 20k
4 votes

Confused about the RingCT protocol

Indeed the protocol uses Borromean signatures for range proofs. A RingCT signature contains all the info allowing everyone to check the validity of the amounts, and allowing the recipient to recover ...
glv's user avatar
  • 3,344
4 votes

How "one-time ring signatures" anonymise the sender of a transaction?

I will copy my comment from my blog as follows. As a prerequisite for understanding, my blog was lacking a layman’s introduction on Cryptonote’s ring signatures: I will expound a little bit on the ...
Shelby Moore III's user avatar
4 votes
Accepted

Why does Monero use keccak over something like sha-256?

While Monero does not use Keccak for its hashing, one advantage of using CryptoNote is to prevent Monero from immediately being able to be mined by ASICs. There is tremendous investment in SHA-256 ...
Daniel Ternyak's user avatar
3 votes
Accepted

How does the wallet scan for outputs belonging to it?

As far as I can tell from the code, the option 1 seems to be the case. Most of the core functions of the wallet are implemented in src/wallet/wallet2.cpp. In pull_blocks which is called from within ...
kenshi84's user avatar
  • 2,485
3 votes

Why does Monero use keccak over something like sha-256?

Keccak has "built-in" protection against length extension attacks. Edit: spelling
Lee Clagett's user avatar
3 votes

Does Monero have zero-conf?

Monero transactions are pretty similar to Bitcoin ones regarding this: you see them on the network, they linger in the txpool till mined, the block they're in can be reorganized, and the more blocks ...
user36303's user avatar
  • 34.9k
3 votes

What happens to coins that are sent to a public viewkey?

A view key is not a valid address, and thus your transaction should be void.
bigreddmachine's user avatar
3 votes

What are the risks/benefits of mining on a pool using SSL/TLS encryption vs mining on pools with non-encrypted connections?

It's less about the security of the data moving across the connection than about the authentication of the remote server. When you have the TLS fingerprint for the pool server set up in your miner ...
Michael Pelletier's user avatar
2 votes

How can I automatically sell Monero? What about the balance locking?

How can I automatically sell Monero? This is a little vague. What are you selling Monero for? Assuming you are selling Monero for some other cryptocurrency, you can still sell with zero-conf if you ...
jtgrassie's user avatar
  • 19.4k
2 votes

CipherTrace patents

The patent application is not yet published. This is normal as it can take 1 to 2 year before publication, and more before the patent will be granted. For example, CipherTrace has filed the patent ...
Ilyass's user avatar
  • 21
1 vote

Frequent "Exception: boost::wrapexcept<boost::bad_weak_ptr>" stack trace in logs

Nothing seems to be amiss. You can run with --log-level 0,stacktrace:FATAL if you want to get rid of those for space reasons. Ideally the error handling should be less noisy. It was supposed to have ...
user36303's user avatar
  • 34.9k
1 vote
Accepted

RingCT missing output indices

From v4 at height 1,220,516, where rct becomes allowed, coinbase outputs are stored as pseudo rct outputs. There is one such output in block 1,220,516 and one in 1,220,517.
user36303's user avatar
  • 34.9k
1 vote
Accepted

How does key images work when you create a transaction using two or more of your previously unspent transaction outputs?

Monero's ring signatures typically use a ring size of 7, which means 1 real output and 6 decoy outputs. However, there are several rings if you spend several outputs. Therefore if you spend 5 outputs,...
knaccc's user avatar
  • 8,518
1 vote
Accepted

Does monero p2p protocol use magic bytes?

Monero uses the Levin protocol for p2p comms. Similar question here. The definitions for the commands are here.
jtgrassie's user avatar
  • 19.4k
1 vote
Accepted

How does a Monero pool confirm/reject a submitted nonce?

The hash_accepted field is the response from the proxy server for when a hash is acknowledged by the server the hashes field is the number of hashes the worker has submitted in the past. When the ...
Joss Bird's user avatar
  • 559
1 vote

Is there a stratum like protocol for Monero mining pools?

In many cryptonight mining related software it called as 'stratum protocol'. For example: https://github.com/xmrig/xmrig-proxy so I believe this is the same protocol as in bitcoin, may be with little ...
Дмитрий Алферьев's user avatar
1 vote

Is there a stratum like protocol for Monero mining pools?

Stratum can be used for monero mining. Stratum is the protocol for communication between miner and mining pool server. getworktemplate is being replaced by stratum. Here is a monero miner which uses ...
maniath's user avatar
  • 11
1 vote

Simple explanation of Monero mechanics - how does Monero work?

I found this Fluffypony video on YouTube from 2015 quite an good (and easy to digest) introduction for most of those concepts. It doesn't touch RingCT yet I believe.
dpzz's user avatar
  • 4,539

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