Bitcoin Forum
June 22, 2024, 12:39:52 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
  Home Help Search Login Register More  
  Show Posts
Pages: « 1 ... 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 176 177 178 179 180 181 182 183 184 185 186 »
3081  Bitcoin / Bitcoin Discussion / Re: Armory: Cold Storage for the Average User! on: March 09, 2012, 05:26:18 AM
For those that aren't part of the Alt-Clients thread, I just posted a tool I created to leverage Joric's PyWallet to migrate your Satoshi wallet to Armory.  You can find it here:  https://bitcointalk.org/index.php?topic=56424.msg791695#msg791695

This is a temporary solution until I get something integrated into Armory.  If you don't mind some command line stuff this should work great -- tested on Win 7 64-bit.  Should work on linux if you already have all the packages installed to run Armory, and copy the .so file from Armory into this downloaded directory.

Simply run PyWallet (included in zip-file) to pull your keys out of your Satoshi wallet, then run my tool (ArmoryBulkImport.py) to import them into your Armory wallet.  Because of the keypool size, you are guaranteed to get at least 100 addresses added to your Armory wallet.  This should work fine offline, and then you can create your watching-only copy and put it on your online computer. 

Click the link above for more details.


I'm about to try an offline transaction! Smiley

Did it work?  (besides the send-tx bug that gives an error which I can't fix until next week...)
3082  Bitcoin / Armory / Re: Armory - The most advanced Bitcoin Client in existence! (v0.5.1-alpha) on: March 09, 2012, 03:40:05 AM
Experimental Wallet Migration Tool
https://github.com/downloads/etotheipi/BitcoinArmory/Armory_MigrateWallet.zip
https://github.com/downloads/etotheipi/BitcoinArmory/Armory_MigrateWallet_Win32.zip (for 32-bit)


WARNING:  This tool is experimental, so please make sure everything is backed up appropriately before trying this!

Something very similar will be integrated into Armory, but probably not for another couple weeks.  If you can't wait, go ahead and use this tool.

The zip file linked above contains Joric's pywallet.py, a script I wrote called ArmoryBulkImport.py, and then all the stuff you need to run it on Windows.  You should only need to have python installed (2.7.2 is ideal) to run these scripts.  

If you are on Linux, you should unpack either zipfile, and copy the compiled _CppBlockUtils.so and CppBlockUtils.py files from your BitcoinArmory directory into this one (it is created after the "make swig" step in the instructions).  I am not on a Linux machine, so I can't test it just yet, but the Windows version has been tested (64-bit only).  If there are any problems with it, it will have to wait until next week, but I thought I might be able to get this out the door right now to help people who can't proceed with offline wallets.

Wallet Migration Tool

This is two tools:  pywallet.py from Joric, which will allow you to dump your wallet.dat file from the Satoshi client into a file, and then ArmoryBulkImport.py which will read any file containing a bunch of private keys and import them into a target Armory wallet (it literally breaks down the entire contents of the file, and grabs everything that looks like a private key).

With pywallet, you must use --dumpwallet flag and pipe everything to a file.  Use --datadir=/path/containing/wallet.dat/ if wallet.dat is in a non-std locations.  Use --password if your Satoshi wallet is encrypted.

Code:
python pywallet.py --dumpwallet --datadir=/home/user/.bitcoin/ --password=myEncryptionPassword  > satoshiKeys.txt

Once you have the keys in the file (or any file containing lots of private keys), you can run

Code:
python ArmoryBulkImport.py --importPath=satoshiKeys.txt --toWallet=/home/user/.armory/armory_284kgF44.wallet

The script has a ton of checks built-in, including only importing private keys that have a checksum:  this guarantees that arbitrary 32-byte strings are not treated as private keys.  And if your target Armory wallet is encrypted, it will prompt you for a password to unlock it (without leaving anything in your shell history).

Please let me know if something doesn't work quite right.  I'll take a shot at fixing it, but likely won't get to it until next week.

-Eto

3083  Bitcoin / Bitcoin Discussion / Re: Armory: Cold Storage for the Average User! on: March 08, 2012, 07:41:55 PM
It was more the OP thanking him for being the thread bouncer that rubbed me up the wrong way, I felt that my participation was maybe unwelcome, btw I am not anti gun as such & I hope that came across in my original comment - I was just saying what I thought others of a non military background may make of the name, it's also no big deal to me what it's called anyway - if there exists a better name then that just helps the project to bring this up for discussion

I will certainly though check it out & also donate if I find it of use which I'm sure that I will, just atm I don't happen to need it so there's no rush - oops as writing my Jessie alarm for $4.90 just went off - perhaps I may need it sooner than I thought that I may

@cypherdoc ~ many thanks Smiley

Otoh,

You're absolutely right.  I was amused by the comment, without regards to who or why it was said.  It's comforting to me to see folks really sticking up for my project, even if it was inappropriate.  In this case, it was inappropriate -- I have no intention to create a hostile environment,  and I never wanted to suggest that people need to donate to participate.  Sometimes I'm a little tactless... 

I am very much interested in seeing discussion about the program, and understand how others are receiving it.  Feedback will help this project tremendously, completely separate from donations, and I do appreciate your comments.  I think it's a little late for me to re-brand the program.  The name was original "Bitcoin Armory" which didn't have quite the same "violent" connotation as an arbitrary "Armory."  By the time I changed the name to just "Armory" I was already desensitized to the underlying meaning of the word.  Assuming no legal troubles related to "The Armory", I expect I will just keep it and hope the same happens to everyone else.  Hindsight is 20/20, but there's worse situations to be in...

I hope you will forgive my tactlessness and consider spending some time with the program itself, and let me know what you think.
 
3084  Bitcoin / Development & Technical Discussion / Re: Elliptic Curve Calculator UI (now part of Armory) on: March 08, 2012, 05:42:03 PM
CHECKMULTISIG has the same effect as threshold ECDSA but it doesn't scale as well. That's the primary reason to research it, having a few hundred participants in a group signature with CHECKMULTISIG would probably blow the tx size limits, or at least take a hefty fee.

See the PDF here for an introduction to this topic:

www.twisc.ntust.edu.tw/twisc/Media/download.asp?medi_id=168

You are right, it's fairly complicated.  I spent about 20 minutes looking at it, and got the gist of it:  it looks like each party is producing and sharing lots of polynomials with all the other participants, in such a way that some common information can be recovered later on... But I'm going to need a lot more than 20 minutes to fully absorb it. 

When they say information is exchanged over a secure channel, I assume that something like ECDH is used to establish an encryption key, or simply using ECIES to establish a secure channel...?  Either way, it looks like it would require a lot of work to get 100 different participants to engage in this setup, requiring each participant to contact each other participant (which is what it looks like from the statement that participant Pi sends fi(xj) to participant Pj). 

Beyond the large "social" overhead of execution, my biggest concern is that these papers seem very theoretical, without any evidence that the complexity is actually secure.  I totally agree with you about the OP_CHECKMULTISIG not scaling well, but I'm not sure that a few theoretical papers can be trusted to the level of NIST-approved ECDSA operations, which I believe is necessary for any money system.  I'm sure you're familiar with all the things that can go wrong with asymmetric encryptions if you don't pay attention:  such as picking prime numbers, p & q for RSA such that (p-1) and (q-1) don't have large prime factors.  Or reusing "random" numbers in ECDSA signatures.  I remember in my Crypto class learning all sorts of abstract no-nos for use in cryptography.

Even though OP_CHECKMULTISIG doesn't scale well, I still feel like 99% of the usability is there (as part of P2SH scripts).  I would be interested to learn more about this, though...

3085  Bitcoin / Bitcoin Discussion / Re: Armory: Cold Storage for the Average User! on: March 08, 2012, 04:52:18 AM
if you have the private key of course you can import it.  Smiley
wallet properties -> import private key
copy/paste the key, then select second option "import this address" -> done.

Silly me. Still it would be useful to have an "import Satoshi wallet" button, for us non-technical users. Now I'm off to learn about extracting keys from Satoshi wallets.  Wink

Your best bet is Joric's PyWallet.  About a month ago, Joric figured out the Satoshi wallet encryption, and released an update that will extract the keys if you enter the encryption passphrase.  I've used it once or twice, and it's pretty slick.  You can use it as a command-line tool, or you can run it in server mode, and access it via a nice web interface by putting "localhost:8989" into your browser. 

The biggest issue is that you're probably going to get a lot of keys dumped out, so you have to know which one is the right one.  Luckily with the full-RAM Armory, checking the balance of a fresh address takes less than 1 sec!  The copy&paste procedure will be the bottleneck (at least until I get a bulk-import UI).
3086  Bitcoin / Bitcoin Discussion / Re: Armory: Cold Storage for the Average User! on: March 08, 2012, 02:27:50 AM
Got my BTC 10? Smiley

Yup, I'll be sending you the encryption seminar shortly.  And please email me with an address if you want a T-shirt or USB key.  I will be getting them made and distributed after the funding period is over.

However if it has to be done via scripts that won't work for many people (I will be fine with this personally tho) and it's an important hurdle in the adoption of your client.

I totally agree with you on this.  I only proposed the script as a temporary solution for the really-determined folks until I can get something integrated into the UI.  The script is probably 10 lines of python.  But integrating Pywallet and bulk-import into a nice, pleasant, bug-free interface is considerably more lines of code Smiley
3087  Bitcoin / Bitcoin Discussion / Re: Armory: Cold Storage for the Average User! on: March 08, 2012, 02:00:10 AM
Finally hit the $3k mark!  Sure, I don't think I can make the full $12k, but $3k is certainly enough to make a difference here.  And I'll be getting an article on BitcoinMedia soon, so that will hopefully draw in some folks not on the forums Smiley  If not, I may have to commit to using a large chunk of unpaid leave instead of actually going part-time... nonetheless, any full-day chunks of time I can spend on Armory while the house is empty is when I make the most substantial progress...

So there's a lot to respond to here... amazing what accumulates over the course of one day!

@ Muyuu, Holliday & Cypherdoc,

Armory wallets are completely different than Satoshi-client wallets, and for a very good reason:  the Satoshi-client wallets are terrible.  They require a DB engine, which requires an extra library, and the DB itself is what was responsible for the wallet-not-actually-encrypted bug.  Supporting Satoshi wallets is a step backwards, and a substantial time investment.  Not to mention, there has been some talk recently among the devs of switching away from the current Satoshi wallet format -- so I feel like it's not worth it. 

However, I will support migration.  I will leverage Joric's pywallet tool to help pull all the private keys out and import them into an Armory wallet.  It's the best I can do amidst my priorities.

In the meantime, the thing stopping users from manually doing this, is the lack of a bulk-import feature in Armory.  It was already part of my RAM-upgrade, but that's not going to be done for a while (but will be necessary when it takes 30s per address import).   Until then, I can probably put together a super-quick python script that will simply import a list of private keys in a specified Armory wallet -- then the determined users can use Joric's pywallet to dump the private keys.  Or maybe I will send that script to Joric:  maybe he would be up for making an import tool like this...


@ Rassah

This is something I've thought about, but there are a lot of risks associated with holding a pruned blockchain.  I believe it will have to be done eventually, but that there will also be a network-level accommodation for it:  such as including unspent-tx-out-tree-hashes in the coinbase transactions, so that nodes can verify their pruned blockchains against other nodes.  I am wholly in support of such a scheme if it can be made to work, but I feel like there's going to be a big paradigm shift to make this doable in Armory without it (and maintain a high confidence in the security of the application)

Regardless, I don't see this as a solution to the RAM problem, because I don't want to bank on the pruned blockchain taking up less RAM than some arbitrary system.  One day Armory works, the next day someone creates a ton of unspent outputs and Armory won't load anymore.    I have a solution for the RAM issue (without pruning), that I have already confirmed works in Linux, and I don't see why it wouldn't work in Windows.  I just have to get a solid chunk of time to get it all implemented, debugged, and tested.  It'll be a couple weeks.

@ Otoh

It's easy to say in hindsight I should've picked a different name.  Sure, the word "Armory" has different initial impressions to different people, but in the end it was concise, unique, memorable, and held some meaning related to what I wanted.  Just like "Google" (googol) or "Oracle", one day it just becomes a name, instead of a common word doubling as a name. 

@ Indeminfied

Lol.  Thanks for your actual donation, and bullying others to donate, as well.  Perhaps you can be the official bouncer for this thread Smiley
3088  Bitcoin / Bitcoin Discussion / Re: Armory: Cold Storage for the Average User! on: March 07, 2012, 04:44:59 PM
Solid work.

How about supporting Wallet Import Format like the one used in bitwallet.org? that'd be nice to have IMO.

Muyuu,

I have intentionally avoided wallet importing because of all sorts of weird and nasty things that can happen when two programs are using the same wallet.  I'd prefer if users starts new wallets and transfer coins to them.  However, that doesnt' mean I'll never allow it, I just want to prevent users from shooting themselves in the foot right now, and I'll work on wallet import (with appropriate built-in precautions), later.

ist this included in armory?  can`t find it ? is this in the default design?

https://bitcointalk.org/index.php?topic=24784.80

thx

I had plans to do something like that, eventually, but it's low on my priority list.  On the other hand, my code base is setup to pretty easily allow one to quickly see what addresses have money and select or deselect addresses to be used to fund a given transaction.  So, I guess I could bump it up in priority given that I'm well-prepared for it Smiley  Either way, I gotta fix the RAM issue first, and then I'll think about stuff like this.  


Quote
Short-term development plans:

[...]
 Customizable SelectCoins algorithm: optimize for anonymity or minimal transaction fees.

This is actually a different kind of anonymity.  It doesn't include or exclude specific addresses, it only optimizes the coin selection to use(/link) as few input addresses as possible, make the outputs look indistinguishable, and minimize tx fee.  It's already built into the Armory codebase, I just need to set up an options page so that users can specify their preference.  But this wouldn't replace the full-scale anonymity feature.
3089  Bitcoin / Development & Technical Discussion / Re: Network-enforced performance-bonded dominant assurance contracts on: March 06, 2012, 10:50:06 PM
This is a very interesting discussion, exactly the kind of stuff I want to address with Armory when the time comes...

I really like the idea of incentivizing miners, and I'm sure any specific multi-sig scheme like this can be made straightforward with enough UI innovation.  as long as we don't build too much flexibility and options into it, which will really complicate things.  But this may be a very specific case worthy of its own UI just for miner incentivization, and particularly important with the pending block reward decrease.

I believe nLocktime technically works, but replacement is completely disabled, which means a lot of different kinds of contracts are not feasible.  Is locktime currently usable, even without replacement?  (i.e. can we create locked transactions that become valid in the future?)

There's also a strong reliance on alternate hashcodes, which by themselves are pretty powerful.  However, I am similarly unclear about the availability of alternate hashcodes.  I'm sure they are non-standard, but are they completely disabled?  Will a block be rejected by the Satoshi client if it involves a alternate hashcode?  If so, will nodes also forward those transactions?

I think the Bitcoin contracts page is a great place for the theoretical discussion, but I'm intensely interested in what will actually be usable when multi-sig is enabled.  Mainly because I'm planning to tackle multi-sig UIs in Armory at full speed, once it is enabled on the network, but I need to focus on what will actually be accepted by the network, right now.
3090  Bitcoin / Development & Technical Discussion / Re: Elliptic Curve Calculator UI (now part of Armory) on: March 06, 2012, 08:05:20 PM
If you can implement a true elliptic curve threshold signature system, that would be very impressive. It allows t-of-n signatures with the result being a regular ECDSA compatible signature. There are also algorithms that allow for dealer-free secret sharing, that is, N participants create shares in a key that allows them to group sign a message, but nobody ever has the ability to sign entirely by themselves. Kind of a more scalable CHECKMULTISIG.

Myself and justmoon have explored this topic a little, but the algorithms published in the literature are extremely complicated.

as i recall eto's implementation is an m-of-n whereas you recommend a t-of-n.  could you explain the difference other than you imply its not a true elliptic curve threshold sig system?  more random?

To summarize everything I have talked about above:  I could theoretically implement:

  • 1-of-2 transactions in a very pleasant, straightforward way
  • 1-of-N transactions, but it would require manually circulating a single packet for everyone to cumulatively sign before you can even compute the 1-of-N address
  • 2-of-2 transactions: but only for the case where the distribution is entirely up to one party, and the other party doesn't mind giving up the private key
  • N-of-N transactions (3-of-3, 4-of-4, etc):  but it has the same creation complexity of the 1-of-N above, and the spend-complexity of the 2-of-2 above (requiring all parties except one to send their private keys to one party who gets full control over the coins)

Until Mike Hearn mentioned something, I was not aware that thresholding schemes even existed for ECDSA (like 2-of-3 txs).  It seems that this problem would be a lot easier with RSA (because signing&verification operations are much cleaner, simpler and commutative).  But key lengths are 10-20x the size, and obviously BTC doesn't use RSA...

I think it's all moot with real multi-sig around the corner.  It's a fun mathematical exercise, but I think that's all it is, since it would probably take me longer to implement these ideas, than it will take before real multi-sig is enabled on the network.
3091  Bitcoin / Bitcoin Discussion / Re: Armory: Cold Storage for the Average User on: March 06, 2012, 06:47:43 PM
O.K. Second donation just sent. I really hope that this project takes off, so I'm happy to bump with a donation.

Thanks Indemnified!

With the recent, high-profile BTC thefts, I have updated this thread to more-directly market Armory as the solution.  It sounds like the only reason Slush didn't lose more money, was because he was using cold-storage for most of his funds.  Multi-signature transactions would help, but they are stalled indefinitely.  And, most users do not have the patience or skill to figure out "cold-storage" on their own, which is where Armory shines!  I guess I should rename Armory Offline Wallets to Armory Cold-Storage Solutions! 

So, I am bumping my own thread with a title change, in hope of really highlighting why users should be interested in Armory.  I think even after multi-signature transactions are enabled, offline wallets will be the best way to protect yourself, even against highly-targeted attackers.

Note: I am on vacation until the end of the week, and it appears I have introduced a send-tx bug into Armory just before I left (in version 0.55-alpha)!  Gah!  If you are trying out Armory for the first time and you try to send Bitcoins from your Armory wallet, you will get an error that it was not accepted by the network:  but the transaction did go through!  Just be patient and wait a few blocks (Armory still collects new block information, but it won't acknowledge the transaction until it appears in the blockchain).  When I get back from vacation, I will be fixing the bug! 
3092  Bitcoin / Armory / Re: Armory - The most advanced Bitcoin Client in existence! (v0.5.1-alpha) on: March 04, 2012, 02:00:55 AM
I think there is still a problem with releasing RAM.  I'm running Windows 7 Ultimate 64-bit. Armory worked great.  I quit it, and my system shows the RAM usage drop to normal.  However, I went to make a virtual machine with 4GB of RAM (My system has 6), and it kept crashing because it said the system did not have enough RAM.  Then I tried to open a video game, and it crashed.

A reboot seems to have fixed it. Of course, a reboot seems to fix a lot of things in Windows, so it may have nothing to do with Armory ;p  I'm pretty sure it is Armory's fault though.  I'll test to see if I can reproduce it soon.

Gah!  The sky is falling, the moment I leave on vacation!  I'll have to attend to all this next week.  Sorry!

P.S. - Red Emerald, does task manager still show ArmoryQt.exe?   If not, it shouldn't be locking RAM anymore.
3093  Bitcoin / Armory / Re: Armory - The most advanced Bitcoin Client in existence! (v0.5.1-alpha) on: March 03, 2012, 03:47:36 AM
i just looked into it and its like this when you have a different datadir:
no matter if the bitcoin client is running or not you end up with an armory client in offline mode, a wallet balance of "(...)" and -1 satoshi funds.
the armoryengine function for loading the blockchain already has a parameter for the path, armory is just lacking that one line in the optparse section + another line to pass the parameter along.
just tested it and it works like a charm  Smiley

Fornit, I see you're learning quickly Smiley    Unfortunately, now that I'm distributing full binaries, I cannot just push new .py files, I have to do a full recompile and re-distribution of binaries.  So it sounds like Holliday is going to have to wait.  What a great time to leave town for a week!  

Is it possible to disable 2+ confirmation requirement and reduce it to the single confirmation req'd by Satoshi client? I trust the transactor's tx is valid. Keep thinking I only need one confirmation, then when I try to send, Armory declares tx invalid.

It could also be I'm mis-observing what's happening and am actually experiencing what etotheipi described earlier, given I'm using .55.

Cheers!

ETA: Yeah, pretty sure I'm experiencing the same thing as e-pi. Noticed it did go through, just not displayed in Armory.

Yeah, the requirement is 1+ confirmation for tx from other people, 0 confirmations for change-back-to-self outputs.  It appears that I did introduce a bug recently, and now I'm out and won't be able to attend to it for a week Sad  Glad to hear it's still usable, at least...

PS what OS are you in that you experience the same problems?
3094  Bitcoin / Armory / Re: Armory - The most advanced Bitcoin Client in existence! (v0.5.1-alpha) on: March 03, 2012, 12:11:54 AM
I'm in no rush to figure this out, I'm just trying to learn this new client, because I can see that it will be my primary client in the future. Perhaps I'll do some testing on a different machine that isn't mining on P2Pool.  Wink

Holliday,  this is actually an interesting topic,  since I haven't dealt much with P2Pool.   Is there a reason that you have to run the server from a non-default location?   Is this going to be common among all P2Pool users?   Does the P2Pool server behave like a regular instance of Bitcoind?   I most definitely want to accommodate setups like this that I don't use,  but a lot of other people do.

I thought you said you were setting up an offline wallet,  so I was jumping ahead of you there... Definitely get you blk0001.dat file in the right place,  and this will go *a lot* smoother :-)  I'll check on the command line options,  later
3095  Bitcoin / Armory / Re: Armory - The most advanced Bitcoin Client in existence! (v0.5.1-alpha) on: March 02, 2012, 11:36:21 PM
Holliday,  the primary issue is that the blockchain is not being loaded.   I think all other problems will clear up when you get that.

Also, when you import a watching-only wallet, it will default to not being yours.  This is to prevent an inexperienced user from being persuaded to import someone else's wallet and believing the money is their own.

So,  once you import the watching only wallet,  you have to go into the wallet properties and change the belongs-to field.   I thought I had that in the instructions... I will add a pop-up windows for when you import a watching-only wallet, that asks whether it is yours,  or that this step can be skipped entirely.

Since I'm not in a position to check whether the is a blkdir option, maybe someone else who doesn't mind looking at the python code could check for me and report back.   I honestly can't remember if I implemented it!  If not,  then you'll have to put your bitcoin dir back to default,  or wait a couple days for me to get access to a development system and commit a fix :-(
3096  Bitcoin / Armory / Re: Armory - The most advanced Bitcoin Client in existence! (v0.5.1-alpha) on: March 02, 2012, 11:06:00 PM
I just downloaded Armory to start using offline transactions. I have a question(s), sorry if it has been asked already. I tried browsing the entire thread first, but it's a large thread!

I keep my Bitcoin data folder in a non-typical location. Will this affect how Armory works? I've started Armory and it says "offline" in the bottom right corner. What does "offline" mean and how do I go "online"?

I sent a Bitcoin to my new Armory address, and apparently Armory sees it, but only under balance in wallet properties. I don't see any transactions or unconfirmed funds. Does this have something to do with being "offline"?

I always have bitcoind running for P2Pool mining.

Sounds like there's a lot of little problems here.  Armory will probably go into offline mode of it can't find the blockchain maintained by bitcoind.  However I intended to put in a CLI option for specifying the dir holding the blockchain if it's not standard.   I don't remember if I ever implemented it,  and I'm on my phone right now not in a position to check.  But you can check yourself by going to the github project page and searchingfor "optparse" in Armory.py.   

As for the other issue,  I bet that you did not mark the wallet as your own.  Is the wallet identified on the main screen with a standard white background or with the dark blue?  Does it say "Watch-Only",  or "Offline"?  My guess is that it isn't marked as belonging to you,  and the default filter on the mainstream is set to "My Wallets. "  you can change the filter on the bottom left of the main screen to "All Wallets" which will start including "watch-only" wallets. 

To avoid this in the future,  click on the "Belongs to:" field in wallet properties and check the checbox.  The wallet will then appear with dark blue background and it's balance will be included in your main balance.

As for why it shows offline,  I'm not totally sure without more info.  My guess is that it's the lack of blockchain,  even though it's technically connected to bitcoind.
3097  Bitcoin / Armory / Re: Armory - The most advanced Bitcoin Client in existence! (v0.5.1-alpha) on: March 02, 2012, 10:33:46 PM
This client is beautiful.  The descriptions for what everything is and how to do things are built right into the application.  Best Desktop UI I think I've ever seen.  Great work!

I can't wait to setup my offline system! Smiley

Red Emerald, thanks so much.  I like to think I am good at UI design, and I definitely have a high level of patience to polish everything,  catch every error,  and warn users about potentially stupid actions :-)  etc..
 
Maybe you could repeat that comment on my crowdfunding page...? :-)   It would give it a nice bump,  and I will modify the description to include the phrase "cold-storage. "  it sounds like "Bringing cold storage to the regular user" would be a much better marketing slogan than "offline wallets" and then having to describe what they are...  It sounds like slush saved himself a lot of money using cold-storage, so it makes a lot of sense to point out that's what Armory gives you...

3098  Bitcoin / Development & Technical Discussion / Backups in a Multi-sig world on: March 02, 2012, 10:20:40 PM
There has always been this nagging discomfort with me with regards to P2SH...  and now I finally know what it is...  Backups.  I have put a lot of work into deterministic wallets and paper backups in Armory,  to try to solve one of the most frustrating modes of failure: HDD failure or overwrite combined with either no backup or a stale backup. 

The issue that I am finding with P2SH (which would happen with any similar multi signature scheme that hide addresses),  is that the user is back to requiring a persistent backup solution, because he cannot even identify, much less spend his multi-sig-encumbered coins if he doesn't have the P2SH script.

On the upside,  the P2SH scripts are not nearly as sensitive as private keys.   But they are just as important! If you lose them,  you (probably)  lose the money behind it...

This presents a serious implementation issue:  how do I modify Armory to accommodate backing up the scripts.   I had originally made space for them in the wallet file but now I am realizing that will not enable easy backups (not everyone wants to backup their wallets remotely,  encrypted or not).  So I'm thinking that I should instead create a separate P2SH scripts file,  separate from the wallet,  allowing the user to place it in,  say,  the Dropbox folder.   If the user doesn't want the data stored unencrypted (for privacy reasons),  asymmetric encryption can be used to encrypt each script before appending it to the file.   It would seem that there is no grace time for backups like the Satoshi wallet has (generating 100 address pool)   because you don't know what scripts you're going to receive until you actually get/create them.   They need to be backed up immediately. 

On the other hand,  if these multi-sig scripts require multiple parties,  they are like to have the scripts too,  and you might be able to request them. But this could be a royal pain in the ass if you do business with a lot of different people...

Any recommendations are welcome.  Obviously,  tying the user to dropbox is sub-optimal, but I'm not seeing any other solution that a regular user could put up with that would provide the appropriate level of backups.   Using standard OP_CHECKMULTISIG would solve this,  but there are other reasons it is not being adopted (though I always believed it should be an option even if it isn't the recommended,  but this is a different discussion...)
3099  Bitcoin / Development & Technical Discussion / Re: Elliptic Curve Calculator UI (now part of Armory) on: March 02, 2012, 05:40:12 PM
Very cool work!

I really hope you get the crowdfunding completed!

I sent some coins earlier, gone send some more.

How could I forget?!  You can also simulate a 1-of-N transaction with this calculator, and without requiring anyone to give up their private keys!

Two parties create addresses and exchange public keys.  They do the ECDH to create a new public key as described before.  Except this will not be used as a public key:  it turns out that they are the only two people that can calculate this elliptic curve point:  which is now a shared secret.  They can then hash the key to come up with a new private key that both of them can calculate.  They then fund the associated address.  

Then, they are the only two people that know the private key, and thus either of them can spend the money however they want.  This is effectively 1-of-2, though a little unsafe since you are both operating with the same private key.  You could do 1-of-N but it's a little more complicated.

I'm sure even more stuff is possible!   And I'm sure there's lots of discussion on the forums about it, but I just haven't looked around enough yet!


EDIT: If real multi-sig wasn't just around the corner, I could implement 1-of-2 deterministic wallets:   you make your own wallet and exchange watching-only wallets.  From this, you can both calculate an infinite sequence of private keys, just like a regular deterministic wallet: except that the second party can access it to.

But I think this is moot, now.  With Multi-sig right around the corner... putting in effort to enable this would not be worth, especially because the community is more interested in 2-of-2 and 2-of-3, not 1-of-2.
3100  Bitcoin / Armory / Re: Armory - The most advanced Bitcoin Client in existence! (v0.5.1-alpha) on: March 02, 2012, 06:30:52 AM
I just released version 0.55 (final).  It can be found at http://bitcoinarmory.com/index.php/get-armory.  The only difference (from RC2) is a proactive security upgrade to the message signing.  But it was something that probably couldn't be exploited, anyway, so it's not critical if you are already operating with 0.55-RC2.

I noticed recently that some of my transacations are failing to be acknowledged by Armory, but do actually end up in the blockchain.  I witnessed the same thing when I went back to 0.55-RC1, so it's clearly not a completely fresh bug.  But I'm going out of town for a week, and it appears that Armory transactions still work: you will just get an error message, followed by seeing the transaction show up in the next block.   If this really bugs you, you can go back to Armory version 0.51.  Or maybe I'm the only person seeing it...?  I will investigate further in a week!

Pages: « 1 ... 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 176 177 178 179 180 181 182 183 184 185 186 »
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!