Author

Topic: Armory plugins (Read 708 times)

legendary
Activity: 1512
Merit: 1012
July 16, 2015, 05:58:57 PM
#4
A plugin for a Raspberry touchscreen would definitely be really useful... Adding to that an audio modem plugin to broadcast transaction info (something like this, but built in and easier to use Cheesy). QR code on the touchscreen wouldn't be bad either (but that would also require coordination with the Raspberry's camera)

Can't wait for plugins to arrive Wink
legendary
Activity: 2126
Merit: 1001
July 15, 2015, 05:11:03 PM
#3
Thank you for the info.
I have some pondering to do!

Ente
full member
Activity: 123
Merit: 100
July 15, 2015, 04:11:49 PM
#2
The plug-in system is there for anyone to use to create plug-ins. You can run a plug-in on testnet without an Armory signature.

We currently have no plans to develop any plug-ins for the public version of Armory, but we may do that in the future.

If someone were to present us with a completed plug-in that would be useful for regular Armory users we would consider reviewing the code and possibly signing the source so that it will work with our signed releases.
legendary
Activity: 2126
Merit: 1001
July 15, 2015, 11:51:51 AM
#1
Hello everyone,

some time ago we had the plugin topic in the mainthread:

So, how does this work? Who can program plugins? Only Armory-devs, or anyone?

Anyone can make plugins, but they will only run on stock mainnet Armory if we have signed them. You can modify the source to add your own public key to the list of trustees if you want to run plugins someone else signed. I don't think we added an option in the UI for that yet, I'm not sure if we are going down that path. I think the internal talk was to sign trusted 3rd parties' key with ours so they can do their own plugin dev, and revoke privileges through the announcement system in case someone goes rogue. You should really ask etotheipi or Circus_Peanut for details, I wasn't part of this development effort.

All plugins run unsigned on testnet.

So I'd like to start with my Armory-Offlinesigning-Device, which would profit a lot from an Armory plugin.

What is the status of plugins? How would I proceed to have the plugins I envision signed so they run on stock Armory? Or is the mentioned "Armory signs an externals' key" approach the way to go? How to ensure those plugins are safe? I didn't find anything plugin-related in the GUI (except "verify signed package"?).


As an example, here's what I have in mind.
A tandem of a regular Armory-desktop-client and a small "offline" Armory box which signs the tx. That is nothing new in itself. I wish to build an inexpensive and neat tiny box with instructions on how to build it, and provide plugins to have both Armorys talk to each other transparently, the only additional steps being a physical button-press on the signing device and maybe a decryption password for securing the keys on that box. Focus on it all being open and transparent, and maybe a showcase project for others to find interest in creating hardware and plugins around Armory.


My ideas so far:

Offline-device:
- Raspberry Pi 1 with small 3.5" TFT, resistive touchscreen and buttons
- Offline Armory with 1) small-touchscreen-gui-input-addon and 2) airgap-jumping addon

Client-device:
- Regular online Armory client with watch-only wallet
- airgap-jumping addon

Airgap-jumping options:
I'd like to have a modular approach here, where different hardware-setups are possible to let the two Armory communicate over the "airgap". There are several concepts floating around here already, from USB-dongle to audio to QR. I'd like a "visibly flashing optocoupler", for example. Each hardware-option would have its own plugin, or the main plugin would be easy to expand with new setups.



Now the interesting part, of course, is how to trust a plugin which didn't come from Armory inc. I have the same problem, as I won't program anything such sensitive by myself, but will have someone else do that.



Alan, Circus_Peanut, what's the status on plugins? I'd like to hear your thoughts.
Is anyone interested to collaborate here? The point in this whole project is to make it easy to build for anyone, so collaborating for the prototype must be easy as well :-)

Cheers,

Ente
Jump to: