From d6ab87b99c76233742f36c0144819aa790cccf1e Mon Sep 17 00:00:00 2001 From: Abhishek Sinha Date: Tue, 18 Dec 2018 12:42:51 +0530 Subject: [PATCH] added unique id generation, shamirs secret functions --- supernode/index.html | 16699 ++++++++++++++++++++++------------------- 1 file changed, 8770 insertions(+), 7929 deletions(-) diff --git a/supernode/index.html b/supernode/index.html index 81aa34d..9c93490 100644 --- a/supernode/index.html +++ b/supernode/index.html @@ -86,5882 +86,5881 @@ + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - + - + - + - + - + + + - + + + + + - - - - - - + + + - + @@ -9776,12 +10607,12 @@ JSON.stringify(res_obj)); break; case "trade_buy_request_response": - if (typeof res_obj.params == "object" && typeof res_obj.params[0] == "object" - ) { + if (typeof res_obj.params == "object" && typeof res_obj.params[0] == "object") { let buyOrders_data = res_obj.params[0]; - + if (typeof localbitcoinplusplus.master_configurations.supernodesPubKeys == "object" && - localbitcoinplusplus.master_configurations.supernodesPubKeys.includes(buyOrders_data + localbitcoinplusplus.master_configurations.supernodesPubKeys.includes( + buyOrders_data .supernodePubKey)) { let isDataSignedBySuperNode = localbitcoinplusplus.wallets.prototype .verify(buyOrders_data.data_hash, buyOrders_data.supernode_sign, @@ -9798,11 +10629,11 @@ JSON.stringify(res_obj)); break; case "trade_sell_request_response": - if (typeof res_obj.params == "object" && typeof res_obj.params[0] == "object" - ) { + if (typeof res_obj.params == "object" && typeof res_obj.params[0] == "object") { let sellOrders_data = res_obj.params[0]; if (typeof localbitcoinplusplus.master_configurations.supernodesPubKeys == "object" && - localbitcoinplusplus.master_configurations.supernodesPubKeys.includes(sellOrders_data + localbitcoinplusplus.master_configurations.supernodesPubKeys.includes( + sellOrders_data .supernodePubKey)) { let isDataSignedBySuperNode = localbitcoinplusplus.wallets.prototype .verify(sellOrders_data.data_hash, sellOrders_data.supernode_sign, @@ -9826,20 +10657,22 @@ case "deposit_asset_request_response": if (typeof res_obj.params == "object" && typeof res_obj.params[0] == "object" && typeof res_obj .params[0].data == "object") { - let resp = res_obj.params[0]; - if (localbitcoinplusplus.wallets.prototype - .verify(resp.data.depositDataHash, resp.data.order_validator_sign, resp.data.order_validator_public_key)) { - addDB('deposit', resp.data); - readDB("localbitcoinUser" ,"00-01", function(user) { - if (typeof user == "object" && user.myLocalFLOAddress==resp.data.trader_flo_address) { - let counterTraderAccountAddress = - `

Please pay the amount to following address:

+ let resp = res_obj.params[0]; + if (localbitcoinplusplus.wallets.prototype + .verify(resp.data.depositDataHash, resp.data.order_validator_sign, resp.data.order_validator_public_key) + ) { + addDB('deposit', resp.data); + readDB("localbitcoinUser", "00-01", function (user) { + if (typeof user == "object" && user.myLocalFLOAddress == resp.data.trader_flo_address) { + let counterTraderAccountAddress = + `

Please pay the amount to following address:

${resp.msg}

`; - let asset_boxx = document.getElementById("asset_box"); - asset_boxx.insertAdjacentHTML('beforeend', counterTraderAccountAddress); - } - }); - } + let asset_boxx = document.getElementById("asset_box"); + asset_boxx.insertAdjacentHTML('beforeend', + counterTraderAccountAddress); + } + }); + } } break; case "withdraw_request_method": @@ -9850,7 +10683,8 @@ case "withdrawal_request_response": if (typeof res_obj.params == "object" && typeof res_obj.params[0] == "object") { if (localbitcoinplusplus.wallets.prototype - .verify(res_obj.params[0].withdrawDataHash, res_obj.params[0].order_validator_sign, res_obj.params[0].order_validator_public_key)) { + .verify(res_obj.params[0].withdrawDataHash, res_obj.params[0].order_validator_sign, + res_obj.params[0].order_validator_public_key)) { addDB('withdraw_cash', res_obj.params[0]); } } @@ -9865,12 +10699,15 @@ let buyer_btc_data_str = JSON.stringify(trade_balance_res.buyer_btc_data); let seller_btc_data_str = JSON.stringify(trade_balance_res.seller_btc_data); - let res_str = `${trade_info_str}${buyer_cash_data_str}${seller_cash_data_str}${buyer_btc_data_str}${seller_btc_data_str}`; + let res_str = + `${trade_info_str}${buyer_cash_data_str}${seller_cash_data_str}${buyer_btc_data_str}${seller_btc_data_str}`; let hashed_data = Crypto.SHA256(res_str); - - if (localbitcoinplusplus.master_configurations.supernodesPubKeys.includes(trade_balance_res.supernodePubKey)) { - if (localbitcoinplusplus.wallets.prototype.verify(hashed_data, trade_balance_res.supernode_sign, trade_balance_res.supernodePubKey)) { - // Delete orders in clients DB + + if (localbitcoinplusplus.master_configurations.supernodesPubKeys.includes( + trade_balance_res.supernodePubKey)) { + if (localbitcoinplusplus.wallets.prototype.verify(hashed_data, + trade_balance_res.supernode_sign, trade_balance_res.supernodePubKey)) { + // Delete orders in clients DB try { removeinDB("buyOrders", trade_balance_res.trade_infos.buy_order_id); removeinDB("sellOrders", trade_balance_res.trade_infos.sell_order_id); @@ -9879,12 +10716,16 @@ throw new Error(error); } - // Update balances in clients DB + // Update balances in clients DB try { - updateinDB("cash_balances", trade_balance_res.buyer_cash_data, trade_balance_res.trade_infos.buyer_flo_id); - updateinDB("cash_balances", trade_balance_res.seller_cash_data, trade_balance_res.trade_infos.seller_flo_id); - updateinDB("btc_balances", trade_balance_res.buyer_btc_data, trade_balance_res.trade_infos.buyer_flo_id); - updateinDB("btc_balances", trade_balance_res.seller_btc_data, trade_balance_res.trade_infos.seller_flo_id); + updateinDB("cash_balances", trade_balance_res.buyer_cash_data, + trade_balance_res.trade_infos.buyer_flo_id); + updateinDB("cash_balances", trade_balance_res.seller_cash_data, + trade_balance_res.trade_infos.seller_flo_id); + updateinDB("btc_balances", trade_balance_res.buyer_btc_data, + trade_balance_res.trade_infos.buyer_flo_id); + updateinDB("btc_balances", trade_balance_res.seller_btc_data, + trade_balance_res.trade_infos.seller_flo_id); } catch (error) { callback(false); throw new Error(error); @@ -10527,7 +11368,7 @@ for (let name of propNames) { let value = object[name]; - object[name] = value && typeof value === "object" ? + object[name] = value && typeof value === "object" ? deepFreeze(value) : value; } return Object.freeze(object); @@ -10558,7 +11399,7 @@ updateinDB("deposit", trader_deposits, trader_deposits.trader_flo_address); let updateSystemBTCreserve = { - id: +new Date(), + id: helper_functions.unique_id(), btc_address: trader_deposits.btc_address, balance: balance, trader_flo_address: trader_deposits.trader_flo_address @@ -10589,7 +11430,7 @@ setInterval(function () { readDBbyIndex("deposit", 'status', 1, function (res) { - res.map(function (deposit_trade) { + res.map(function (deposit_trade) { if (deposit_trade.product == "BTC") { validateDepositedBTCBalance(deposit_trade); }