Bitcoin Forum
December 04, 2016, 04:30:39 PM *
News: To be able to use the next phase of the beta forum software, please ensure that your email address is correct/functional.
 
   Home   Help Search Donate Login Register  
Pages: « 1 ... 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 [125] 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 ... 232 »
  Print  
Author Topic: Armory - Discussion Thread  (Read 481692 times)
dc81
Member
**
Offline Offline

Activity: 84


View Profile WWW
August 28, 2013, 05:44:15 PM
 #2481

@etotheipi: can the view on blockchain.info option go to the https site rather than http

List of public bitcoin P2Pool nodes - http://p2pool-nodes.info || Amazon Price Tracker
Tips - 1dc81BVNy688RS2E9iqf8VtJVB4YbQpCs
1480869039
Hero Member
*
Offline Offline

Posts: 1480869039

View Profile Personal Message (Offline)

Ignore
1480869039
Reply with quote  #2

1480869039
Report to moderator
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction. Advertise here.
1480869039
Hero Member
*
Offline Offline

Posts: 1480869039

View Profile Personal Message (Offline)

Ignore
1480869039
Reply with quote  #2

1480869039
Report to moderator
1480869039
Hero Member
*
Offline Offline

Posts: 1480869039

View Profile Personal Message (Offline)

Ignore
1480869039
Reply with quote  #2

1480869039
Report to moderator
Deth
Hero Member
*****
Offline Offline

Activity: 533



View Profile
August 28, 2013, 06:53:31 PM
 #2482

etotheipi, what about this "non-US" bugs, random crashes on my Linux is very annoying:
Quote
A lot of users have reported problems with the latest version (0.88.1).  Many things changed in the last upgrade that caused compatibility issues for many users, especially non-US users.
I think that made Armory almost unusable for me, sometimes Armory can`t even process blockchain before it crashes Sad

justusranvier
Legendary
*
Offline Offline

Activity: 1400



View Profile WWW
August 28, 2013, 11:24:24 PM
 #2483

etotheipi, what about this "non-US" bugs, random crashes on my Linux is very annoying:
Quote
A lot of users have reported problems with the latest version (0.88.1).  Many things changed in the last upgrade that caused compatibility issues for many users, especially non-US users.
I think that made Armory almost unusable for me, sometimes Armory can`t even process blockchain before it crashes Sad
It's extremely annoying, but I've never had it crash that soon.
Deth
Hero Member
*****
Offline Offline

Activity: 533



View Profile
August 29, 2013, 12:34:17 AM
 #2484

It is getting worse with time unfortunately, the last time this crash-before-initialize was right after other crash, when I needed access to my bitcoins asap Sad Maybe it is unrelated to unicode bugs...BTW, i had log full of this messages
Code:
2013-08-28 18:20 (ERROR) -- ArmoryQt.py:4294 - Error in checkSatoshiVersion
Traceback (most recent call last):
  File "/opt/BitcoinArmory/ArmoryQt.py", line 4248, in checkSatoshiVersion
    not 'SATOSHI' in self.latestVer or \
AttributeError: 'ArmoryMainWindow' object has no attribute 'latestVer'
Tens of these messages by second...

chrisrico
Hero Member
*****
Offline Offline

Activity: 496


View Profile
August 29, 2013, 03:07:48 AM
 #2485

It is getting worse with time unfortunately, the last time this crash-before-initialize was right after other crash, when I needed access to my bitcoins asap Sad Maybe it is unrelated to unicode bugs...BTW, i had log full of this messages
Code:
2013-08-28 18:20 (ERROR) -- ArmoryQt.py:4294 - Error in checkSatoshiVersion
Traceback (most recent call last):
  File "/opt/BitcoinArmory/ArmoryQt.py", line 4248, in checkSatoshiVersion
    not 'SATOSHI' in self.latestVer or \
AttributeError: 'ArmoryMainWindow' object has no attribute 'latestVer'
Tens of these messages by second...

Did you try completely reinstalling? That doesn't seem like a text encoding issue.
etotheipi
Legendary
*
Offline Offline

Activity: 1428


Core Armory Developer


View Profile WWW
August 29, 2013, 03:45:42 AM
 #2486

BTW, i had log full of this messages
Code:
2013-08-28 18:20 (ERROR) -- ArmoryQt.py:4294 - Error in checkSatoshiVersion
Traceback (most recent call last):
  File "/opt/BitcoinArmory/ArmoryQt.py", line 4248, in checkSatoshiVersion
    not 'SATOSHI' in self.latestVer or \
