successor/qrl-docs huggingface dataset:
Mining QRL Quick Start — Basic Principles
ASIC (Application Specific Integrated Circuit) An integrated circuit customized for a specific task, in our case hashing cryptographic signatures. Blockchain The public ledger of all transactions stored in a cryptographic way CPU Mining Using the CPU of a computer to mine with. Fork A piece of code that, at some point in the code history, made significant changes or changed direction and a new project is born from the first. Full Node The main project software running on a PC fully synced with a local copy of the blockchain. This helps to support the network. GPU Mining Using a Graphic Processing Unit(s) to mine with Hash Rate (HR/s) The amount of computational hashes a processor can process in a second. Mining The process that verifies transactions on the ledger or Blockchain, also the process in which new QRL are made and distributed into the world. Mining Software Software that is run on a local computer. Used to process hashes on the blockchain and stay in sync with current work. Pool Software Software that shares the work, and rewards from mining between all workers in the pool. Pool Worker The address or user name associated with the computer running the mining software. PoS (Proof of Stake) Proof Of Stake. A method of validating transactions on the network. PoW (Proof of Work) Proof Of Work. A Method of validating transactions on the network. Stratum Server Server using the stratum mining protocol to allow multiple miners to join together and increase hashrate.
QRL Mining Pools — Random Pool Selection
minergalaxy leafpool NewPool Cool GNTL Mining my2coins miningpool fun dxpool herominers Volt-Mine miningocean Pacificpool Project Quorletha fastpool
Mining With a QRL Node — Mining With a QRL Node
You can setup a QRL mining node on a PC or server. This will allow you to mine QRL while also running a node on the QRL network. You simply need to enable mining on the QRL node in a config file to begin mining QRL. Requirements QRL installed and fully synced QRL Wallet to send rewards to A little time to set it up Local or remote shell connection (ssh) This write-up assumes that you have a fully functioning QRL node running and fully synced with the blockchain. If you need to, see the guide at docs.theqrl.org/node/QRLnode While connected to the computer running qrl you can see the state of the node by entering qrl state into the command line. This will print out the blockheight of the local node as well as some other information. Check that this is the same height as the QRL explorer shows. Once fully synced you can start mining by editing the config file found in ~/.qrl/config.yml enabling mining.
Mining With a QRL Node — Configuration
To begin mining you will need to create and edit a file located in the default QRL directory ~/.qrl/config.yml. There are a ton of configurations and settings you can tweak, however for this guide we are only concerned with the mining settings. For a complete guide of the configuration settings, please see the QRL Node Configurations guide. Create the config file and add these settings to the file if not already created. nano ~/.qrl/config.yml # ====================================== # Mining Configuration # ====================================== # mining_enabled: False # mining_address: '' # mining_thread_count: 0 # 0 auto detect thread count based on number of processors # These are the default settings the node is currently using. Change the values and remove the # to begin mining. You need to enter a valid QRL address, change the False value to a True value, and set the thread count if you want to adjust. Once you have made your changes the file will look something like this. Note the QRL address shown needs to be replaced, unless you want to donate some quanta! # ====================================== # Mining Configuration # ====================================== mining_enabled: True mining_address: 'Q02090081f7e33cc535ca6ca54305f7d34cf2cd9620b1efcae657a76ca4c072902dfc4ed0f23a4a' mining_thread_count: 0 # 0 to auto detect thread count based on CPU/GPU number of processors # Restart QRL Restart the qrl node to begin mining with the new changes. start_qrl Once the node re-syncs with the network and catches up it will begin mining the current blocks on the chain You will see the rewards in the wallet you have specified in the configuration file. You can also enter the following to print the state of the node qrl state
Slaves.json — Slaves.json
The QRL wallet is an XMSS Merkle tree constructed using the private key to generate leaves of this tree. Each “leaf” can also generate a tree of OTS Slave keys that can be used to sign transactions. This allows further expansion of a QRL wallet extending the number of transactions you can process before needing to regenerate a new wallet. To create a slaves.json file you will need a QRL wallet.json file and a working installation of QRL. See the guide for creating a QRL Wallet CLI Currently the only way to generate a slaves.json file is by using the command line utility qrl. This can be installed by following the QRL Node Guide. You will need to have shell access and be logged into the computer running qrl.
Slaves.json — Create a Slaves.json
To generate a slaves.json file you will need to be connected to an active and synced node. This can be a local node, as well any of the peers shown in your nodes peer list. You also need a wallet to use for the slaves file. Assuming you have a synced node running on the local computer and a wallet.json file in the local directory you can simply enter: qrl slave_tx_generate You will be asked a few questions. You can generate a maximum 100 slaves with a single master OTS key, which is used to sign the slaves.json file onto the network validating the keys.
QRL Wallet App — QRL Wallet App
This is the QRL wallet application developed by The QRL team, and hosted on wallet.theqrl.org It provides both web and desktop interfaces using Meteor, Semantic UI, NodeJS and Electron. All secure XMSS operations are run in a web assembly compiled version of qrllib locally in your browser or desktop application. Keys stay in the memory space of the XMSS object, which is destroyed the moment you close the wallet, browser window or desktop application. Development Dependencies The following dependencies are required for a functional local development environment. NodeJS v8.9.3 Meteor qrl-electrify chimp If you are using windows you will need to install a few extra packages. Windows Only Build Tools for Visual Studio 2017 node-gyp Install Required # Install qrl-electrify npm install -g qrl-electrify Chimp.js Instructions and information for chimp can be found over at the chimp github # Install chimp npm install -g chimp Install Windows Only Required Build Tools for Visual Studio 2017 Windows Only - node-gyp npm install -g node-gyp Install qrl-wallet git clone https://github.com/theQRL/qrl-wallet.git cd qrl-wallet meteor npm install --unsafe-perm cd .electify npm install cd .. Run Meteor meteor Run Tests Note: meteor must already be running for this to work! chimp --ddp=http://localhost:3000 --watch --path=tests Run Electron Client electrify Package Electron Client mkdir .electrify/.dist electrify package -o .electrify/.dist/
QRL Token Migration Guide — QRL Token Migration Guide
Preamble From June 26th, 2018 to June 15th, 2019 there was an automatic token migration guide where people were able to generate their own ERC20 burn address and send QRL (ERC20) to and have QRL (mainnet) arrive in their mainnet address in 24 to 72 hours. After June 15th, 2019, this automatic token migration is no longer possible. New token migration instructions Step 1: Email support@theqrl.org with a QRL mainnet address (QRL addresses that start with a Q). Step 2: Support (via support@theqrl.org) will evaluate whether to migrate and respond to the user with an ETH ERC20 burn address. Step 3: If applicable, send QRL ERC20s to the ETH burn address sent via email. Step 4: QRL mainnet address provided in the first email will be sent Quanta at a 1:1 ratio to ERC20s burnt. Step 5: User will now have 1 Quanta in their QRL address for every 1 ERC20 they sent to their burn address
QRL Command Line — QRL Command Line Commands
qrl-cli balance ADDRESS qrl-cli create-wallet qrl-cli generate-lattice-keys qrl-cli generate-shared-keys LATTICEPK LATTICESK [CYPHERTEXT] [SIGNEDMESSAGE] qrl-cli get-keys qrl-cli help [COMMAND] qrl-cli notarize DATAHASH qrl-cli ots ADDRESS qrl-cli receive ADDRESS qrl-cli search SEARCH qrl-cli send [QUANTITY] qrl-cli send-message qrl-cli sign-tx-offline QUANTITY OUTPUT qrl-cli status qrl-cli validate ADDRESS
QRL Private Network — QRL Private Network
Setting up a private QRL network allows a developer to test making QRL transactions without placing funds at risk or relying on external infrastructure. This is intended to help the development and advancement of external systems. This documentation assumes that you have already followed the QRL node installation instructions Configuring config.yml In order to run a private chain, you need to create ~/.qrl/config.yml with following content at minimum. See genesis_difficulty: 500 mining_enabled: True peer_list: [] Description: Parameter Type Description genesis_difficulty UInt64 Initial difficulty to mine the block. The lower the value the easier it will be to mine the first block. mining_enabled Boolean Enable or disables mining peer_list String[] List of strings containing “ip:port”. It overrides the default peer list. Note: If you previously ran QRL mainnet on the same node then you need to delete ~/.qrl/data/ Running QRL Node start_qrl --miningAddress Q010800dd14a340e6daf28d4dab9e42a534177db5bf06ef1bb300452f606a17331bacca9453aac1 --mockGetMeasurement 1000000000 Description: Parameter Type Description miningAddress String Any valid QRL address on which mining rewards will be credited. mockGetMeasurement Uint64 A higher mockGetMeasurement eases it for the hardware to mine the blocks. It simply makes the difficulty constant. The value 1000000000 is enough to mine using very low end hardware.
Explorer API — Explorer API and Methods
The QRL block explorer has been built with an API endpoint to enable an easy way for developers to grab data from the QRL blockchain. This endpoint is limited in scope and may change in future iterations of the explorer. The Explorer API queries the explorer node infrastructure and returns a response in either JSON or text. This is intended to simplify the process of developing tools for the QRL. The Explore endpoint is reached at explorer.theQRL.org. The API response can be either text or json depending on the developers needs. By default JSON is returned, simply append /text to the API query. Far an easy to read output use a browser add-on like Chrome’s jsonview and browse to the endpoint. Explorer API Methods Default response is in JSON format Append /text to the end of most requests to get a simple text response https://explorer.theqrl.org/api/{REQUEST}/text Method Name Endpoint Description Block /api/block/# Get data from a specific block number Transaction /api/tx/ Get data from a transaction by number Address /api/a/ Get data from an address Emission /api/emission Get the total emission of coins to date reward /api/reward Get the current payout reward value rewardshor /api/rewardshor Get the current reward in shor blockheight /api/blockheight Get the current blockheight status /api/status Get the status of the network
Keybase — KeyBase Address Verification
Keybase Address Verification We’re big fans of what Keybase are doing here at the Quantum Resistant Ledger. Innovation and security are a big part of what we do and we are delighted to announce that you can add your QRL address to your Keybase identity. keybase.io logo Keybase Keybase is a catalog of connected identities that utilizes cryptographic Proofs to link profiles. Adding QRL address to Keybase To add your QRL address to your Keybase profile, in the Keybase app click on the Add more identities button, and enter your QRL address. When you click the Authorize button you’ll be presented with a page like this: keybase qrl authorize This contains your Signature Hash, a cryptographic Proof, that needs recording in the QRL blockchain using our message transaction type. The easiest way to achieve this is using the new Keybase tools section of the QRL web wallet at wallet.theqrl.org or the desktop version downloaded from https://theqrl.org or Github Tools Icon in the wallet Tools icon in the wallet sidebar Tools bar Add Keybase TX Enter your keybase username, paste the Keybase signature hash into the box, and click Create Keybase Transaction. When the transaction is complete, you’ll see confirmation: tools bar Looking on the Explorer you’ll see a record of your Keybase message transaction: tools bar Once this is visible in the Explorer, you’re good to go back to the QRL/Keybase link page and click Submit: tools bar Congrats, you have now linked your QRL address to your keybase.io profile cryptographically
Create Tokens — Create Tokens
The QRL supports QRT or Quantum Resistant Ledger Tokens. These tokens share the same encryption and QC resistance as the main QRL blockchain. You can create tokens either by using the qrl command line, or by browsing to the qrl web wallet application hosted at wallet.theqrl.org. Open your wallet, or create a new one to begin with this guide. QRL New Token Creating a new token is easy. Once you have all of the pertinent details entered and the fee paid, the network takes care of the rest. Token Creation To create a token you will need to provide the following information: The token creation owners QRL address The token symbol the token name The amount of decimals for your token Initial Token Holder Address Enter at least one QRL address and the amount of tokens to create and send to this address The “Initial Token Holders” field allows you to select the addresses that will receive the initial tokens. You can add as many addresses as you see fit. Below is an example showing the QRL fee for processing the transaction and the OTS key index we intend to use. Ensure this is an unused OTS Key. QRL token Create Once you have filled in all of the necessary details, click the create token button at the bottom of the form. This will broadcast the creation of your token across the QRL network and send the newly minted tokens to the addresses specified. You will get a confirmation page that shows the details of the transaction. Verify the information is correct and press “Confirm Token Creation” QRL Token Success The confirmation screen will print the details of the transaction. QRL Token Success Checking Token Balance You can check the balance of any tokens you have in your wallet by selecting the tokens tab in the top bar of the “Send and Receive” tab in the web wallet. QRL Token Success You can also see the recent transactions on the right of the balance screen. You can receive tokens at your main QRL address, no need for anything special to receive. Sending Tokens Using the web wallet we can send tokens to another QRL address. From the “Send and Receive” screen, select the drop down to the right of the “Amount” field. QRL Token Success Enter the details to send the tokens, and select “Confirm”. Progress through the following screens and wait for the confirmation.