Jump to content

Search the Community

Showing results for tags 'website'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • News & Announcements
    • Announcements
  • Denarius Discussions
    • General Discussion
    • Tutorials & Help
    • Marketing & PR
    • Development
    • Mining & Staking
    • Trading & Exchanges
    • Marketplace
    • FPGA Forums
  • Other Discussions
    • The Lounge
    • Cryptocurrencies

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


About Me

Found 2 results

  1. How to build a basic censorship resistant website using in wallet Jupiter Upload to IPFS and then message that to someone all in wallet. From what I understand this will bypass the Chinese firewall. First download the wallet, Windows binary release located here https://github.com/carsenk/denarius/releases or compile from source. I am going to use the full features of the wallet for this example which does cost 0.001 Denarius per upload, but this can be done all for free. Start the wallet and go to Jupiter tab to upload your image, select Upload to IPFS and Pay 0.001 D to POD/Timestamp. The goal here is we are going to proof of data each upload to prove our images belong to us with an IPFS upload timestamp. The first line is the IPFS hash which is the link to our image. And the 2nd line is the timestamp of when the image was uploaded to IPFS. Create a text file to save these so its easier to remember. Our image is located here https://ipfs.io/ipfs/Qmci9khjndoearoPqpW6B6qfMWRe7rLnZ5BXdKYDaUhhRn and POD address is D82zkzEDgfHSuAmYjJ6LZbLb1W74YLPjM7 with a timestamp of upload. Also we will use the Proof of Data tab next to POD the image itself for a hash checksum that gets thrown into the Denarius blockchain. This will verify the authenticity of the file itself. Our POD Address for the image itself is DN7fo3bxDYNcREL7nKEWMDbEFbuqTdDLmA Once that is uploaded we want to save the full link to put into our webpage. Also save the POD address so we can include that into our webpage as proof. Create an index.html which we will post the image with a link to the Proof of Data (POD) address in a block explorer. <html> <head> <title>Denarius Fully Decentralize Website Example</title> <meta name="twitter:card" content="summary"> <meta name="twitter:title" content="CoronaVirus Death Tracker 2020"> <meta name="twitter:description" content="Cant Censor Us You Assholes"> <meta name="twitter:image" content="https://i.imgur.com/cl0MchI.png"> </head> <body> using <a href="https://github.com/carsenk/denarius/releases">Denarius</a> Jupiter IPFS Uploader<br> <center> <a href="https://denarius.io/"> <img src="https://ipfs.io/ipfs/Qmci9khjndoearoPqpW6B6qfMWRe7rLnZ5BXdKYDaUhhRn" alt="Denarius Logo"> </a> </center> <table style="border:1px solid black;margin-left:auto;margin-right:auto;"> <tr> <th>IPFS Image Upload Proofs</th> </tr> <tr> <td style="text-align:center">IPFS timestamp: Qmci9khjndoearoPqpW6B6qfMWRe7rLnZ5BXdKYDaUhhRn<td> </tr> <tr> <td style="text-align:center">POD Timestamp: <a href="https://www.coinexplorer.net/D/address/D82zkzEDgfHSuAmYjJ6LZbLb1W74YLPjM7">D82zkzEDgfHSuAmYjJ6LZbLb1W74YLPjM7</a><td> </tr> <tr> <td style="text-align:center">IPFS Image Link <a href="https://ipfs.io/ipfs/Qmci9khjndoearoPqpW6B6qfMWRe7rLnZ5BXdKYDaUhhRn"</a>Qmci9khjndoearoPqpW6B6qfMWRe7rLnZ5BXdKYDaUhhRn<td> </tr> <tr> <td style="text-align:center">POD of Image: <a href="https://www.coinexplorer.net/D/address/DN7fo3bxDYNcREL7nKEWMDbEFbuqTdDLmA">DN7fo3bxDYNcREL7nKEWMDbEFbuqTdDLmA</a><td> </tr> </table> <br> <a href="https://denariustalk.org/index.php?/topic/339-how-to-build-a-completely-censorship-resistant-web-page-with-denarius-and-ipfs/">Tutorial Here</a> </html> Save index.html and go back to the Proof of Data tab to hash checksum our index.html. Then upload to IPFS using POD again. The reason to do this is we will next message our friend to prove this is also my upload, which is giving a timestamp of the file itself and a checksum address of index.html which means this can't be faked and is authentic. Upload the final index.html to IPFS and POD this. Quickly we can use the infura or cloudflare links, or use the default IPFS and type this in ourselves, 3 examples below using same file hash we just uploaded. https://ipfs.infura.io/ipfs/QmXAJ1o76XtmcQERcMYfaA6uWJNrgWmhviRCTZ6vLEjJBB https://cloudflare-ipfs.com/ipfs/QmXAJ1o76XtmcQERcMYfaA6uWJNrgWmhviRCTZ6vLEjJBB https://ipfs.io/ipfs/QmXAJ1o76XtmcQERcMYfaA6uWJNrgWmhviRCTZ6vLEjJBB This POD address from above image DD6xmZTTH6TgdD8sn3tqB5MnWsS4xZhSb6 we can use in our message to someone. Go to the Messages tab. I sent to myself because I need more Denarius friends. Checking my inbox I can see I got something. And there is my message delivered. Go think of new ways you can use this to create censorship resistant apps as the Denarius command line daemon also allows all of these commands.
  2. This is a lot easier than it looks, and a super easy way to watch the status of your Fortunastakes (masternodes) from anything, including a raspberry pi. If you have multiple fortunastakes, somehow you want to get each json of your fortunastake status onto a single nginx server. Depends a lot on how to go about this. I am using blocknotify on the daemon to create 1.json and 2.json files, also grab the current block from blocknotify send that to block.txt, sending these files to /var/www/html and then making sure permissions are what I want. Install nginx on your ubuntu you will be using. sudo apt install nginx Verify that works by going to your ip address. I am doing everything on a local network, this is gonna vary, but if its working you should see the default nginx welcome screen. denarius.conf (change the full path to your server, maybe /home/username/status.sh) blocknotify=/root/status.sh status.sh (creates block.txt and iterates through 2 fortunastakes on same server at directories /root/D01 and /root/D02, i<3 is +1 of the number you are running if on same server) #!/bin/bash denariusd -datadir=/root/D01 getblockcount > /var/www/html/block.txt #stop and start 01-02 for ((i=1; i<3; i++)) do echo "$i" denariusd -datadir=/root/D0$i fortunastake status > /var/www/html/$i.json chmod -R 644 /var/www/html/* done Restart the daemon and on the first new block status.sh will run and send the files into /var/www/html. Double check the directory has some files after running for a bit. Basically you want to get each of your Fortunastakes json files into your /var/www/html, maybe even using scp from multiple vps's. Just make sure to label them 1.json 2.json 3.json and so forth for how we will iterate through these json files. example of using scp command way to do it, you want ssh-key login if using scp scp 2.json [email protected]:/var/www/html/2.json Create 4 files we will use to create the website, stick them in /var/www/html folder style.css body { background: #020000; font-family: 'Raleway', sans-serif; font-size:16px; } .row { display: flex; flex-wrap: wrap; } .col { flex: 1 0 18%; /* The important bit. This percentage decides your columns. The percent can be px. It just represents your minimum starting width. */ margin: 0.5px; background: #333333; height: 30px; color: white; display: flex; align-items: center; justify-content: center; } /* visited link */ a:visited { color: white; } /* unvisited link */ a:link { color: white; } fortunastake.js fetchData = () => { const urls = [ "1.json", "2.json" ]; const allRequests = urls.map(url => fetch(url).then(response => response.json()) ); return Promise.all(allRequests); }; fetchData().then(arrayOfResponses => { for (index = 0; index < arrayOfResponses.length; index++) { window.FS = '<div class="row">' + '<div class="col">FS' + [index+1] + '</div>' + '<div class="col">' + (arrayOfResponses[index].local.service) + '</div>' + '<div class="col">' + '<a href="https://www.coinexplorer.net/D/address/' + (arrayOfResponses[index].local.payment_address) + '">' + (arrayOfResponses[index].local.payment_address) + '</a></div>' + '<div class="col">' + (arrayOfResponses[index].local.network_status) + '</div>' + '<div class="col">' + parseFloat((arrayOfResponses[index].local.earnings) / 100000000).toFixed(8) + '</div>' + '</div>'; console.log(window.FS) $("#fsnumber").append(window.FS).hide().fadeIn("fast"); } } ); block.js fetch('block.txt', {mode: 'no-cors'}) .then(function(response) { return response.json(); }) .then(function(data) { if (data) console.log(data); $('#block').html(""); $("#block").append(data).hide().fadeIn("slow"); }) .catch(function(err) { console.log(err); }); var listen = setInterval(function() { fetch('block.txt', {mode: 'no-cors'}) .then(function(response) { return response.json(); }) .then(function(data) { if (data) console.log(data); $('#block').html(""); $("#block").append(data).hide().fadeIn("slow"); }) .catch(function(err) { console.log(err); }); }, 30000);//30 second index.html <html> <head> <title>FortunaStake List</title> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/animate.css/3.7.2/animate.min.css"> <script type="text/javascript" src="block.js?version=0.1337"></script> <script type="text/javascript" src="fortunastake.js?version=0.1337"></script> <link href="https://fonts.googleapis.com/css?family=Roboto" rel="stylesheet"> <link rel="stylesheet" type="text/css" href="style.css?version=0.1337"> </head> <body> <div class="row"> <div class="col">FortunaStake List</div> </div> <div class="row"> <div class="col">Block #<div id="block"; style="display:inline-block"; class="animated rubberBand"></div></div> </div> <div id="fsnumber"></div> </body> </html> Go back to your nginx IP and force refresh by using shift+ctrl+r and now you can start watching your Fortunastake Status from wherever. This uses a 5 column flex grid and has clickable link to coinexplorer per address and auto refreshes the block count every 30 seconds. This does not autorefresh the FS list though. FS # | IP Address | FS Address | Status | Round Earnings What it shows when one goes down from the list. This particular one lost sync on the daemon, and still shows active as I restarted the QT. Was about to get bumped off to inactive and REKT.
×
×
  • Create New...