function check_crypt_balance_range($public_key, $block_start = 0, $block_end = 0) { set_decrypt_mode(); // Figure out which decrypt method can be best used //Initialize objects for Internal RSA decrypt if ($GLOBALS['decrypt_mode'] == 2) { require_once 'RSA.php'; $rsa = new Crypt_RSA(); $rsa->setEncryptionMode(CRYPT_RSA_ENCRYPTION_PKCS1); } if ($block_start == 0 && $block_end == 0) { // Find every Time Koin sent to this public Key $sql = "SELECT public_key_from, public_key_to, crypt_data3, attribute FROM `transaction_history` WHERE `public_key_from` = '{$public_key}' OR `public_key_to` = '{$public_key}' "; } else { // Find every TimeKoin sent to and from this public Key in a certain time range. // Covert block to time. $start_time_range = TRANSACTION_EPOCH + $block_start * 300; $end_time_range = TRANSACTION_EPOCH + $block_end * 300; $sql = "SELECT public_key_from, public_key_to, crypt_data3, attribute FROM `transaction_history` WHERE (`public_key_from` = '{$public_key}' AND `timestamp` >= '{$start_time_range}' AND `timestamp` < '{$end_time_range}')\n\t\tOR (`public_key_to` = '{$public_key}' AND `timestamp` >= '{$start_time_range}' AND `timestamp` < '{$end_time_range}')"; } $sql_result = mysql_query($sql); $sql_num_results = mysql_num_rows($sql_result); $crypto_balance = 0; $transaction_info; for ($i = 0; $i < $sql_num_results; $i++) { $sql_row = mysql_fetch_row($sql_result); $public_key_from = $sql_row[0]; $public_key_to = $sql_row[1]; $crypt3 = $sql_row[2]; $attribute = $sql_row[3]; if ($attribute == "G" && $public_key_from == $public_key_to) { // Currency Generation // Decrypt transaction information if ($GLOBALS['decrypt_mode'] == 2) { $rsa->loadKey($public_key_from); $transaction_info = $rsa->decrypt(base64_decode($crypt3)); } else { $transaction_info = tk_decrypt($public_key_from, base64_decode($crypt3), TRUE); } $transaction_amount_sent = find_string("AMOUNT=", "---TIME", $transaction_info); $crypto_balance += $transaction_amount_sent; } if ($attribute == "T" && $public_key_to == $public_key) { // Decrypt transaction information if ($GLOBALS['decrypt_mode'] == 2) { $rsa->loadKey($public_key_from); $transaction_info = $rsa->decrypt(base64_decode($crypt3)); } else { $transaction_info = tk_decrypt($public_key_from, base64_decode($crypt3), TRUE); } $transaction_amount_sent = find_string("AMOUNT=", "---TIME", $transaction_info); $crypto_balance += $transaction_amount_sent; } if ($attribute == "T" && $public_key_from == $public_key) { // Decrypt transaction information $transaction_info = tk_decrypt($public_key_from, base64_decode($crypt3)); if ($GLOBALS['decrypt_mode'] == 2) { $rsa->loadKey($public_key_from); $transaction_info = $rsa->decrypt(base64_decode($crypt3)); } else { $transaction_info = tk_decrypt($public_key_from, base64_decode($crypt3), TRUE); } $transaction_amount_sent = find_string("AMOUNT=", "---TIME", $transaction_info); $crypto_balance -= $transaction_amount_sent; } } // // Unset variable to free up RAM unset($sql_result); return $crypto_balance; }
} } echo $crypto_balance; } // End Permission Check // Log inbound IP activity log_ip("AP", scale_trigger(100)); exit; } //*********************************************************************************** //*********************************************************************************** if ($_GET["action"] == "pk_gen_total") { if (check_hashcode_permissions($hash_permissions, "pk_sent") == TRUE) { // Total of *all* the Timekoins ever generated by the provided public key $public_key = filter_sql(base64_decode($_POST["public_key"])); set_decrypt_mode(); // Figure out which decrypt method can be best used //Initialize objects for Internal RSA decrypt if ($GLOBALS['decrypt_mode'] == 2) { require_once 'RSA.php'; $rsa = new Crypt_RSA(); $rsa->setEncryptionMode(CRYPT_RSA_ENCRYPTION_PKCS1); } // Find every Time Koin sent to this public Key $sql = "SELECT public_key_from, public_key_to, crypt_data3, attribute FROM `transaction_history` WHERE `public_key_from` = '{$public_key}'"; $sql_result = mysql_query($sql); $sql_num_results = mysql_num_rows($sql_result); $crypto_balance = 0; $transaction_info; for ($i = 0; $i < $sql_num_results; $i++) { $sql_row = mysql_fetch_row($sql_result);