nanocurrency / nano-node Goto Github PK
View Code? Open in Web Editor NEWNano is digital currency. Its ticker is: XNO and its currency symbol is: Ӿ
Home Page: https://nano.org
License: BSD 3-Clause "New" or "Revised" License
Nano is digital currency. Its ticker is: XNO and its currency symbol is: Ӿ
Home Page: https://nano.org
License: BSD 3-Clause "New" or "Revised" License
Since last login on Telegram of @clemahieu is nearly 6 months ago, if @clemahieu doesn't log again the chat will remain without an admin forever.
That because Telegram delete account that doesn't login from 6 months.
IDK if it's needed. But i suppose that a node that hosts an account with a delegate PoS (so without own funds) can be slowed or crashed if while voting it's filled (like a DoS) of incoming tx which require a lot of computing time.
If yes, maybe could be add a paramater to disable processing incoming tx for a node or a wallet or a account in config.json
A minimal amount that can be send.
Normal peer won't forward block if amount is under the minimum.
Voting peers won't vote for it or will vote negative.
If I set Krai, at the next start of the client I need to set it again.
Cannot launch rai_wallet at Ubuntu 14.04 LTS. No errors shown
rai_node launch errors
./rai_node: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version GLIBCXX_3.4.20' not found (required by ./rai_node) ./rai_node: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version
GLIBCXX_3.4.21' not found (required by ./rai_node)
Debian 8.7 rai_node launch error
./rai_node: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by ./rai_node)
CentOS 7 rai_node launch errors
./rai_node: /lib64/libstdc++.so.6: version GLIBCXX_3.4.20' not found (required by ./rai_node) ./rai_node: /lib64/libstdc++.so.6: version
GLIBCXX_3.4.21' not found (required by ./rai_node)
In a previous reply, @clemahieu told that a full tx (send+receive) weight 2176 bits ( 272 byte ).
From my summary viewer (https://raiblockscommunity.net/page/summary.php) I notice that data.ldb is 253.59 MB large, with 247,257 of total blocks. File system is a ext4.
It makes 1,026 byte for block (about 1Kb).
A single tx on my disk space is wide almost like 10 txs declared by @clemahieu.
Is that a file system "problem"?
There are 10^24 possibile combination before 1 Rai value.
These numbers can be used to store information, making chain heavier for non-transfer money usage.
If client make all number before 1 Rai to 0, and nodes reject tx with non 0 before 1 Rai should be a good solution.
Add blocks checksum instead of blocks count as checking parameter
Light RPC with very limited access to node to functions like: retrieve a particular account's chain, etc... to allow light nodes to connect.
Example in config.json
"lightrpc_enable": "true"
Unique log file for each kind of log:
Max size refer to each unique log.
"logging": {
"ledger": "false",
"ledger_duplicate": "false",
"network": "true",
"network_message": "false",
"network_publish": "false",
"network_packet": "false",
"network_keepalive": "false",
"node_lifetime_tracing": "false",
"insufficient_work": "true",
"log_rpc": "true",
"bulk_pull": "false",
"work_generation_time": "true",
"log_to_cerr": "false",
"max_size": "16777216",
"version": "2",
"work_peers": "",
"vote": "false"
},
Default rep for an account, the first wallet account generated.
661d5ed 26f9beb All node options to be available via RPC, such as account_get, account_key, key_create, key_expand, wallet_change_seed, wallet_decrypt_unsafe, wallet_list
Some of them are not safe to print in logs, perhaps just replace seeds/private keys in log files with zeroes.
[mikerow] Username and Password authentication for RPC. Or perhaps default username and random password is enough — SergiySW
RPC command to stop bootstrap
094708d RPC command to rebroadcast block
26f9beb RPC command to retrieve frontiers for wallet
{ "action": "wallet_frontiers", "wallet": "000D1BAEC8EC208142C99059B393051BAC8380F9B5A2E6B2489A277D81789F3F" }
34e9a9c RCP command to force bootstrap to specific peer like
{ "action": "bootstrap", "peer": "::ffff:128.199.199.97:7075" }
Return error message as JSON. Now you can view error output only in curl. In JavaScript it's just empty server answer. Sample
{ "error": "Invalid block hash" }
Add HTTP response header “Access-Control-Allow-Origin: *” to RPC answers would be useful to control node via browsers JavaScript. Otherwise modern browsers block JSON response.
Add RPC command to retrieve release version e.g. 7.5.0
[mikerow] RPC to change an account representative instead compile a block by yourself with "publish_block".
RPC to see blocks downloaded but not yet in the ledger. Perhaps just expand response of { "action": "block_count" }
RPC to see pending incoming transactions for account
If no TCP session has succeeded, there might be a client side block of outbound TCP.
Sometimes wallet stucks with status Synchronizing for a long time. Even if block count is correct
Sometimes the block count isn't correct requiring restart.
Possible race condition in refresh_count read transactions with write transactions that caused the block update.
Maybe poll this value or filter/delay the update.
A RPC command that returns all wallets and account like the --wallet_list parameter that you pass to rai_node.
So it is more intuitive to set password.
Fast sync option for first wallet launch (important for slow connections).
[?] Nodes blacklist in config.json to prevent bootstrap poisoning.
Currently it isn't easy by a bitcoin escrow (in a 2x3 multisig trade) to read if the sender has sent the right amount of value.
This will help to increase the trading offers on p2p exchanges as Bitsquare (an example)
For some blocks "action": "block_account" returns non-existing account in answer.
Example:
curl -d '{ "action": "block_account", "hash": "9D3E9A9E649A6588A3A29E2129E1DF91D27183AB1BCE19F7DC273F325902BE75" }' 127.0.0.1:7076
returns
{ "account": "xrb_1111111111111111111111111111111111111111111111111111hifc8npp" }
Code fixing for compiling on ARM
Stop RPC doesn't stop.
Hi
I try to update to latest version of wallet ..everything done successful ..but now the wallet is not opening ..
When i click the wallet icon it blink for 2-3 second then nothing is happening ..
i try to uninstall it and reinstall but same problem persist ..Now old version is also not working also .. do you know what is the problem ..
also i am not getting error also solve it can you tell any solution
In this page https://raiblockscommunity.net/history/index.php?acc=xrb_1zo54ia1363ikd4nb9ikamux3fnsnr7jurzs45xhda78o9piowa44o5zzaws I show the voting weight of an account. But there is no way to know (from RPC) to know all the account that delegated him or viceversa.
Is it a not-documented function?
The wallet ID is cached in memory on the node and doesn't get correctly updated
So users know the program has started even if initializing takes a while.
https://www.virustotal.com/en/file/eec78b3ddbbcce2d78e1a876f1e4d4e87d9d7af16beebb297aeecc43103f4dd4/analysis/1485585242/
Most likely caused by NSIS installer.
Possible solution: additional zip archive Windows binaries without installer
There is no notice of this block https://raiblockscommunity.net/explorer/index.php?h=E3BFD3411F365250DF96AC53D171A671762B182D67800C1E3D14FFD6448FC5E7
In the account's history https://raiblockscommunity.net/history/index.php?acc=xrb_1133oih5pyhzpo74ey97igfa9yp89kptonethftf5oa9nsm8p77fqd19h3p4
Infact, in the above page (history), some blocks seem missed.
I would like to create a page here (https://raiblockscommunity.net/page/applications.php) to display all online nodes.
I checked RPC commands and rai_node --help commands but seems to be no way to retrieve them (except from the GUI/Peers).
It's not necessary feature, but if is possible to retrieve them it would be a fine page. Thank you.
Make send/receive tx hash work harder, something like a 3-5x difficulty
Available history is too short for active accounts (limit 32 rows).
Option to save account history to text file / table would be useful. Or copy all selected cells.
I'm actually using this RPC to display all tx of an account (ex: https://raiblockscommunity.net/history/index.php?acc=xrb_3dcfozsmekr1tr9skf1oa5wbgmxt81qepfdnt7zicq5x3hk65fg4fqj58mbr)
But I had to limit the count up tp 200 because it's really resource usage intensive, and slow.
It's not a "hot fix", but if it's possible to make it faster and less resource intensive usage, would be better. Thank you.
Log files to track representatives activities.
Change DNS records for rai.raiblocks.net to stable community nodes such as 51.255.160.144, 138.201.94.249, 64.137.172.219. Now all default nodes from rai.raiblocks.net are offline and wallets with default config cannot bootstrap.
Username and Password autentication for RPC. Like in Bitcoin.
Rollback are prevented secondary (if DPoS fails) by the amount of PoW for each block.
The node doesn't approve fork with a shorter chain but (maybe) ATM the wallet check only if the current block count is lower or higher than the one proposed by the fork.
Instead of count only the total number of blocks, shouldn't be more safe, count the block for each account?
Ex:
(now)
A: 5tx
B: 10tx
proposed fork
A: 5tx
B: 5tx
C: 20tx
The fork pass
(with the improvment)
A: 5tx
B: 10tx
proposed fork
A: 5tx
B: 5tx
C: 20tx
The fork doesn't pass because the fork propose shorter chain for account A and B
To install wallet with somethink like: sudo apt-get install raiblocks-core
Chance to get the number of blocks for each account, without using "chain" call which return hash too.
If a node publishes a block and it doesn't get votes i.e. connection disconnect or publishing on a rejected fork, it needs to initiate a network resync.
Provide viewed account balance in wallet.
RPC to change an account representative instead compile a block by yourself with "publish_block".
Possibility to send "dotted" import, like 0.1 Krai (just a GUI feature, wallet will transform that import as normal integer)
For conversion of units, you could do something like:
To Raw
{ "action": "to_raw", "unit": "Grai/Mrai/Krai/Rai/mrai/urai","amount": "1" }
From Raw
{ "action": "from_raw", "unit": "Grai/Mrai/Krai/Rai/mrai/urai","amount": "100000000000000000" }
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.