Pages:
Author

Topic: [ANN] Armory Multi-Sig with Simulfunding [BOUNTY 0.03 per bug] - page 6. (Read 16304 times)

full member
Activity: 226
Merit: 100
Hi, I have a question. When we use multi sig. Can the transaction be created by the person who initially made the wallet or can a transaction be created by any of the people who are part of the group? Please confirm.

You can export the lockbox an import it on any other instance of Armory also multiple instances. However, let's get this confirmed by etotheipi.
full member
Activity: 168
Merit: 100
Hi, I have a question. When we use multi sig. Can the transaction be created by the person who initially made the wallet or can a transaction be created by any of the people who are part of the group? Please confirm.
full member
Activity: 226
Merit: 100
Feature request, not related to multi sig: When Armory is connected I would love to see the number of connections bitcoind has to the network. I have only recently started to open port 8333 so I can help the network as I am runnng Armory anyway and have a fast connection. Now how do I check the number of connections in Armory? Maybe there is a good way. I just think on the bottom where it states the number of blocks and shows connected in green would be a great space to add this. Could be a similar icon to what is known from Bitcoin-QT. Maybe just as a tool tip when hovering over. Could be that I am missing something?
member
Activity: 98
Merit: 10
How does this look?

Can I ask for it to be in a QR code also?
legendary
Activity: 1428
Merit: 1093
Core Armory Developer
Final note, I like the new dashboard, but a the address isn't on it. To me the address is one of the most important pieces of information, but it is hidden on the Info tab. This took me a minute or 2 to discover so that I could request testnet coins from the faucet.

You're absolutely right about the address!  I should put it on the funding row.  There's plenty of space when the "Simul" checkbox is not checked.    Thanks (definitely deserves a bounty!)

How does this look?

newbie
Activity: 43
Merit: 0
Bug 1) On testnet, in Manage Multi-Sig Lockbox Info, right click on one of the IDs > "View address on blockexplorer.com" and it takes you to "Invalid address"

Bug 2) Typing in 3 letters and then selecting "Click here for more information about this transaction" in the "Review Offline Transactions" window (nothing happens):
http://pastie.org/private/ijwmwhdc1xdsme1a7tnu0w

Bug 3) In Windows 7 download an update for Armory through the Secure Downloader and save with offline signature. The file downloaded has a "," added to the end of the file name and is also displayed in the Download complete dialog box.

Bug 4) Help > Verify Signed Package has a title bar that just says ArmoryQt
member
Activity: 98
Merit: 10
If you ever hit a button and it doesn't do anything, there's an error being thrown under the hood.  Please check the logfile and post the error or copy the logfile to pastebin or something. 

http://sebsauvage.net/paste/?f6d444852057d1bc#TO+vb9H47emZRiP0Vb5c8o9HYkRij74RSBfvySy+CWM=

I believe my error should be in there. I tried it multiple times.

When I restarted Armory, I was able to send once without any problems, but the problem came back the second time I tried to send.
legendary
Activity: 1428
Merit: 1093
Core Armory Developer
Looks like only 1 out of my 2 bugs got fixed.

When I add the same public key to the same lockbox and click sign, it now signs for all the same public keys. Cool, that's good.

Now when I add a custom change address that is not actually the lockbox, it shows the change address as a receiving address. Cools, that's better than before. The bug I am seeing now is that in this state, when I try to click "Broadcast" it doesn't do anything. It is a 2 of 3 lockbox and all 3 keyholes have a green check mark next to them, so I believe I should be able to broadcast the transaction.
Edit: Oh, this might not be related to the change address... I just tried a normal transaction without a custom change address and got the same behavior.



Final note, I like the new dashboard, but a the address isn't on it. To me the address is one of the most important pieces of information, but it is hidden on the Info tab. This took me a minute or 2 to discover so that I could request testnet coins from the faucet.

If you ever hit a button and it doesn't do anything, there's an error being thrown under the hood.  Please check the logfile and post the error or copy the logfile to pastebin or something. 

You're absolutely right about the address!  I should put it on the funding row.  There's plenty of space when the "Simul" checkbox is not checked.    Thanks (definitely deserves a bounty!)

I just fixed the pathing bugs, and was about to release it as *.8, but maybe I'll put in that  address display widget.  Then I'll do .8 later tonight.
member
Activity: 98
Merit: 10
Looks like only 1 out of my 2 bugs got fixed.