AttributeError: 'ArmoryMainWindow' object has no attribute 'latestVer'
Tens of these messages by second...

That turned out to be a bug that made it's way into the released version, but doesn't affect performance or functionality at all.  It should be fixed in the testing version, and will not be there for the next version ... but the worst thing it does is make the logs harder to access/read.  It's unrelated to the crashing.



Just to keep things consistent, there was a reddit post asking if Armory was dead.  Here's my response:

Quote
Yeah, things have been slow. Lots of distractions, but still lots of development. We're actually about to replace the entire webpage with something much slicker and prettier. That should give a good indication that things are still moving forward! Smiley

As quantabytes pointed out, all development has been happening on a separate branch, which doesn't update the main github page. The changes are basically a complete overhaul of the underlying blockchain utilities, but I'm doing so to benefit about 30 different functionalities I want to implement in the future. Things like compressed keys, multi-sig, P2SH, arbitrary scripts, arbitrary balance lookup, and a [better] daemon mode. Those will all be much easier to implement when I finally finish this upgrade!

You can follow the Armory thread on bitcointalk as Kupsi linked. I tend to post updates there on my progress. I actually posted a breakthrough last week about passing some really rigorous unit-tests, but then later found out that SatoshiDice crushed the new design, due to some misdirected optimizations in the first round. This second round should be complete in the next couple days, and I can start integrating the new stuff into the GUI.

Founder and CEO of Armory Technologies, Inc.
Armory Bitcoin Wallet: Bringing cold storage to the average user!
Only use Armory software signed by the Armory Offline Signing Key (0x98832223)

