Questions tagged [source]

Questions about Monero source code and the process of building from source

Filter by
Sorted by
Tagged with
4 votes
1 answer
392 views

Where is the original CryptoNote Java implementation?

Supposedly CryptoNote was first implemented in Java and soon after migrated to C++. Where can I get the original Java implementation? I don't see it on GitHub and I can't get access to the ...
2 votes
1 answer
120 views

How does the code for scalar reduction work?

In this piece of code: https://github.com/monero-project/monero/blob/master/src/crypto/crypto_ops_builder/ref10CommentedCombined/sc_reduce.c#L35 We reduce a scalar by mod l. what is the ...
1 vote
1 answer
221 views

What is src/blocks/checkpoints.dat and why is it not plaintext in the source code?

What is src/blocks/checkpoints.dat and why is it not plaintext in the source code? In the source code src/blocks for Lithium Luna I see checkpoints.dat but it is not plaintext. I was under the ...
0 votes
1 answer
26 views

How does the block version get set

I noticed that the BLOCK_MAJOR_VERSION is still set to 1 in the cryptonote_config.h. So how is the block version getting updated to 14?
1 vote
1 answer
98 views

Are hex private keys already in little endian format?

I implemented my own private (seed) spend and view key generator for learning purposes but I still don't fully understand. I ended up with a working implementation but I feel that I'm just swapping ...
1 vote
1 answer
29 views

What's inside the file hashes.txt.sig?

I studied the monero-gui code and in the file monero-gui/src/qt/updater.cpp I found two addresses to verify binaries: https://web.getmonero.org/downloads/hashes.txt https://web.getmonero.org/...
2 votes
1 answer
205 views

What does ">>" in the get_block_reward do?

I'm creating my own fork of Monero and I was looking at the block reward function and I found this line in the file "src/cryptonote_basic/cryptonote_basic_impl.cpp" uint64_t base_reward = (...
2 votes
1 answer
771 views

How to understand Monero source code?

