Post
Topic
Board Armory
Re: Offline bundle for newer Ubuntus?
by
goatpig
on 19/08/2015, 22:28:33 UTC
I'm sorry if I have come across as pushy. That was never the intention; I know the time of any developer is precious, so I would not want to hoard on it. While, of course, wanting to reach a personal goal of running the newest version of Armory on my old computer, I genuinely hoped that if this might be a bug, I would be of help in solving it.

It was not my intent to sound exasperated. By our standards, this is a bug, but most likely one in CryptoPP, which is unmaintained for a while now.

The reality of this bug is that first of all to fix it I'd probably need to look at the code behavior with your CPU directly. The kind of remote debugging that was practiced in this thread is only good at identifying issues. Unless I have a very good hunch as to what is the underlying cause (usually I do if it's my own code), I can't fix this stuff without experiencing it first hand. Turns out this is probably a CryptoPP issue, so short of having a machine like yours, I'll have a terrible time finding a fix.

The other part is that CryptoPP is a library we piggy back on. Seeing it's crypto, we are very cautious about modifying anything in there. Usually we would try to narrow down the issue and report it to the official maintainer, but that's not an option anymore. We'd have to weight the cost of finding the issue (which possibly requires for someone to get very familiar with this library) and coming up with a as small as possible fix against the reward and the risk of modifying our crypto lib. Simply put, even if we had a fix, we may not implement it.

The future isn't so dark however. As Core is planning to drop OpenSSL, we too plan on ditching CryptoPP and rely on the libraries Core are replacing OpenSSL with, one of which is Sipa's secp256k1 library. So it's possible that this bug will entirely go away in the future.

There is also a plan to come up with lighter builds for some targeted versions such as purely offline Armory and Litenode. Getting rid of the need for C++11 in the offline bundle may very well be one of our goals as it is painful to maintain older OS compatibility otherwise, which is a desirable for our offline package.