Skip to main content
Share Your Experience: Take the 2024 Developer Survey
23 votes
Accepted

What are Fluffy Blocks?

The way blocks are currently propagated, every transaction is sent even though a node might have many, if not all transactions already. The idea is to just send the block header and transaction IDs, ...
revler1082's user avatar
  • 2,501
14 votes

What are Fluffy Blocks?

It's work done by revler1082, to introduce the Monero variant of compact blocks. As to what it's supposed to do, here's a quote from the github discussion which pretty much sums it up. fluffypony ...
JollyMort's user avatar
  • 19.9k
10 votes

What are Fluffy Blocks?

Jolly Mort and revler1082 already provided a nice description of the Monero Compact Blocks (fluffy blocks) concept. Below is some background for the ideas origination, development and nickname, which ...
254123179's user avatar
  • 4,566
7 votes
Accepted

Complete extra field structure (standard interpretation)

Things to keep in mind: The field's location within transaction data is defined by the transaction's structure. Currently (protocol v12) the transaction version is v2, and 'extra' lives between 'vout'...
koe's user avatar
  • 379
6 votes
Accepted

How many lines of source code does Monero have?

I do not know the exact number of lines of Monero source code, but there are a few methods to calculate it, which are described here. Monero is not based on the Bitcoin code base and is rather ...
Smart Kid's user avatar
  • 6,563
6 votes

Is there information available about the Levin protocol?

I did find the following information: Some information about the history you can find here. It is part of the so called 'epee' library. The creator is a Russian programmer called Andrey N. ...
fatdoor's user avatar
  • 589
5 votes
Accepted

Wolfram Warptangent, Point Release 10.2.1 performance improvements

There were several changes: https://github.com/monero-project/monero/pull/1727 This patch splits block and transaction data getters in two: one which retrieves the data, and the other also doing ...
user36303's user avatar
  • 34.8k
4 votes

Complete extra field structure (standard interpretation)

0x01: transaction public key... Incorrect. 0x01 is a public key. Not specifically a transaction public key. The wallets may stuff other public keys in extra, as an example, for multi-sig needs. ...
jtgrassie's user avatar
  • 19.1k
4 votes
Accepted

Problem with compile part of monero sources to create python bindings

This is not specific to Monero, rather a C/C++ linking question, nevertheless... The order you add the libraries matters. In your example: ... /usr/bin/c++ _build/pymonero.cpp.o -o pymonero \ -L$...
jtgrassie's user avatar
  • 19.1k
3 votes
Accepted

Tools to ease Monero source code pull request

In addition to the comments from user36303 and JollyMort see this answer to my recent question about the difference between ring size and mixin. The distinction is clarified below: Ring size = '...
seek adventure's user avatar
3 votes

Code that checks for 'rogue block'

It concerns block 202612. There's a good explanation from Fluffy in this similar question: What happened at block 202612? You can find the references to block 202612 in the code on GitHub.
dpzz's user avatar
  • 4,539
3 votes
Accepted

Formal Verification of Monero code

If the core Monero daemon gets to a point where it's particularly secure and particularly stable (eg. the code has been formally verified). Sounds like an idea rather than a particular plan with ...
pl55's user avatar
  • 1,858
3 votes

How many lines of source code does Monero have?

Using David A. Wheeler's SLOCcount (http://www.dwheeler.com/sloccount), the canonical tool for counting such things, Monero appears to be about 65k lines of C++ code and 5k lines of C code (src and ...
user36303's user avatar
  • 34.8k
2 votes

Computing the hash of a string using Monero's codebase

For SHA-3, you have cn_fast_hash, with this prototype: void cn_fast_hash(const void *data, std::size_t length, crypto::hash &hash); crypto::hash is a 256 bit value.
user36303's user avatar
  • 34.8k
2 votes
Accepted

P2P, RPC and Server related code

Daemons (nodes) talk to each other using the epee levin protocol. https://github.com/monero-project/monero/tree/master/contrib/epee/include/net https://github.com/monero-project/monero/blob/master/...
jtgrassie's user avatar
  • 19.1k
2 votes
Accepted

Payment URI support

The monero: scheme allows sending payment information. The main piece of data that's included is an address. Optionally, you can also include payment id, a comment, the name of address owner, and an ...
user36303's user avatar
  • 34.8k
1 vote

What is ge.h and what do its structs store?

In one word, what do the structs in ge.h do? Not in one word, but the structs defined in ge.h are used to store different representations of a group element (aka a point on an elliptic curve): /* ge ...
jtgrassie's user avatar
  • 19.1k
1 vote
Accepted

Why is the limit in the random32_unbiased function different between the comments and the actual code?

Why is there an inconsistency between the limit in the comments and the actual code? There's no inconsistency. l = 2^252 + 27742317777372353535851937790883648493 limit = l * 15 = ...
jtgrassie's user avatar
  • 19.1k
1 vote

What is the logic behind sc_add?

sc_add - scalar add - is taking two big numbers, which are stored as binary in byte (char) arrays and returning the result of adding them together in another byte array, mod the order of the base ...
jtgrassie's user avatar
  • 19.1k
1 vote

What do these two lines in electrum-words.cpp do?

Each 3 words gets converted to 4 bytes of the secret key. This particular line is calculating those 4 bytes (the unsigned integer at w[0]) in the loop which is taking 3 words at a time. It's ...
jtgrassie's user avatar
  • 19.1k
1 vote
Accepted

Is there information available about the Levin protocol?

You may also see here for their repo docs.
techiejd's user avatar
1 vote

Computing the hash of a string using Monero's codebase

First of all a disclaimer, I have no idea about the simplewallet.cpp and the monero client source code, but since this is a general coding question, let me get you started. First of all you need a ...
q9f's user avatar
  • 685

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