I am not a professional in C++ but I have good experience in it and can google my way if i have problems. I also have basic knowledge of the GNU Build System and technicians of Cryptocurrencies (From ...
1 vote
1 answer
212 views

Problem building release-v0.16

I can build release-v0.15 perfectly. However, when I change to branch v0.16 and try to build it, it failed every time. Can anyone give me some advice to solve it? Thanks! [ 36%] Building CXX object ...
2 votes
1 answer
44 views

Why is the function open_tx executed twice for each transfer command?

I built a private testnet with reference to this guide. In order to understand how the secret transaction key is generated, I examined how many times the open_tx function (in device_default.cpp) was ...
4 votes
1 answer
100 views

Problem with compile part of monero sources to create python bindings

I want to create python module with C++ bindings of monero functions: parse_and_validate_block_from_blob get_block_hashing_blob rx_slow_hash and more... I'm using ubuntu 18.04. For the simplicity ...
5 votes
2 answers
456 views

Why is sc_reduce32 needed?

I recently read a question about sc_reduce32 I stumbled on while investigating on Monero's Mnemonic Seed working. A great tool has been llcoins which states the following when talking about ...
0 votes
1 answer
156 views

Is there a tutorial how to compile my own monero cli wallet software from source?

Is there an easy to follow guide on how to compile my own monero cli wallet from source code? I want to modify some very minor settings that has to do with initial wallet creation settings ...
2 votes
2 answers
89 views

Computing division of Ed25519 scalars

Is there any implementation that computes div(x,y) mod l, where l is the order of the base point G and x,y are from that field (i.e. they are ge), or a function that calculates the inverse of a scalar ...
2 votes
2 answers
1k views

How do I fix build error about fPIC?

I recently built Monero from master on Manjaro, and there were no issues. I then built the same commit on an Ubuntu computer and received an error about fPIC. Like ... .rodata' can not be used when ...
1 vote
1 answer
102 views

Correctly retrieving the tx_pubkey from a transaction

I found, in the code, an example of a function that retrieves a public key from a transaction. The comments say that because of a previous bug, the tx may contain more than one public key. Do I ...
1 vote
1 answer
124 views

Get public key of tx that currently in txpool

Can someone tell me how I can get list of public keys of the transactions, which are currently in the txpool and has not yet been mined? That is, I am interested in how to get this information out of ...
1 vote
1 answer
351 views

What is the best Python library for hashing Cryptonight?

What is the best Python library for hashing Cryptonight hashes and building mining software?
3 votes
2 answers
77 views

What is the purpose of the Monero GitHub Meta repository?

According the Hello Monero dev meeting highlights for 2016-11-13, a new Github was created for organizational issues. What type of issues is this GitHub meant to address? Will the same Collective ...
1 vote
1 answer
103 views

What is the logic behind sc_add?

In sc_add (crypto-ops.c) we first load three chars, we mask with 2097151 (loosing information?): int64_t a0 = 2097151 & load_3(a); Then continue with something similar, but this time with four ...
1 vote
1 answer
53 views

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

Analyzing the seed logic here; Can someone please explain this expression: w[0]= w[1] + word_list_length * (((word_list_length - w[1]) + w[2]) % word_list_length) + word_list_length * ...
0 votes
1 answer
226 views

How to make a debug build of monero on mac os x?

I am able to compile monero on mac os x v 10.10.5 using the directions found here: https://github.com/monero-project/monero specifically brew tap sammy007/cryptonight brew install monero --build-from-...
0 votes
1 answer
64 views

Using crypto library from wallet

I'm trying to access functions from the crypto libray such as: ge_frombytes_vartime(ge_p3 *h, const unsigned char *s) ge_p3_to_p2(ge_p2 *r, const ge_p3 *p) both in crypto-ops.c I've added the crypto ...
3 votes
1 answer
93 views

ed25519 point structs

What do each of these structs represent? What is the difference between them? typedef struct { fe X; fe Y; fe Z; } ge_p2; typedef struct { fe X; fe Y; fe Z; fe T; } ge_p3; typedef ...
1 vote
1 answer
63 views

P2P, RPC and Server related code

Is there a recommended source of information as to how Monero interacts with wallets and other nodes? I'd like to get as much information as possible about the structure of the source code and am ...
3 votes
2 answers
83 views

What takes the most computing time in a monero wallet?

What functions take up most of the time for a new or restored simplewallet? Is it the scanning for its own inputs? What code line does the most heavy lifting in the simplewallet codebase? Lets say ...
1 vote
1 answer
79 views

Helper functions for ECC operations in Monero

1 - Where exactly the base-point G is defined? for example the function ge_scalarmult_base should multiply by G, but in the implementation I don't see any reference, where G is initlized. 2- Where ...
10 votes
1 answer
165 views

Why limit the CRC by a modulo of 24 rather than 1626?

When looking through Monero's source code I was intrigued by the choice of the Mnemonic's 25th word which is defined as follow: words += (' ' + words_store[create_checksum_index(words_store, ...
0 votes
4 answers
529 views

Is there a step by step tutorial on how to compile from source for Monero cli on ubuntu 16?

Is there an easy to follow step by step guide on how to compile monero from source? Alot of the times I compiled previously it stops due to something missing, which goes for many times installing ...
1 vote
0 answers
35 views

THE 2MB per process is that exact or will it change

I have a technical question on the MB per process. 2MB is always quoted. Is is exactly 2MB or slightly less? Is this a changing parameter that will change in the future?
8 votes
1 answer
293 views

Alternative Monero implementations

Considering the hardforks planned in Monero, it seems that having several implementations of the daemon is a difficult task as they would need to be kept in sync. I wondered however: Have there been ...
0 votes
1 answer
136 views

Does core_rpc_server::on_submitblock need full block blob?

It looks like the core_rpc_server::on_submitblock method is expecting a full block blob, since it calls... if(!parse_and_validate_block_from_blob(blockblob, b)) However this RPC method is used to ...
11 votes
2 answers
433 views

What type of security audits has Monero received?

What type of security audits has Monero received? Since this question already addressed cryptographic review of the Monero protocol, I am primarily interested in Monero source code and ...
2 votes
1 answer
415 views

If I compile from source, how can I change default wallet and daemon 10-block lock time?

Before I go further, I'll point out: This is procedure could put one's privacy at risk. This would cause a tx to fail more often in the case of a chain reorg. There's likely more than two ...
2 votes
1 answer
204 views

What is the meaning of wallet2::transfer_details::m_global_output_index?

I'm new in Monero. While reviewing the codebase of the Monero project, I'm stuck in the m_global_output_index field in transfer_details struct in the 'wallet2.h' file and want to know what it means. ...
4 votes
1 answer
86 views

How can I test fluffyblocks?

How can I test Fluffyblocks on mainnet? I found this GitHub repo linked on Reddit but I am unsure how to use it in production. Can I compile this source code to work with my existing blockchain or ...
4 votes
1 answer
838 views

ELI5 how to install AEON on Ubuntu 16.04 LTS

After the downloading the tar.gz file from GitHub to my default downloads folder what do I do next? The readme below seems to provide general instructions for compiling from master but is not specific ...
3 votes
1 answer
658 views

How is building the GUI from source different from building monerod/CLI?

Since I've been building monerod/CLI from source since before the GUI wallet was released, I already have a fully populated monero directory with my wallet and everything else that gets installed in ...
5 votes
1 answer
76 views

What are field elements and group elements used for?

Field elements (fe) and group elements (ge) are defined in the ref10 folder. They're also used in computations in crypto-ops-data.c. I'm trying to understand how Monero works by reading the code, but ...
1 vote
1 answer
106 views

Why does the SHA512 code include numbers ending in ULL?

The sha512-blocs.c file contains five blocks like these: F(w0 ,0x428a2f98d728ae22ULL) F(w1 ,0x7137449123ef65cdULL) F(w2 ,0xb5c0fbcfec4d3b2fULL) F(w3 ,0xe9b5dba58189dbbcULL) F(w4 ,...
8 votes
1 answer
102 views

A SHA-1 collision has been found. Does that mean the Monero repositories on Github can be compromised?

Git (and thus Github) relies on the SHA-1 hash function to guarantee that files can't be secretly changed. Now a collision has been found: two different files that produce the same hash. The ...
4 votes
1 answer
87 views

Source code history "immutability"

I'm fairly new to git and it seems surprisingly easy to rewrite past commits. I'm aware of the signed commits, and if I understand it correctly, it prevents against unauthorized/untrusted write ...
7 votes
2 answers
257 views

How much of the Monero code has been changed since the Bytecoin fork?

Is a large portion of the code still 'original' bytecoin code, or has, over the years, with the edition various new features, most of Monero become original code and the remaining Bytecoin code (<...
2 votes
1 answer
238 views

Errors while compiling Monero on openSUSE

I'm trying to compile latest version of Monero On openSUSE Leap, but it throws an error: Scanning dependencies of target obj_common make[3]: Leaving directory '/home/user/monero/build/release' make[3]...
3 votes
2 answers
297 views

Computing the hash of a string using Monero's codebase

In the process of trying to learn Monero's codebase and attempting to modify it, I have come across this difficulty: after having a user to enter his/her passphrase (a string), I would like to compute ...
4 votes
1 answer
106 views

Updating my monero master

So I cloned the monero github onto my computer around 2 months ago. How do I update the entire thing to the most current release? Is there a simple way to do so?
10 votes
2 answers
3k views

How do I build Monero for Windows from source?

Are there detailed build instructions for building Monero for Windows? Does the version of Windows we are building for (7,8, 10) (x86 vs x64) require different dependencies? edit: Can we compile ...
19 votes
1 answer
2k views

How can someone verify that the source downloaded from github is genuine?

When someone downloads the Monero source tree from github, there is a possible risk that this is not what the developers created. This could be MITM attacks, whether between developers and github or ...
2 votes
2 answers
3k views

How many lines of source code does Monero have?

How many lines of source code does Monero have? How does that number compare with the amount of Bitcoin source code?