TON Overflow на русском

552 Темы 1.0k Сообщения

Русское зеркало answers.ton.org

  • 0 Голоса
    2 Сообщения
    19 Просмотры

    Я думаю, вы можете подробно ознакомиться с этой коллекцией здесь, в getgems, и использовать TonAPI для извлечения всех элементов NFT в этой коллекции.

    https://getgems.io/collection/EQCA14o1-VWhS2efqoh_9M1b_A9DtKTuoqfmkn83AbJzwnPi#stats

  • [решено] Как работает сегментирование блокчейна TON?

    0 Голоса
    2 Сообщения
    16 Просмотры

    Решено

    "Парадигма бесконечного сегментирования" от TON - это метод улучшения масштабируемости блокчейна.

    Сеть TON может быть разделена на несколько независимых цепочек блоков, которые параллельно обрабатывают транзакции и смарт-контракты.

    Каждая цепочка блоков может динамически разделяться или объединяться в зависимости от количества содержащихся в ней учетных записей, оптимизируя производительность.

    Существование множества параллельных рабочих цепочек, каждая из которых содержит несколько цепочек блоков, обеспечивает практически бесконечную масштабируемость, позволяя сети TON эффективно обрабатывать растущее число пользователей и транзакций.

    В то время как этот подход привносит новые сложности, TON использует передовые криптографические методы и уникальные протоколы для управления ими.

    Но похоже, что это просто перенос части технического документа: https://docs.ton.org/learn/overviews/ton-blockchain

  • 0 Голоса
    2 Сообщения
    14 Просмотры

    1/ Действительно ли так сложно получить родительское сообщение, или я пропустил какой-то метод или что-то еще?

    => Это выходит за рамки моих знаний.

    2/ Насколько я могу доверять методу getBlockByUtime? Возможно ли, что в течение некоторого времени unix я буду (не получать блок) /(получать следующий блок)/(любые варианты)?

    => getBlockByUtime - это метод, используемый для извлечения блока, который был создан ближе всего к заданному времени в Unix. Это не на 100% точно из-за того, что время блокировки в протоколе строго не регламентировано, а также из-за задержки в сети и других факторов.

    Таким образом, хотя вы обычно можете доверять getBlockByUtime, чтобы он выдал вам блок, близкий к указанному времени Unix, вы не должны полагаться на то, что он предоставит совершенно точный блок для точного момента времени. Всегда рекомендуется обрабатывать крайние случаи, когда вы можете не получить блок или получить последующий блок.

    ** Также обратите внимание, что этот метод может возвращать блоки из разных цепочек блоков за одно и то же время, поскольку разные цепочки блоков - это, по сути, отдельные цепочки блоков, работающие параллельно.**

  • Узел TON не синхронизируется

    0 Голоса
    2 Сообщения
    9 Просмотры

    Скорее всего, он синхронизируется в начале следующего цикла, просто подождите.

  • [решено] Ошибка 500 при использовании конечной точки из Orbs

    0 Голоса
    2 Сообщения
    13 Просмотры

    Решено

    Привет,

    Эта ошибка вызвана попыткой доступа к старому блоку с узла, который не хранит эту информацию в течение длительного периода.

    Все узлы в сети имеют некоторое хранилище исторических данных по умолчанию, и для извлечения старых блоков требуется доступ к архивным узлам, которые хранят эту информацию в течение более длительных периодов.

    В настоящее время мы работаем над тем, чтобы значительно увеличить срок хранения архивных узлов, и вскоре вы сможете получить доступ к старым блокам.

  • [решено] Есть ли у Fragment API или библиотеки?

    0 Голоса
    2 Сообщения
    26 Просмотры

    Решено

    Привет, насколько мне известно, я не думаю, что у них есть!

    Твое здоровье, Говард

  • [Решено] Почему тестовая сеть может выйти из строя?

    0 Голоса
    2 Сообщения
    21 Просмотры

    Решено

    И тестовая сеть, и основная сеть действительно являются децентрализованными системами, но их основные цели и виды использования различны. Эти различия могут привести к тому, что некоторые проблемы будут более распространены в тестовой сети, чем в основной.

    ** Назначение сети **: Главная сеть - это основная сеть, в которой происходят реальные транзакции, поэтому стабильность и безопасность являются главными приоритетами.

    Тестовая сеть, с другой стороны, предназначена для целей тестирования. Это позволяет разработчикам экспериментировать и отлаживать, не опасаясь причинить серьезный вред. Таким образом, потенциальные проблемы или время простоя могут быть более вероятны в тестовой сети, поскольку это более экспериментальная среда.

    ** Инфраструктура и ресурсы **: Основная сеть обычно имеет больше узлов и ресурсов, выделенных для ее обслуживания и безотказной работы, поскольку она обрабатывает реальные активы. Тестовая сеть, хотя и децентрализована, может иметь меньше ресурсов, выделенных для нее, что потенциально делает ее менее устойчивой к проблемам.

    ** Обновления и изменения **: Изменения, апдейты и экспериментальные функции часто сначала внедряются в тестовой сети, а затем развертываются в основной сети. Это может привести к нестабильности или потенциальному простою тестовой сети.

    ** Реагирование на проблемы **: Учитывая ставки, проблемы в основной сети часто решаются немедленно, в то время как проблемы в тестовой сети могут решаться не так быстро, что потенциально приводит к более длительным периодам простоя.

    ** Стимулы **: Валидаторы или узлы в основной сети обычно стимулируются (например, за счет платы за транзакции или вознаграждения за блокировку) для поддержания целостности сети и времени безотказной работы. Такие стимулы могут отсутствовать в тестовой сети, что потенциально может повлиять на устойчивость сети.

    Важно отметить, что, хотя децентрализация в целом повышает устойчивость, она не гарантирует 100%-ную безотказную работу. Проблемы с сетью все еще могут возникать, особенно при таких обстоятельствах, как ошибки программного обеспечения, проблемы с согласованием или скоординированные атаки. В случае TON testnet, без конкретных подробностей, трудно точно сказать, почему произошел простой. Это может быть вызвано целым рядом причин - от планового технического обслуживания до тестирования новых обновлений.

  • [Решено] Может ли функция `run_ticktock` работать в базовой цепочке?

    0 Голоса
    3 Сообщения
    10 Просмотры

    Решено

    Функция run_ticktock ** работает только в masterchain** и применима исключительно к смарт-контрактам, адреса которых указаны в соответствующем параметре конфигурации.

    Следовательно, такие смарт-контракты не могут работать в базовой цепи.

    https://docs.ton.org/develop/howto/config-params#:~:text=The configuration parameters are certain,current masterchain state when needed. * https://docs.ton.org/develop/func/functions#function-name
  • [Решено] Как сделать новый адрес в TON активным?

    0 Голоса
    3 Сообщения
    88 Просмотры

    Когда вы создаете смарт-контракт на TON (например, кошелек), его адрес предварительно вычисляется еще до развертывания. Вы можете начать отправлять на него деньги и сообщения, и если отправленные сообщения не подлежат возврату, баланс учетной записи в сети будет увеличен. В этом случае вы увидите, что учетная запись по-прежнему неинициализирована и не активирована, но у нее положительный баланс TON.

    Чтобы активировать его, вам необходимо развернуть смарт-контракт. Если это смарт-контракт кошелька, он будет автоматически развернут при первой транзакции, которую вы отправите со своего кошелька.

  • [Решено] Существует ли такая вещь, как "путь вывода" в TON?

    0 Голоса
    2 Сообщения
    38 Просмотры

    Решено

    Хороший вопрос! Профессионалы отрасли часто обсуждают кошельки в контексте "BIP32" (также известного как предложение по улучшению биткоина), которое лежит в основе процесса создания кошельков на основе мнемотехники.

    Проще говоря, вы можете обратиться к этому файлу TypeScript, чтобы понять, как мы можем сгенерировать адрес кошелька:

    https://github.com/toncenter/tonweb-mnemonic/blob/master/src/functions/mnemonic-to-seed.ts

    Как вы можете видеть, pbkdf2Sha512, по-видимому, представляет собой комбинацию PBKDF2 (функция получения ключа на основе пароля 2) и Sha512, оба из которых являются криптографическими методами.

  • Есть ли где-нибудь руководство по созданию NFT на TON?

    0 Голоса
    3 Сообщения
    45 Просмотры

    Привет, так что, если вам нравится, я настоятельно рекомендую вам использовать репозиторий NFT здесь, который использует язык Tact для NFT!

    Это более легко усваивается Существует так же просто, как просто извлечь репозиторий и запустить yarn, чтобы установить библиотеку и развернуть контракт.

    https://github.com/howardpen9/nft-standard-template, наслаждайтесь!

  • [Решено] Есть ли в TON "адрес черной дыры" для записи NFT?

    0 Голоса
    2 Сообщения
    48 Просмотры

    Решено

    Хороший вопрос! По сути, мы следим за содержанием из getgems.io , крупнейшая торговая площадка NFT на TON. Это предполагает, что мы можем использовать два конкретных адреса в качестве мертвых, аналогично тому, что мы знаем из Ethereum:

    1/ "EQD__________________________________________0vo"(https://dton.io/a/EQD__________________________________________0vo)

    2/ "EQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAM9c"(https://dton.io/a/EQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAM9c)

    Отправив NFT на эти адреса, вы потеряете к ним полный доступ, что сделает невозможным извлечение NFT.

    Важно отметить, что в настоящее время в TON нет полноценного "сжигания" или удаления NFT, как это существует в других блокчейнах. Однако план состоит в том, чтобы в будущем добавить "сжигание" в традиционном смысле к NFT на TON.

  • 0 Голоса
    2 Сообщения
    18 Просмотры

    Решено

    Да, ты можешь.

    Getgems.io использует серию контрактов NFT для фиксированной продажи, продажи на аукционе и других, написанных на FunC

    https://github.com/getgems-io/nft-contracts/tree/main/packages/contracts/sources

  • [Решено] Есть ли примеры случайного чеканщика на TON?

    0 Голоса
    2 Сообщения
    18 Просмотры

    Решено

    Хороший вопрос. По сути, вы не сможете этого сделать, если используете другой источник данных для хранения метаданных вне блокчейна TON. Это связано с тем, что команда проекта может легко манипулировать метаданными, которые включают в себя содержимое каждого NFT.

    Этот репозиторий (https://github.com/disintar/DTN/blob/main/notes/onchain-reveal.md) представляет альтернативный способ реализации сетевого метода раскрытия контента NFT, который является более прозрачным и справедливым.

    Вы также можете обратиться к коду контракта с товаром NFT для получения имени пользователя NFT на Fragment.com и команда Telegram (https://github.com/TelegramMessenger/telemint/blob/main/func/nft-item.fc).

  • Действительно ли NFT на TON децентрализованы?

    0 Голоса
    4 Сообщения
    99 Просмотры

    #uptheme

  • В чем преимущества асинхронного блокчейна, такого как TON?

    0 Голоса
    4 Сообщения
    43 Просмотры

    #uptheme

  • Что такое нулевой адрес?

    0 Голоса
    4 Сообщения
    303 Просмотры

    #uptheme

  • 0 Голоса
    1 Сообщения
    11 Просмотры

    Можно ли программно отслеживать, какие смарт-контракты были развернуты в TON в любой конкретный день? Не только общая статистика "сколько контрактов было развернуто", но и их фактические адреса.

    Этот вопрос был импортирован из чата Telegram: <***Скрыто***

    click to show

    Оригинал вопроса

  • Как внедрить игру Unity в экосистему TON?

    0 Голоса
    1 Сообщения
    39 Просмотры

    У меня уже есть игра, созданная с помощью Unity. Можно ли его "импортировать" в TON? Если это возможно, как мне это сделать и с чего мне начать?

    Этот вопрос был импортирован из чата Telegram: <***Скрыто***

    click to show

    Оригинал вопроса

  • [Решено] Как предотвратить ошибки "кончился газ"?

    0 Голоса
    2 Сообщения
    24 Просмотры

    Решено

    Этот вопрос состоит из двух частей. Первое - это убедиться, что вы не столкнетесь с ошибкой "закончился газ".

    Вы можете попытаться оценить плату за газ для транзакции, сначала вызвав конечную точку estimateFee http-api. Вы можете увидеть, как TON Center делает это на их сайте документации. По сути, вы хотите предоставить подробную информацию о транзакции, которую вы отправите, чтобы узнать, сколько газа может стоить транзакция или завершится ли она неудачей.

    { "address": "string", "body": "string", "init_code": "", "init_data": "", "ignore_chksig": true }

    Вторая часть этого вопроса посвящена оптимизации расхода газа. Чтобы оптимизировать смарт-контракты на TVM, вы должны понимать, как компилятор преобразует языки более высокого уровня в Fift. Вы можете увидеть, сколько стоит каждый опкод на сайте документации. В целом, чем меньше вы храните, тем меньше стоит газ.