When I add the same public key to the same lockbox and click sign, it now signs for all the same public keys. Cool, that's good.

Now when I add a custom change address that is not actually the lockbox, it shows the change address as a receiving address. Cools, that's better than before. The bug I am seeing now is that in this state, when I try to click "Broadcast" it doesn't do anything. It is a 2 of 3 lockbox and all 3 keyholes have a green check mark next to them, so I believe I should be able to broadcast the transaction.
Edit: Oh, this might not be related to the change address... I just tried a normal transaction without a custom change address and got the same behavior.



Final note, I like the new dashboard, but a the address isn't on it. To me the address is one of the most important pieces of information, but it is hidden on the Info tab. This took me a minute or 2 to discover so that I could request testnet coins from the faucet.
member
Activity: 98
Merit: 10
Actually, on the second one above:  can you check your testnet log file for an error that looks like this and tell me what it is?

Code:
ERROR: Determined that exec dir is ______ but it does not exist


2014-06-29 17:20 (ERROR) -- ArmoryUtils.pyc:1159 - Determined that exec dir is C:\Program Files (x86)\Armory\armoryengine but it does not exist

I installed Armory to C:\Program Files (x86)\Armory and can confirm that there is nothing called armoryengine in there (either file or folder).

As soon as I added --disable-modules to the shortcut everything worked fine (including autostarting bitcoind in testnet mode).
legendary
Activity: 1428
Merit: 1093
Core Armory Developer
Bug report:

Stuck with multiple Armory icons in the task bar.

Steps:
Launch Armory (Mainnet)
Launch Armory (Testnet)
Testnet Armory complains that it is already running and exits automatically, but the icon stays in the taskbar.
The Testnet icon is unresponsive to any clicks.

Looks like Testnet Armory didn't actually exit completely. I had to kill it from taskmanger.

Edit:
Scratch that, it looks like Testnet is completely broken. I try to launch it and it creates the tray icon, but never comes up. If I look in taskmanager, I can see that it launches bitcoind with the testnet parameter.

2014-06-29 13:03 (ERROR) -- ArmoryUtils.pyc:1159 - Determined that exec dir is C:\Program Files (x86)\Armory\armoryengine but it does not exist
2014-06-29 13:03 (ERROR) -- Traceback (most recent call last):
  File "ArmoryQt.py", line 7280, in
  File "armoryengine\Timer.pyc", line 99, in inner
  File "ArmoryQt.py", line 503, in __init__
  File "ArmoryQt.py", line 875, in loadArmoryModules
  File "ntpath.pyc", line 96, in join
TypeError: object of type 'NoneType' has no len()

There's actually two things going on here:  

(1) Do not use auto-bitcoind in testnet mode.  I've tried a couple times to get that working, but it's non-trivial.  For testnet, you'll have to run Bitcoin Core manually and disable the option in the menu.  This is good anyway, if you plan to run multiple Armory instances -- you can have all of them connect to the same Core instance.
(2) I see the problem with the path... I have that path in my exec directory, but didn't realize that lacking that path causes it to hard fail.  Very easy to fix, and will make sure I have that in the next iteration.  For now, to run in testnet use --disable-modules.

Actually, on the second one above:  can you check your testnet log file for an error that looks like this and tell me what it is?

Code:
ERROR: Determined that exec dir is ______ but it does not exist
member
Activity: 98
Merit: 10
Bug report:

Stuck with multiple Armory icons in the task bar.

Steps:
Launch Armory (Mainnet)
Launch Armory (Testnet)
Testnet Armory complains that it is already running and exits automatically, but the icon stays in the taskbar.
The Testnet icon is unresponsive to any clicks.

Looks like Testnet Armory didn't actually exit completely. I had to kill it from taskmanger.

Edit:
Scratch that, it looks like Testnet is completely broken. I try to launch it and it creates the tray icon, but never comes up. If I look in taskmanager, I can see that it launches bitcoind with the testnet parameter.

2014-06-29 13:03 (ERROR) -- ArmoryUtils.pyc:1159 - Determined that exec dir is C:\Program Files (x86)\Armory\armoryengine but it does not exist
2014-06-29 13:03 (ERROR) -- Traceback (most recent call last):
  File "ArmoryQt.py", line 7280, in
  File "armoryengine\Timer.pyc", line 99, in inner
  File "ArmoryQt.py", line 503, in __init__
  File "ArmoryQt.py", line 875, in loadArmoryModules
  File "ntpath.pyc", line 96, in join
