The problem:
Skycoin/Privateness network at every transaction takes 10% fee of all Coin-Hours on input address. This makes small transactions impossible.

The solution:
Make a random payment every hour.
The user will pay for a whole month in 1/720 probability in every hour (month has 720 hours).
The user is valid if he has > 720 Coin-Hours on his account (user-address).

Emercoin has a similar technology https://emercoin.com/en/news/randpay

There will be TWO methods for each USER

  1. getAddress (GET)
    returns JSON: {NCH-address: NCH-ammount}
    NCH-address: deposit NCH here
    The method automaticaly generates NCH USER address if it does not exist.
  2. withdraw (POST)
    request:
    ammount: NCH-ammount

The USER — address pairs will be stored in JSON file ~/.ness/users_addr.json

There will be one Master-USER, the user which will recieve all nodes earned coin-hours.

Every user (node client) will have an address with his NCH
Address with NCH will be stored on node’s wallet
The user will be able to add or withdraw NCH from his account (address)
Every hour the script will move the tariff ammount of NCH from user’s account to node’s account.

Example of a catalog

<worm>
<catalog name=”Co-vid 1-9” tags=”tag1,tag2,tag3” owner=”fdghrynytj” dpo=”tdjydythytdj” owner-sig=”sdfjkgnonsdisoej50[49k”>
<folder name=”Info”>
<file url=”ipfs://QmUDR463cWuhg8ucwGhshK7Mk8Yve3j1pMWyCYJLsrjN2V” name=”Bioweapon” descr=””/>
<folder name=”PCR test”>
<file url=”ipfs://QmYt21n5AHKUoRoQ138W51ruW5JvbkwoupxiMCN4Av9RNw” name=”Tanzania president’s speech” descr=””/>
</folder>
</folder>
……
</worm>

The idea:

Any user can create his own catalog or catalogs and all catalogs together will form a Catalog Of Internet or Catalog Of Universe.

The backbone of system will be IPFS and Emercoin NVS.
IPFS — files storage
NVS — WORM markup

  • owner — owner of he node (optional)
    owner.blockchain.nvs.name
  • owner-sig — signature wich shows that this current node belongs to the current owner
    sing(owner.blockchain.nvs.privkey , node.blockchain.nvs.name)
  • dpo — emercoin Digital Proove of Ownership
    dpo.blockchain.nvs.name

NVS name: worm.catalog.<catalog name>

One more step forward in Ness-Node development!
Have to write key-generator and test suit here https://github.com/Alex014/NessNodeTester

Some samples:

Generate node keys

python codegen.py -ng http://node.zxc “Hello World,test”

Generate node config (for use in node)

python configen.py http://node.zxc

Show node:

python codegen.py -ns http://node.zxc

Show node WORM markup (for usage in EMC NVS)

python codegen.py -nsw http://node.zxc

Generate user:

python codegen.py -ug user 10 “1,blowfish,16;1,aes,8” “Hello World,test”

Show user:

python codegen.py -us user

Show user WORM markup (for usage in EMC NVS)

python codegen.py -usw user

Type 1 — authentication_id

For non-critical data communicating between user and node where authentication is needed.

On user side

authentication_id = sign(user_private_key, “node.url-node.nonce-username-user.nonce”)

On node side

The node takes two parameters

  1. user_name
  2. authentication_id

Then

verify(user_public_key, “node.url-node.nonce-username-user.nonce”, authentication_id)

If verification is correct the client gets succesfully logged in.

And client can do actions according to nodes policy.
No access to blockchain…

1)Build node skeleton

2) Implement node service

3)Implement prng service

4)Integrate Ness Coin Hours

Aleksej Sokolov

Ideologist & Main Developer at PrivateNess

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store