Thanks to the firstbits.com algorithm, such address don't have any firstbit shortcut :-).
|
|
|
piuk, actually firstbits is only the shortest address for one bitcoin address, but all longer shortened address will work, too. As an example all of following firstbits (or call them "prefixes") will lead to the 1Locus7cPi1wGYAnKuXAR2dWTP2BSdqvyJ: 1locus7, 1locus7c, 1locuscp, ...
It's because this Bitcoin address will everytime win the lookup in the blockchain for given prefix, SORTED by blocknum where it was firstly seen, no matter what address will be announced later. I see this as an advantage, because shortest possible address isn't necessary the fancier one. As an example I want to use 1locus even when the *real* firstbits is 1locu, because "Locus" is the name of the company bounded to the donation address. In this case, freemoney's algorithm do the work just fine.
|
|
|
You can use my torrent file, it will speed up rebuilding the index a lot (it saved ~three days on my VPS .
|
|
|
fyi, firstbits.com already indexed 1locus7* address and 1locus still points to original 1locus4*...
|
|
|
Please don't shut down Electrum now, Stratum is still not ready as a replacement for Electrum backend. But I'm hoping it will be ready soon.
I'm working on two fronts. I like libbitcoin project a lot and I think it's the future of the Stratum project, because it following all bitcoin rules, does all validations, it's programmed in really good way and don't need to be running with satoshi's Monolith. However at this point libbitcoin is not mature enough. As an example, I have no idea how to really use it, because the lack of documentation. And I'm not hiding that my C++ skills are almost non-existing.
Thanks to this I see Abe as a better candidate for the startup. Although it is bounded to original satoshi's client, it's pure python and I can understand it better ATM. And I'm trying to implement Abe in the way that it can be easily replaced by another blockchain backend.
I didn't read the armory code yet, but it's also early alpha and memory usage is outragenous (but I understand it!). I still see the lowest risk in using Abe.
Edit: About running Stratum over Tor. I'm also thinking about this, it should be as easy as point hidden service to local transport ports. But I'm thinking about changing node.get_peers() method and IRC peer lookup to be more flexible and enable also exposing alternative channels like onion address. Then it should be easy to ask any Stratum node or IRC channel for all known Tor-enabled Stratum servers (it's the feature which satoshi's client is missing).
|
|
|
No, firstbits.com will permanently resolve 1locus to 1locus4... exactly because it is ordering the results with blocknum.
The probability of the ambigous result is significant, as you see it happen to me now. 1locus7... is the real address I wanted to resolve and I found the error on the blockchain.info just by chance.
Please, do one of following: a) show big red message about different algos using on your site and firstbits.com, which is obviously true b) (temporary) hide firstbits.com and wait to Freemoney c) Rename it to something other than firstbits
|
|
|
I didn't. It hasn't thrown any errors though, so it looks like I don't need to. Running "python -c "from twisted import words"" works without problem. Hopefully nothing is broken lol
Interesting. This is needed for IRC support, but I see you in #stratum-nodes already. I'll need to check pip, if it also install some recommended dependencies or what. But if it didn't raise any exception during startup, then everything is fine.
|
|
|
Well, both you and firstbits solution is correct from some view, but both are different, becase you both use different algorithm. As firstbits.com is original author of firstbits idea and your algo is *slightly* different, you should NOT call it firstbits or follow official specification, even if you don't like it.
I understand your view, but please hide firstbits field on the site until this issue will be resolved with firstbits.com owners.
Edit: I wrote to Freemoney to give us official documentation, so it will be clear then.
|
|
|
Red Emerald, great stuff. Although I'm using those packages in other applications as well and I don't need virtualenv, I think it's good candidate to use in official installation howto. I wanted to learn how to use virtualenv, so thanks for the command, I'll try it on my server and update installation howto.
a) easy_install and pip are using the same repository. You're right that pip is newer and should be used instead of easy_install. It's my fault.
b) how did you managed to install "twisted words" package from pip? I failed to use easy_install because it has space in the name (wtf?). It's why I used apt-get.
c) I fixed installation of openssl package in README. Didn't realized that it's called "pyopenssl" instead of "openssl". Stupid ambiguous name conventions in pypi...
|
|
|
Afaik when there are two candidates for the same prefix, the older (deeper in the blockchain) should win. So for 1locus it should resolve to 1LocUS4PUJeRSbR5ekySXEM4qMBT3xemp7 forever, with or without existence of 1locus7.
Edit: It's exactly how firstbits.com's mechanism works. It loads all address with given prefix (select ... from ... where address like 'prefix%') and then pick the address with the lowest blocknum. This is the only way how to not confuse users with new addresses in the future blocks.
Edit2: firstbits.com are delayed by the purpose. firstbits resolution should be permanent, irreversible, so blockchain reorgs are dangerous. For this reason firstbits is resolving only addresses which are already deep enough in the blockchain. I think it's pretty good idea. Actually I'm writing PM to freemoney to let him write official specification of firstbits algorithm, to not confuse other developers. Anyway, lack of any documentation is pretty usual in bitcoin circles. I know all this only because I read firstbits.com source code...
|
|
|
piuk, I just found that you've an error in firstbits, obviously. http://blockchain.info/fb/1locus => 1Locus7cPi1wGYAnKuXAR2dWTP2BSdqvyJ but http://firstbits.com/1locus => 1LocUS4PUJeRSbR5ekySXEM4qMBT3xemp7 Please fix this asap, as it can lead to wrong transactions for users using firstbits AND it can also damage firstbits as a concept.
|
|
|
Thanks, now it makes sense.
|
|
|
vuce, thanks for link. But looks like Monday release isn't there yet ;-).
|
|
|
Hm, is there any reason to drop private keys after uninstallation? I tried to reinstall BitcoinSpinner and now I have nice clean wallet ;-).
As an example, bitcoin wallet using bitcoinj is keeping private keys untouched so I can uninstall and install application as I want. Well, I expected that BitcoinSpinner is doing the same. But I see "Use at your own risk", so this is just a recommendation, not a complain...
|
|
|
Hi, today I tried to use BitcoinSpinner. I have 0.9957 BTC on my wallet (confirmed), but I'm unable to spend any money from the wallet, because "Send Bitcoins" button is disabled even when I put 0.1 or 0.01 as "Amount to pay". Any idea?
|
|
|
I'm sorry for additional delay, but it looks like namecoin's blockexplorer don't index all transactions, which break my script. It is already reported to namecoin developers, so I hope it will be fixed as fast as in previous cases...
|
|
|
Moritz, I really appreciate what you're doing for the Tor network and freedom of speech generally. I'm following you for years and I want encourage other Bitcoin members to support torservers by at least small donation, because they're doing good job!
|
|
|
I just moved around a couple of my VMs and reworked a firewall. I should have stratum.stitthappens.com (California, US) up soonish. I'll play around with ports 80 and 443, but that might take a little longer to get online.
Nice! Yesterday, during the installation of chicago instance I realized that root privileges are necessary for running software on ports < 1024 (well, I known it years ago, but I simply forgot). So I'll need to implement mechanism (+init script) which will downgrade privileges after startup from root to some normal user. For now the cleanest solution is to install (for example) Nginx on 80/443 and use reverse proxy module to route traffic to Stratum instance running on >1024 ports. I think that most servers are using 80/443 ports already, so this proxied setup will be the most common use case anyway. For this purpose I defined "application/stratum" HTTP content type, so stratum traffic can be easily splitted by simple rules in http servers like Apache or Nginx. Is there a KNOWN_ISSUES file or something somewhere? What works so far? What doesn't?
It isn't documented anywhere, but I'll write something to README file soon. So far protocol + TCP/HTTP trasport implementations are complete, some example services are already working. What isn't finished and what's important: blockchain service (which use indexed blockchain to ask for address history/balance) and library for broadcasting messages subscribed by client. Blockchain service is under development by my friend and I'll implement broadcasting messages very soon, so stay tuned :-).
|
|
|
I don't think this is functionality which should be covered by official client. I feel that official client is already pretty monolithic software which is trying to solve "everything". However, I'm working on the project which (as I believe) can fulfill your requirements: stratum.bitcoin.cz. Generally it's the protocol (similar to BCCAPI, but I think a little more abstract) + server implementation, which can be run by independent entity (on your computer or as hosted solution).
|
|
|
Namecoin payout fix is harder than I expected. Script is currently indexing some stuff, I'll continue on it tomorrow.
|
|
|
|