TypeError: object of type 'NoneType' has no len()
legendary
Activity: 1428
Merit: 1093
Core Armory Developer
Finally, we have a solid beta/testing release of 0.92!

Let's start the testing machine again:  Grab 0.91.99.7-beta through the secure downloader and Armory will verify all signatures for you!  (Help->Update Software)  If you don't have access via secure downloader, use the links below.


Installers for 0.91.99.7-beta:
  Armory 0.91.99.7-beta for Windows XP, Vista, 7, 8+ 32- and 64-bit
  Armory 0.91.99.7-beta for MacOSX 10.7+ 64bit
  Armory 0.91.99.7-beta for Ubuntu 12.04+ 32bit
  Armory 0.91.99.7-beta for Ubuntu 12.04+ 64bit
  Armory 0.91.99.7-beta for Raspbian (armhf)

Offline Bundles:
  Armory 0.91.99.7-beta Offline Bundle for Ubuntu 12.04 32bit
  Armory 0.91.99.7-beta Offline Bundle for Ubuntu 12.04 64bit
  Armory 0.91.99.7-beta Offline Bundle for Raspbian (armhf)

Signed Hashes:
  Armory 0.91.99.7-beta: Signed hashes of all installers


The interface has been redesigned, tons of tests have been added, and armoryd.py has gotten a lot of TLC!   We are already using it on our offline computers, and maintaining quite a bit of company funds now using mixtures of online and offline computers controlled by different officers.   It's pretty smooth! 
legendary
Activity: 1428
Merit: 1093
Core Armory Developer
Question: If I create let's say a 6/9 lockbox and want to spend some funs from there, is it possible to send the unsigned tx to all 9 keyholders and have them sign the transaction. Can I then fuse it together once I have six signatures? Or do all the 6 participants have to sign sequentially? Would be really great if they could all sign in parallel.

Yup, you can sign in parallel.   Both regular multi-sig spends and simulfunding. 

If you look at the screenshot I posted a few up, you'll see that the latest version organizes everything into "Organizer" and everyone else.  In all operations, the organizer simply communicates with each other party/device indepdently, and merges the results. 
full member
Activity: 226
Merit: 100
Question: If I create let's say a 6/9 lockbox and want to spend some funs from there, is it possible to send the unsigned tx to all 9 keyholders and have them sign the transaction. Can I then fuse it together once I have six signatures? Or do all the 6 participants have to sign sequentially? Would be really great if they could all sign in parallel.
legendary
Activity: 1428
Merit: 1093
Core Armory Developer
With the new lockbox dashboard and a bunch of these quirks fixed, I'll have a new version for you to test midweek and you can collect more bounties. 

Awesome! I've been using Armory for years now and it is hands down my favorite bitcoin wallet.

You seem like you do a lot of the stuff yourself, if you need help with anything else give me a PM. I'm not a coder but I do network administration/security research/pentesting and I can help with things such as documentation, support, servers, maintenance, testing, etc.

Also, I just want to verify that as of now there is no way to getting armory on testnet in OSX, correct?

Thanks! 

Armory is now a company, and we have a few full-time devs.  I still do the "feature innovation" like multi-sig, which I've been anxious to do for months/years and have already implemented six times over in my head.  When my current "vision" for Armory is complete, then I'll let some of the other guys do fun stuff like this Smiley   Plus, it's no small task to learn the subtleties of Bitcoin the way that is needed to implement things like this securely/properly. 

So yeah, all the multisig stuff I'm doing myself, with the others helping out, doing code reviews, fixing bugs and generally learning about what I implemented.  But they are covering the other parts of project so I can focus on my vision, such as armoryd, blockchain engine upgrades, better testing frameworks, etc.

Speaking of that, one of the big things for this release is a much more featureful armoryd.  It's not complete yet, so I won't call for testing, but it will be by the time we release 0.92-multisig, and will feature multi-wallet, multi-sig, and have a full suite of unit/functional tests.  PM me if you'd like to discuss how you could contribute.  We'd love to get more testing resources, especially if there's some security background involved!

As for testnet on OSX:  should be no problem.  You'll have to run it from the command line and use "--args" as the first CLI arg, otherwise OSX doesn't pass them along.  I believe it would look something like

Code:
open ArmoryQt --args --testnet --debug
newbie
Activity: 43
Merit: 0
With the new lockbox dashboard and a bunch of these quirks fixed, I'll have a new version for you to test midweek and you can collect more bounties. 

Awesome! I've been using Armory for years now and it is hands down my favorite bitcoin wallet.

You seem like you do a lot of the stuff yourself, if you need help with anything else give me a PM. I'm not a coder but I do network administration/security research/pentesting and I can help with things such as documentation, support, servers, maintenance, testing, etc.

Also, I just want to verify that as of now there is no way to getting armory on testnet in OSX, correct?
legendary
Activity: 1428
Merit: 1093
Core Armory Developer
Thanks Alan for responding, OK I get your points. But if I had Admin privileges and could turn on/off or limit user functions based on login it would be even more useful. Certainly someone compromising the machine as Admin is still a threat (HSM etc would help that as you say).
Here's my scenario: I want a User to be able to create, import, sign, and broadcast multi-sig txns, but not be able to import new public addresses, and not be able to spend single sig from his wallet, or at least only be able to spend to whitelist addresses maintained by Admin. Only Admin can import new public addresses, change whitelist etc. Even better would be daily spending or txn number limits.
Am I missing something? Will pay BTC to someone who wants to consult and figure this out, thx

Going forward, this kind of thing makes sense for us to do.  In fact, your comments inspired this thread, and I think that will be one of the first things we implement when we start figuring out how to better satisfy small-business type use cases.  I hadn't considered the idea before that you could make sure the key is encrypted with multiple passwords, thus enabling better access control on consumer hardware as long as there is operational security to back it up.

@PRab

Just fixed the repeated-public-key issue.  Will release an update this week that will enable you to sign your transactions back to the faucet

@helgabutters

Thanks so much for the feedback!  Especially for all the useful videos showing the bugs!  It's been extremely helpful. 

I think I fixed most of the issues you identified, except for some of the longstanding sizing issues and quirks running Armory on Linux.  Mostly what I've done is I've imposed a maximum character size on all the free-form entry fields (like prom note labels, etc), or limited the number of characters displayed. 




With the new lockbox dashboard and a bunch of these quirks fixed, I'll have a new version for you to test midweek and you can collect more bounties. 
newbie
Activity: 43
Merit: 0
Bug 1: Overly long names will not fully be shown on screen: https://www.youtube.com/watch?v=CBIwHxvicPM

Bug 2: Main Lockbox Management shows transaction is in block but transaction information displays not in block yet: https://www.youtube.com/watch?v=1a2GMHLKknU

Bug 3: Amount of BTC recieved through notification is showing both actual amount and change address amount (which is not controlled by anything in this wallet) / At about 17 seconds in: https://www.youtube.com/watch?feature=player_detailpage&v=fGqYngHGCYA#t=17

Bug 4: Trying to set a Lockbox Bare or P2SH as a change address: https://www.youtube.com/watch?v=3fuWzQmFmVs

Bug 5: In "Create Simulfunding Promissory Note" if no BTC amount is given and you hit "Continue":
'You did not specify an amount to promise!
The extra ' should be removed
newbie
Activity: 43
Merit: 0
Bug 1: Description for "Sign Simulfunding Transaction" should either be "Reivew and sign a simulfinding ..." or "Review a signed simulfunding ...": https://i.imgur.com/zcqz8zq.png

Bug 2: The first paragraph has "Grey keyholes are already signed.Untitled" where "Untitled" should not be there: https://i.imgur.com/Aa7aVf3.png

Bug 3: Paste this into the Lockbox Extended Info: http://pastie.org/pastes/9285120/text?key=v5a6hwmyobmyh2tnulp7fq
Then sign and attempt to broadcast a transaction through Promissary Notes. This should be most of the relevant log: http://pastie.org/pastes/9285240/text?key=igfpoka4bh50gxpog
Video example: https://www.youtube.com/watch?v=ANn1N3I2J4o

Bug 4: Set a 3-of-3 lockbox and follow the steps in the video: https://www.youtube.com/watch?v=79qSj2K94K4
This should be most of the relevant log: http://pastie.org/pastes/9285250/text?key=p4tfturkj2zbtphysfgjg
Pages:
Jump to: