RealT User’s Manual Crosdale,inc©
The Transparent Registration Process
The Bitbrowze.com user who wants to Log-on will have the option to use Metamask or Linkdrop
The Bitbrowze.com user who wants to use MetaMask will be directed to a MetaMask App. Sign-up. ( https://metamask.io/ )
The Bitbrowze.com user who wants to use MetaMask will be see a link to a YouTube How-To: (https://www.youtube.com/watch?v=aw7Sh4APyPQ&frags=wn&ab_channel=RexKneisley )
This actual registration is associated with 2 linked Smart-contracts i. A Proprietor/Renter Token ( e.g. Landlord-Tenant Token ) ii. A Pyramid MLM smart-contract ( For word of mouth promotion of the Smartcontract) The Buyer’s Story: 1. A User visits the Wordpress registration page and saves all their details in WP itself. 2. User is then able to buy RealT tokens from the WP site and initiate a transaction to pay for purchases. 3. User will receive the RealT token as soon as the transaction is complete. 4. Ideally token transfers to the user himself or herself, after s/he pays the token amount 5. Thus, the user submits the registration form and becomes the buyer as soon as s/he initiates a transaction 6. The token will be transferred to the user/buyer himself. 7. In a similar way, once s/he becomes a buyer, s/he can later become a Promoter and be issues a Pyramid Token (called a OurBlock). 8. And be registered to a specific database called The Xdale Database 9. The buyer is allocated a ‘Reward’ Lottery coupon
When someone decides to register this is what happens: Actions Action #1 Click button to Register Action #2 Click a desired role (a) Promoter (b) Landlord (c) Tenant (d) Arbitrator Action #3 Enter a Sponsor's Public Key (To get a registration fee discount) Action #4 Pay registration Amount SMART-CONTRACT RESPONSES TO ACTIONS Response #1 Applicant is assigned a Keypair. Response #2 Issued a Public Key that is associated with the Sponsor's Public Key. Response #3 A "Relationship Key" created. Response #4 supplied a Login Password + Abbreviated Login ID (same as "relationship key) Response #5 granted Access to an appropriate Role via back end Admin Panel Response #6 allocated a Wallet with key pair as in Response #1 Response #7 offered a pre-filled Threema Messenger app. Response #8 allocated a 'Reward' Lottery coupon
Back-end Updates
RealT User’s Manual Crosdale,inc©
The user model dB - associates a cart, as well as a purchase history, with every user account. - adds a new model in the database for the listing items. - adds the APIs for - enabling users to list, update, and delete items. - get listings for a specific user. - get all listings for all users. - add an item to user's cart/ update the cart. These updates are applied to both Real-T and Xeries.
To this end we have fixed some vulnerabilities by updating the npm package. Modified the user model in the database by adding (cart, listings, and purchased) properties. Added a new model in the database for listings to have (name, description, price, image, owner, and available) properties. Added a middleware to handle images and store them. Added the following 10 APIs and tested them using Postman: 1. POST /user/cart : to add an item for the current logged in user. 2. GET /user/cart : to get the cart items for the logged in user. 3. PATCH /user/cart : to update cart items for the current user. 4. GET /user/purchased : to get items the current user has purchased. 5. POST /listing : to add a new listing item. 6. GET /listing : to get all listing items posted by all users. 7. GET /listing/user/:id : to get all listing items posted by a specific user by his id. 8. GET /listing/:id : to get the details of a specific listing item by his id. 9. PATCH /listing/:id : to enable the owner to update a listing item. 10. DELETE /listing/:id : to enable the owner to delete a listing item.
An Alternative to MetaMask.
LinkDrop
Linkdrop is an airdrop, where instead of sending tokens directly to Ethereum addresses, the deployer generates a list of ‘claim links’. Learn more
High-level Process Overview
Let’s assume Alice wants to linkdrop some tokens to friends. In order to do it, she needs to: 1. Deploy a Linkdrop Contract;
RealT User’s Manual Crosdale,inc© 2. Generate claim links; 3. Send links to friends; 4. Then one of Alice’s friends (Bob) can follow the link and claim the tokens.
Process Details
Let’s dive in how it works under the hood: 1. Contract Deployment
Alice loads Volca’s web app. Then she chooses params of a token linkdrop and deploys a Linkdrop Smart Contract. (See How to
Deploy’s post.)
Volca’s web app generates a new key pair which is used for link generation. Let’s call this key pair as Linkdrop Verification Key
Pair. The public key is attached to the contract, while the private key is kept secret by Alice and used later to generate links. 2. Link generation
After the contract is deployed, Alice’s device generates a bunch of links. (Note: Volca’s server never sees the Linkdrop
Verification Key and the links.) 1. For each claim link Alice’s device generates a unique Link Key*. 2. Alice’s device signs the link private key with the Linkdrop Verification Key. This step is needed so that the Linkdrop Smart
Contract is able to verify that the link’s ephemeral private key was authorized by Alice. 3. Alice’s device constructs a link which includes Link Key* and the signature from Step 2. // link_key - unique link private key // sig - signature, which is generated by the Linkdrop Verification // private key signing link_keyconst link = `http://volca.app/receive?pk=${link_key}&sig=${sig}`
RealT User’s Manual Crosdale,inc©
RealT User’s Manual Crosdale,inc© 3. Link distribution
Link distribution is out of the scope of Volca’s Linkdrop solution. Alice can distribute links in any way she finds suitable: in- person, via email, chat messenger, phone number, etc.
For our case, let’s assume Alice sent a link to Bob using Telegram messenger.
RealT 4. Claiming link → Here is how Bob’s user flow looks like
In order to claim tokens, Bob follows the link on his mobile phone. As Bob doesn’t have a wallet, he is prompted to download and install Trust Wallet on his device. After the installation Bob generates a new account in the app. Then he is automatically redirected to the claiming page.
On the claiming page, Bob’s device parses the link to get the link’s
User’s Manual
Link Key* and uses this private key to sign Bob’s address.
Crosdale,inc©
RealT User’s Manual Crosdale,inc©
After that, Bob’s device sends his address and 2 signatures to Volca’s server: One signature to verify that the link’s Link Key* is authorized by Alice Another signature is to verify that Bob’s address is signed by the link’s Link Key*
RealT User’s Manual Crosdale,inc©
RealT User’s Manual Crosdale,inc©
The Server calls Smart Contract which verifies the signatures and that the link wasn’t claimed before. If everything is correct, the contract distributes the tokens from Alice’s account to Bob.
RealT User’s Manual Crosdale,inc© *Link Key — a unique Ephemeral Private Key generated per each Claim Link.
Architecture
Volcà Web App Deploys a Linkdrop Smart Contract for the linkdrop Generates claim links (as a CSV file) Allows receiver to claim tokens
The deployment and interaction with the Linkdrop Smart Contract and the Relaying Server are handled by the volca-airdrop- core library on GitHub.
A Linkdrop Contract Distributes tokens from Linkdropper’s Ethereum Account The receiver gets tokens and Ether after following a claim link Linkdrop Contract is deployed for each linkdrop
The smart -contract’s code can be found on GitHub.
Volcà Relaying Server
Volca’s server which calls Smart Contract on behalf of the receiver. Volca pays for gas instead of the receiver.
RealT User’s Manual Crosdale,inc©
Creating an Anonymous Identity 1 Visit the website “Guerrilla Mail.com ” 2 Create an email account 3 Use that ID to Register for Threema or Telegram, etc 4 Once registered, a verification code will be sent to that Anonymous email. Use that code 5 You now have an Anonymous Messenger that may be used in future to interact with the App
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitationullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure
dolor in reprehenderit involuptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat nonproident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Sed egestas, ante et vulputate volutpat,
eros pede semper est, vitae luctus metus libero eu augue. Morbi purus libero, faucibus adipiscing, commodo quis, gravida id, est. Sed lectus. Praesent elementum hendrerit tortor. Sed semper lorem at felis. Vestibulum volutpat, lacus a ultrices
sagittis, mi neque euismod dui, eu pulvinar nunc sapien ornare nisl. Phasellus pede arcu, dapibus eu, fermentum et, dapibus sed, urna.