Author

Topic: Armory - Discussion Thread - page 216. (Read 521829 times)

legendary
Activity: 1428
Merit: 1093
Core Armory Developer
February 21, 2012, 04:55:20 PM
i imported 5 private keys from Multibit into Armory.  1 of the 5 should've had .0001 btc in it.  does Armory read that small of an amount?
client?

Cypherdoc,

Be careful running two clients that use the same keys.  Weird things can happen.  Armory should be robust to most of it, but I'll be interested to hear if that's really true.   Satoshi client has a habit of getting confused, and locking inputs based on transactions that aren't actually valid (because you sent a tx, and then satoshi client tried to spend the same outputs before it got the update, locked the outputs, and then gets stuck).  I don't know how multibit is, in this regard...

If that 0.0001 is in the blockchain, Armory should find it.  However, in some places where values are displayed, the values might be truncated (but that should be big enough...).  Also, sometimes you just have to close the wallet properties and reopen it, in order for the data to be displayed correctly.

The thing to do after importing, is to go into the wallet properties and double-click on the address.  It will show you all the transactions that address has ever seen.  If it shows nothing, then check blockexplorer or blockchain.info for that address.   I've never seen any of those online services be out of sync with what Armory says.  But that doesn't mean it can't happen... (please let me know if it is)


also, when 2 clients as different as Multibit and Armory have the same keys, can you spend the amounts on those keys from either client?

I highly recommend that you wait for the other client to receive the transactions of the first client, before attempting to do more transactions.  They should have no problem, as long as you give them time to have the latest blockchain data before constructing new transactions in either one.
legendary
Activity: 1764
Merit: 1002
February 21, 2012, 04:38:25 PM
i imported 5 private keys from Multibit into Armory.  1 of the 5 should've had .0001 btc in it.  does Armory read that small of an amount?

also, when 2 clients as different as Multibit and Armory have the same keys, can you spend the amounts on those keys from either client?
legendary
Activity: 1428
Merit: 1093
Core Armory Developer
February 20, 2012, 02:02:36 PM
...Doesn't really help me due to the Python 64bit issues mentioned above (I'm in the same boat), but just letting you know anyway Smiley

I just attempted to do a 32-bit python installation along with twisted and pyqt, on a Win7-64 system.  Surprisingly, it compiled in Win32 mode, but Armory crashes as soon as it starts.   I was hoping to make a Win7_64_Python32 build, but that looks like a pipe dream at the moment.

When I finally get real binaries built, this will go away (as all the necessary DLLs will be packaged with the binary).  One day...
legendary
Activity: 1428
Merit: 1093
Core Armory Developer
February 20, 2012, 01:59:37 PM
[...]
I don't know if that will work, but it's worth a try.  Please PM to continue this discussion if it doesn't work.
Thanks. Don't see why, but this helped.

When you say it "helped," do you mean that everything links and runs properly, now?   Did you have to use the LD_PRELOAD line?    For whatever reason, "libcryptopp" and "libcrypto++" are kind of different libraries.  But only kind of... I never fully understood what's different.  Apparently, the cryptopp library on your system is missing some symbols that crypto++ has.  It might simply be a version thing...
full member
Activity: 154
Merit: 102
Bitcoin!
February 20, 2012, 12:02:41 PM
Would it be possible to put a block explorer into Armory?
This would be a good bit of functionality.

On the offline computer, Armory will detect no internet and go into "offline mode."
Might be a nice idea to have a way of turning on "offline mode" even if you have an internet connection.
donator
Activity: 919
Merit: 1000
February 20, 2012, 11:27:55 AM
[...]
I don't know if that will work, but it's worth a try.  Please PM to continue this discussion if it doesn't work.
Thanks. Don't see why, but this helped.
legendary
Activity: 1428
Merit: 1093
Core Armory Developer
February 20, 2012, 10:45:41 AM
It's been so long since I implemented the functionality (and now I'm at work where I can't check), but I did have a setting for "ExtraWallets."  That setting is a list of paths where you have other wallets not found in your app-data directory.  Armory will then look for that wallet when it loads, but only when Armory is restarted.

The issue with this is that the Ironkey only manages the encryption of the data on the device, but your system will still be accessing your wallet private keys in order to sign it.   A virus on the online system that is watching your process memory will have no problem picking out the BTC private keys when you go to sign a transaction.   It's because the OS does the crypto signing, which means it will have to copy the private keys from the IronKey wallet to the local RAM in order to apply it. 

