Include Cloudcoin in an Exchange

From CloudCoin Wiki
Revision as of 05:10, 12 March 2021 by Seanw (talk | contribs) (Receiving CloudCoin in your Exchange Skywallet Account)
Jump to: navigation, search

Exchanges Will Need to Use the Skywallet API

The Skywallet APIs can be used by Exchanges to quickly implement CloudCoin on their platforms. Exchanges will need to perform two functions:

  1. Receive CloudCoins
  2. Send CloudCoins.


Using Skywallet APIs for Exchanges

  • Skywallet is a virtual bank that allows you to store, send, receive and transfer CloudCoins.
  • Each Skywallet account has an address and these addresses are stored in DNS servers. A sample address would be 'Sean.CloudCoin.global', 'Bill.Skywallet.cc' or 'Payments.BigExchange.com'.
  • Skywallet moves CloudCoins instantly and has no fees.
  • The Skywallet is built on the RAIDA and has "Data Supremacy." The Skywallet cannot be brought down by Hackers, AI, Governments, or Tech Giants.
  • Skywallet are accessed not by usernames and passwords but by CloudCoin files that contain one serial number and 25 Authenticity Numbers. Your servers must be able to access these files to send funds but not to receive them.

Prerequisites For Exchanges to Trade in CloudCoin

  1. Both the Exchange and the Customers must have Skywallet accounts. Skywallets can be created by going to: https://Skywallet.cc
  2. The Exchange should create an 'A' record in their DNS zone that points their Skywallet address. When Exchanges create a Skywallet account, they will receive a virtual debit card. On the back of this card is an IP address. Exchanges will create an 'A' record like 'Skywallet.YourDomain.com' 1.240.54.23 Where "YourDomain" is the domain that you own and the IP address is the on the back of your Skywallet Debit card.
  3. The Exchange must create a TXT record in their DNS for a "verify_skywallet_payment" name. Your TXT record will specify the url of the page that will accept notification of payment. Such as "cloudcoins_pay.php". The call to find your page looks like: https://doh.dns.sb/dns-query?name=verify_skywallet_payment.raidamail.com&type=TXT , The TXT record must be named "verify_skywallet_payment" for the ATM to find it.
  4. Configure your payment page so that it "Access-Control-Allow-Origin: *"


Instructions on Creating a DNS 'A' Record

Here are the steps to create DNS 'A" Records on your DNS server.

  1. Go the https://Skywallet.cc and click on "Create an account" on the Skywallet ATM screen.
  2. Enter a temporary name for your account. If your exchange is called Folgory, you would choose "Folgory.Skywallet.cc" as your desired Skywallet Address.
  3. Enter a recovery email address if asked.
  4. Enter a pin number (Write it down) if asked.
  5. Drop a CloudCoin onto the page. This CloudCoin will be used for authentication.
  6. You will then receive a Skywallet Debit card. Click on the download button to download it. Keep this PNG safe.
  7. Look at the IP address on the back of the Debit Card. This translates to the Serial Number of your CloudCoin.
  8. Create an 'A' record on your DNS server. We suggest you use the host name 'cc'. So if you are the Folgory exchange, your DNS address will be "cc.Folgory.com".
  9. Now create a TXT record called "verify_skywallet_payment". Put the the url of your webhook page. Every time someone makes a payment to an account on your domain, this webhook will be called. The TXT information should be something like "https://ex.com/"verify_skywallet_payment".php".
  10. Test it by creating a second Skywallet account.
  11. Go to your second Skywallet account and "Deposit" some CloudCoins. (You can get CloudCoins from our developers).
  12. Click on "Payment". Pay to "cc.YourDomain.com, Amount of coins that you have, memo something like "Test" and the confirm the payment.
  13. Check the balance of your main Skywallet to see if the payment has been received using the ATM>

Receiving CloudCoin in your Exchange Skywallet Account

Here is the process of users sending CloudCoins to you.

  • Your customer goes to the Skywallet ATM, logs in and clicks on Payments. They enter your Skywallet address and how much they want to send you.
  • After they click on "Send Payment" the ATM will go to your domain and lookup your TXT record. This TXT record must be called "verify_skywallet_payment". Then the ATM will call your page/webhook and tell the page about the payment. The ATM will call your page like this:
https://www.yourdomain.com/verify_skywallet_payment.php?merchant_skywallet=skywallet.YourDomain.com&sender_skywallet=billy.Skywallet.cc&guid=2cb825ee32a847d68650617cc6a3862a&merchantData=can_be_added_with_raidaJS.  


  • Your server uses the calls on the RaidaGo command line program to check your account to verify the payment was received.
  • You will need to have your Skywallet Debit Card on your Server so the RaidaGo program can read it to authenticate with the Skywallet.
  • The "RaidaGo" console line application runs on Linux or Windows operating systems and has a command called "verify". The RaidaGo program can be called by any other programming language such as PHP, Ruby and Java.
Sample Request to verify Payment:
./raida_go view_receipt 080A4CE89126F4F1B93E4745F89F6713 skywallet.yourdomain.com
Sample Response:
{"amount_verified":100,"status":"success","message":"CloudCoins verified"}

Note:

Sending CloudCoin from your Exchange Skywallet Account

You can "transfer" CloudCoins from your Skywallet to your customer's Skywallet by using the RaidaGo "transfer" command. You will specify how many CloudCoins are to be sent and to which Skywallet address.

Sample Request to send customer JohnDoe two hundred CloudCoins with a memo: 

$ ./raida_go transfer 200 JohnDoe.skywallet.cc "memo: From Your Exchange" /home/user/my.skywallet.cc.png
Good Response if 200 CloudCoins were sent: 

{"amount_sent":2,"Message":"CloudCoins sent","Status":"success"}
  • The args for the request are the command name "transfer", the amount to transfer, The user's Skywallet address, the memo that will be included in the transaction and, the location of the Skywallet virtual debit card png file.
  • You can see complete details of the transfer file here: https://github.com/CloudCoinConsortium/raidaGo#transfer

Overview of CloudCoin

To understand CloudCoins, the first thing you must do is forget all you know about Blockchain. You must think in terms of cash. CloudCoins are files like PNG files. Cash is written on paper, Cloudcoins are written on hard drives. You know you have your CloudCoins. No one else knows you have them. When you receive one, you must run it though a counterfeit detection system called RAIDA (Redundant Array of Independent Detection Agents). Once you know your CloudCoins are authentic, you can store them in a folder so you can keep track of them. We have software that allows you do do this process. And we also have a bank called Skywallet that allows you to have access to your CloudCoins anywhere and easily send and receive them from others. There is no public ledger. User accounts are not required.


CloudCoin a file-based digital currency that has no user accounts. CloudCoin does not have a Blockchain that records transactions. CloudCoin has no transactions but instead use a process of Counterfeit detection to change ownership of coins. The counterfeit detection is performed by an array of servers located in different jurisdictions around the world. This array is called the RAIDA (Redundant Array of Independent Detection Agents).

What a CloudCoin File Looks like Inside

Each CloudCoin has a 'sn' (Serial Number) and twenty five 'an' (Authenticity Numbers). The 'an's are like passwords and each one corresponds to a different RAIDA Detection Agent.

{
	"cloudcoin": [{
		"nn": "1",
		"sn": "16777215",
		"an": [
			"be0f94e584584885ab86c301b8f1906d", "1e539633bc074bf88ebaeb7fd23279d7", "d735e4d16ff54eda8019e1a59ad33032", "b394553ff4e94f78a5f4c04df4102a20", "85b8f6956deb4dc28bc40b192ef5b0bc",
			"6775856024a14d10af30181477f8957a", "31274a1103c7406fb0f60736604f23b6", "6eb2c9bfb21e480b89f35c8124a8f3c0", "407b9d6b0b034b23b1d160d7da96a8ae", "2dbf38c2b1834287aed0fdcf4ba32274",
			"4da74b2a8c784731826716dd36296271", "0fe3fb2dee9648eeae64bdcf29abdf15", "01bdfe3b43b74b618c8db44e6b2febb6", "e0bdf8a182eb4174bcca6fda0c3609a1", "c8636145d53d42008c84432872816d4c",
			"f5258cb2cd2f4afca333bc7cd64f01eb", "c89eb2da6897489db2581d0b17d4d959", "89d5dba265c84a488106840a79316940", "8dba35338678464a9ef9a1686cd500af", "0a39da32d43546009147127443793297",
			"109a745bb88940a3ac9720bc8f9fee66", "a56933d0ab01400d99782c4eba0c6849", "ef6025e09f88499fb0490edf7ae21eba", "6014a91a938f440cb8f72658e0b9d61e", "cb64b024fe8c47d19d3fcd5c797fa0b3"
		],
		"pown": "ppeppppppfppppppnpppupppp",
		"ed": "9-2021",
		"aoid": []
	}]
}

How CloudCoins are Traded Outside of Exchanges

Here is the process for exchanging CloudCoins among users.

  1. The Owner a CloudCoin has the CloudCoin file. The file has twenty five Authenticity Numbers that are like passwords.
  2. To buy something, the Owner gives the CloudCoin file with the Authenticity Numbers to the Candidate Owner. Now both the Owner and the Candidate Owner have the Authenticity Numbers.
  3. Anyone who has the Authenticity Numbers can change them. The Candidate Owner changes the Authenticity Numbers to new numbers. Now the Owner no longer has the Authenticity Numbers and the Candidate Owner becomes the New Owner.


Receiving CloudCoin in your Exchange Skywallet Account with Customized User Data included

Suppose you want to customize the data that your payment page receives so that you can collect more information than just their Skywallet Address. In this case you can use the RaidaJS web widget that will allow you to collect any data you want from the customer.


  1. You place a form on your website that uses our RaidaJs widget.
  2. Users use the form to transfer CloudCoins from their Skywallet account to your skywallet account.
  3. The RaidaJs Widget tells your server that payment has been made, who made the payment, the receipt GUID and how much the payment was for.
  1. The "RaidaJs" web widget accepts commands such as "Transfer" and "Tell Server".

Customers use the web widget to send your account funds. Then, the widget tell's your server to check to see if the payment was made. Your web server This program allows you to call it from any programming language. You