دليل صناعه الأوردينال

Individual gros can be inscribed with arbitrary content, creating Groestlcoin-native digital artifacts that can be held in a Groestlcoin wallet and transferred using Groestlcoin transactions. Inscriptions are as durable, immutable, secure, and decentralized as Groestlcoin itself.

Working with inscriptions requires a Groestlcoin full node, to give you a view of the current state of the Groestlcoin blockchain, and a wallet that can create inscriptions and perform gro control when constructing transactions to send inscriptions to another wallet.

Groestlcoin Core provides both a Groestlcoin full node and wallet. However, the Groestlcoin Core wallet cannot create inscriptions and does not perform gro control.

This requires ord, the ordinal utility. ord doesn't implement its own wallet, so ord wallet subcommands interact with Groestlcoin Core wallets.

تشمل هذه الدليل الفقرات التالية:

  1. Installing Groestlcoin Core
  2. Syncing the Groestlcoin blockchain
  3. Creating a Groestlcoin Core wallet
  4. Using ord wallet receive to receive gros
  5. إنشاء الأنسكريبشين باستخدام ord wallet inscribe
  6. إرسال الأنسكريبشين باستخدام ord wallet send
  7. استقبال الأنسكريبشين باستخدام ord wallet receive

الحصول على المساعدة

If you get stuck, try asking for help on the Groestlcoin Discord Server, or checking GitHub for relevant issues.

Installing Groestlcoin Core

Groestlcoin Core is available from groestlcoin.org.

Making inscriptions requires Groestlcoin Core 24 or newer.

This guide does not cover installing Groestlcoin Core in detail. Once Groestlcoin Core is installed, you should be able to run groestlcoind -version successfully from the command line. Do NOT use groestlcoin-qt.

Configuring Groestlcoin Core

ord requires Groestlcoin Core's transaction index and rest interface.

To configure your Groestlcoin Core node to maintain a transaction index, add the following to your groestlcoin.conf:

txindex=1

Or, run groestlcoind with -txindex:

groestlcoind -txindex

Details on creating or modifying your groestlcoin.conf file can be found here.

Syncing the Groestlcoin Blockchain

لبدء مزامنه السلسلة:

groestlcoind -txindex

...واتركها تعمل حتى يتم استدعاء الأمر getblockcount:

groestlcoin-cli getblockcount

agrees with the block count on a block explorer like the mempool.space block explorer. ord interacts with groestlcoind, so you should leave groestlcoind running in the background when you're using ord.

The blockchain takes about 600GB of disk space. If you have an external drive you want to store blocks on, use the configuration option blocksdir=<external_drive_path>. This is much simpler than using the datadir option because the cookie file will still be in the default location for groestlcoin-cli and ord to find.

مشكلات وحلول

Make sure you can access groestlcoind with groestlcoin-cli -getinfo and that it is fully synced.

If groestlcoin-cli -getinfo returns Could not connect to the server, groestlcoind is not running.

Make sure rpcuser, rpcpassword, or rpcauth are NOT set in your groestlcoin.conf file. ord requires using cookie authentication. Make sure there is a file .cookie in your groestlcoin data directory.

If groestlcoin-cli -getinfo returns Could not locate RPC credentials, then you must specify the cookie file location. If you are using a custom data directory (specifying the datadir option), then you must specify the cookie location like groestlcoin-cli -rpccookiefile=<your_groestlcoin_datadir>/.cookie -getinfo. When running ord you must specify the cookie file location with --cookie-file=<your_groestlcoin_datadir>/.cookie.

Make sure you do NOT have disablewallet=1 in your groestlcoin.conf file. If groestlcoin-cli listwallets returns Method not found then the wallet is disabled and you won't be able to use ord.

Make sure txindex=1 is set. Run groestlcoin-cli getindexinfo and it should return something like

{
  "txindex": {
    "synced": true,
    "best_block_height": 776546
  }
}

If it only returns {}, txindex is not set. If it returns "synced": false, groestlcoind is still creating the txindex. Wait until "synced": true before using ord.

If you have maxuploadtarget set it can interfere with fetching blocks for ord index. Either remove it or set whitebind=127.0.0.1:1331.

تحميل برنامج أورد ord

The ord utility is written in Rust and can be built from source. Pre-built binaries are available on the releases page.

يمكنك تحميل الثنائيات المبنية مسبقًا بإعطاء الأمر التالي:

curl --proto '=https' --tlsv1.2 -fsLS https://raw.githubusercontent.com/Groestlcoin/ord-groestlcoin/master/install.sh | bash -s

