From 4087d50a655cebe038ab01c61e60dbf5106cc08f Mon Sep 17 00:00:00 2001 From: "progr76@gmail.com" Date: Fri, 15 Feb 2019 18:56:11 +0300 Subject: [PATCH] 0.886 --- Bin/Light/Tera-light.zip | Bin 120094 -> 120100 bytes Bin/Light/tera_light_setup.exe | Bin 705255 -> 705280 bytes Doc/Eng/API2.md | 177 ++++++++++++++++++++++++++++++++ Doc/Rus/API2.md | 176 +++++++++++++++++++++++++++++++ Doc/Rus/CONSTANTS.MD | 4 +- Source/HTML/CSS/buttons.css | 1 + Source/HTML/JS/crypto-client.js | 2 - Source/HTML/JS/wallet-lib.js | 4 +- Source/HTML/JS/wallet-node.js | 4 +- Source/core/block-exchange.js | 2 +- Source/core/block-loader.js | 2 +- Source/core/constant.js | 17 ++- Source/core/html-server.js | 15 ++- Source/core/log.js | 5 +- Source/core/server.js | 10 +- Source/core/wallet.js | 1 + Source/dapp/accounts.js | 2 +- Source/process/api-exchange.js | 50 ++++----- Source/process/main-process.js | 22 ++-- Source/process/web-process.js | 3 +- 20 files changed, 426 insertions(+), 71 deletions(-) create mode 100644 Doc/Eng/API2.md create mode 100644 Doc/Rus/API2.md diff --git a/Bin/Light/Tera-light.zip b/Bin/Light/Tera-light.zip index c00e1aa07320c0a20e83c9903e22fd7cee2b4c9c..a2d81b01ad5113bef8f08e61a4954a8d45fd7f0d 100644 GIT binary patch delta 11313 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 bhQPDaKr$Fsgg^PcOat*??uLNB`t1JzKGaB2 delta 11510 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 nra&YV5KMn?hO#=V`>;V9QuF^HP6yO1l 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 O2ZyBd2)Cs330%*z9wegx diff --git a/Doc/Eng/API2.md b/Doc/Eng/API2.md new file mode 100644 index 0000000..5319dbd --- /dev/null +++ b/Doc/Eng/API2.md @@ -0,0 +1,177 @@ +# API v2 (for exchanges) + + +The API is designed to make it easier to write third-party applications. Server-side cryptography and POW operations are performed. Therefore, it is not recommended for public access, because it is not protected from DDOS attacks. Use it if applications such as the exchange server are on the same private network. + +This API is available if server is running http and hosting included constant USE_HARD_API_V2. + +### Set the constants: +* HTTP_HOSTING_PORT:80 +* USE_HARD_API_V2:1 + + +Although the API is designed for use in POST requests, it can be used for GET requests in a limited mode. + +Call format: +```js +{{Server}}/api/v2/{{MethodName}} +``` +Example: +```js +http://194.1.237.94/api/v2/GenerateKeys +``` + +As a result, JSON is returned, which contains the required result field with the value: +* 0 - the request contains errors or the result is not possible to get (for example, there is no such account), +* 1 - successful execution of the query + +text - the optional field contains a detailed description of the result + +All methods support the Meta parameter, if it is specified, the same value is added to the query result. This is useful for organizing your own query routing, often used in micro-service architectures. + +## GenerateKeys + +1)**/api/v2/GenerateKeys** - create private key - public key pair +#### Parameters are not required + +example: +```js +http://127.0.0.1/api/v2/GenerateKeys +``` +return: +```js +{ + "result": 1, + "PrivKey": "65C65BE3F436DE58C64461BDC1BF0E2D8AB06C2C4E92470B1F4CDEADB9B2C3FF", + "PubKey": "030809551AD9E0E275082C75EC82E9651BF062821EC6DFE31039B0EDE6A2ED26CC" +} +``` + +## CreateAccount + +2)**/api/v2/CreateAccount** - create a new account (account). In Tere free account creation is possible only in the intervals of 10 seconds. The paid version is given in the example of 2 methods **Send** +#### Parameters: +* Name - account name up to 40 bytes +* PubKey - public key in hex-format + +example: +```js +http://127.0.0.1/api/v2/CreateAccount +{ + "Name": "Hellow, world", + "PubKey": "0240EDF5ECB25D886FD58DB92A53914FAC975078C1C2EDD1AC292B70C7BC13461F" +} +``` +return: +```js +{"result":1,"text":"Added to timer","TxID":"DC316BD766AC654E0AF7260F2E010000","BlockNum":19795750} +``` + + +## Send + +3)**/api/v2/Send** - sending coins from one account to another (you need to specify the private key of the sender's account) +#### Parameters: +* FromID - the account number of the sender +* FromPrivKey - sender private key in hex format +* ToID - the account number of the recipient, the number or public key in hex format (in this case, it will create a new account with the name specified in the first line of the description of the payment and the payment the account will be charged 10 Tera) +* Amount - sum, floating-point number, or object format {SumCOIN,SumCENT} +* Description - description of payment order (optional) + + +example1: +```js +http://127.0.0.1/api/v2/Send +{ + "FromID": 190085, + "FromPrivKey": "A2D45610FE8AC931F32480BFE3E78D26E45B0A4F88045D6518263DA12FA9C033", + "ToID":190165, + "Amount":10.5, + "Description":"Test" + +} +``` +example2 (create a new account): +```js +http://127.0.0.1/api/v2/Send +{ + "FromID": 190085, + "FromPrivKey": "A2D45610FE8AC931F32480BFE3E78D26E45B0A4F88045D6518263DA12FA9C033", + "ToID":"0240EDF5ECB25D886FD58DB92A53914FAC975078C1C2EDD1AC292B70C7BC13461F", + "Amount":10, + "Description":"New account" + +} +``` + +return: +```js +{"result":1,"text":"OK","TxID":"BE10810FDE7A1317D9DF51D62D010000","BlockNum":19781201} +``` + +## GetBalance + +4)**/api/v2/GetBalance** - get account balance +#### Parameters: +* AccountID - account number + +example: +```js +http://127.0.0.1/api/v2/GetBalance +{ + "AccountID": 0 +} +``` +return: +```js +{ + "result": 1, + "SumCOIN": 580222966, + "SumCENT": 527313901 +} +``` + +## GetTransaction + +5)**/api/v2/GetTransaction** - get transaction (returns an object with the contents of the transaction) +#### Parameters: +* TxID - Transaction ID in hex format + +example: +```js +http://127.0.0.1/api/v2/GetTransaction +{ + "TxID": "BE10810FDE7A1317D9DF51D62D010000" +} +``` +return: +```js +{ + "Type": 111, + "Version": 3, + "Reserve": 0, + "FromID": 190085, + "To": [ + { + "PubKey": "", + "ID": 190165, + "SumCOIN": 1, + "SumCENT": 0 + } + ], + "Description": "New6", + "OperationID": 41, + "Body": "", + "Sign": "8C761F539A6A24427CF810A49140CA1FFBF0F3A48DCF58AEE0DD9E4A4E631E1A1B6DA86ED6E2EF92DBF537270AA02B5EAE3A7C822B3F70628CAD78525ED9E0F7", + "result": 1 +} +``` + +## GetHistoryTransactions + +6)**/api/v2/GetHistoryTransactions** - to get the transaction history of the account + +#### **TODO** + + + diff --git a/Doc/Rus/API2.md b/Doc/Rus/API2.md new file mode 100644 index 0000000..23f1262 --- /dev/null +++ b/Doc/Rus/API2.md @@ -0,0 +1,176 @@ +# API v2 (для бирж и обменников) + +API предназначено для облегчения написания сторонних приложений. На стороне сервера выполняется криптография и операции POW. Поэтому оно не рекомендуется для публичного доступа, т.к. не защищено от DDOS атак. Используйте его, если приложения такие как сервер биржи находятся в одной приватной сети. + +Данный API доступен если на ноде запущен http-хостинг и включена константа USE_HARD_API_V2. + +### Для этого задайте константы: +* HTTP_HOSTING_PORT:80 +* USE_HARD_API_V2:1 + +Несмотря на то что API разработано для использования в POST запросах, в ограниченном режиме его можно использовать для GET запросов. + +Формат вызова +```js +{{Server}}/api/v2/{{MethodName}} +``` + +Пример: +```js +http://194.1.237.94/api/v2/GenerateKeys +``` + +В качестве результат возвращается JSON, который содержит обязательное поле result со значением: +* 0 - запрос содержит ошибки или результат не возможно получить (например нет такого счета), +* 1 - успешное выполнение запроса + +text - опциональное поле содержит подробное описание результата + +Все методы поддерживают параметр Meta, если он задан, то это же значение добавляется в результат запроса. Это бывает полезно для организации собственной маршрутизации запросов, часто применяется в микро-сервисных архитектурах. + +## GenerateKeys + +1)**/api/v2/GenerateKeys** - создание пары приватный ключ - публичный ключ +#### Параметры не обязательны + +example: +```js +http://127.0.0.1/api/v2/GenerateKeys +``` +return: +```js +{ + "result": 1, + "PrivKey": "65C65BE3F436DE58C64461BDC1BF0E2D8AB06C2C4E92470B1F4CDEADB9B2C3FF", + "PubKey": "030809551AD9E0E275082C75EC82E9651BF062821EC6DFE31039B0EDE6A2ED26CC" +} +``` + +## CreateAccount + +2)**/api/v2/CreateAccount** - создание нового счета (аккаунта). В Тере бесплатное создание счета возможно только в промежутках из 10 секунд. Платный вариант приведен в примере 2 метода **Send** +#### Параметры: +* Name - имя счета до 40 байт +* PubKey - публичный ключ в hex-формате + +example: +```js +http://127.0.0.1/api/v2/CreateAccount +{ + "Name": "Hellow, world", + "PubKey": "0240EDF5ECB25D886FD58DB92A53914FAC975078C1C2EDD1AC292B70C7BC13461F" +} +``` +return: +```js +{"result":1,"text":"Added to timer","TxID":"DC316BD766AC654E0AF7260F2E010000","BlockNum":19795750} +``` + + +## Send + +3)**/api/v2/Send** - отправка монет с одного счета на другой (требуется указать приватный ключ счета отправителя) +#### Параметры: +* FromID - номер счета отправителя +* FromPrivKey - приватный ключ отправителя в hex-формате +* ToID - номер счета получателя, число или публичный ключ в hex-формате (в этом случае будет создан новый счет с именем заданным в первой строке описания платежа и в качестве оплаты создания счета спишется 10 Тера) +* Amount - сумма, число с плавающей точкой или объект в формате {SumCOIN,SumCENT} +* Description - описание платежка (необязательный параметр) + + +example1: +```js +http://127.0.0.1/api/v2/Send +{ + "FromID": 190085, + "FromPrivKey": "A2D45610FE8AC931F32480BFE3E78D26E45B0A4F88045D6518263DA12FA9C033", + "ToID":190165, + "Amount":10.5, + "Description":"Тест" + +} +``` +example2 (создание нового счета): +```js +http://127.0.0.1/api/v2/Send +{ + "FromID": 190085, + "FromPrivKey": "A2D45610FE8AC931F32480BFE3E78D26E45B0A4F88045D6518263DA12FA9C033", + "ToID":"0240EDF5ECB25D886FD58DB92A53914FAC975078C1C2EDD1AC292B70C7BC13461F", + "Amount":10, + "Description":"New account" + +} +``` + +return: +```js +{"result":1,"text":"OK","TxID":"BE10810FDE7A1317D9DF51D62D010000","BlockNum":19781201} +``` + +## GetBalance + +4)**/api/v2/GetBalance** - получить баланс счета +#### Параметры: +* AccountID - номер счета + +example: +```js +http://127.0.0.1/api/v2/GetBalance +{ + "AccountID": 0 +} +``` +return: +```js +{ + "result": 1, + "SumCOIN": 580222966, + "SumCENT": 527313901 +} +``` + +## GetTransaction + +5)**/api/v2/GetTransaction** - получить транзакцию (возвращает объект с содержимым транзакции) +#### Параметры: +* TxID - ИД транзакции в hex-формате + +example: +```js +http://127.0.0.1/api/v2/GetTransaction +{ + "TxID": "BE10810FDE7A1317D9DF51D62D010000" +} +``` +return: +```js +{ + "Type": 111, + "Version": 3, + "Reserve": 0, + "FromID": 190085, + "To": [ + { + "PubKey": "", + "ID": 190165, + "SumCOIN": 1, + "SumCENT": 0 + } + ], + "Description": "New6", + "OperationID": 41, + "Body": "", + "Sign": "8C761F539A6A24427CF810A49140CA1FFBF0F3A48DCF58AEE0DD9E4A4E631E1A1B6DA86ED6E2EF92DBF537270AA02B5EAE3A7C822B3F70628CAD78525ED9E0F7", + "result": 1 +} +``` + +## GetHistoryTransactions + +6)**/api/v2/GetHistoryTransactions** - получить историю транзакций счета + +#### **TODO** + + + diff --git a/Doc/Rus/CONSTANTS.MD b/Doc/Rus/CONSTANTS.MD index 57051b2..83c34ca 100644 --- a/Doc/Rus/CONSTANTS.MD +++ b/Doc/Rus/CONSTANTS.MD @@ -55,9 +55,11 @@ "RESTART_PERIOD_SEC": 0, //авто рестарт ноды через заданный период в сек "MAX_GRAY_CONNECTIONS_TO_SERVER": 10,//число серверов, к которым подключается нода в режиме серых ip "TRANSACTION_PROOF_COUNT": 2000000, //число транзакций сохраняемых в базе данных для возможности отката цепочки назад + "MAX_CONNECTIONS_COUNT": 1000, //максимальное число нод, которые могут одновременно быть соединены с текущей нодой //WATCHDOG "WATCHDOG_BADACCOUNT": 1, //слежение за наличием ошибок тип "BAD ACCOUNT" - "COREY_WATCH_DOG": 1 //слежение за расcинхронизацией цепочки с общей сетью при майнинге + "COREY_WATCH_DOG": 2 //слежение за расcинхронизацией цепочки с общей сетью при майнинге + } ```` diff --git a/Source/HTML/CSS/buttons.css b/Source/HTML/CSS/buttons.css index f6fb4f9..5ddad06 100644 --- a/Source/HTML/CSS/buttons.css +++ b/Source/HTML/CSS/buttons.css @@ -73,6 +73,7 @@ + .btlong { width: 160px; diff --git a/Source/HTML/JS/crypto-client.js b/Source/HTML/JS/crypto-client.js index 4f4a138..a7b5686 100644 --- a/Source/HTML/JS/crypto-client.js +++ b/Source/HTML/JS/crypto-client.js @@ -100,7 +100,6 @@ function CreateHashBody(body,Num,Nonce) window.DELTA_POWER_POW_TR = 0; window.DELTA_FOR_TIME_TX = 0; window.MIN_POWER_POW_TR = 0; -window.MIN_POWER_POW_ACC_CREATE = 0; window.CONSENSUS_PERIOD_TIME = 1000; window.FIRST_TIME_BLOCK = 1530446400000; window.SetBlockChainConstant = function (Data) @@ -110,7 +109,6 @@ window.SetBlockChainConstant = function (Data) Data.DELTA_CURRENT_TIME = 0; window.DELTA_CURRENT_TIME2 = Data.DELTA_CURRENT_TIME - DeltaServerClient; window.MIN_POWER_POW_TR = DELTA_POWER_POW_TR + Data.MIN_POWER_POW_TR; - window.MIN_POWER_POW_ACC_CREATE = Data.MIN_POWER_POW_ACC_CREATE; window.FIRST_TIME_BLOCK = Data.FIRST_TIME_BLOCK; window.CONSENSUS_PERIOD_TIME = Data.CONSENSUS_PERIOD_TIME; window.GetCurrentBlockNumByTime = function () diff --git a/Source/HTML/JS/wallet-lib.js b/Source/HTML/JS/wallet-lib.js index 8a1a257..6dd6b98 100644 --- a/Source/HTML/JS/wallet-lib.js +++ b/Source/HTML/JS/wallet-lib.js @@ -22,6 +22,8 @@ function SetAccountsData(Data,AccountsDataStr) { if(!Data || !Data.result) return ; + if($("idBtRun")) + $("idBtRun").style.display = (Data.arr.length ? '' : 'none'); if(AccountsDataStr === WasAccountsDataStr) return ; WasAccountsDataStr = AccountsDataStr; @@ -603,7 +605,7 @@ function SendTrCreateAcc(Currency,PubKey,Description,Adviser,Smart,bFindAcc,bAdd } else { - SendTransaction(Body, TR, MIN_POWER_POW_ACC_CREATE); + SendTransaction(Body, TR); } $("idAccountName").value = ""; CancelCreateAccount(); diff --git a/Source/HTML/JS/wallet-node.js b/Source/HTML/JS/wallet-node.js index 95684c9..f741d0b 100644 --- a/Source/HTML/JS/wallet-node.js +++ b/Source/HTML/JS/wallet-node.js @@ -40,10 +40,10 @@ function SavePrivateKey() if(Data && Data.result === 1) { if(Select.value === "private") - SelectStyle("styleBlue"); + SelectStyle("styleContrast1"); else if(Select.value === "public") - SelectStyle("styleGreen"); + SelectStyle("styleContrast2"); SetVisibleEditKeys(0); UpdatesData(); } diff --git a/Source/core/block-exchange.js b/Source/core/block-exchange.js index d6e8caa..8ff5af2 100644 --- a/Source/core/block-exchange.js +++ b/Source/core/block-exchange.js @@ -1546,7 +1546,7 @@ module.exports = class CConsensus extends require("./block-loader") BlockMining.Power = GetPowPower(BlockMining.PowHash) ADD_TO_STAT("MAX:POWER", BlockMining.Power) var Power = GetPowPower(BlockMining.PowHash); - var HashCount = (1 << Power) >>> 0; + var HashCount = Math.pow(2, Power); ADD_HASH_RATE(HashCount) AddInfoBlock(BlockMining, "Set POW: " + Power) this.SetNoPOW(BlockMining.BlockNum + 8, 0, BlockMining.BlockNum) diff --git a/Source/core/block-loader.js b/Source/core/block-loader.js index 12d736c..d4b2af6 100644 --- a/Source/core/block-loader.js +++ b/Source/core/block-loader.js @@ -827,7 +827,7 @@ module.exports = class CBlock extends require("./db/block-db") return ; var startTime = process.hrtime(); if(this.LoadHistoryMessage) - ToLog("WRITE DATA Count:" + arr.length + " " + arr[0].BlockNum + "-" + arr[arr.length - 1].BlockNum) + ToLog("WRITE DATA Count:" + arr.length + " " + arr[0].BlockNum + "-" + arr[arr.length - 1].BlockNum, 2) var CurrentBlockNum = GetCurrentBlockNumByTime(); var Block, FirstBlock; for(var i = 0; i < arr.length; i++) diff --git a/Source/core/constant.js b/Source/core/constant.js index baf3726..f876884 100644 --- a/Source/core/constant.js +++ b/Source/core/constant.js @@ -8,17 +8,18 @@ * Telegram: https://web.telegram.org/#/im?p=@terafoundation */ -global.UPDATE_CODE_VERSION_NUM = 886; +global.UPDATE_CODE_VERSION_NUM = 891; global.MIN_CODE_VERSION_NUM = 884; global.MINING_VERSION_NUM = 3; global.InitParamsArg = InitParamsArg; global.CONST_NAME_ARR = ["AUTO_COORECT_TIME", "DELTA_CURRENT_TIME", "COMMON_KEY", "NODES_NAME", "SERVER_PRIVATE_KEY_HEX", "USE_NET_FOR_SERVER_ADDRES", "NET_WORK_MODE", "STAT_MODE", "MAX_STAT_PERIOD", "HTTP_PORT_NUMBER", "HTTP_PORT_PASSWORD", "HTTP_IP_CONNECT", "WALLET_NAME", -"WALLET_DESCRIPTION", "USE_HARD_API_V2", "COUNT_VIEW_ROWS", "USE_HINT", "ALL_VIEW_ROWS", "ALL_LOG_TO_CLIENT", "USE_MINING", -"MINING_START_TIME", "MINING_PERIOD_TIME", "POW_MAX_PERCENT", "COUNT_MINING_CPU", "SIZE_MINING_MEMORY", "POW_RUN_COUNT", "POW_RUN_COUNT_FIND", -"USE_AUTO_UPDATE", "RESTART_PERIOD_SEC", "MAX_GRAY_CONNECTIONS_TO_SERVER", "TRANSACTION_PROOF_COUNT", "UPDATE_NUM_COMPLETE", -"LIMIT_SEND_TRAFIC", "WATCHDOG_DEV", "ADDRLIST_MODE", "CheckPointDelta", "MIN_VER_STAT", "DEBUG_WALLET", "HTTP_HOSTING_PORT", -"HTTPS_HOSTING_DOMAIN", "HTTP_MAX_COUNT_ROWS", "WATCHDOG_BADACCOUNT", "COREY_WATCH_DOG", "MAX_CONNECTIONS_COUNT", ]; +"WALLET_DESCRIPTION", "USE_HARD_API_V2", "COUNT_VIEW_ROWS", "USE_HINT", "ALL_VIEW_ROWS", "ALL_LOG_TO_CLIENT", "LOG_LEVEL", +"USE_MINING", "MINING_START_TIME", "MINING_PERIOD_TIME", "POW_MAX_PERCENT", "COUNT_MINING_CPU", "SIZE_MINING_MEMORY", "POW_RUN_COUNT", +"POW_RUN_COUNT_FIND", "USE_AUTO_UPDATE", "RESTART_PERIOD_SEC", "MAX_GRAY_CONNECTIONS_TO_SERVER", "TRANSACTION_PROOF_COUNT", +"UPDATE_NUM_COMPLETE", "LIMIT_SEND_TRAFIC", "WATCHDOG_DEV", "ADDRLIST_MODE", "CheckPointDelta", "MIN_VER_STAT", "DEBUG_WALLET", +"HTTP_HOSTING_PORT", "HTTPS_HOSTING_DOMAIN", "HTTP_MAX_COUNT_ROWS", "WATCHDOG_BADACCOUNT", "COREY_WATCH_DOG", "MAX_CONNECTIONS_COUNT", +]; global.USE_HARD_API_V2 = 0; global.USE_TICKET = 0; global.USE_CHECK_SENDING = 1; @@ -50,6 +51,7 @@ global.POW_RUN_COUNT = 5000; global.POWRunPeriod = 1; global.CheckPointDelta = 20; global.ALL_LOG_TO_CLIENT = 1; +global.LOG_LEVEL = 1; global.LIMIT_SEND_TRAFIC = 0; global.COUNT_VIEW_ROWS = 20; global.MIN_VER_STAT = 0; @@ -97,7 +99,6 @@ global.GENERATE_BLOCK_ACCOUNT = 0; global.TOTAL_TER_MONEY = 1e9; global.TRANSACTION_PROOF_COUNT = 1000 * 1000; global.MIN_POWER_POW_ACC_CREATE = 16; -global.MIN_POWER_POW_ACC_CREATE_LAST = MIN_POWER_POW_ACC_CREATE + 3; global.START_MINING = 2 * 1000 * 1000; global.REF_PERIOD_MINING = 1 * 1000 * 1000; global.DELTA_BLOCK_ACCOUNT_HASH = 1000; @@ -134,7 +135,6 @@ if(global.LOCAL_RUN) global.TEST_TRANSACTION_GENERATE = 0; global.MIN_POWER_POW_TR = 8; global.MIN_POWER_POW_ACC_CREATE = 8; - global.MIN_POWER_POW_ACC_CREATE_LAST = 8; NETWORK = "LOCAL"; global.ALL_VIEW_ROWS = 1; } @@ -149,7 +149,6 @@ else global.REF_PERIOD_MINING = 1000; global.MIN_POWER_POW_TR = 8; global.MIN_POWER_POW_ACC_CREATE = 8; - global.MIN_POWER_POW_ACC_CREATE_LAST = 8; global.TRANSACTION_PROOF_COUNT = 200 * 1000; global.MAX_SIZE_LOG = 20 * 1024 * 1024; global.DELTA_BLOCK_ACCOUNT_HASH = 1000; diff --git a/Source/core/html-server.js b/Source/core/html-server.js index 4963654..958b86a 100644 --- a/Source/core/html-server.js +++ b/Source/core/html-server.js @@ -302,8 +302,8 @@ HTTPCaller.DappInfo = function (Params,responce,ObjectOnly) ArrLog.push(Item); } var Ret = {result:1, DELTA_CURRENT_TIME:DELTA_CURRENT_TIME, MIN_POWER_POW_TR:MIN_POWER_POW_TR, FIRST_TIME_BLOCK:FIRST_TIME_BLOCK, - CONSENSUS_PERIOD_TIME:CONSENSUS_PERIOD_TIME, MIN_POWER_POW_ACC_CREATE:MIN_POWER_POW_ACC_CREATE_LAST, PRICE_DAO:PRICE_DAO(SERVER.BlockNumDB), - Smart:Smart, Account:Account, ArrWallet:WLData.arr, ArrEvent:EArr, ArrLog:ArrLog, }; + CONSENSUS_PERIOD_TIME:CONSENSUS_PERIOD_TIME, PRICE_DAO:PRICE_DAO(SERVER.BlockNumDB), Smart:Smart, Account:Account, ArrWallet:WLData.arr, + ArrEvent:EArr, ArrLog:ArrLog, }; if(global.WALLET) { Ret.WalletIsOpen = (WALLET.WalletOpen !== false); @@ -456,12 +456,11 @@ HTTPCaller.GetWalletInfo = function (Params) ArrLog:ArrLogClient, MaxAccID:DApps.Accounts.GetMaxAccount(), MaxActNum:DApps.Accounts.GetActsMaxNum(), MaxDappsID:DApps.Smart.GetMaxNum(), NeedRestart:global.NeedRestart, ip:SERVER.ip, port:SERVER.port, NET_WORK_MODE:global.NET_WORK_MODE, INTERNET_IP_FROM_STUN:global.INTERNET_IP_FROM_STUN, HistoryMaxNum:MaxHistory, DELTA_CURRENT_TIME:DELTA_CURRENT_TIME, FIRST_TIME_BLOCK:FIRST_TIME_BLOCK, CONSENSUS_PERIOD_TIME:CONSENSUS_PERIOD_TIME, - MIN_POWER_POW_ACC_CREATE:MIN_POWER_POW_ACC_CREATE_LAST, DATA_PATH:(DATA_PATH.substr(1, 1) === ":" ? DATA_PATH : GetNormalPathString(process.cwd() + "/" + DATA_PATH)), - NodeAddrStr:SERVER.addrStr, STAT_MODE:global.STAT_MODE, HTTPPort:global.HTTP_PORT_NUMBER, HTTPPassword:HTTP_PORT_PASSWORD, - CONSTANTS:Constants, CheckPointBlockNum:CHECK_POINT.BlockNum, MiningAccount:global.GENERATE_BLOCK_ACCOUNT, CountMiningCPU:GetCountMiningCPU(), - CountRunCPU:global.ArrMiningWrk.length, MiningPaused:global.MiningPaused, HashRate:HashRateOneSec, MIN_POWER_POW_TR:MIN_POWER_POW_TR, - PRICE_DAO:PRICE_DAO(SERVER.BlockNumDB), NWMODE:global.NWMODE, PERIOD_ACCOUNT_HASH:PERIOD_ACCOUNT_HASH, MAX_ACCOUNT_HASH:DApps.Accounts.DBAccountsHash.GetMaxNum(), - TXBlockNum:TXBlockNum, }; + DATA_PATH:(DATA_PATH.substr(1, 1) === ":" ? DATA_PATH : GetNormalPathString(process.cwd() + "/" + DATA_PATH)), NodeAddrStr:SERVER.addrStr, + STAT_MODE:global.STAT_MODE, HTTPPort:global.HTTP_PORT_NUMBER, HTTPPassword:HTTP_PORT_PASSWORD, CONSTANTS:Constants, CheckPointBlockNum:CHECK_POINT.BlockNum, + MiningAccount:global.GENERATE_BLOCK_ACCOUNT, CountMiningCPU:GetCountMiningCPU(), CountRunCPU:global.ArrMiningWrk.length, MiningPaused:global.MiningPaused, + HashRate:HashRateOneSec, MIN_POWER_POW_TR:MIN_POWER_POW_TR, PRICE_DAO:PRICE_DAO(SERVER.BlockNumDB), NWMODE:global.NWMODE, PERIOD_ACCOUNT_HASH:PERIOD_ACCOUNT_HASH, + MAX_ACCOUNT_HASH:DApps.Accounts.DBAccountsHash.GetMaxNum(), TXBlockNum:TXBlockNum, }; if(Params.Account) Ret.PrivateKey = GetHexFromArr(WALLET.GetPrivateKey(WALLET.AccountMap[Params.Account])); else diff --git a/Source/core/log.js b/Source/core/log.js index b0d3250..7cf8179 100644 --- a/Source/core/log.js +++ b/Source/core/log.js @@ -27,9 +27,10 @@ function ToLogClient(t,e,r) { t && (ToLogFile(file_name_log, t), e || (e = ""), ArrLogClient.push({text:GetStrOnlyTime() + " " + t, key:e, final:r}), 13 < ArrLogClient.length && ArrLogClient.shift()); }; -CheckSizeLogFile(file_name_error, file_name_errorPrev), global.ToLog = function (t) +CheckSizeLogFile(file_name_error, file_name_errorPrev), global.ToLog = function (t,e) { - global.ALL_LOG_TO_CLIENT ? ToLogClient(t, void 0, void 0) : ToLogFile(file_name_log, t); + void 0 === e && (e = 1), e && e > global.LOG_LEVEL || (global.ALL_LOG_TO_CLIENT ? ToLogClient(t, void 0, void 0) : ToLogFile(file_name_log, + t)); }, global.SmallAddr = function (t) { return t.substr(0, 5); diff --git a/Source/core/server.js b/Source/core/server.js index 0075023..277caf1 100644 --- a/Source/core/server.js +++ b/Source/core/server.js @@ -357,16 +357,10 @@ module.exports = class CTransport extends require("./connect") ADD_TO_STAT("USEPACKET") var CurTime = GetCurrentTime(); Meta.Node.LastTime = CurTime - 0 - if(Meta.MethodTiming.Process) + if(Meta.MethodTiming.Process && Meta.MethodTiming.Process.Worker) { var Data = this.DataFromF(Meta); - try - { - Meta.MethodTiming.Process.Worker.send({cmd:Meta.Method, Data:Data, addrStr:Meta.Node.addrStr, Context:Meta.Context}) - } - catch(e) - { - } + Meta.MethodTiming.Process.Worker.send({cmd:Meta.Method, Data:Data, addrStr:Meta.Node.addrStr, Context:Meta.Context}) } else { diff --git a/Source/core/wallet.js b/Source/core/wallet.js index c5d6900..5bd8940 100644 --- a/Source/core/wallet.js +++ b/Source/core/wallet.js @@ -234,6 +234,7 @@ class CApp { if(IsZeroArr(this.PubKeyArr)) return ; + this.AccountMap = {} DApps.Accounts.FindAccounts([this.PubKeyArr], this.AccountMap, 0) } GetAccountKey(Num) diff --git a/Source/dapp/accounts.js b/Source/dapp/accounts.js index b0e7c13..2707a61 100644 --- a/Source/dapp/accounts.js +++ b/Source/dapp/accounts.js @@ -544,7 +544,7 @@ class AccountApp extends require("./dapp") if(BlockNum < 2800000) MinPower = MIN_POWER_POW_ACC_CREATE + 2 else - MinPower = MIN_POWER_POW_ACC_CREATE_LAST + MinPower = MIN_POWER_POW_ACC_CREATE + 3 if(power < MinPower) return "Error min power POW for create account (update client)"; } diff --git a/Source/process/api-exchange.js b/Source/process/api-exchange.js index 82a07b3..2834990 100644 --- a/Source/process/api-exchange.js +++ b/Source/process/api-exchange.js @@ -9,6 +9,14 @@ */ const crypto = require('crypto'); +WebApi2.GenerateKeys = function (Params) +{ + var KeyPair = crypto.createECDH('secp256k1'); + var PrivKey = sha3(crypto.randomBytes(32)); + KeyPair.setPrivateKey(Buffer.from(PrivKey)); + var PubKey = KeyPair.getPublicKey('', 'compressed'); + return {result:1, PrivKey:GetHexFromArr(PrivKey), PubKey:GetHexFromArr(PubKey), Meta:Params ? Params.Meta : undefined}; +}; WebApi2.CreateAccount = function (Params,response) { if(typeof Params === "object" && Params.Name && Params.PubKey) @@ -17,7 +25,7 @@ WebApi2.CreateAccount = function (Params,response) }; var Body = BufLib.GetBufferFromObject(TR, FORMAT_CREATE, 1000, {}, 1); Body = Body.slice(0, Body.len + 12); - SendTransaction(Body, TR, MIN_POWER_POW_ACC_CREATE_LAST, function (result,TR,Body) + SendTransaction(Body, TR, undefined, function (result,TR,Body) { var Result = {result:result < 1 ? 0 : 1, text:TR._text, TxID:GetHexFromArr(TR._TxID.slice(0, TR_TICKET_HASH_LENGTH + 6)), BlockNum:TR._BlockNum, Meta:Params.Meta, }; @@ -26,21 +34,7 @@ WebApi2.CreateAccount = function (Params,response) }); return null; } - return {result:0, Meta:Params.Meta}; -}; -WebApi2.GetBalance = function (Params,response) -{ - if(typeof Params === "object") - { - var arr = DApps.Accounts.GetRowsAccounts(ParseNum(Params.AccountID), 1); - if(arr.length) - { - var Value = arr[0].Value; - var Result = {result:1, SumCOIN:Value.SumCOIN, SumCENT:Value.SumCENT, Meta:Params.Meta, }; - return Result; - } - } - return {result:0, Meta:Params.Meta}; + return {result:0, Meta:Params ? Params.Meta : undefined}; }; var MapSendID = {}; WebApi2.Send = function (Params,response) @@ -101,6 +95,20 @@ WebApi2.Send = function (Params,response) }); return null; }; +WebApi2.GetBalance = function (Params,response) +{ + if(typeof Params === "object") + { + var arr = DApps.Accounts.GetRowsAccounts(ParseNum(Params.AccountID), 1); + if(arr.length) + { + var Value = arr[0].Value; + var Result = {result:1, SumCOIN:Value.SumCOIN, SumCENT:Value.SumCENT, Meta:Params.Meta, }; + return Result; + } + } + return {result:0, Meta:Params ? Params.Meta : undefined}; +}; WebApi2.GetTransaction = function (Params) { if(typeof Params === "object" && Params.TxID) @@ -131,19 +139,11 @@ WebApi2.GetTransaction = function (Params) } } } - return {result:0, Meta:Params.Meta}; + return {result:0, Meta:Params ? Params.Meta : undefined}; }; WebApi2.GetHistoryTransactions = function (Params) { }; -WebApi2.GenerateKeys = function (Params) -{ - var KeyPair = crypto.createECDH('secp256k1'); - var PrivKey = sha3(crypto.randomBytes(32)); - KeyPair.setPrivateKey(Buffer.from(PrivKey)); - var PubKey = KeyPair.getPublicKey('', 'compressed'); - return {result:1, PrivKey:GetHexFromArr(PrivKey), PubKey:GetHexFromArr(PubKey), Meta:Params.Meta}; -}; var DELTA_FOR_TIME_TX = 1; function CreateTxID(body,BlockNum,Nonce) diff --git a/Source/process/main-process.js b/Source/process/main-process.js index a1498cf..ad80c84 100644 --- a/Source/process/main-process.js +++ b/Source/process/main-process.js @@ -226,14 +226,6 @@ function StartChildProcess(Item) ITEM.Worker = undefined; } } - try - { - ITEM.Worker.send({cmd:"Alive"}); - } - catch(e) - { - ITEM.Worker = undefined; - } if(!ITEM.Worker) { ITEM.LastAlive = (Date.now()) + ITEM.PeriodAlive * 3; @@ -290,6 +282,20 @@ function StartChildProcess(Item) break; } }); + ITEM.Worker.on('error', function (err) + { + ToError("ERROR IN " + ITEM.Name + " Err : " + err); + ITEM.Worker = undefined; + }); + ITEM.Worker.on('close', function (code) + { + ToError("CLOSE " + ITEM.Name); + ITEM.Worker = undefined; + }); + } + if(ITEM.Worker) + { + ITEM.Worker.send({cmd:"Alive"}); } }, 500); ITEM.RunRPC = function (Name,Params,F) diff --git a/Source/process/web-process.js b/Source/process/web-process.js index 7c3dbe2..11ef1dd 100644 --- a/Source/process/web-process.js +++ b/Source/process/web-process.js @@ -406,8 +406,7 @@ HostingCaller.GetCurrentInfo = function (Params) { var Ret = {result:1, VersionNum:global.UPDATE_CODE_VERSION_NUM, MaxNumBlockDB:SERVER.GetMaxNumBlockDB(), CurBlockNum:GetCurrentBlockNumByTime(), MaxAccID:DApps.Accounts.GetMaxAccount(), MaxDappsID:DApps.Smart.GetMaxNum(), NETWORK:global.NETWORK, CurTime:Date.now(), DELTA_CURRENT_TIME:DELTA_CURRENT_TIME, - MIN_POWER_POW_TR:MIN_POWER_POW_TR, FIRST_TIME_BLOCK:FIRST_TIME_BLOCK, CONSENSUS_PERIOD_TIME:CONSENSUS_PERIOD_TIME, MIN_POWER_POW_ACC_CREATE:MIN_POWER_POW_ACC_CREATE_LAST, - }; + MIN_POWER_POW_TR:MIN_POWER_POW_TR, FIRST_TIME_BLOCK:FIRST_TIME_BLOCK, CONSENSUS_PERIOD_TIME:CONSENSUS_PERIOD_TIME, }; if(typeof Params === "object" && Params.Diagram == 1) { var arrNames = ["MAX:ALL_NODES", "MAX:HASH_RATE_G"];