Please donate to the Armory project by clicking here!    (or donate directly via 1QBDLYTDFHHZAABYSKGKPWKLSXZWCCJQBX -- yes, it's a real address!)
justusranvier
Legendary
*
Offline Offline

Activity: 1400



View Profile WWW
August 29, 2013, 07:05:52 PM
 #2487

Sometimes Coinbase forgets (apparently) to broadcast a transaction, even though it shows up in their own blockchain browser.

It will show you the transaction in binary or json formats. Anyone know how to convert one of those formats into something that can be pasted into the Armory offline transactions window and broadcast?

Here's a random example:

https://coinbase.com/network/transactions/b7697479993e54eb6594d607904e3a9c65692124f9b9bcba5a16bb5affe173fc

I opened the binary file in Okteta (hex editor) and tried copying it to the clipboard as a variety of formats, but none of them worked.
etotheipi
Legendary
*
Offline Offline

Activity: 1428


Core Armory Developer


View Profile WWW
August 29, 2013, 07:17:21 PM
 #2488

Sometimes Coinbase forgets (apparently) to broadcast a transaction, even though it shows up in their own blockchain browser.

It will show you the transaction in binary or json formats. Anyone know how to convert one of those formats into something that can be pasted into the Armory offline transactions window and broadcast?

Here's a random example:

https://coinbase.com/network/transactions/b7697479993e54eb6594d607904e3a9c65692124f9b9bcba5a16bb5affe173fc

I opened the binary file in Okteta (hex editor) and tried copying it to the clipboard as a variety of formats, but none of them worked.

I never got around to implementing that, because I wanted the user to be able to examine the transaction before they click broadcast, but a raw transaction doesn't have all the info it needs (refer to SIGHASH_WITHINPUTVALUE discussion).  I probably should've put something in there anyway with a warning, but I never got around to it.

I suggest using https://blockchain.info/pushtx

Founder and CEO of Armory Technologies, Inc.
Armory Bitcoin Wallet: Bringing cold storage to the average user!
Only use Armory software signed by the Armory Offline Signing Key (0x98832223)

Please donate to the Armory project by clicking here!    (or donate directly via 1QBDLYTDFHHZAABYSKGKPWKLSXZWCCJQBX -- yes, it's a real address!)
justusranvier
Legendary
*
Offline Offline

Activity: 1400



View Profile WWW
August 29, 2013, 07:18:46 PM
 #2489

Doesn't work there either. There's something about their binary format that no other tool seems to like.
etotheipi
Legendary
*
Offline Offline

Activity: 1428


Core Armory Developer


View Profile WWW
August 29, 2013, 07:24:32 PM
 #2490


If you want to examine the tx directly, you can load the tx into armoryengine and do something like this:

Code:
from armoryengine import *

rawHex = '<copy raw tx here>'
tx = PyTx().unserialize( hex_to_binary(rawHex) )
tx.pprint()

print prettyHex(rawHex)

You'll get a higher-level overview of what's in the tx from the first pprint command, and then a hex breakout of the raw tx from the second command (if you feel like digging into the raw tx bytemap).  It's not pleasant, but if broadcasting is failing, it's probably invalid and you need to figure out why.

Founder and CEO of Armory Technologies, Inc.
Armory Bitcoin Wallet: Bringing cold storage to the average user!
Only use Armory software signed by the Armory Offline Signing Key (0x98832223)

Please donate to the Armory project by clicking here!    (or donate directly via 1QBDLYTDFHHZAABYSKGKPWKLSXZWCCJQBX -- yes, it's a real address!)
Lavender
Jr. Member
*
Offline Offline

Activity: 37


View Profile
August 30, 2013, 08:26:40 PM
 #2491

N00b here. Search was unsuccessful. Is there a way to view the number of connections when using Armory, like is possible with Bitcoin-Qt?

cp1
Hero Member
*****
Offline Offline

Activity: 616


Stop using branwallets


View Profile
August 30, 2013, 08:31:56 PM
 #2492

Armory uses bitcoin-qt, so it's the same number.

Guide to armory offline install on USB key:  https://bitcointalk.org/index.php?topic=241730.0
Lavender
Jr. Member
*
Offline Offline

Activity: 37


View Profile
August 30, 2013, 08:34:53 PM
 #2493

Armory uses bitcoin-qt, so it's the same number.
Yes, but when I open armory, I don't have a GUI loaded of bitcoin-qt. Can I view the number of connections from the Armory GUI? If not, what is the recommended way to I launch Bitcoin-Qt's GUI without opening a 2nd instance?

EDIT: This is what I see when I try to open Bitcoin-Qt while Armory is already running:

Lavender
Jr. Member
*
Offline Offline

Activity: 37


View Profile
August 30, 2013, 09:07:13 PM
 #2494

Yes, but when I open armory, I don't have a GUI loaded of bitcoin-qt. Can I view the number of connections from the Armory GUI? If not, what is the recommended way to I launch Bitcoin-Qt's GUI without opening a 2nd instance?
I guess it's running bitcoind instead. Easy: run bitcoind getinfo in a terminal.

EDIT (original text removed to avoid confusion): Ah, I get it now.

Lavender
Jr. Member
*
Offline Offline

Activity: 37


View Profile
August 30, 2013, 09:11:43 PM
 #2495

Thank you, pankkake.
cp1
Hero Member
*****
Offline Offline

Activity: 616


Stop using branwallets


View Profile
August 30, 2013, 09:16:11 PM
 #2496

You can also disable armory from running bitcoind itself and run bitcoin-qt separately.

Guide to armory offline install on USB key:  https://bitcointalk.org/index.php?topic=241730.0
etotheipi
Legendary
*
Offline Offline

Activity: 1428


Core Armory Developer


View Profile WWW
September 01, 2013, 05:36:18 PM
 #2497

Alright!  Back to where I was 10 days ago...


Quote
[----------] 7 tests from BlockUtilsTest
[ RUN      ] BlockUtilsTest.HeadersOnly
[       OK ] BlockUtilsTest.HeadersOnly (338 ms)
[ RUN      ] BlockUtilsTest.HeadersOnly_Reorg
[       OK ] BlockUtilsTest.HeadersOnly_Reorg (390 ms)
[ RUN      ] BlockUtilsTest.Load5Blocks
[       OK ] BlockUtilsTest.Load5Blocks (579 ms)
[ RUN      ] BlockUtilsTest.Load4BlocksPlus1
[       OK ] BlockUtilsTest.Load4BlocksPlus1 (808 ms)
[ RUN      ] BlockUtilsTest.Load5Blocks_Plus2NoReorg
[       OK ] BlockUtilsTest.Load5Blocks_Plus2NoReorg (583 ms)
[ RUN      ] BlockUtilsTest.Load5Blocks_FullReorg
-WARN  - 11:05:33: (../BlockUtils.cpp:3284) Blockchain Reorganization detected!
-INFO  - 11:05:33: (../BlockUtils.cpp:3657) Reassessing Tx validity after reorg
-INFO  - 11:05:33: (../BlockUtils.cpp:3664) Invalidating old-chain transactions...
-WARN  - 11:05:33: (../BlockUtils.cpp:3683)    Tx: 43ec5922686d522a
-WARN  - 11:05:33: (../BlockUtils.cpp:3683)    Tx: 223212f753be87b7
-WARN  - 11:05:33: (../BlockUtils.cpp:3683)    Tx: 01b5f6ef7777d882
-WARN  - 11:05:33: (../BlockUtils.cpp:3683)    Tx: 26179c6b775920bb
-WARN  - 11:05:33: (../BlockUtils.cpp:3683)    Tx: 2cc4fd715ab91f39
-INFO  - 11:05:33: (../BlockUtils.cpp:3697) Marking new-chain transactions valid...
-WARN  - 11:05:33: (../BlockUtils.cpp:3712)    Tx: 2354b5d7322acbcd
-WARN  - 11:05:33: (../BlockUtils.cpp:3712)    Tx: 26179c6b775920bb
-WARN  - 11:05:33: (../BlockUtils.cpp:3712)    Tx: 48d6e930800e23b1
-WARN  - 11:05:33: (../BlockUtils.cpp:3712)    Tx: 7fa55061fc4bd2a3
-WARN  - 11:05:33: (../BlockUtils.cpp:3712)    Tx: 8e7e076d76bbfbe7
-WARN  - 11:05:33: (../BlockUtils.cpp:3712)    Tx: 223212f753be87b7
-WARN  - 11:05:33: (../BlockUtils.cpp:3718) Done reassessing tx validity
[       OK ] BlockUtilsTest.Load5Blocks_FullReorg (783 ms)

The difference is that now the DB operations are much better optimized for handling excessively-reused addresses like 1VayNert and all the SatoshiDice buckets (at the expense of a ton of extra DB complexity).  I'm in the middle of profiling the new stuff, but the dramatic improvement is immediately obvious:  My previous design was bottlenecked in RAM and speed by the address being updated with the most historical transactions.  Now processing time is fairly independent of that, and only dependent on blockchain size in MB.

So far, the DB itself is a bit bigger than I expected (about 1.7x the .bitcoin/blocks directory).  But that's because this is running in "super-node" mode which tracks the entire history of all addresses/scripts, which could be more appropriately named "Armory - Server Version".  But it was easier to implement than the "regular" version which needs extra logic to reliably track only a specific set of addresses (i.e. your wallets).  When this version is done, I will implement the "regular" mode which use less space and even less RAM, and may be able to work with a remote bitcoind/bitcoin-qt instance.  For now, you'll need a lot of disk space to run the new version, but RAM should no longer be a constraint.

And in case you're wondering about the RAM: it looks good (finally!).  As I type this, my testing run is already deep into SatoshiDice territory and it's been using only 276-279 MB of RAM the whole time.  And this should be the most intense part of the whole process.  It might go up a little bit once I create wallets, etc, but will also go down when it's done batching and updating the DB with thousands of tx per second.

Of course plenty of work left to do, but progress is being made!

Founder and CEO of Armory Technologies, Inc.
Armory Bitcoin Wallet: Bringing cold storage to the average user!
Only use Armory software signed by the Armory Offline Signing Key (0x98832223)

Please donate to the Armory project by clicking here!    (or donate directly via 1QBDLYTDFHHZAABYSKGKPWKLSXZWCCJQBX -- yes, it's a real address!)
etotheipi
Legendary
*
Offline Offline

Activity: 1428


Core Armory Developer


View Profile WWW
September 01, 2013, 06:27:39 PM
 #2498

I'm fine with the storage requirements, especially if it means being able to watch any address easily. Storage is cheap and easy to add.

Yup.  And at least you get something useful out of all that extra storage space:  you can get the entire history for any address (including multisig TxOuts) nearly instantaneously.  This will make armoryd.py quite a bit more powerful than bitcoind, since it will ultimately implement everything bitcoind does plus all the arbitrary addr/script lookups.  It also means that you can import addresses and wallets without having to rescan.

And with that, it may make sense to implement a basic python shell into the expert interface, that allows users to issue commands/requests directly from a "debug" window.  For instance, you'd run "Server Version" GUI (not armoryd.py), and open the "Armory CLI" window, and type in "getAddressHistory('<addr>')", "importAddress('<addr>', '<wallet>')", "findAllMultisig('<addr>')", etc.  I could make the same interface available through RPC, but that will take considerably longer because of how security-sensitive that is.

This super-node version also enables a very specific functionality that is not otherwise possible:  encrypted watching-only wallets.  Without a full address index, and without rescanning the blockchain every load, there's no way to hide the addresses in your watching-only wallet.  My new wallet design (which was side-tracked by this RAM-reduction effort) actually has a way to encrypt the public keys in a WO wallet, but it's not very useful if your database is storing only the transactions related to your wallets.  There's things you could do to improve the situation, but it won't be perfect unless you do a rescan every time you unlock your wallet and hold everything in RAM.  Or save the whole tx history as this super-node version is doing.  

So if you want absolute security and privacy, you can run this "server version" which will use a lot of HDD space, but it will run smoothly once the DB is built and you can hide the public keys in your wallet.  A lot of people have requested this functionality, because of concerns that a stolen laptop could lead to worst things than losing money.  For instance: the thief may not get your $100k worth of Bitcoin since he only has your WO wallet, but he can see that you have $100k worth of Bitcoin and can probably find your address somewhere else on the computer.   Many of my more paranoid/rich users would like to avoid that.

Profiling Update: my initial DB build is up to 221,000 blocks after 1.5 hours, and using 295 MB RAM (15 MB more than at 180k blocks).  So it looks like it may take about 3-4 hours to rebuild the whole DB and about 300 MB RAM.  Those are some solid, usable numbers!

Not only that, but it's very likely that I can build the initial database while Bitcoin-Qt is downloading the initial transaction history, meaning that Armory's DB building can be "hidden" and the whole new-user-startup may not be any worse than running vanilla Bitcoin-Qt.  I will not complicate it with that parallelization right now, but those numbers are very encouraging for a future upgrade.

Okay, enough rambling, more coding Smiley ...

Founder and CEO of Armory Technologies, Inc.
Armory Bitcoin Wallet: Bringing cold storage to the average user!
Only use Armory software signed by the Armory Offline Signing Key (0x98832223)

Please donate to the Armory project by clicking here!    (or donate directly via 1QBDLYTDFHHZAABYSKGKPWKLSXZWCCJQBX -- yes, it's a real address!)
etotheipi
Legendary
*
Offline Offline

Activity: 1428


Core Armory Developer


View Profile WWW
September 01, 2013, 07:56:07 PM
 #2499

Is armoryd usable? I would be interested in a way to manipulate my Armory bitcoins without a GUI, i.e. when I'm not home.

Kind of.  At the moment there's a very minimal set of operations supported, and it will crash whenever there's a Bitcion-Qt/bitcoind blockfile split (just like the GUI does).  If you don't mind restarting and rescanning every couple days, and only the need to super-limited functionality it has -- yes, it's usable.

Right now it basically can only get you new addresses from wallets, and if it's in online mode, it can "listtransactions" and "getledger".  The listtransactions function makes an attempt to replicate what Bitcoin-Qt produces in response to the same command, but I didn't like what it produces.  It seems... sloppy.  So I implement "getledger" and "getledger_simple" which returns basically the same thing that you see on the "Transactions" tab of the GUI.  If you add up all the items returned by getledger, you will get your current balance without, and all items returned are non-overlapping.  The same cannot be said for "listtransactions."

I had started implementing more functionality, but decided it wasn't worth it until I got the new database stuff done which will make it stable.  A lot of the use cases for it require it not to crash every few days, and my efforts to fix the crash-on-blockfile-split were futile (I even made what I thought was a stressful unit-test for it, which passed, but it still segfaults when run on the network).  But I'm confident that will go away with the new DB stuff.




Founder and CEO of Armory Technologies, Inc.
Armory Bitcoin Wallet: Bringing cold storage to the average user!
Only use Armory software signed by the Armory Offline Signing Key (0x98832223)

Please donate to the Armory project by clicking here!    (or donate directly via 1QBDLYTDFHHZAABYSKGKPWKLSXZWCCJQBX -- yes, it's a real address!)
Ente
Legendary
*
Offline Offline

Activity: 1834



View Profile
September 02, 2013, 07:59:36 AM
 #2500

This process all sounds super exciting!
Great work, I can't wait for all the goodies there'll be soon! :-)

Armory, fck yeah!

Ente
Pages: « 1 ... 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 [125] 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 ... 232 »
  Print  
 
Jump to:  

Sponsored by , a Bitcoin-accepting VPN.
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!