How to create and restore XRK Wallet?

RecordsKeeper provides different utilities to manage your XRK tokens and publish data. One of the major tools is the XRK wallet (https://wallet.recordskeeper.co/)

XRK wallet comes with the functionality of mnemonic seeds, which provides you with 24 random words which you can use to restore wallet. This makes it a much better process of saving wallets as you don’t need to remember or store your private key. Below we are going to discuss How to create and restore your XRK Wallet.

Create XRK Wallet

Step1: Open up the link for the XRK wallet (https://wallet.recordskeeper.co/)

Step2: Click on the button “Create XRK Wallet”. This will open a popup window shown below

Step3: Now click on the “Create XRK Wallet”. You can also provide an optional password for your wallet. This password is used to secure your wallet and you have to provide this password to recover your wallet. After clicking on the button, your wallet will be created with the Private Key and the Public Address. It will also give you the option to download and print your wallet. You can also see the mnemonic seed generated which you can use to recover your wallet. XRK wallet also provides you with the QR code where you can scan the QR code to get your Private Key and Public Address.

Make sure to save your private key securely as if you lose your private key, you could also lose your XRK tokens.

Step4: You can click the Print button below to print your paper wallet. The example of print preview is shown below (You can also take the print of your seed phrase separately)

Step5: Click on the close button and this will take your generated public address to the address field on the start screen. Then you can click on the “Submit” button to start your wallet.

Restore XRK Wallet

Step1: To restore XRK wallet, Click on the “Restore XRK Wallet” button on the home screen at https://wallet.recordskeeper.co/index.php

Step2: Enter your 24 Seed phrase and password for the wallet and click on “Restore Wallet”.

Step3: After Clicking on the button, your wallet will be restored and you will see your private key and Public Address on a screen similar shown below. You will also get the QR code for both Private Key and Public Address. You can also print your wallet by clicking on the “Print wallet” button. Click on the “Close” button and this will get your address to the home screen of the wallet.

Step4: Now you can start your wallet by clicking on the “Submit” button.

RecordsKeeper do not store or pass your Private Key at all. You can be sure that RecordsKeeper will never store your Private Key. You can follow the How to use XRK wallet? (link to the blog) to get familiar with the XRK wallet.

How to make Records private in RecordsKeeper Blockchain?

RecordsKeeper Blockchain is built as Public Open Source Platform to share data globally but it still supports multiple features you can use to make the data private over the RecordsKeeper Blockchain.

  1. RecordsKeeper Private Chain: RecordsKeeper is provided as an open source platform, so you can use the RecordsKeeper codebase to create your own private chains. This provides the functionality for access rights to you and you can grant permissions accordingly so that the data is shared only between the authorized users.
  2. Encrypting Records before Publishing on the RecordsKeeper Blockchain: This method utilizes the RecordsKeeper public Blockchain but gives you a process so that only the authorized users have the access to the data shared over the Blockchain. Over the RecordsKeeper Blockchain, all the users have their own private and public keys. This step can be divided into the number of sub-steps:
  • The user who wants to share data privately with the other users receives the public addresses of the other users through a secure channel.
  • User encrypts the data using his/her private key.
  • The user again encrypts the data using the other authorized users public key thus creating a separate entity for each user who wants to access the data. This encryption makes sure that only the authorized users have the access to the data and no other user even if they have the publishers public key can access data.
  • The user publishes the data over the RecordsKeeper Blockchain, creating a separate transaction for each authorized user.
  • User shares the transaction id with the authorized users.
  • Now authorized users can read the data from the transaction but it is still encrypted.
  • Authorised users use their private keys to decrypt the data, which still has one more level of encryption.
  • Publisher shares his/her public key with authorized users through a secure channel.
  • Authorised users now can decrypt the data to get the original record using the publishers public key.

This makes sure that your data is secure and safely distributed among the interested parties. You can then use the key pairs from the RecordsKeeper for the whole process, or you can generate your own key pairs using any other 3rd party Cryptography libraries.

Please make sure that you do not share your private key in the complete process.

How to use Proof-of-Existence built on RecordsKeeper Blockchain?

Proof-of-existence is a demonstration of a working application based on RecordsKeeper Blockchain. This utility is used to publish and verify data on the RecordsKeeper Blockchain.

You can publish any data file and this application will convert that file into a hash value and then stores that hash on the RecordsKeeper Blockchain. You can also verify that file by uploading it on the verify page of the application, and if it exists on the RecordsKeeper Blockchain, then the application will check against the hash value of the file and return all the transactions related to that file. A toggle is given on the top right corner of the application through which you can switch to Testnet and Mainnet of RecordsKeeper Blockchain. This application supports both networks so you can publish and verify on any of these networks.

So, let’s see the complete working of Proof-of-existence application:

Step 1:  Click on this link to access the Proof-of-existence application. You will see a page like this:

Step 2: Now, if you have to publish a file over RecordsKeeper Blockchain then enter the Name, Email, and Message(optional) fields. Then select the file that you want to publish by using Choose file button or by dropping the file on the panel.

Step 3: As soon as the file is uploaded, document hash gets generated and you will see a page similar to this picture:

Step 4: Now after clicking on the “Generate Poe Now” button a success table gets generated with details like transaction id, signature, confirmations, blocktime and blockhash etc.

Step 5: This table also has an URL which contains the link to the page that will return the result of all the records of the RecordsKeeper Blockchain against its signature value.

Step 6: Next step is to verify the document that is uploaded on the RecordsKeeper Blockchain and for that you have to upload the document on the “Verify Poe” tab and then click on the “Verify Poe Now” button. It will show a page which have all the transactions arranged in a chronological order that are recorded against uploaded document signature.

Step 7: This application also shows the five recently generated poe in a table with Document digest and the recorded timestamp as the general information.

Anyone with the URL of the file can verify the existence of the file recorded on the RecordsKeeper Blockchain. The link embedded in the “Transaction Id” redirects to the Blockchain explorer which shows the information related to that transaction.

You can also check out other tools related to RecordsKeeper Blockchain from “Other Tools” tab.

How to Publish/Retrieve data records in RecordsKeeper Blockchain?

RecordsKeeper offers a solution where you can publish your data in key-value based pairs over the RecordsKeeper Blockchain and then retrieve it using the key. In this post, we will show you how to use curl commands in the shell to publish and retrieve data records from the streams in RecordsKeeper Blockchain.

Before we start you need to set up your own node by following this documentation: https://docs.recordskeeper.co/en/latest/gettingstarted.html

You also need the proper authorization for your node. You have to provide Base64 conversion of node’s Username and Password, which you can access through RK.conf built in your RecordsKeeper directory. Check below to get the Username and Password for your node and then convert them into Basic Authorization in Base64 using any tool.

Linux (Ubuntu):
From your terminal run following commands:

cd ~/.rk/recordskeeper/
cat rk.conf

It will open the configuration file from where you can copy rpcuser and rpcpassword of your node. Convert this username and password to Base64.

Windows:
Go to the directory:
AppData > Roaming > Rk > RecordsKeeper

Then look for the rk.conf file and open it in any text editor. It will display rpcuser and rpcpassword of your node. Convert this username and password to Base64.

Let’s start with How to publish your data in a stream:
RecordsKeeper offers a solution where you can publish your data in key-value based pairs over the RecordsKeeper Blockchain and then retrieve it using the key. In this post, we will show you how to use curl commands in the shell to publish and retrieve data records from the streams in RecordsKeeper Blockchain.

Before we start you need to set up your own node by following this documentation: https://docs.recordskeeper.co/en/latest/gettingstarted.html

You also need the proper authorization for your node. You have to provide Base64 conversion of node’s Username and Password, which you can access through rk.conf built in your RecordsKeeper directory. Check below to get the Username and Password for your node and then convert them into Basic Authorization in Base64 using any tool.

Linux (Ubuntu):
From your terminal run following commands:

cd ~/.rk/recordskeeper/
cat rk.conf

It will open the configuration file from where you can copy rpcuser and rpcpassword of your node. Convert this username and password to Base64.

Windows:
Go to the directory:
AppData > Roaming > Rk > RecordsKeeper

Then look for the rk.conf file and open it in any text text editor. It will display rpcuser and rpcpassword of your node. Convert this username and password to Base64.

Let’s start with How to publish your data in a stream:

Publish

You can use the publish command which is provided as JSON RPC API to publish the data over the RecordsKeeper Blockchain

Example:

curl -X POST \  http://35.170.xxx.xx:83XX/ \

 -H ‘authorization: Basic cmtycGM6M1c0aHByUUx3c2h4Nxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx’ \

 -H ‘cache-control: no-cache’ \

 -H ‘content-type: text/plain’ \

 -d ‘{“method”:”publish”,”params”:[“root”, “testkey1”, “787676”],”id”:”curltext”,”chain_name”:”recordskeeper-test”}’

 

You have to provide your node’s ip address with port and your node’s basic authorization in the curl command. This command will return you the transaction id which can be see through RecordsKeeper Blockchain explorer. Here we are showing you the example to publish to the RecordsKeeper Testnet, you can also use the same steps to publish over the RecordsKeeper Mainnet.

Retrieve

Get Stream Item

You can use this command to get the exact stream item from the RecordsKeeper Blockchain. You need to pass the stream name and transaction id as the parameters.

Example:

curl -X POST \  http://35.170.xxx.xx:83XX/ \

 -H ‘authorization: Basic cmtycGM6M1c0aHByUUx3c2h4Nxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx’ \

 -H ‘cache-control: no-cache’ \

 -H ‘content-type: text/plain’ \

 -d ‘{“method”:”getstreamitem”,”params”:[“root”, “43878d92e64077d300e70d6e7e99914a8b4732b513ce0f35fbb26fe4a7a5b37e”],”id”:”curltext”,”chain_name”:”recordskeeper-test”}’

You have to provide your node’s ip address with port and your node’s basic authorization in the curl command. This command will return you the exact details about the stream item published over the RecordsKeeper Blockchain

List Stream Key Items

You can use this command to list the value against the key stored in the stream over the RecordsKepper Blockchain. You need to pass the stream name and the key for the data as the parameters.

Example:

curl -X POST \  http://35.170.xxx.xx:83XX/ \

 -H ‘authorization: Basic cmtycGM6M1c0aHByUUx3c2h4Nxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx’ \

 -H ‘cache-control: no-cache’ \

 -H ‘content-type: text/plain’ \

 -d ‘{“method”:”liststreamkeyitems”,”params”:[“root”, “testkey1″],”id”:”curltext”,”chain_name”:”recordskeeper-test”}’

You have to provide your node’s ip address with port and your node’s basic authorization in the curl command. This command will return you the data corresponding to the key stored in the stream item published over the RecordsKeeper Blockchain.

List Stream Items

This command is used to list all the stream items inside a single stream. By passing the stream name you can get all the records stored inside the specific stream.

Example:

curl -X POST \  http://35.170.xxx.xx:83XX/ \

 -H ‘authorization: Basic cmtycGM6M1c0aHByUUx3c2h4Nxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx’ \

 -H ‘cache-control: no-cache’ \

 -H ‘content-type: text/plain’ \

  -d ‘{“method”:”liststreamitems”,”params”:[“root”],”id”:”curltext”,”chain_name”:”recordskeeper-test”}’

You have to provide your node’s ip address with port and your node’s basic authorization in the curl command. This command will return you the JSON object with all the records inside a single stream.

Curl commands are very effective to make JSON RPC calls, you can also use any programming language to create a request for the RecordsKeeper Blockchain. If you are not familiar with Curl then you can directly see the stream details and stream items through the RecordsKeeper Blockchain Explorer (https://www.recordskeeper.co/blog/use-recordskeeper-blockchain-explorer/)

How to get XRK tokens?

XRKs are the peer-2-peer-based tokens used in RecordsKeeper Blockchain as an incentive & payment model for uploading records and data over the RecordsKeeper Blockchain. XRK are provided to the miners as fees computed for uploading records over RecordsKeeper Blockchain. XRKs are based upon Bitcoin’s original protocol with changes to its underlying codes, therefore conceiving an entirely effective token with a different set of ‘out of the box’ features which makes it a perfect fit for data upload.The user uploading the data over the RecordsKeeper Blockchain has to make sure to provide the XRK fees required to upload the data with the transaction. The fees are based on the size of data and are currently running at 0.1 XRK/Kbyte.

Currently, you can receive XRK tokens in two ways:

  1. RecordsKeeper Airdrop: The team at RecordsKeeper is providing 5 free XRK tokens for you to use to publish data over the RecordsKeeper Blockchain. You can visit the link: https://airdrop.recordskeeper.co/ to register and receive your free XRK tokens. You can also refer others and receive few extra tokens.

You can follow the steps mentioned in the corresponding links to successfully register and receive free XRK tokens  (https://www.recordskeeper.co/blog/how-to-participate-in-xrk-airdrop/).

  1. RecordsKeeper Mining: RecordsKeeper is an open public Blockchain available for everyone. We have a strong mining community and always look to increase and engage the mining community. As a miner, you will receive a reward of 10 XRK coins per block in addition to the transaction fees which your computer confirms on the RecordsKeeper Blockchain. You can also participate in RecordsKeeper mining.

Follow the mining documentation to get started with RecordsKeeper mining:

    https://docs.recordskeeper.co/en/latest/minningguide.html

How to mine XRK in RecordsKeeper Blockchain?

The following blog provides you with the complete details about how to start mining XRK tokens for RecordsKeeper Blockchain.

System requirements

  • Linux: 64-bit, supports Ubuntu 12.04+, CentOS 6.2+, Debian 7+, Fedora 15+, RHEL 6.2+.
  • Windows: 64-bit, supports Windows 7, 8, 10, Server 2008 or later.
  • Mac: 64-bit, supports OS X 10.12 (we hope to support earlier versions soon).
  • 512 MB of RAM
  • 1 GB of disk space

Installing Recordskeeper:

Linux (Ubuntu):

First Install these dependencies by executing below commands in a shell:

sudo apt-get update
sudo apt-get install build-essential libtool autotools-dev automake pkg-config libssl-dev libevent-dev bsdmainutils
sudo apt-get install libboost-all-dev
sudo add-apt-repository ppa:bitcoin/bitcoin
sudo apt-get update
sudo apt-get install libdb4.8-dev libdb4.8++-dev

To download the executable directly from the browser click here .

And, if you want to download it from the command line terminal then use this command:

wget https://github.com/RecordsKeeper/recordskeeper-core/releases/download/v1.0.0/recordskeeper-1.0.0.tar.gz

Then, move to the location of the downloaded files and run following commands from your terminal:

tar -xvzf recordskeeper-1.0.0.tar.gz
cd recordskeeper-1.0.0
mv rkd rk-cli rk-util /usr/local/bin

Moving the RecordsKeeper files to bin directory make them easily accessible from the command line anywhere.

Note

  • if you get error then run the above commands using “sudo” for root privileges
  • Use exit command (to return to your regular user)
  • Linux users move directly to the Connecting to RecordsKeeper Blockchain section

Windows :

Download the executables from here and then unzip it and you will have the binary files: rkd.exe, rkd-cold.exe, rk-cli.exe and rk-util.exe.

Copy the folder to your desired location.

Then open your command line terminal and go to that location, after that run the following command:

cd recordskeeper-windows-1.0.0

Note

Windows users move directly to the Connecting to RecordsKeeper Blockchain section.

Mac OS:

First Install these dependencies by executing below commands:

Install XCode and XCode command line tools
Install git from git-scm
Install brew (follow instructions on brew.sh)
brew install autoconf automake berkeley-db4 libtool [email protected] openssl pkg-config rename
brew link [email protected] –force

To download the executable directly from the browser click here .

Unzip the zip file and then move to the location of the downloaded files and run following commands from your terminal:

cd recordskeeper-mac-osx-1.0.0
mv rkd rk-cli rk-util /usr/local/bin

Moving the RecordsKeeper files to bin directory make them easily accessible from the command line anywhere.

Note

  • if you get error then run the above commands using “sudo” for root privileges
  • Use exit command (to return to your regular user)

Mac users move directly to the Connecting to RecordsKeeper Blockchain section

Connecting to RecordsKeeper Blockchain

The RecordsKeeper Testnet Blockchain is available for the users to Develop and Deploy applications over RecordsKeeper Blockchain, XRK Testnet tokens do not hold any value and are only available for testing. You can earn XRK tokens from RecordsKeeper Mainnet mining.

Linux:

Now to connect to the RecordsKeeper Blockchain, run following command from the terminal:

RecordsKeeper Testnet

RecordsKeeper Mainnet

This command will initialize your node.

And, if you want your connection to remain active as a background process then run this command:

RecordsKeeper Testnet

rkd [email protected]:8379 -daemon

RecordsKeeper Mainnet

rkd [email protected]:7895 -daemon


You will see the following message on your Linux command line terminal after you execute the command to connect to the Recordskeeper blockchain.

Windows

Now to connect to the RecordsKeeper Blockchain, first go into the directory where you have downloaded “recordskeeper-windows-1.0.0.zip” and then open command-line terminal from that location:

RecordsKeeper Testnet

RecordsKeeper Mainnet

This command will initialize your node.

And, if you want your connection to remain active as a background process then run this command:

RecordsKeeper Testnet

rkd [email protected]:8379 -daemon

RecordsKeeper Mainnet

rkd [email protected]:7895 -daemon

You will see the following message on your Windows command line terminal after you execute the command to connect to the Recordskeeper blockchain.

Note Windows users have to open a new command line terminal window for running the remaining commands

If the Operating system does not pop up the allow firewall connections for rkd like shown below:

Then you have to manually allow connections through the firewall by following the steps below:

Go to:

Control Panel > System and Security > Windows Defender Firewall > Advanced Settings

And add Outbound rules by following these steps:

  • Step 1: First select the Rule type, as you have to create a rule for allowing the network port so select Port here and then press Next:
  • Step 2: Specify the port address of the RecordsKeeper Blockchain to which you are allowing access, for Testnet type 8379 and to open ports for Mainnet type 7895 in the textbox and then click on Next:

  • Step 3: Now click on Allow the connection and then press Next:

  • Step 4: Select all three profiles here for the rule to apply, and then click on Next:

  • Step 5: Now choose a name for the created Outbound rule and then press Finish to complete the process of opening up the ports.

Note

If you want some other RecordsKeeper node to connect to your node then you have to allow connections by making Inbound rules for the same. Follow the same procedure after selecting a new Inbound rule.

Mac:

Now to connect to the RecordsKeeper Blockchain, run following command from the terminal:

RecordsKeeper Testnet

RecordsKeeper Mainnet

This command will initialize your node.

And, if you want your connection to remain active as a background process then run this command:

RecordsKeeper Testnet

./rkd [email protected]:8379 -daemon

RecordsKeeper Mainnet

./rkd [email protected]:7895 -daemon

You will see the following message on your Mac command line terminal after you execute the command to connect to the Recordskeeper blockchain.

In case of an error message like this:

Warning

Error: Couldn’t initialize permission database for blockchain recordskeeper. Probably rkd for this blockchain is already running. Exiting…

First kill the daemon process and then try connecting to the RecordsKeeper Blockchain again. If the problem persists then restart your computer and then repeat the whole process of connecting to RecordsKeeper Blockchain again.

 

How to participate in XRK Airdrop?

RecordsKeeper is providing a free distribution of XRK tokens to anyone making the request for the same. You can receive the XRK tokens by following simple steps, but before we get started, please make sure to:

  1. Never disclose your private key, if it is necessary to empty your wallet and or create a new one.
  2. RecordsKeeper does not store your private key and any parties asking for your private key for XRK, are not part of the RecordsKeeper.

Let’s get started: 

  • Step 2: Fill in the details with your name, email referral code (if any) and your RecordsKeeper public address.
  • Step 3: If you don’t have a valid RecordsKeeper wallet or RecordsKeeper address with you then you can click on the “Create a new XRK Wallet here” link to generate a new RecordsKeeper wallet. You can follow How to create & restore XRK wallet : https://www.recordskeeper.co/blog/create-restore-xrk-wallet/ How to Blog Posts

 

  • Step 4: Once you have filled in all the details you can click on “Get XRK Tokens”. This will send you a confirmation email to the email address provided by you.

  • Step 5: Click on “Claim 5 XRK Tokens” to get your free XRK coins.

  • Step 6: You can see your transaction by clicking on the link provided in the confirmation message, you can also check your balance by providing the address in the RecordsKeeper wallet available at https://wallet.recordskeeper.co/

You can utilize the free XRK tokens to publish data and make transactions over the RecordsKeeper Blockchain.

In case of any query, please reach out to us at [email protected].

Data security on Recordskeeper

Documents or records stored on RecordKeeper are very safe due to Blockchain & Asymmetric Key Cryptography (aka Public-Key Cryptography). This pair (Blockchain & Asymmetric Key Cryptography) help us achieving the 4 major aspects of security with high confidence in lesser cost. While in traditional technology you have to invest a lot to achieve these below 4 aspects of security.:

Also, all 4 major aspects of security can be achieved in RecordsKeeper’s Blockchain

  • Confidentiality.
  • Integrity.
  • Availability.
  • Non-repudiation.

Blockchain: Since Blockchain is a decentralized ledger & store everything immutably, it is highly secured. In short, it means it is very very difficult as well as expensive to forge or modify a transaction and it is extremely easy to detect the inconsistency & forged data/transaction/stored information. So nobody can modify or forge the data stored in Blockchain. Hence Integrity, Availability & Non-repudiation can be achieved with Blockchain easily. But What if someone read my documents? The answer to this question is in Cryptography.

Asymmetric Key Cryptography: It is a method of locking digital documents using two different Keys. Everything you store in Blockchain is locked with your one key (Public-Key) hence It can only be unlocked using your another key which will be in your mind. Until unless you share your passphrase with the hacker, computationally it is impossible to hack/guess the keys & unlock your stored files.

This above set of technology makes your documents unchangeable, incorruptible, undeletable, and unreadable for anyone except you. Isn’t it cool?  🙂