Python-Based Bitcoin Software
C++ Python C Assembly Makefile Objective-C++ Other
Latest commit 2a6fc53 Nov 10, 2015 @etotheipi Merge pull request #315 from jameshilliard/fix-osx-build
Thanks to jameshilliard for fixing our 0.93.3 mac build.  Hopefully this continues to work for future versions.
Permalink
Failed to load latest commit information.
BitTornado Tweaked BT settings, dashboard, dpkg builder Mar 16, 2014
PublicKeys Added known public keys, rearranged some code Mar 4, 2013
armoryengine Add comment explaining why the padding was removed Oct 27, 2015
bitcoinrpc_jsonrpc ARMORY-125 - More armoryd cleanup. Note that there are now two JSON-R… May 22, 2014
cppForSwig ARMORY-558 Oct 21, 2015
dpkgfiles Enable Ubuntu 12.04 support when building DEB packages May 21, 2015
extras ARMORY-389 use bitcoin rpc calls estimatefee and estimatepriority to … May 26, 2015
guitest Added a little bit of UI testing using the Linux Desktop Testing Proj… Mar 9, 2015
img Forgot to add eye "icon" May 9, 2014
osxbuild add libpng build issue note to OSX build notes Oct 31, 2015
po Updated version number Jan 7, 2015
pytest ARMORY-568 Implement Low S Signature rules - Fixed Oct 21, 2015
r-pi added make clean to rpi script Jan 8, 2015
release_scripts Updated copyright statements Jan 8, 2015
samplemodules Fix Plugin Warning problem Dec 15, 2014
txjsonrpc ARMORY-125 - More armoryd cleanup. Note that there are now two JSON-R… May 22, 2014
ui ARMORY-558 Oct 21, 2015
urllib3 Tweaking privacy info Apr 23, 2014
webshop Updated copyright statements Jan 8, 2015
windowsbuild ARMORY-24 Implement Wizard SystemMerge Jan 24, 2014
.gitignore added more build files to .gitignore Jan 7, 2015
.gitmodules Removed submodule Test Jun 9, 2014
ArmoryQt.py ARMORY-568 Implement Low S Signature rules - Fixed Oct 21, 2015
ArmorySetup.nsi ARMORY-310 NSIS - Add check for 32-bit and prevent install Mar 5, 2015
LICENSE Updated copyright statements Jan 8, 2015
LICENSE.py Updated copyright statements Jan 8, 2015
Makefile Fix "make install" issue. Jan 18, 2015
README.md Changed README to markdown format. Jan 16, 2015
SDM.py ARMORY-390 Increased the delay before checking if a transaction was a… May 27, 2015
Windows_Build_Instructions.rtf Pushed updated windows build instructions (RTF) Mar 16, 2015
announcefetch.py Updated copyright statements Jan 8, 2015
armorycolors.py Updated copyright statements Jan 8, 2015
armoryd.README Add a note to the armoryd README reminding people that a bitcoind ins… Jun 26, 2014
armoryd.py ARMORY-558 Oct 21, 2015
armorymodels.py ARMORY-531 Sep 15, 2015
build_installer.bat bootstrap added to install process on windows Mar 20, 2014
default_bootstrap.torrent Added default torrent, fixed makefile, Popen Mar 20, 2014
devchanges.txt Added scrAddr_to_hash160 b/c too many things need it Feb 3, 2014
dynamicImport.py Revert to No-Zip modules for testnet Jan 27, 2015
edit_icons.bat Updated a few this to make the process more pleasant Sep 24, 2013
edit_icons.rts Implemented complete automation of creating the installer Sep 25, 2013
guardian.py Updated copyright statements Jan 8, 2015
imgList.xml Forgot to add eye "icon" May 9, 2014
jasvet.py Removed an extraneous print statement Oct 2, 2014
qrcodenative.py ARMORY-24 Implement Wizard SystemMerge Jan 24, 2014
qt4reactor.py Created readblkupdate test, added qt4reactor license Jan 15, 2013
qtdefines.py Added a little bit of UI testing using the Linux Desktop Testing Proj… Mar 9, 2015
qtdialogs.py ARMORY-464 menuSelectSweepKey() displays a confusing message - Fixed Oct 22, 2015
setup.py Fix email package import for py2exe build Jun 25, 2014
subprocess_win.py tiny fix in subprocess_win.py Jan 7, 2015
update_version.py run update_version when building installer on windows Jan 7, 2015
versions.txt Merge branch 'backupcenter' into ramreduceleveldb Apr 24, 2013
writeNSISCompilerArgs.py multiple unicode fixes Mar 7, 2014

README.md

Armory

Created by Alan Reiner on 13 July, 2011

Armory is a full-featured Bitcoin client, offering a dozen innovative features not found in any other client software! Manage multiple wallets (deterministic and watching-only), print paper backups that work forever, import or sweep private keys, and keep your savings in a computer that never touches the internet, while still being able to manage incoming payments, and create outgoing payments with the help of a USB key.

Multi-signature transactions are accommodated under-the-hood about 80%, and will be completed and integrated into the UI soon.

Armory has no independent networking components built in. Instead, it relies on on the Satoshi client to securely connect to peers, validate blockchain data, and broadcast transactions for us. Although it was initially planned to cut the umbilical cord to the Satoshi client and implement independent networking, it has turned out to be an inconvenience worth having. Reimplementing all the networking code would be fraught with bugs, security holes, and possible blockchain forking. The reliance on Bitcoin-Qt right now is actually making Armory more secure!

Donations

Please take a moment to donate! 1ArmoryXcfq7TnCSuZa9fQjRYwJ4bkRKfv

bitcoin:1ArmoryXcfq7TnCSuZa9fQjRYwJ4bkRKfv

Building Armory From Source

See instructions here

Dependencies

  • GNU Compiler Collection
    Linux: Install package g++

  • Crypto++
    Linux: Install package libcrypto++-dev
    Windows: Download

  • SWIG
    Linux: Install package swig
    Windows: Download
    MSVS: Copy swigwin-2.x directory next to cryptopp as swigwin

  • Python 2.6/2.7
    Linux: Install package python-dev
    Windows: Download

  • Python Twisted -- asynchronous networking
    Linux: Install package python-twisted
    Windows: Download

  • PyQt 4 (for Python 2.X)
    Linux: Install packages libqtcore4, libqt4-dev, python-qt4, and pyqt4-dev-tools
    Windows: Download

  • qt4reactor.py -- combined eventloop for PyQt and Twisted
    All OS: Download

  • pywin32
    Windows Only: qt4reactor relies on pywin32 (for win32event module). Download

  • py2exe
    (OPTIONAL - if you want to make a standalone executable in Windows)
    Windows: Download

Sample Code

Armory contains over 25,000 lines of code, between the C++ and python libraries. This can be very confusing for someone unfamiliar with the code (you). Below I have attempted to illustrate the CONOPS (concept of operations) that the library was designed for, so you know how to use it in your own development activities. There is a TON of sample code in the following:

License

Distributed under the GNU Affero General Public License (AGPL v3)
See LICENSE file or here

Copyright

Copyright (C) 2011-2015, Armory Technologies, Inc.