It was the Bitcointalk forum that inspired us to create Bitcointalksearch.org - Bitcointalk is an excellent site that should be the default page for anybody dealing in cryptocurrency,
since it is a virtual gold-mine of data. However, our experience and user feedback led us create our site;
Bitcointalk's search is slow, and difficult to get the results you need, because you need to log in first to find anything useful - furthermore, there are rate limiters for their search functionality.
The aim of our project is to create a faster website that yields more results and faster without having to create an account and eliminate the need to log in -
your personal data, therefore, will never be in jeopardy since we are not asking for any of your data and you don't need to provide them to use our site with all of its capabilities.
We created this website with the sole purpose of users being able to search quickly and efficiently in the field of cryptocurrency
so they will have access to the latest and most accurate information and thereby assisting the crypto-community at large.
@Forp: Gave me a way to achieve what I wanted much easier than what I intended to do. I am sure I will give your java scripts a try soon! Thanks!
@JoelKatz: Yep, I can see that this is the bigger picture and export/import of transactions makes a lot of sense. With this approach one can even withdraw money from the secured wallet without ever exposing any private key to the internet. Very cool, thanks!
Once we get a good split of public/private keys in the client, I think the next step will be the ability to export, import, and delete public keys, private keys, and transactions.
I'm sure you were all with me until I said transactions. But think how useful this could be. You have a secure machine that has the private key to your savings account on it. You want to pay out some money, so you command the pay out on the secure machine. Then you export the transactions. You take the transactions to a machine that's online but doesn't have the private key to your savings account. You import the transactions. Done.
I had a similar problem and wrote a small html page with embedded javascript. It checks the blockexplorer and the exchangerate and produces a nice web page where it lists all my accounts, with my btcs and converted into EUR - without having to start the bitcoin client with my wallet and the private keys.
There are 4 files you need, bitcoin.js with the script funcitonality, config.js (where you should edit the addAccount lines, replacing the FILLIN stuff with your bitcoin addresses, style.css for some cometics and sum.html as main file. I am using a bit of jquery, so you should make sure that all files including jquery_min.js (to be picked at the jquery website) reside in the same directory.
Then just load it with firefox version 3 and confirm the security dialogue. You will have to navigate to about:config and set signed.applets.codebase_principal_support to true as well.
I am including the files below. They are very far from perfect but help me solve my problem. They do not run in firefox 5 (mozilla removed the privilege manager), but version 3.6 is fine for this purpose. Do NOT put the code on a web server, it has security issues if you do not understand what I am doing here.
function addAccount (address, name) { accounts.push ({address:address , name: name , org:true});} function fakeAccount (address) {accounts.push ({address:address, name:"other", org: false});}
/// try to log a text in case console.log is defined function myLog (text) { if (console && console.log) { try {console.log (text);} catch (x) {} } else { // alert ("Console not found for logging"); } return; }
var request = false;
var sumReceived = 0; var sumSent = 0; var timesSent = 0; var timesRcv = 0;
function makeRequest(account, mine, title) { url = SERVICE_URL+account;
// check if we are loading from local file system if (!location.href.match(/^file.*$/)) {alert ("Incorrect location for privilege escalation; rejecting; probably attempted attack"); try{alert (location.href);} catch(e){} return;} try {netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");} catch (e) {alert("Permission UniversalBrowserRead denied.");}
var request = false; request = new XMLHttpRequest(); if (!request) {alert('Cannot create XMLHTTP instance');return false;}
try{$("#last").remove();} catch (x){} // before append, remove a last line (if exists) try{$("#curr").remove();} catch (x){} // before append, remove a last line (if exists)
$("#mytable").append("
" + "
"+ request.title + "
" + request.account + "
" + received + "
" +rTx + "
" + sent + "
" +sTx+ "
" + (received-sent) + "
" );
finalize(); // calculate overall sums
// alert(string); } else { alert('There was a problem with the request:'+request.status); console.log (request); } } }
I was reading through the guides how to set aside some of your bitcoins in a secured wallet. (Works like this: Create a new wallet on a second PC without internet access, create some addresses in it and store the wallet somewhere safe. Later on just send your money to the addresses in that wallet from your day to day wallet to tuck them away. Check with the blockexplorer if your funds arrived at the secured wallet. Never connect your secured wallet with the internet...)
But I found it a bit inconvenient to have to use the blockexplorer to verify whether your funds arrived safely in your secured wallet. So here is the idea: If I could import the address from the secured wallet into my everyday wallet (but not the private keys!), I could let the bitcoin client take care of monitoring the transactions that concern my secured wallet. This way I could see (an estimate of) the balance in my secured wallet without compromising its security.
I could try coding this, but would you say it might be worth the effort (i.e. would it have a chance to be pulled)?
BTW: A side effect is that this functionality could be used to monitor the balance on arbitrary addresses conveniently with the client, but you can do this currently with the blockexplorer anyway.