canonsburg
|
|
January 06, 2016, 06:30:20 AM |
|
Can someone explain how to decrypt the .keys file?
Specifically, the load_keys function within the wallet2.cpp in the source. Can explain the logic behind it and the procedure. (Not that fluent in C)
void wallet2::load_keys(const std::string& keys_file_name, const std::string& password) { wallet2::keys_file_data keys_file_data; std::string buf; 1 bool r = epee::file_io_utils::load_file_to_string(keys_file_name, buf); THROW_WALLET_EXCEPTION_IF(!r, error::file_read_error, keys_file_name);
// Decrypt the contents 2 r = ::serialization::parse_binary(buf, keys_file_data); THROW_WALLET_EXCEPTION_IF(!r, error::wallet_internal_error, "internal error: failed to deserialize \"" + keys_file_name + '\"'); crypto::chacha8_key key; 3 crypto::generate_chacha8_key(password, key); std::string account_data; account_data.resize(keys_file_data.account_data.size()); 4 crypto::chacha8(keys_file_data.account_data.data(), keys_file_data.account_data.size(), key, keys_file_data.iv, &account_data[0]);
.....
I labeled some lines of the code above: 1. Loads the data file into a memory buffer 2. Parses the memory buffer into a data object 3. Derives a chacha8 decryption key from the password (this uses the CryptoNight slow hash for key stretching, which greatly limits the possibility of brute forcing). 4. Decrypts the data using the decryption key The unlabeled lines in the code are error checking, memory management, etc. Ok, that clears some things up. But what do you mean by 2. "Parse the memory buffer into a data object"? I can read the .keys file in and store it as a string but how do I do the 2nd step of parsing? What type of characters is it stored as?
|
|
|
|
smooth
Legendary
Offline
Activity: 2968
Merit: 1198
|
|
January 06, 2016, 06:34:01 AM |
|
Can someone explain how to decrypt the .keys file?
Specifically, the load_keys function within the wallet2.cpp in the source. Can explain the logic behind it and the procedure. (Not that fluent in C)
void wallet2::load_keys(const std::string& keys_file_name, const std::string& password) { wallet2::keys_file_data keys_file_data; std::string buf; 1 bool r = epee::file_io_utils::load_file_to_string(keys_file_name, buf); THROW_WALLET_EXCEPTION_IF(!r, error::file_read_error, keys_file_name);
// Decrypt the contents 2 r = ::serialization::parse_binary(buf, keys_file_data); THROW_WALLET_EXCEPTION_IF(!r, error::wallet_internal_error, "internal error: failed to deserialize \"" + keys_file_name + '\"'); crypto::chacha8_key key; 3 crypto::generate_chacha8_key(password, key); std::string account_data; account_data.resize(keys_file_data.account_data.size()); 4 crypto::chacha8(keys_file_data.account_data.data(), keys_file_data.account_data.size(), key, keys_file_data.iv, &account_data[0]);
.....
I labeled some lines of the code above: 1. Loads the data file into a memory buffer 2. Parses the memory buffer into a data object 3. Derives a chacha8 decryption key from the password (this uses the CryptoNight slow hash for key stretching, which greatly limits the possibility of brute forcing). 4. Decrypts the data using the decryption key The unlabeled lines in the code are error checking, memory management, etc. Ok, that clears some things up. But what do you mean by 2. "Parse the memory buffer into a data object"? I can read the .keys file in and store it as a string but how do I do the 2nd step of parsing? What type of characters is it stored as? The keys file consists of a C++ object that is converted to a binary format using the boost serialization framework. The object in question is defined here: https://github.com/monero-project/bitmonero/blob/master/src/wallet/wallet2.h#L152
|
|
|
|
aiwe
Legendary
Offline
Activity: 1750
Merit: 1101
karbo.io
|
|
January 06, 2016, 08:37:59 AM |
|
How about merged mining for Monero and Aeon? Glad they also are funding miner, not only Monero community. Sent few coins. I'm just started mining so don't have much.
|
████▄▄████████████▄▄████ ██▄██████████████████▄██ ████████████████████████ ████████████████████████ ████████████████████████ ████████████████████████ ████████████████████████ ████████████████████████ ████████████████████████ ████████████████████████ ██▀██████████████████▀██ ████▀▀████████████▀▀████ | | | | Ҝ Ҝ Ҝ | | | | Ҝ Ҝ Ҝ | | | | Ҝ Ҝ Ҝ | | | | Ҝ Ҝ Ҝ |
|
|
|
smooth
Legendary
Offline
Activity: 2968
Merit: 1198
|
|
January 06, 2016, 08:41:42 AM |
|
How about merged mining for Monero and Aeon? Glad they also are funding miner, not only Monero community. They are separate algorithms and independent chains. There are a few coins you can merge mine with XMR theoretically but I don't know how much support for that there is any more since those coins have negligible value.
|
|
|
|
aiwe
Legendary
Offline
Activity: 1750
Merit: 1101
karbo.io
|
|
January 06, 2016, 08:52:16 AM |
|
I see. I mine on Minergate on few PCs at my reach because of convenient software and do merged mining of either MCN or FCN which I dump for XMR when collected enough minimum Hope they include new AMD GPU miner into their shiny app as they did with Nvidia.
|
████▄▄████████████▄▄████ ██▄██████████████████▄██ ████████████████████████ ████████████████████████ ████████████████████████ ████████████████████████ ████████████████████████ ████████████████████████ ████████████████████████ ████████████████████████ ██▀██████████████████▀██ ████▀▀████████████▀▀████ | | | | Ҝ Ҝ Ҝ | | | | Ҝ Ҝ Ҝ | | | | Ҝ Ҝ Ҝ | | | | Ҝ Ҝ Ҝ |
|
|
|
smooth
Legendary
Offline
Activity: 2968
Merit: 1198
|
|
January 06, 2016, 09:06:05 AM |
|
I see. I mine on Minergate on few PCs at my reach because of convenient software and do merged mining of either MCN or FCN which I dump for XMR when collected enough minimum You and everyone else. That's exactly why they aren't worth anything. Hope they include new AMD GPU miner into their shiny app as they did with Nvidia.
Most likely I would guess.
|
|
|
|
aiwe
Legendary
Offline
Activity: 1750
Merit: 1101
karbo.io
|
|
January 06, 2016, 11:27:06 AM |
|
Subjectively payout there seems to be a bit bigger than on others that I tried so I sticked with it.
|
████▄▄████████████▄▄████ ██▄██████████████████▄██ ████████████████████████ ████████████████████████ ████████████████████████ ████████████████████████ ████████████████████████ ████████████████████████ ████████████████████████ ████████████████████████ ██▀██████████████████▀██ ████▀▀████████████▀▀████ | | | | Ҝ Ҝ Ҝ | | | | Ҝ Ҝ Ҝ | | | | Ҝ Ҝ Ҝ | | | | Ҝ Ҝ Ҝ |
|
|
|
1337leet
|
|
January 06, 2016, 03:50:32 PM |
|
Hey guys,
is there a wallet available which offers a graphical UI like the Bitcoin Wallets?
|
|
|
|
Bagatell
|
|
January 06, 2016, 04:19:26 PM |
|
I see. I mine on Minergate on few PCs at my reach because of convenient software and do merged mining of either MCN or FCN which I dump for XMR when collected enough minimum You and everyone else. That's exactly why they aren't worth anything. Hope they include new AMD GPU miner into their shiny app as they did with Nvidia.
Most likely I would guess. I sure hope not. I'm not going to make accusations without hard evidence, but I am going to say, I *really* don't like that pool. Their hash calculator told me I would earn the princely sum of $25 pa.
|
|
|
|
|
dEBRUYNE
Legendary
Offline
Activity: 2268
Merit: 1141
|
|
January 06, 2016, 05:48:08 PM |
|
Another update from ShenNoether (NobleSir) regarding Confidential Transactions (CT) for Monero: edit 12/15/2015: I'm starting to play around with some c/c++ stuff that will help me implement this thing for real - I'll probably take a couple weeks off for xmas holidays though starting next week, so expect no updates dec 17-jan 4 All updates & links are in this thread: https://www.reddit.com/r/Monero/comments/3pw30d/ringct_for_monero_updated_versions/Another one: edit 12/17/2015: I have updated the draft on eprint.iacr.org in response to some knock-off versions of this math showing up without citation. Link: http://eprint.iacr.org/2015/1098And another update: edit 1/6/2016: Coded a version of the MG sigs with improved readability. Next up is the c++ version. Link: https://github.com/ShenNoether/MiniNero/commit/a761fbf2bda5a4bf135ad4d48266aa9857c1e11bWe also had this interesting update last week: Section 4.4 can be found here -> https://www.overleaf.com/read/qzgytbyyxvyfInteresting comment from Shen about multisig yep - very likely will be implemented in conjunction with the ring ct stuff
Following the "written up" link in the Ring CT post, section 4.4 of the paper describes how to implement "Ring multisignature". Some of the other CryptoNote coins have multisig, but only with 0 mixin. Very nice work being done on the crypto front. So soon™ I guess? :-P
|
|
|
|
|
XMRChina
|
|
January 06, 2016, 09:30:51 PM |
|
Another update from ShenNoether (NobleSir) regarding Confidential Transactions (CT) for Monero: edit 12/15/2015: I'm starting to play around with some c/c++ stuff that will help me implement this thing for real - I'll probably take a couple weeks off for xmas holidays though starting next week, so expect no updates dec 17-jan 4 All updates & links are in this thread: https://www.reddit.com/r/Monero/comments/3pw30d/ringct_for_monero_updated_versions/Another one: edit 12/17/2015: I have updated the draft on eprint.iacr.org in response to some knock-off versions of this math showing up without citation. Link: http://eprint.iacr.org/2015/1098And another update: edit 1/6/2016: Coded a version of the MG sigs with improved readability. Next up is the c++ version. Link: https://github.com/ShenNoether/MiniNero/commit/a761fbf2bda5a4bf135ad4d48266aa9857c1e11bWe also had this interesting update last week: Section 4.4 can be found here -> https://www.overleaf.com/read/qzgytbyyxvyfInteresting comment from Shen about multisig yep - very likely will be implemented in conjunction with the ring ct stuff
Following the "written up" link in the Ring CT post, section 4.4 of the paper describes how to implement "Ring multisignature". Some of the other CryptoNote coins have multisig, but only with 0 mixin. Very nice work being done on the crypto front. So soon™ I guess? :-P Ring CT and Ring multisig will elevate the profile of Monero to the point where it can no longer be ignored. The longer we move forward while bitcoin argues about block size the more bitcoin maximalists that will convert to Moneroism.
|
|
|
|
dEBRUYNE
Legendary
Offline
Activity: 2268
Merit: 1141
|
|
January 06, 2016, 10:08:29 PM |
|
|
|
|
|
MoneroMooo
Legendary
Offline
Activity: 1276
Merit: 1001
|
|
January 07, 2016, 12:25:06 AM |
|
luigi11111 pointed out that the recent update to the wallet generator to use custom entropy was broken in the way it got entropy from the user seed. A fix is now up on github. Since this had to be changed anyway, 10k iterations of Keccak are used to derive the seed from the user entropy, as suggested by smooth earlier.
Unfortunately, this means that the same string will yield a different seed, and therefore address, than the previous version. So if you did generate an address using custom entropy in the last few days, you should recreate it.
Thanks luigi1111.
|
|
|
|
languagehasmeaning
|
|
January 07, 2016, 04:49:50 AM |
|
luigi11111 pointed out that the recent update to the wallet generator to use custom entropy was broken in the way it got entropy from the user seed. A fix is now up on github. Since this had to be changed anyway, 10k iterations of Keccak are used to derive the seed from the user entropy, as suggested by smooth earlier.
Unfortunately, this means that the same string will yield a different seed, and therefore address, than the previous version. So if you did generate an address using custom entropy in the last few days, you should recreate it.
Thanks luigi1111.
This is a dangerous issue. Thank you for finding and correcting it so quickly.
|
|
|
|
dEBRUYNE
Legendary
Offline
Activity: 2268
Merit: 1141
|
|
January 07, 2016, 11:50:38 AM |
|
luigi11111 pointed out that the recent update to the wallet generator to use custom entropy was broken in the way it got entropy from the user seed. A fix is now up on github. Since this had to be changed anyway, 10k iterations of Keccak are used to derive the seed from the user entropy, as suggested by smooth earlier.
Unfortunately, this means that the same string will yield a different seed, and therefore address, than the previous version. So if you did generate an address using custom entropy in the last few days, you should recreate it.
Thanks luigi1111.
This is a dangerous issue. Thank you for finding and correcting it so quickly. To be clear, this only applies to the custom entropy that was added last week. If you just use the normal entropy, you don't have to worry about anything.
|
|
|
|
cryptonic21
Full Member
Offline
Activity: 168
Merit: 101
Physical Monero coins
|
|
January 07, 2016, 12:55:56 PM |
|
luigi11111 pointed out that the recent update to the wallet generator to use custom entropy was broken in the way it got entropy from the user seed. A fix is now up on github. Since this had to be changed anyway, 10k iterations of Keccak are used to derive the seed from the user entropy, as suggested by smooth earlier.
Unfortunately, this means that the same string will yield a different seed, and therefore address, than the previous version. So if you did generate an address using custom entropy in the last few days, you should recreate it.
Thanks luigi1111.
This is a dangerous issue. Thank you for finding and correcting it so quickly. Thanks luigi1111. Thanks MoneroMooo!
|
|
|
|
ph.amracyshop
Member
Offline
Activity: 108
Merit: 10
|
|
January 07, 2016, 01:20:17 PM |
|
I like to mine with wallet.
|
|
|
|
canth
Legendary
Offline
Activity: 1442
Merit: 1001
|
|
January 07, 2016, 01:42:05 PM |
|
Confidential Transactions - controversial and difficult in Bitcoin: https://www.reddit.com/r/Bitcoin/comments/3zv7rt/confidential_transactions_might_kill_bitcoin/I often don't find common ground with Luke-Jr, but his thoughts seem pretty much on the money here: [–]luke-jrLuke Dashjr I wouldn't worry about it. For better or worse, CT isn't likely to be considered for Bitcoin's main blockchain any time soon. Contrary to recent assertions, it is not softfork-able, and would be controversial to add as a hardfork due to the proof sizes (at least).
TLDR; HODL Monero. It's going to be difficult for Bitcoin to directly integrate privacy features in the near future.
|
|
|
|
|