И Гэвин,
(Возможно, это должно быть отделено в новую нить под названием "на разделяющей части bitcoind из бумажника и UI")
Я уже говорил много вещей, которые были бы здорово иметь в пользовательском интерфейсе, но я также признать, как это только делает вашу пластину более и более полно. Я думаю, что вы должны рассмотреть возможность сделать разделяющую основы "bitcoind" в демона вы поддерживаете, и пусть сообщество написать пользовательский интерфейс и управление кошельком для всех различных платформ.
Другими словами, есть не bitcoind делать ничего, кроме разговоров по сети P2P, проверять транзакции, сохранить локальный блок цепи копировать уточненный, генерировать getworks для шахтеров, а самое главное две новые функции RPC для UI-х: вперед подписал сделки с сетью из пользовательского интерфейса, а также позволяет UI для запроса демон для неизрасходованных операций дана списка адресов.
Отделив бумажник, это освобождает вас от необходимости беспокоиться о шифровании кошелька. Единственная причина, bitcoind потребуется бумажник будет принимать доходы от добычи полезных ископаемых (и, возможно, для ограниченных целей, предусмотренных разработчиками, таких как "система бумажник" когда это сервер и т.д. Интернет). Средний пользователь джо не будет использовать системный кошелек.
При таком разделении функций, пользовательский интерфейс будет управлять бумажник и подписывать сделки, а также различные UI, может обеспечить их по-разному. Некоторые приложения UI будут держать закрытые ключи на жестком диске, другие могли бы держать их в автономном режиме и требуют от пользователя ввести их или иным образом поставить их, чтобы сделать сделку (например, из бумаги бумажника, смарт-карта, флэш-диск, веб-сервис, вы называете это). В то время как bitcoind будет платформа нейтральна, вы найдете интерфейс, написанном быть конкретной платформы и написаны людьми, более комфортно с их любимой ОС, поэтому они выглядят и чувствуют себя и работать изначально, как и другие приложения для той же ОС.
При уменьшении размера bitcoind кодового, у вас есть меньше, чтобы наблюдать, когда дело доходит до принятия решения, что патчи и изменения принять. Кто-то делает изменения пользовательского интерфейса, вам не нужно беспокоиться, если он вводит новую уязвимость в bitcoind.
Эти два RPC вызовов я предложил ... они были бы огромны! для способности для кого-то, чтобы написать свой собственный пользовательский интерфейс без необходимости заново изобретать bitcoind процесса с нуля в среде их выбора.