In other words, you can't really get the benefit of the offline wallet unless you have a separate OS to do the signing for you.  Granted, the way I've set it up, the "OS" only needs to process a couple hundred bytes of tx data and run an ECDSA signature module -- meaning you could make some pretty super-lightweight "offline systems."  For now, I feel like there's too many old laptops in the world waiting to be junked that are perfectly good for this, so this is an acceptable solution for now. Smiley





legendary
Activity: 1764
Merit: 1002
February 20, 2012, 10:20:37 AM
i've always wanted one of those cool vanitygen addresses but never knew how to generate one.  any plans for integrating vanitygen in the future?

I've been asked about this a few times.  I think I will do it eventually, at least for Windows (where there's a fairly consistent environment).  But that's low priority, at the moment...

If you would like to do it yourself:  Here is the vantiygen thread, and the download link for Windows binaries.  You will have to run it from the command line to supply the arguments and make sure the window stays open when it's done.   But it's actually quite simple once you get to the directory with the executable in it.  You should only need to type something as simple as: 

Code:
./vanitygen.exe 1Cypher
Code:
./vanitygen64.exe 1Cypher
Code:
./oclvanitygen.exe 1Cypher
 

The third option there is for GPU (OpenCL) vanitygen, which is, of course, much faster than the CPU.  There are many more customization options, but I'll let you look at the thread for that.   When you run it, it will tell you how long it expects to take (a timeframe for 50% chance of success).  6 letters (such as 1Cypher) will take a few days on a CPU, a few hours on a GPU.  Every letter after that, multiply by 58 (it gets out of hand quickly!).

Check back with it every couple hours and see if it succeeded.  Just copy (or type) the very long string into the Armory import-address dialog and you're done! 

thanks yet again.

i noticed that MultiBit allows installation of their wallet on a usb stick.  would it be possible to run the offline Armory signing wallet off something like i have which is a 4G encrypted Ironkey?

usb key installations are nice and small, portable, and theoretically just as safe as your setup since you need a usb key as well as a go between.  i'm obviously overlooking an OS to run it on but Linuxcoin has figured out a way to run off a usb stick. 

just askin...
legendary
Activity: 1428
Merit: 1093
Core Armory Developer
February 20, 2012, 01:04:50 AM
i've always wanted one of those cool vanitygen addresses but never knew how to generate one.  any plans for integrating vanitygen in the future?

I've been asked about this a few times.  I think I will do it eventually, at least for Windows (where there's a fairly consistent environment).  But that's low priority, at the moment...

If you would like to do it yourself:  Here is the vantiygen thread, and the download link for Windows binaries.  You will have to run it from the command line to supply the arguments and make sure the window stays open when it's done.   But it's actually quite simple once you get to the directory with the executable in it.  You should only need to type something as simple as: 

Code:
./vanitygen.exe 1Cypher
Code:
./vanitygen64.exe 1Cypher
Code:
./oclvanitygen.exe 1Cypher
 

The third option there is for GPU (OpenCL) vanitygen, which is, of course, much faster than the CPU.  There are many more customization options, but I'll let you look at the thread for that.   When you run it, it will tell you how long it expects to take (a timeframe for 50% chance of success).  6 letters (such as 1Cypher) will take a few days on a CPU, a few hours on a GPU.  Every letter after that, multiply by 58 (it gets out of hand quickly!).

Check back with it every couple hours and see if it succeeded.  Just copy (or type) the very long string into the Armory import-address dialog and you're done! 
legendary
Activity: 1764
Merit: 1002
February 19, 2012, 11:06:30 PM
i've always wanted one of those cool vanitygen addresses but never knew how to generate one.  any plans for integrating vanitygen in the future?
hero member
Activity: 798
Merit: 1000
February 19, 2012, 10:45:50 PM
Dammit Cypherdoc, how do you keep getting problems I can't reproduce?!  I just tried a fresh Win7-64 installation, with 1GB of RAM and no network.  I installed the three packages from the website (python, twisted, pyqt), ran the install_zope.py script, then ran ArmoryQt.py.   It works for me!  The interface looks the same, just without any actual information displayed (there's nothing to display!).   Click on the "Offline Transactions" button to get to the window about signing transactions.  



It worked for me on an offline laptop as well if that helps.  Same specs (possibly less RAM).   Doesn't really help me due to the Python 64bit issues mentioned above (I'm in the same boat), but just letting you know anyway Smiley
legendary
Activity: 1428
Merit: 1093
Core Armory Developer
February 19, 2012, 10:34:49 PM
yeah, there is a blockchain on this computer which it looks like its trying to read as i see it in the terminal window.  python requests the Runtime to terminate it and a python.exe window pops up stating it has stopped working.

