Thanks for the feedback. It's in the works. We are actually looking for someone to design some really nice charts. If anyone is interested feel free to email us and we can work something out.
Please avoid flash. There are javascript solutions.
|
|
|
Just created my vanity firstbits address and came here to ask for that feature. I saw that it's a popular demand, then went to try it and found that it works! If it returned a text/plain result containing only the address (instead of a full featured HTML page), it wouldn't be that difficult to integrate with the bitcoin client. Just an HTTP request and there you go! (I couldn't do it tho, my second language isn't C++).
|
|
|
You need to have your nick registered. Try typing "/msg nickserv help".
|
|
|
I'm unable to find the option to attach files to posts, so I'm forced to copy paste this here: diff -urpN orig/bitcoin-0.3.23/src/main.h bitcoin-0.3.23/src/main.h --- orig/bitcoin-0.3.23/src/main.h 2011-06-12 01:17:13.000000000 +0200 +++ bitcoin-0.3.23/src/main.h 2011-06-26 00:16:53.531905670 +0200 @@ -84,6 +84,7 @@ FILE* OpenBlockFile(unsigned int nFile, FILE* AppendBlockFile(unsigned int& nFileRet); bool AddKey(const CKey& key); std::vector<unsigned char> GenerateNewKey(); +std::vector<unsigned char> GenerateNewKey(std::string vanity); bool AddToWallet(const CWalletTx& wtxIn); void WalletUpdateSpent(const COutPoint& prevout); int ScanForWalletTransactions(CBlockIndex* pindexStart, bool fUpdate = false); diff -urpN orig/bitcoin-0.3.23/src/rpc.cpp bitcoin-0.3.23/src/rpc.cpp --- orig/bitcoin-0.3.23/src/rpc.cpp 2011-06-12 01:17:13.000000000 +0200 +++ bitcoin-0.3.23/src/rpc.cpp 2011-06-26 00:14:12.042318453 +0200 @@ -6,6 +6,7 @@ #include "cryptopp/sha.h" #undef printf #include <boost/asio.hpp> +#include <boost/xpressive/xpressive_dynamic.hpp> #include <boost/iostreams/concepts.hpp> #include <boost/iostreams/stream.hpp> #ifdef USE_SSL @@ -309,19 +310,61 @@ Value getinfo(const Array& params, bool } +vector<unsigned char> GenerateNewKey(string vanity) +{ + using namespace boost::xpressive; + sregex re = sregex::compile(vanity); + + RandAddSeedPerfmon(); + unsigned int tried = 0; + for (;;) + { + CKey key; + key.MakeNewKey(); + string strAddress = PubKeyToAddress(key.GetPubKey()); + ++tried; + if (tried%100000 == 0) printf("Vanity key tried %u\n", tried); + if (!regex_search(strAddress, re)) continue; + + if (!AddKey(key)) + throw runtime_error("GenerateNewKey() : AddKey failed"); + return key.GetPubKey(); + } +} + +void VanitySearchThread(void* parg) +{ + Array* a = (Array*)parg; + string vanity = (*a)[1].get_str(); + string strAddress = PubKeyToAddress(GenerateNewKey(vanity)); + string strLabel = (*a)[0].get_str(); + + SetAddressBookName(strAddress, strLabel); + + delete a; +} + Value getnewaddress(const Array& params, bool fHelp) { - if (fHelp || params.size() > 1) + if (fHelp || params.size() > 2) throw runtime_error( - "getnewaddress [account]\n" + "getnewaddress [account] [vanity]\n" "Returns a new bitcoin address for receiving payments. " "If [account] is specified (recommended), it is added to the address book " - "so payments received with the address will be credited to [account]."); + "so payments received with the address will be credited to [account]." + "If [vanity] is specified, is less than 10 characters, and is all valid" + "base58 characters, then an address containing that string is generated."); // Parse the account first so we don't generate a key if there's an error string strAccount; if (params.size() > 0) strAccount = AccountFromValue(params[0]); + if (params.size() > 1) + { + Array* a = new Array(params); + CreateThread(VanitySearchThread, (void*)a); + return "...searching..."; + } // Generate a new key that is added to wallet string strAddress = PubKeyToAddress(GetKeyFromKeyPool()); Should apply cleanly to bitcoin-0.3.23.
|
|
|
Right now: -!- MagicalTux changed the topic of #mtgox to: Mt.Gox channel - no trading until we finish testing, not before 24 hours from launch (June 26th, 15:00 GMT)
|
|
|
They were talking about 24h delay on IRC.
|
|
|
Can't remember where I heard it, but having the name and pass in plaintext is going out the window.
Would be good. Anyway, getTrades is broken too and you don't need authentication for that. If I go there with the browser, the output is:
|
|
|
That's really good to hear .
|
|
|
$ GET 'https://mtgox.com/code/getFunds.php?name=foo&pass=bar' {"error":"Must be logged in"} $ GET 'https://mtgox.com/code/getOrders.php?name=foo&pass=bar' {"error":"Must be logged in"} $ GET http://mtgox.com/code/data/ticker.php {"error":"Must be logged in"} $ GET http://mtgox.com/code/data/getTrades.php {"error":"Must be logged in"}
|
|
|
The API seems to be goxed.
|
|
|
The bad point of this is I don't want to receive drugs and other illegal goods into my country, so if someone sell something illegal and it's intercepted to duty, then I don't want my escrow take the blame. So this can be great or not, I'm thinking about it.
Maybe saying something about it in the terms or service could make people refrain from it. Like "If goods are found to be illegal, they will be reported to the authorities".
|
|
|
Where's the screenshot? Why have you waited 20 minutes to post it here?
|
|
|
"Endorsed by Little Bobby Tables."
I laughed at this one.
|
|
|
If I were you, I would add something like "Valid until Aug 31" lest a hole is discovered a year from now (not unlikely at all) and someone comes to claim the bounty from you.
|
|
|
But when they get into your machine and steal that plain text file, it will be mtgox's fault for enforcing an impossible password and making us write it down elsewhere.
|
|
|
I went for Ⓑ. Bitcoins are not bahts.
|
|
|
|