Платежные коды являются методом для создания постоянных Bitcoin адресов, которые могут быть повторно использованы и публично, связанные с идентичностью в реальной жизни, не создавая потери финансовой конфиденциальности.
Они похожи на стелс-адрес, но включать разный набор компромиссов и возможностей, которые могут сделать их более практичными.
Вы можете рекламировать свой платежный код таким же образом, что вы можете рекламировать Ваш адрес электронной почты. Даже если каждый знает свой платежный код, никто не может контролировать blockchain, чтобы узнать, сколько платежей вы получили или какие сделки являются вашими.
Если вы получаете входящую транзакцию в свой код платежа, акт обучения, который вы получили средства говорит вам платежный код лица, направившей сделку. Это означает, что транзакции, отправленные платежные коды делать есть "от адреса" что не хватает от Bitcoin кошельков и что многие пользователи хотели бы иметь.
Поскольку операции с платежными кодами имеют от адреса, получатель платежа может отправить возврат отправителю без необходимости дополнительной информации.
В отличие от стелс-адресов, обнаружение входящих платежей не требует сканирования всей blockchain и все сделки. Любой метод, используемый легкими клиентами, чтобы получить их баланс, как правило, также работает с платежными кодами. Это означает, что свет клиент может использовать платежные коды без аутсорсинга их конфиденциальности доверенного полного узла.
Платежные коды имеют разные функции конфиденциальности, чем стелс-адреса:
- Платежи, отправленные в скрытом адрес, очевидно, идентифицируемые в сеть и blockchain наблюдателей, передает в скрытом адрес и, вероятно, могут быть подвергнуты цензурой. Платежи, отправленные на код платежа не отличаются от традиционных операций Bitcoin
- Коды оплаты утечка верхней границы количества входящих транзакций уведомления известный код платеж получил. Отправители этих платежных кодов, не является ли конкретная сделкой уведомления является действительными кодами платежа или нет не просочились. Операции уведомления могут быть идентифицированы с помощью сети или blockchain наблюдателя и, вероятно, может быть подвергнуты цензуре.
- Stealth адресных сделки размещают информацию, содержащуюся в уведомлении код платежа в каждой сделке. Код оплаты уведомление операция включает расширенный открытый ключ, который должен быть отправлен только один раз для каждого получателя и является справедливым для 232 последующие платежи.
Стандартный код платежа не поддерживают multisig кодов платежей, и нет никакого очевидного способа, чтобы добавить поддержку для них либо без потери желаемых функций или не в состоянии обеспечить дополнительную безопасность, что multisig адрес должны предоставить. Можно было бы использовать методы пороговой подписи для достижения цели позволяет несколько сторон разделить контроль над кодом оплаты, не требуя OP_CHECKMULTISIG скриптов. Это будет предметом дальнейших исследований.
Полное описание протокола с иллюстрациями доступна здесь:
https://github.com/OpenBitcoinPrivacyProject/bips/blob/master/bip-0047.mediawiki