ledgerhq / app-monero Goto Github PK
View Code? Open in Web Editor NEWMonero wallet application for Ledger Nano S & X
License: Apache License 2.0
Monero wallet application for Ledger Nano S & X
License: Apache License 2.0
Currently, the Monero Ledger app generates its address and keys from the master key, but the process that this is done is not publicly available and can only be done in the Ledger.
I would like to request that a tool be made available, similar to the Iancoleman BIP39 tool that allows the Monero mnemonic to be derived independently from the Ledger using only the BIP39 master mnemonic.
When Nano S enters auto-lock with the monero app open and an active (temporary) passphrase set, then after unlocking the device the monero app is still open from the instance with the passphrase.
Only when closing the monero app and then opening it again will the monero app be an instance without the password active.
This behaviour is not consistent with the other wallet apps, in that they will always immediately on unlocking the device fall back to an instance without the password active.
Hi community - I am unable to Create a new wallet from hardware
, using my Ledger Nano S.
Can anyone help? My set-up below.
First of all thank you for all of your efforts. I am glad XMR can be protected on a hardware device now.
I have two Monero wallets on the ledger. One with pass phrase and one without.
The Monero wallet attached to pin with 24 seed, no pass phrase does not display the ENTIRE public address on the ledger.
It displays and scrolls about 60 percent of it and then scrolls back.
The second wallet with pass phrase however displays the entire public address.
Bug seems entirely cosmetic as everything appears functional when interacting with blockchain.
The address displayed is correct it just doesn’t display ALL of it.
I hope this can help please let me know if I can clarify any details.
Hello Community.
I created a Monero wallet back on Jan 2018 using Ledger Nano S. I put XMR - Monero into that wallet. And now for some reason when I try to login and after entering my password, the screen or wallet flickers and reverts back to the page to enter my password. I even tried using Ledger Nano X too and still the same thing happens.
Also downloaded the Monero desktop wallet Current Version: 0.14.1.0 Boron Butterfly, the same happens.
So I decided to restore the Monero Wallet using Ledger S and I get the following errors.
failed to generate new wallet: Wrong Device Status : SW=6930 (EXPECT=9000, MASK=FFFF
failed to generate new wallet: Unable to enumerate device 114115:11415: NULL Device
Please advise. Thank you. I have Windows 10 Home Edition.
P.S. I went online and saw that we can use CLI and Docker and all that stuff however I am not computer savvy enough to use those methods and don't want to break or corrupt the wallet and not be able to access my Monero at all.
P.P.S. I read many posts and followed all the instructions such as Running as Administrator, making sure the Monero app is running on the Ledger first, switching cables from the front ports of the computer to the rear ports, reversing the order of connecting the cable, tried using Monerujo on the phone with the right Restore Height etc. etc. and nothing. Whew!
I'm running the latest firmware for my nano x and the last app version.
If i open the monero app i get a page with the monero logo and the first and last characters of my address.
If then i press both buttons and go right few times I can see the complete address, except that on page 2/2 it's not showing the same ending but rather some of the last characters are cut out.
Just a reminder to get the Monero App Ledger ready for the update.
Corresponding branch: https://github.com/monero-project/monero/tree/release-v0.16
No hard fork. We aim to release in ~5-6 days.
Hi there!
I am wondering whether you have published some test-vectors for void monero_init_private_key()
https://github.com/LedgerHQ/blue-app-monero/blob/385a7200faea0c783a57ac05c9b1423e056907aa/src/monero_init.c#L81 as we would like to generate the wallet keys in the Ledger-compatible way.
I didn't manage to find os_perso_derive_node_bip32()
implementation: https://github.com/LedgerHQ/blue-app-monero/blob/385a7200faea0c783a57ac05c9b1423e056907aa/src/monero_init.c#L99
Without that, I am not able to tell how the derivation is exactly performed - how CX_CURVE_SECP256K1
is used, what is HMAC key and so on.
Thanks!
I recently updated my wallet to 0.14 from 0.13 because my transaction was not working. I did a transaction, what is still stuck in the old chain in the version 0.13.
I can't go into my updated monero ledger wallet (0.14). If i try to get in there is a error called: wrong device status SW=6e00 (EXPECT=9000, MASK=ffff). I updated my ledger live but that didn't work
How can I fix this problem?
(Im using macOS Sierra 10.12.6.)
Currently using CLI 0.14.1.2 on Mac OSX - 10.14.5 (Mojave)
Ledger has Monero 1.3.1 installed on it.
Daemon is running and fully synced.
Ledger is plugged in and unlocked (confirmed working with Ledger Live).
Monero app is open on Ledger.
When I try to either open a monero wallet, or generate a new one, I get the error:
Error: failed to load wallet: Wrong Device Status : SW=6930 (EXPECT=9000, MASK=ffff).
Example of command I'm running:
./monero-wallet-cli --generate-from-device exampleWallet --subaddress-lookahead 2:5
Any suggestions as to what I might be doing wrong?
When using my Nano X with the Monero Core CLI Wallet
CLI Wallet: v0_14_1_0
Nano X FW: v1_2_4-1
Monero Client App on X: v1_3_1
I intermittently get this message
Error: failed to load wallet: Wrong sequence_idx
It occurs about 50%-70% of the time.
I generated the wallet files using this command.
--generate-from-device <new-wallet-name> --subaddress-lookahead 3:200
When it works I can see my balance and all looks correct.
Is this a Nano X issue?
Please consider an additional mode where the viewkey is offloaded to the client, and scanning (and subaddress creation) can take place off device. This should be a rather significant improvement in scanning performance.
The downside of course is privacy is entrusted to the client.
I'm trying to run the seed recovery per: https://github.com/LedgerHQ/ledger-app-monero/tree/master/tools/python
What am I doing wrong?
Getting this when restoring: Error while finding module specification for 'ledger.monero.seedconv.py' (ModuleNotFoundError: No module named 'ledger')
Attaching the wallet on phone it prompts to open monerujo. Clicking the "+" icon it prompts to restore ledget wallet but when opening monero app in device, it disconnects and no longer recognized from smartphone.
Samsung Galaxy S6 Edge
Android 7.0
This issue is discussed also here:
https://www.reddit.com/r/Monero/comments/96g6a5/monerujo_ledger_nano_s_issue
Ledger Nano X is currently not supported.
Is it possible to install this app at the moment on my Ledger Nano S?
Followed the instruction with also #24 and it still doesn't work
PYTHONPATH=`pwd`/src python3 -m ledger.monero.seedconv offline
=============================================================
Monero Seed Converter v0.9. Copyright (c) Ledger SAS 20018.
Licensed under the Apache License, Version 2.0
=============================================================
* Select Language
Traceback (most recent call last):
File "/usr/lib/python3.5/runpy.py", line 193, in _run_module_as_main
"__main__", mod_spec)
File "/usr/lib/python3.5/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "/app/tools/python/src/ledger/monero/seedconv.py", line 359, in <module>
get_offline_seed(retrieve_language(False))
File "/app/tools/python/src/ledger/monero/seedconv.py", line 82, in retrieve_language
print(' %2d : %s (%s)'%(i, l['language_name'], l['english_language_name']))
UnicodeEncodeError: 'ascii' codec can't encode characters in position 7-10: ordinal not in range(128)
I have two Ledger Nano S devices. I plugged one in to Ledger Live and updated its firmware to 1.5.5. I then updated the Monero app to 1.1.1. Using the Monero Cli I attempted to open my Monero wallet, but the wallet froze on 'Export View Key'. Both accept and decline options didn't work. The Monero Cli then errors after a few minutes with either 'Error: failed to load wallet: Wrong Channel' or 'Segmentation fault: 11'.
However, I took my 2nd Ledger Nano S and went into Ledger Live, but didn't update the firmware and left it with Ledger firmware at 1.4.2 installed. I then updated the Monero app to 1.1.1. There is no freezing on the 'Export View Key' stage with this device.
So, I don't know if this is related to 1.5.5 or not, just thought I'd mention it. I've tried it six times now and can't get past the 'Export View Key' stage so it's unusable for me at the moment.
I only have the Bitcoin and Monero apps installed on both devices.
Using Monero 'Beryllium Bullet' (v0.13.0.4-release) on macOS 10.13.4.
When compiling beta 3 (also happened on beta 2) I get the following after creating a wallet with --generate-from-device
and typing refresh
in the wallet.
Error: refresh failed: unexpected error: Wrong Device Status : SW=6f42 (EXPECT=9000, MASK=ffff). Blocks received: 0
I tried the 0.12 release and also latest master with your ledger patches applied.
The store dev version works fine.
Any idea what this could be?
Windows 10, Monero GUI 0.16.0.0 (Qt 5.12.2)
Ledger Nano S firmware 1.6.0, Monero app 1.6.0
Fully synchronised. Tried restarting everything many times. Tried running as administrator.
Ledger says "Preparing TX" before Monero GUI displays the error.
Is it possible to somehow sneak into stock ifd-ccid.bundle and eliminate inconvenient process of adding vendor ID to it?
Hi I'm running on monero-gui-v0.15.0.1
OS: Ubuntu 19.10
Updated the lastest ledger app and Monero App on ledger nano s
Also enabled developer mode on Ledger Live
Still receiving this error when attempting to connect my wallet:
Error: failed to generate new wallet: Wrong Device Status : SW=6930 (EXPECT=9000, MASK=ffff
)
I have set up some accounts on my Ledger Monero wallet and have tried sending some amounts between them. Using the CLI, I started a transaction from Account index 1 to Account index 0. On the Ledger I was asked to accept the Fee. Then I was asked to accept the change destination. I wasn't asked to accept the destination of the actual amount I was sending.
I also didn't complete this transaction because of the unfamiliar change address. Interestingly, it was the same change address I noticed in issue #19.
I've just tried sending some XMR to an integrated address and when asked to confirm the amount to send to the receiving address, the address shown on the Ledger Nano isn't the integrated address, but the standard Monero address that makes up the integrated address + the Payment ID. I split the integrated address to check it here:
https://xmr.llcoins.net/addresstests.html
So whilst the XMR would end up at the right place if I had gone through with the transaction, this would be confusing for some users as the address they put into the CLI/GUI would be different to the one displayed on the Ledger Nano. I would suspect some would think this was broken. I think the Ledger Nano should display the Integrated address.
I suppose another concern would be that if the Ledger is appearing to strip the Payment ID from the Integrated address on the device, will the CLI/GUI send the Payment ID with the transaction? I suspect the CLI/GUI will send the payment ID, but I didn't test this due to the issue in the next paragraph.
I didn't actually go through with the transaction because of something else that I think this is related to issue #15. The transaction was creating a non-insignificant amount of change and was asking me to accept sending it to an address that was unfamiliar. This is perhaps a bigger issue, but there was no way I was going to test losing that amount of change into the abyss!
Hello my minexmr.com:
Total Paid: 2.413413480000 XMR not Working
Please check what's going on.
Transaction Hash: https://blox.minexmr.com/tx/2a4a731c38d8b3c825032195b2b467007ef60bcf8d29f982a5bef3e15dd7aeac
NEW STAND:11.01.2020 2:00:
MY Ledger Nano X MONERO WALLET:
42Ak5EWJAUi7Wz2XASwLfdb17jQppZtk4UVbNpoZW1rTctHaBpTdhHkZAhUtL4jmv5jamxEBLDVHbQeSdfAWkXkEQGrXBn4
WALLET:
https://www.file-upload.net/download-13854233/mineXMR-MoneroBlockchainExplorerNEWTansackton.zip.html
Please Help Me
Thanks for watching
When churning (sweep_all
) from main address to main address the destination address shown in Ledger is not the real one you're churning from/to. Also the amount is "0".
I had no balls to proceed and see where it goes.
Churning to different address/subaddress works ok - the destination and amount is legit.
Reported on IRC
11:22 Another thing: Ledger can go to locked state while processing a tx
11:23 i.e. it seems the "screensaver timeout" is counting even if it is processing a tx
In the prove/check tab of the wallet I get "Bad signature" when I press "check" after filling the tx_id and SpendProof.
I can't seem to be able to verify the transaction on https://xmr.llcoins.net/checktx.html with tx_key either.
I use ledger nano s to sign transactions.
Here's the log file:
2019-02-11 18:09:42.455 7fcf9f5888c0 INFO logging contrib/epee/src/mlog.cpp:277 New log categories: *:WARNING,net:FATAL,net.http:FATAL,net.p2p:FATAL,net.cn:FATAL,global:INFO,verify:FATAL,stacktrace:INFO,logging:INFO,msgwriter:INFO
2019-02-11 18:09:42.456 7fcf9f5888c0 WARN frontend src/wallet/api/wallet.cpp:367 app startd (log: /home/myusername/monero-wallet-gui.log)
2019-02-11 18:09:42.458 7fcf9f5888c0 WARN frontend src/wallet/api/wallet.cpp:367 Qt:5.7.0 | screen: 1920x1080 - dpi: 96 - ratio:0.716621
2019-02-11 18:09:43.725 7fcf9f5888c0 WARN frontend src/wallet/api/wallet.cpp:367 <Unknown File>: QML QQuickLayoutAttached: Binding loop detected for property "preferredHeight"
2019-02-11 18:09:43.785 7fcf9f5888c0 WARN frontend src/wallet/api/wallet.cpp:367 qrc:/qt-project.org/imports/QtQuick/Controls/ApplicationWindow.qml:241:9: QML ContentItem: Binding loop detected for property "implicitWidth"
2019-02-11 18:09:47.642 7fcf9f5888c0 INFO logging contrib/epee/src/mlog.cpp:277 New log categories: *:WARNING,net:FATAL,net.http:FATAL,net.p2p:FATAL,net.cn:FATAL,global:INFO,verify:FATAL,stacktrace:INFO,logging:INFO,msgwriter:INFO
2019-02-11 18:09:47.728 7fcf80fa1700 WARN wallet.wallet2 src/wallet/wallet2.cpp:3411 Account on device. Initing device...
2019-02-11 18:09:58.252 7fcf80fa1700 WARN wallet.wallet2 src/wallet/wallet2.cpp:3417 Device inited...
2019-02-11 18:09:58.771 7fcf80fa1700 WARN wallet.wallet2 src/wallet/wallet2.cpp:4590 Loaded wallet keys file, with public address: ///////redacted
2019-02-11 18:11:18.370 7fcf9f5888c0 ERROR wallet.wallet2 src/wallet/wallet2.cpp:9772 !received. THROW EXCEPTION: error::wallet_internal_error
The exception is thrown when I press the 'P' button to obtain a spend proof in the history of transactions.
Decentralized markets like bisq require proofs for proper arbitration of disputes.
I've compiled and loaded the Beta 5 release with a self-signed key into my Ledger, and was able to change the network to mainnet. However, I was still getting the same error as previous Beta releases when I ran the command monero-wallet-cli --testnet --generate-from-device ledger.wallet
. This happened both on v12.0.0 release as well as master builds of the wallet:
Error: failed to generate new wallet: device not found: Ledger
I can confirm that my Smart Card service is active and running.
Can you please provide instructions and troubleshooting steps for Windows? The current documentation only states:
SmartCard service should be already installed. Maybe you have to start it
Hi there, quick question about the functionality of the device firmware. Will it be possible to use a local blockchain or will it have to connect to a remote blockchain? Or both?
Using ledger app version 1.6.0
Using Monero GUI version: v0.16.0.0 (Qt 5.9.7)
Monero embedded version: v0.16.0.0
When selecting a subaddress in the receive tab and pressing 'show on device' only the main public address is shown along with the major and minor numbers. If this is a bug on the part of the GUI I could open an issue there.
The app doesn't start while logged in with the duress PIN
Hi,
I'm trying to install the application on my ledger blue and when following the directions here:
https://github.com/LedgerHQ/blue-app-monero/blob/master/doc/user/bolos-app-monero.pdf
I am not able to locate the Monero application in either Ledger Manager or Ledger Live with or without developer mode enabled.
A tweet exhcange with LedgerHQ indicated that this was a community supported app and was not currently supported on the Blue and to contact the developers for further assistance, which doesn't align with what's contained in the documentation.
Is the app currently support on the blue? If so I would appreciate any help in getting the application loaded. If not, I'm logging interest in support.
Thanks for your work so far and any assistance that you can provide.
I'm no longer able to build the app. Last commit changed TARGET_ID to 0x31100003
which is unknown with current SDK. So, IIUC, this requires an update to the SDK that hasn't been pushed yet, right ?
I managed to setup all of the dependencies following the guide http://ledger.readthedocs.io/en/latest/userspace/getting_started.html , however the compile fails with the following errors:
src/monero_ux_nanos.c:295:77: error: use of undeclared identifier 'C_badge_back'
{NULL, ui_menu_main_display, 0, &C_badge_back, "Abort", NULL...
^
src/monero_ux_nanos.c:336:38: error: use of undeclared identifier 'C_badge_back'
{NULL, ui_menu_main_display, 0, &C_badge_back, "No", NULL, 61, 40},
^
src/monero_ux_nanos.c:353:47: error: use of undeclared identifier 'C_badge_back'
{NULL, ui_menu_main_display, 2, &C_badge_back, "Back", NULL, 61, 40},
^
src/monero_ux_nanos.c:370:38: error: use of undeclared identifier 'C_badge_back'
{NULL, ui_menu_main_display, 3, &C_badge_back, "Back", NULL, 61, 40},
^
src/monero_ux_nanos.c:383:43: error: use of undeclared identifier 'C_icon_dashboard'
{NULL, os_sched_exit, 0, &C_icon_dashboard, "Quit app" , NULL, 50, 29},
........
4 warnings and 5 errors generated.
/home/pseud/bolos-devenv/nanos-1.4.2/Makefile.rules_generic:51: recipe for target 'obj/monero_ux_nanos.o' failed
make: *** [obj/monero_ux_nanos.o] Error 1
Google did not help and this seemed to be a variable unique to Ledger.
Also, would it be possible to provide a binary build for directly loading into the Ledger?
When using a temporary password, and after the device is automatically inactivity-locked, entering the correct pin will result in the wrong XMR address being displayed, and the Monero wallet begins malfunctioning too.
Haven't had the opportunity to test that this has been fixed in 1.6.0, but probably not.
To enhance the UX , I propose the following:
When the first time the Ledger asks to export the viewkey, the ledger could instead ask:
"Export viewkey by default?"
YES => The viewkey will always be exported, no need to push the button each time. There should be a flag in the Monero app to turn the default exporting off.
NO => the ledger won't ask this question again, but it'll ask the following:
"Export viewkey during this session?"
YES => The viewkey will be exported by default until the ledger is disconnected.
NO => the ledger could ask the following:
"One time viewkey export?"
YES => normal behavior, like it's functioning now.
NO => The ledger will ask this (one time) question:
"Never export viewkey?"
YES => the ledger won't ask to export the viewkey, unless this flag is reversed in a new setting.
NO => nothing changes
During normal usage of the ledger:
if default_export is on => export private viewkey by default
if default_export is off & never_export is off => always ask for session exporting. If answered by no, ask for one time export.
if deault_export is off & never_export is on => never ask for exporting the viewkey
Hello
i cannot open my GUI WALLET linked to my Ledger NANO X.
i always have this error after enterring my password in GUI:
monero error 0x6e00 (SW_CLA_NOT_SUPPOTED). EXPECTED (0x9000 (SW_OK),MASK 0xfff
I use Monero apps on ledger 1.5.1
and GUI WALLET 0.16.0.0
Windows 10 x64 updated.
Please could you help me .. i ma afraid to loose all my coin .
Thank you
error:
2019-03-09 15:17:10.351 7f9d2b82c7c0 ERROR device.ledger src/device/device_ledger.cpp:319 Wrong Device Status : SW=6e00 (EXPECT=9000, MASK=ffff)
I just installed the Monero GUI app (0.14.0.0)
I got the error both with the Monero app open and closed.
Ledger Live works fine.
I even uninstalled and re-installed the Monero app on my ledger.
(though, when re-installing, apparently I didn't have enough space, so I also uninstalled another app)
after re-installing, and trying both new/restore wallet, same error.
opening the Monero app, and I get this error:
2019-03-09 15:25:13.541 7f9d2b82c7c0 ERROR device.io src/device/device_io_hid.cpp:82 Unable to enumerate device 11415:11415: NULL device
I even tried re-plugging-in the ledger.
I'm using:
Since Ledger monero app v1.5.1 there is the following feature:
Up to 9 independent wallets: master seed is derived with BIP32 following the BIP44
path recommendation: m/purpose'/coin_type'/account'/change/address_index.
The numerical path m/44'/128'/0'/0/0 was the only used until now.
In this last release the account' can be selected between 0 and 9, allowing up to 9 distinct wallets.
We get a lot of support requests from people changing their account and having all kinds of huge issues.
There is also a monero feature called "account" adding extra confusion what the account setting inside Ledger is.
I would suggest to remove this feature again, or rename + add a huge warning when changing account.
Hi @cslashm !
I wanted to compile this version and install it on Ledger Nano S v1.6.0 but the
cx_aes(&G_monero_vstate.spk, CX_ENCRYPT|CX_CHAIN_CBC|CX_LAST|CX_PAD_NONE,
buffer, len,
G_monero_vstate.io_buffer+G_monero_vstate.io_offset, len);
Causes an error: Invalid status 6f42 (Unknown reason)
If I switch to IODUMMYCRYPT
everything works fine. Any idea what could be the problem with the new firmware?
Thanks!
Today I updated Ledger Live and the Apps, incl. Monero, after that I cannot enter my GUI wallet. Its saying: Couldnot open wallet. Wrong device status: SW=6e00 (expect=9000, MASK=ffff). Was working perfect before the update. Anybody know what to do?
In the 'Settings' the 'Show 25 words' option, doesn't show the 25 words. Only the up and down arrows are shown. For an example of what this looks like, please see the photos on this issue: #28
Just a UX suggestion: After I have got to the bottom of this option and the words "Clear words (no wipe)" is shown as a way to go back, I'd think that just saying 'Back' with the 'left arrow icon' (like at the bottom of the 'About' menu) would suffice here.
When sending Monero to integrated addresses the embedded real addresses is displayed instead of the full integrated address.
Installed the new version 1.6.0, and I tried to send a transaction today that would have required around 8 (actually, looking again I think it only had 4 or 5) inputs from my Ledger wallet's XMR balance. The transaction failed during the "Preparing TX" stage, with the error "Can't create transaction: unexpected error: Wrong Device Status: 0x6701 (UNKNOWN), EXPECTED 0x9000 (SW_OK), MASK 0xffff" on the desktop GUI.
I later tried sending a smaller transaction that would have only required a couple inputs and the transaction went through OK. I seem to get errors when sending a transaction that needs more than 2 or 3 inputs.
I'm getting the error Wrong Device Status : SW=6914 (EXPECT=9000, MASK=ffff) both when trying to use Monero OSX v0.14.0.2-release and also with Monerujo 1.11.5. The error occurs when trying to send to a regular "4" address (more specifically my own address) after confirming the transaction on the device.
Error is referenced here but seems to be more of an issue with Ledger's app so opening issue on this project.
Further details in case it's helpful:
Ledger Nano S is fully up to date (running firmware v1.5.5)
Ledger Monero app is v1.2.0
Computer is a MacBook Pro (2018) running MacOS 10.14.3
Android device is running Android 9.0 Pie and Monerujo 1.11.5
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.