Задний план
bitcoinj +0,11 скоро будет готов к выпуску. Просто, прежде чем выпустить его я планирую объединить некоторые первоначальные поддержки протокола платежа BIP 70, хотя это не будет очень сложным. В частности, он не будет поддерживать генерации запросов оплаты, только потребляя их. Но ... после того, как немного больше работы, чтобы сделать такие как добавление поддержки бумажника инструмента приложение командной строки (bitcoinj эквивалент SX) и обеспечения того, чтобы мы могли загрузить хранилище ключей на каждой поддерживаемой платформе, мы будем готовы.
Одно из критических замечаний в оформлении платежного протокола является то, что он использует PKI, систему сертификации властей, проверку собственности "тождества" (произвольные небольшие кусочки текста, на самом деле) и сбор денег за эту привилегию.
В эти дни вы можете получить бесплатные сертификаты для адресов электронной почты и доменных имен. Comodo имеет очень простой и легкий в использовании способ, чтобы получить их основанный на HTML5Вы просто указать свой адрес электронной почты и имя, которое не проверенную, поэтому он может быть поддельной, а затем ваш браузер генерирует секретный ключ локально и сохраняет его. Затем нажмите на ссылку для подтверждения с доставкой на адрес электронной почты, и процесс завершается полностью подписанный сертификат устанавливается браузером в операционной системе ключей. Это так же просто, как подписавшись на веб-сайте и после того, как это делать, если вы используете настольный почтовый клиент, как Apple, Mail.app, Thunderbird и т.д., то вы можете подписаться на электронную почту и получать зашифрованные письма от других людей без PGP. Же сертификат может быть использован для подписания платежных требований. Попробуйте, это не займет много времени. Серийник тег действительно работает для любого веб-сайта.
Вопросы, связанные с нынешней системой
Хотя получение адреса электронной почты или домена серт легко и свободно в эти дни, есть еще некоторые недостатки здесь:
- Есть более ста СА, из которых только два выпуска бесплатно сертификаты (Comodo и StartCom). Другие также сделали в прошлом, но они, как правило, чтобы получить купил Symantec, которые затем прекратили бесплатные услуги. Free важно получить широкое применение.
- Часто люди общаются, используя тождества, не адреса электронной почты, как форум / Reddit ручка / профили социальных сетей / IM сеть рукоятки / и т.д.. CA-й не выдают сертификаты на эти виды идентичности.
- Даже на бесплатный Comodo адрес электронной почты CERT, вы должны зарегистрироваться через веб-браузер. Там нет API, чтобы сделать это из приложения.
Что мешает кто-то просто создание нового центра сертификации в рамках существующей системы и добавляя все эти функции? В теории, ничего. На практике много. Существующие пользователи ИПК являются такие вещи, как операционные системы и веб-браузеры, все из которых получают распределенным сотни миллионов или даже миллиарды людей. Часто CA сертификаты помещаются внутри встроенных устройств, таких как камеры или телевизоры. Циклы обновления медленно. Это делает стоимость просочилась корневым закрытого ключ астрономический большим - потенциально миллиарды устройств должны быть обновлены и миллионы идентичностей отозваны и переизданы.
Поскольку система PKI настолько велика, а стоимость корневой CERT отзыва настолько огромен, браузер и OS производители требуют высокой степени профессионализма, прежде чем они будут рассмотреть вопрос о добавлении Вас в качестве корневого центра сертификации Снижение риска означает, что дорогостоящие меры по сохранению безопасности:
- ключи Корневые хранятся в автономном режиме и используются только для подписания промежуточных сертификатов. Это немного похоже на "холодный бумажник",
- Промежуточные ключи хранятся в специальных защищенных от несанкционированного доступа модулей аппаратного обеспечения.
- Центры сертификации должны позволять пользователям отмечать свои сертификаты как отозванные таким образом, когда пользователи взломан или теряют свои ключи, люди автоматически перестают доверять эти ключи. Это означает, что серверы должны финансироваться и работать, чтобы служить данные об отзыве в режиме реального времени с помощью OCSP. Ширина полосы пропускания и процессора для этого является стоимость бизнеса.
- Сотрудники должны быть фоновыми проверены и бизнес-процессы ставят на место, чтобы остановить изгоев сотрудников, выдающих поддельные сертификаты для себя.
- Все вышеизложенное является слишком жестким для Mozilla / Chrome / Apple / Microsoft / Debian / и т.д., чтобы проверить себя, поэтому они перенесут проверку профессиональных аудиторских фирм, которые, конечно, не работают бесплатно.
- Потому что все вышесказанное является дорогостоящим, центры сертификации, как правило, берут за свои сертификаты, которые, в свою очередь, означает, что люди ожидают техническую поддержку и другие дорогостоящие вещи, повышение стоимости еще больше.
Вышеуказанные требования являются только вкус того, что это берет, чтобы попасть в Mozilla или Windows / MacOS корень CERT магазинах. Вот почему вы не можете сделать это, и если вы сделали, вы бы в конечном итоге зарядки и деньги продались Symantec, а также.
Альтернатива
Является ли все вышесказанное действительно необходимо для каждого случая использования? Иногда ответ, безусловно, да - если вы видите ваш Trezor сказать, "Оплатить 5 BTC в Оверстки, Inc Солт-Лейк-Сити, США" Вы хотите, что заявление на самом деле быть значимым и трудно подделать, и Распродажа может легко проглотить стоимость платить кому-то, чтобы проверить, кто они есть. ПКИ и существующие центры сертификации получают нам, что функциональность.
С другой стороны, для сообщения, как "Оплатить 0,5 BTC до bitcointalk пользователя Satoshi" вы на самом деле не нужно, что уровень безопасности. Вы знаете, что bitcointalk просто веб-форум, который получает взломан время от времени, и что ручки на форуме не означает много, но вы, вероятно, хорошо с этим для небольших покупок. И если все ваше общение было на этом форуме с определенной ручкой пользователя, а затем увидеть адрес электронной почты или реальное имя на самом деле не поможет, потому что это не личность вы ожидаете и построили доверие.
Там нет никакого способа в аду, что Mozilla собирается принять корневой орган в ведении Theymos по нескольким причинам: bitcointalk имеет ужасный послужной безопасности, так что было бы очень вероятно, будут аннулированы, а имена на форуме ничего не значит для веб-браузера в любом случае. Но ничто не мешает авторам приложения бумажника от доверия Theymos для этой цели.
Что это значит на практике? Скажем, когда bitcoinj 0.11 катается он проверяет все ОСА при условии, корневых сертификаты, а также набор пользовательских корневых сертификатов для различных провайдеров, что сообщество Bitcoin использует много как этот форум, или Reddit, или Bitcoin Foundation и т.д. окончательный корень серт принадлежит автору кошелек (или, возможно, мне в данном случае) также могут быть добавлены, чтобы новые поставщики могут прийти в Интернете, не дожидаясь пользователей бумажника для обновления.
Эти сертификаты являются регулярные X.509 сертификаты, но с новым расширением поля, что указывает на то, как subcerts должны отображаться для пользователя, например:
Код:
walletRenderExtension: "Пользователь bitcointalk $ ЗНАК $"
Теперь, когда этот форум выдает кому-то сертификат с CN = Satoshi, бумажник программное обеспечение знает, чтобы отобразить его в пользовательском интерфейсе, как это:
котировка
Оплатить 0,5 BTC до bitcointalk пользователя Satoshi?
Проверено bitcointalk.org
Проверено bitcointalk.org
... то же самое для Reddit, # Bitcoin-OTC, localbitcoins и т.д.
Что это выглядит для пользователя? Попробуйте его и посмотреть,. Для браузера, как Chrome или Safari, когда браузер устанавливает сертификат, он делает это в глобальное хранилище, которое доступно для кошелька приложения тоже, так что это все, что требуется, чтобы установить его.
Это обновление будет безопасности для многих сценариев общей оплаты без особых затрат. Конечно, шансы хаков / screwups и глобальных аннулирований довольно высоки, но мы все еще небольшая община в основном состоит из энтузиастов технически подкованные, поэтому мы можем терпеть, что на данный момент.
Хорошая вещь о том, чтобы небольшие расширениях для X.509, а не пытаться поддерживать вторые ИКА является то, что мы получаем для повторного использования всей инфраструктуры, программного обеспечения и протоколов, построенное для поддержки существующей системы. Например, если админы bitcointalk регулируют человек, которые получают их счета взломаны, и помогая им восстановить доступ, то они также могут начать работать сервер OCSP поэтому любые сертификаты, выданные в течение времени счет был взломан получить автоматически аннулированы. С точки зрения кошелька дэвов и сайта админы он просто требует многократного использования существующего программного обеспечения, так что небольшое количество дополнительной работы.