بمجرد الانتهاء من تحميل ال ord، يجب أن تكون قادرًا على تشغيل:

ord --version

والذي يشير الى الإصدار ord الحالي.

Creating a Groestlcoin Core Wallet

ord uses Groestlcoin Core to manage private keys, sign transactions, and broadcast transactions to the Groestlcoin network.

To create a Groestlcoin Core wallet named ord for use with ord, run:

ord wallet create

Receiving Gros

Inscriptions are made on individual gros, using normal Groestlcoin transactions that pay fees in gros, so your wallet will need some gros.

إحصل على عنوان جديد من محفظة ال ord من خلال الأمر التالي:

ord wallet receive

وأرسل لها بعض التمويل.

يمكنك رؤية المعاملات المعلقة بالأمر التالي:

ord wallet transactions

بمجرد تأكيد الصفقة، يجب أن تكون قادرًا على رؤية المعاملات من خلال ord wallet outputs.

إنشاء محتوى إنسكريبشين

Gros can be inscribed with any kind of content, but the ord wallet only supports content types that can be displayed by the ord block explorer.

بالإضافة إلى ذلك، تُدرج الإنسكريبشين في المعاملات، لذلك كلما زاد حجم المحتوى، زادت الرسوم التي يجب دفعها لعملية الإنسكريبشين .

يتم تضمين محتوى الإنسكريبشين في شهادات المعاملات، والتي تحصل على الشاهد. لحساب الرسوم التقريبية التي ستدفعها معاملة الإنسكريبشين ، قسم حجم المحتوى على أربعة ثم اضرب الناتج بمعدل الرسوم.

Inscription transactions must be less than 400,000 weight units, or they will not be relayed by Groestlcoin Core. One byte of inscription content costs one weight unit. Since an inscription transaction includes not just the inscription content, limit inscription content to less than 400,000 weight units. 390,000 weight units should be safe.

إنشاء الإنسكريبشينس

لإنشاء الإنسكريبشين مع محتوى FILE , اعطي الأمر:

ord wallet inscribe --fee-rate FEE_RATE FILE

أورد سيقوم بإخراج رقمين معرّفين للمعاملات، واحد لمعاملة الالتزام، وآخر لمعاملة الكشف، وكذلك مُعرف إنسكريبشين . مُعرفات إنسكريبشين على الشكل TXIDiN، حيث TXID هو مُعرّف المعاملة لمعاملة الكشف، و N هو المؤشر الإنسكريبشين في معاملة الكشف.

The commit transaction commits to a tapscript containing the content of the inscription, and the reveal transaction spends from that tapscript, revealing the content on chain and inscribing it on the first gro of the input that contains the corresponding tapscript.

Wait for the reveal transaction to be mined. You can check the status of the commit and reveal transactions using the esplora block explorer.

بمجرد أن يتم تعدين الصفقة (reveal transaction)، يجب أن يتم طباعة معرّف الإنسكريبشين (inscription ID) عند تشغيل الأمر:

ord wallet inscriptions

Parent-Child Inscriptions

Parent-child inscriptions enable what is colloquially known as collections, see provenance for more information.

To make an inscription a child of another, the parent inscription has to be inscribed and present in the wallet. To choose a parent run ord wallet inscriptions and copy the inscription id (<PARENT_INSCRIPTION_ID>).

Now inscribe the child inscription and specify the parent like so:

ord wallet inscribe --fee-rate FEE_RATE --parent <PARENT_INSCRIPTION_ID> CHILD_FILE

This relationship cannot be added retroactively, the parent has to be present at inception of the child.

إرسال الإنسكريبشينس

أطلب من المستلم إنشاء عنوان جديد عن طريق تشغيل:

ord wallet receive

أرسل الإنسكريبشين من خلال:

ord wallet send --fee-rate <FEE_RATE> <ADDRESS> <INSCRIPTION_ID>

تفقد حاله المعاملة من خلال:

ord wallet transactions

بمجرد تأكيد المعاملة المرسلة، يمكن للمستلم تأكيد الاستلام عن طريق الأمر :

ord wallet inscriptions

استقبال الإنسكريبشينس

قم بإنشاء عنوان استقبال جديد باستخدام:

ord wallet receive

يمكن للمرسل نقل الإنسكريبشين إلى عنوانك باستخدام:

ord wallet send ADDRESS INSCRIPTION_ID

تفقد حاله المعاملة من خلال:

ord wallet transactions

بمجرد تأكيد المعاملة المرسلة، يمكن للمستلم تأكيد الاستلام عن طريق الأمر :

ord wallet inscriptions