Greetings! New to Zcash?
The Zcash network is young, but evolving quickly! Sign up and we'll be in touch with more information about how you can get started with Zcash!

Язык

Обновлено: 2016-09-26

Связанные документы:

Краткое изложение

Zcash основан на Биткоине, плюс имеет набор дополнительной функциональности, как на уровне протокола, так и на уровне интерфейса RPC. Этот документ описывает интеграцию Zcash с продуктами и сервисами. Для помощи в создании и тестировании Zcash, смотрите 1.0 руководство пользователя Zcash.

Типы адресов

Прозрачные адреса Zcash, то есть T-адреса, очень похожи на адреса Биткоина. Zcash также обеспечивает Z-адреса, которые используются для отправки и получения средств приватно, с криптографической защитой транзакций при помощи доказательства нулевого разглашения. T-адреса все начинаются с T… приставки [1] в то время, как Z-адреса всегда начинаются с Z… приставки.

Биткоин API

Демон zcash, zcashd, представляет тот же самый вид RPC интерфейса, что и в ядре Биткоина, и этот интерфейс (смотрите описание RPC Биткоина) обеспечивает очень похожие Вызовы API Биткоина, которыми мы вызываем API Биткоина. Транзакции, которые не задействуют Z-адреса (и, следовательно, уровень приватности с нулевым разглашением) могут создаваться с этим API так же, как и для Биткоина.

Этот API может использоваться для усовершенствованных транзакций Биткоина, таких же, как и в ядре Биткоина, например, транзакций с мультиподписями.

Платёжный API Zcash

Кроме того, zcashd добавляет Платёжный API (смотрите описание Zcash платёжного API), который задокументирован в нашем репозитарии с каждым релизом. Это API высокого уровня, который упрощает распространенные примеры передач. Этот API может отправить с или получить на (некоторые) T-адреса и Z-адреса через вызов z_sendmany.

Этот API ещё не поддерживает типы продвинутых транзакций Биткоина, таких, как мультиподписи.

Способ интеграции

Есть два подхода к интегрированию службы или продукта с Zcash: Биткоин-совместимый подход, и подход Zcash API. Биткоин-совместимый подход удобен для развёртывания, поскольку уже использует ядро Биткоина, так как API (практически) идентичный. Альтернативно, если разрабатывается новая интеграция, использование Zcash API может быть проще для большинства случаев использования.

Сервисы, которые используют Zcash API, могут отсылать на- и получать с- адресов обеих типов, Z-адресов и T-адресов. Один текущий недостаток состоит в том, что API не поддерживает транзакции с мультиподписями. Службы, которые используют подход совместимости Биткоина, могут только отправлять с/на T-адреса. Пользователи могут пользоваться приватностью даже в этом случае, таким образом, главный недостаток состоит в неудобстве пользования.

Служба, которая поддерживает сразу Z-адреса и мультиподписи будет использовать Zcash API для всех транзакций за исключением мультиподписей, для которых будет использоваться API Биткоина.

Designation Features To Support
Level Description Transparent Transactions Transparent Multi-Sig Private Transactions Encrypted Memo
1 Bitcoin-compatible Bitcoin API Bitcoin API    
2 Zcash Bitcoin API / Zcash Payment API Bitcoin API Zcash Payment API Zcash Payment API

Биткоин API (JSON-RPC)

  • Backwards compatible with Bitcoin-Core 0.11.2. Minor modifications to JSON output e.g. vjoinsplit.
  • Recommended for: time to market for existing Bitcoin applications, familiarity with Bitcoin, multi-sig

Платёжный API Zcash

  • Для отправки как прозрачных, так и приватных платежей. Расширяет существующий API Биткоина новыми командами.
  • Рекомендуется для: новых приложений, которым не нужна поддержка мультиподписи, приватных транзакций, зашифрованного поля примечаний.

Производительность приватных транзакций

На четырех ядерном сервере для измерения производительности, создание приватной транзакции потребовало ~3.2 гигабайт памяти и ~50 секунд времени вычислений. На 32-ядерном Amazon EC2 сервере, время вычислений было около ~30 секунд.

Эти цифры будут меняться во время разработки.Графики недавней производительности доступны на сайте измерения производительности Zcash: измерение времени и производительности памяти RAM.

Свяжитесь с нами

Выход поддержки низкоуровневых JSON-RPC API для поддержки примитивов Zcash ожидается в первом квартале 2017 года. Если вы в настоящий момент используете транзакции Биткоина или форматы/протоколы блокчейна, которые отличаются от bitcoind, или если вы используете другие биткоин узлы/библиотеки, такие, как Bitcore, пожалуйста, свяжитесь с нашей командой разработчиков для технической помощи.

[1]Примечание: приставка T… для T-адресов ещё не утверждена и мы планируем это сделать.