The issue is that a system with 1GB of RAM cannot load the blockchain, but it will try if it's there.  If you don't need the blockchain on that system anymore, just remove the AppData/Roaming/Bitcoin/blk0001.dat file.  Everything should work after that.

Otherwise, I will have to put in a switch to let the user select that they don't want to load the blockchain.  Until then, just delete or rename the blk0001.dat file, at least temporarily.

legendary
Activity: 1764
Merit: 1002
February 19, 2012, 10:19:37 PM
yeah, there is a blockchain on this computer which it looks like its trying to read as i see it in the terminal window.  python requests the Runtime to terminate it and a python.exe window pops up stating it has stopped working.
legendary
Activity: 1428
Merit: 1093
Core Armory Developer
February 19, 2012, 09:24:25 PM
Dammit Cypherdoc, how do you keep getting problems I can't reproduce?!  I just tried a fresh Win7-64 installation, with 1GB of RAM and no network.  I installed the three packages from the website (python, twisted, pyqt), ran the install_zope.py script, then ran ArmoryQt.py.   It works for me!  The interface looks the same, just without any actual information displayed (there's nothing to display!).   Click on the "Offline Transactions" button to get to the window about signing transactions.  

legendary
Activity: 1428
Merit: 1093
Core Armory Developer
February 19, 2012, 09:08:29 PM
yea I get "Connection to localhost DNE" (does not exist) I did a yaourt -S armory-git again, it says "Making package: armory-git 20120219-1 (Sun Feb 19 17:45:04 EST 2012)" so I'm assuming it's cloning todays git but I'm still getting the error.

I've been chatting with Cypherdoc, who's had this problem persistently.  After the protocol switchover, it seems to be magically working for him... !?!   I'm not sure what the protocol switch had to do with it... but perhaps clocks/UTC were out of sync, and one program switched before the other...?

Please let me know if you still have the problem!  (make sure to restart both Satoshi and Armory)

yes indeed it is working now. Cheesy

now something i must not understand properly.  i copied the zip files onto a USB stick and loaded them to my offline laptop that only has 1G RAM.  its a Win7 64 bit setup in a VM.  i unpackaged and installed them according to instruction.  but when i open Armory Qt it appears like its looking for the blockchain and python won't run?  or is it b/c its only 1G?  but then i thought you said the offline laptop only needs 512K?

i'm missing something obviously.

Is there an error displayed when you run it?  Is it possible for you to run it from a terminal so you can see the error?  (implementing a more-robust logging system is on my to-do list).  It is correct that you need nothing special on the offline system.  My offline system is running Ubuntu 10.04 with 512 MB of RAM. 

If it's working properly, it should pop up a window saying it detects no internet connection, do you want to run in offline mode?   One mistake I made was that there's no option to tell it not to load the blockchain if it's there.  If you are running Win7 on a 1GB VM, you most definitely don't want it trying to load the blockchain.  I recommend removing the blockchain if it's there.
legendary
Activity: 1764
Merit: 1002
February 19, 2012, 09:04:25 PM
yea I get "Connection to localhost DNE" (does not exist) I did a yaourt -S armory-git again, it says "Making package: armory-git 20120219-1 (Sun Feb 19 17:45:04 EST 2012)" so I'm assuming it's cloning todays git but I'm still getting the error.

I've been chatting with Cypherdoc, who's had this problem persistently.  After the protocol switchover, it seems to be magically working for him... !?!   I'm not sure what the protocol switch had to do with it... but perhaps clocks/UTC were out of sync, and one program switched before the other...?

Please let me know if you still have the problem!  (make sure to restart both Satoshi and Armory)

yes indeed it is working now. Cheesy

now something i must not understand properly.  i copied the zip files onto a USB stick and loaded them to my offline laptop that only has 1G RAM.  its a Win7 64 bit setup in a VM.  i unpackaged and installed them according to instruction.  but when i open Armory Qt it appears like its looking for the blockchain and python won't run?  or is it b/c its only 1G?  but then i thought you said the offline laptop only needs 512K?

i'm missing something obviously.
legendary
Activity: 1428
Merit: 1093
Core Armory Developer
February 19, 2012, 07:26:56 PM
yea I get "Connection to localhost DNE" (does not exist) I did a yaourt -S armory-git again, it says "Making package: armory-git 20120219-1 (Sun Feb 19 17:45:04 EST 2012)" so I'm assuming it's cloning todays git but I'm still getting the error.

I've been chatting with Cypherdoc, who's had this problem persistently.  After the protocol switchover, it seems to be magically working for him... !?!   I'm not sure what the protocol switch had to do with it... but perhaps clocks/UTC were out of sync, and one program switched before the other...?

Please let me know if you still have the problem!  (make sure to restart both Satoshi and Armory)
legendary
Activity: 1428
Merit: 1093
Core Armory Developer
February 19, 2012, 06:23:27 PM
Zefir,

Just try one thing for me.   Apply the following diff to your Makefile, then recompile and try again. (basically, just switch the "cryptopp" library refs to "crypto++").

Code:
12,13c12,13
< INCLUDE_OPTS += -I/usr/include/cryptopp -Icryptopp -fPIC -DUSE_CRYPTOPP -D__STDC_LIMIT_MACROS
< LIBRARY_OPTS += -lcryptopp -lpthread -lpython2.7
---
> INCLUDE_OPTS += -I/usr/include/crypto++ -Icrypto++ -fPIC -DUSE_CRYPTOPP -D__STDC_LIMIT_MACROS
> LIBRARY_OPTS += -lcrypto++ -lpthread -lpython2.7
21c21
<    LIBRARY_OPTS = -lcryptopp -lpthread -lpython2.6
---
>    LIBRARY_OPTS = -lcrypto++ -lpthread -lpython2.6
24c24
<       LIBRARY_OPTS = -lcryptopp -lpthread -lpython2.5
---
>       LIBRARY_OPTS = -lcrypto++ -lpthread -lpython2.5


I don't know if that will work, but it's worth a try.  Please PM to continue this discussion if it doesn't work.
donator
Activity: 919
Merit: 1000
February 19, 2012, 06:02:52 PM
zefir,

That seems to the problem that is supposed to be solved by the LD_PRELOAD line.  Can you verify that you have crypto++ installed, and check that /usr/lib/libcryptopp.so exists (or libcrypto++.so).   The error you are getting loading the module indicates that your system is not dynamically linking to the correct version of crypto++ (or any crypto++ for that matter).

I considered adding libcryptopp.a to be statically linked, which would solve these stupid problems... perhaps I still should....

Hm, seems ok to me:
Code:
zefir@d620:~$ ls /usr/lib/libcrypto* -l
-rw-r--r-- 1 root root  2313258 2011-02-23 01:45 /usr/lib/libcrypto.a
-rw-r--r-- 1 root root 14231942 2010-10-17 04:14 /usr/lib/libcrypto++.a
lrwxrwxrwx 1 root root       13 2012-02-19 22:52 /usr/lib/libcryptopp.a -> libcrypto++.a
lrwxrwxrwx 1 root root       14 2012-02-19 22:52 /usr/lib/libcryptopp.so -> libcrypto++.so
lrwxrwxrwx 1 root root       16 2012-02-19 22:52 /usr/lib/libcryptopp.so.8 -> libcrypto++.so.8
lrwxrwxrwx 1 root root       23 2012-01-22 21:46 /usr/lib/libcrypto.so -> /lib/libcrypto.so.0.9.8
lrwxrwxrwx 1 root root       20 2012-02-19 22:52 /usr/lib/libcrypto++.so -> libcrypto++.so.8.0.0
lrwxrwxrwx 1 root root       23 2011-07-28 16:10 /usr/lib/libcrypto.so.0.9.8 -> /lib/libcrypto.so.0.9.8
lrwxrwxrwx 1 root root       20 2012-02-19 22:52 /usr/lib/libcrypto++.so.8 -> libcrypto++.so.8.0.0
-rw-r--r-- 1 root root  4355092 2010-10-17 04:14 /usr/lib/libcrypto++.so.8.0.0

I'll try to link statically tomorrow. Thanks.
legendary
Activity: 1316
Merit: 1011
February 19, 2012, 05:47:04 PM
Hi I can't send bitcoins from my wallet.

Chris,

I was just working on this with cypherdoc.  I bet when you hit the send button, there is a message in the console like "Connection to localhost DNE" (does not exist)...? 

I was finally able to replicate this problem on a Win 7 VM, and it went away when I upgraded to 0.5.1.  It turns out I had forgotten to update the Win 7-64 link on the Get Armory page, and it was still linked to 0.5.0.   I fixed the link less than 24 hours ago.

Just download the zip file, unpack, and run ArmoryQt.py again.  You don't need to [re-]install anything.  Let me know if that fixes it!


yea I get "Connection to localhost DNE" (does not exist) I did a yaourt -S armory-git again, it says "Making package: armory-git 20120219-1 (Sun Feb 19 17:45:04 EST 2012)" so I'm assuming it's cloning todays git but I'm still getting the error.
Jump to: