Any has an idea?
Did you not read my my reply? Double spends are *impossible* to pull off once you have >1 confirmations (otherwise it would have failed years ago).
|
|
|
Oh - now I get what you're asking and the answer is *yes* I think it may be possible to create such a script although I don't know exactly what the purpose of it would be (whereas M of N makes more sense).
Any *second* attempt to spend the UTXOs will *fail* (so the existence of such scripts should be of no concern). So if you are concerned that tx output scripts could be written to try help with doing "double spends" then basically I think there is nothing to worry about. Also AFAIA miners will simply not include tx scripts that do not "make sense" into blocks that they mine (i.e. there is no magical script to let someone get away with a double spend).
The reason to wait for confirmations (although 6 is not really the "magic" number) is to be assured that a tx *has* been mined (1 confirmation) and that a *reorg* won't see an attempted double spend as instead being the original spend (> 1 confirmation).
|
|
|
One basic starting point that might help is to understand that all tx's assign UTXOs (which are previous tx's to your own addresses that you haven't spent yet) to "output addresses".
The confirmation process ensures that "double spending" cannot take place - the 6 confirmations that the Satoshi client uses to "clear" a tx is arbitrary and for most tx's 1 or 2 confirmations should be enough (0 confirmations is never safe).
Mostly your decision upon "how many confirmations" will come down to "how much am I risking" (i.e. if it is only a coffee then you are not taking much of a risk but if it is a house I think I'd be waiting for 6).
|
|
|
Actually a Project had been created in CIYAM Open for this very thing a while back (was never actually "opened" though) - if this could be useful (in terms of creating Project Areas and then specific Project Tasks) then CIYAM Open would be happy to help manage this free of charge (if the current Project Owner is not interested to do that then I will volunteer my own time to help out).
|
|
|
Well, my question wasn't about likelihood of this happening, but whether such block would allow one to construct valid blockchain of arbitrary length.
True - but the likelihood is *why* the answer is not relevant (i.e. in "fairyland" we can have such a blockchain but in the real world we cannot). Seriously if you want to *worry* about something then worry that the banks invent Bankcoin (which may or may not just be a bitcoin clone) and spend say 1 billion USD promoting it (nothing to them) wiping out all value for BTC after governments all decide that its usage should be banned.
|
|
|
As mentioned the previous hash needs to be included - the likelihood of SHA256( x ) being identical to SHA256( SHA256( x ) ) (in reality each hash actually being two hashes) is so close to zero as to be only be likely to occur sometime after firm evidence for the existence of the tooth fairy is published in Science magazine.
|
|
|
It doesn't seem to make much sense to talk about "cracking" a hash algorithm (it isn't an encryption or signature algo after all) but certainly a weakness in MD5 did make it possible to create different "strings" that would return the same hash (also known as "birthdays").
As each block has to include the previous blocks hash in its own "string" (plus other information including the timestamp and nonce) it doesn't make much sense that even if such a weakness was found in SHA256 that it would matter (unlike the rather more serious situation of using such hashes for say a CA cert).
Also even if ECDSA were to be "cracked" (i.e. making it easy to determine the private key from a public key) that would only be a problem if you re-use addresses (a good reason why you are advised not to).
|
|
|
I would not enter into a "competition" to do a task competing with 5 other people - the chance of getting paid anything is 1/5 - may as well bet on Satoshi Dice than actually do any work.
(if you really think you are going to get quality this way then I'd ask you to look at the translations tasks for blockchain.info for reference- apparently a few of them are just Google translate)
|
|
|
Could forum funds sponsor a bounty for this? That's probably the quickest way to get this done.
Please not a *bounty* - if this is going to be done the *choose* someone to do it and let them be the *sole* person doing it. Having people "competing" for a bounty is something that we really don't need any more of (it leads to arguments and the lowest quality work - just look at how well the "bounties" have been working out for blockchain.info). If theymos wants to do this then I will happily create a Project on CIYAM Open (for free) and manage the task (for free) to get it done properly.
|
|
|
Your wallet has a "pool" of addresses (100 by default) so you don't need to back it up after each transaction but regular backups would be advisable (also note that your wallet keeps the "labels" you might assign to addresses so these could be lost if not backed up).
There is no simple way to see all your addresses in the current version of bitcoin-qt (you can play around with the console if you are really keen) but if the new "coin control" implementation gets merged then there will be an "expert" mode that would allow you to.
All payments are made from what are known as UTXOs (unspent transaction outputs) which put simply are the "coins" that have been sent to you (including any "coins" that you might have mined).
Each UTXO needs to be completely spent when used to create a transaction - so if you have 1 UTXO of 1 BTC and you want to send someone 0.25 BTC then the *only* way this can be done is to create a tx with 2 outputs - one of 0.25 and the other of 0.75 (with the latter being a "change" address).
Also note that "fees" are simply the difference between the total of the UTXOs and the transaction outputs (so if you had nominated to pay a 0.0005 fee then the 0.75 amount would become 0.7495).
|
|
|
But you do intend XRP to become a real currency, not just as some sort of stamps, don't you?
I think it is mostly just a very clever experiment in social engineering - they stated that XRP are "postage stamps" yet people are now buying them for large amounts of BTC and when they finally open source and show they are "postage stamps" after all they will have made millions in selling them plus not being able to be shown as liars. Although I can't respect it I can certainly take my hat off to the cleverness of it.
|
|
|
For those just interested in getting a Live OS to be able to compile Bitcoin please check out https://github.com/ciyam/safe (the version of Bitcoin included is not the latest but if people are interested in this then I'll fix that). The distro also includes various tools for being able to sign tx's offline that do not require the offline PC to have a blockchain (and does the information transfer with QR codes to be 100% "air-gapped").
|
|
|
I think that the speculation in XRP might actually be the biggest *problem* for Ripple.
Right now the Open Coiners can "sell" their self-printed currency for 1 BTC per 10K (and they have billions of them).
Once Ripple actually is *working* then IF the XRP are used as what we were all told their purpose is (i.e. postage stamps) then they will be worth very little (i.e. expect a *huge crash*).
This will hurt many of the speculators (who for sure have been rather silly to gamble on it) but I wonder if the backlash will actually *kill* the project (i.e. is this gamble going to actually pay off?).
|
|
|
I am considering to offer mentoring for those wishing to get into trying to understand the depths of the C++ programming language, its Standard Library and some of the most useful patterns and idioms.
Areas that I am thinking of covering (with detailed source code all being available in the CIYAM Open project) include the following:
Using Exceptions Writing Portable Code Type Safety and the advantages of Compilation Dynamic Dispatch and Shared/Dynamic Libraries Smart Pointers and the use of Scoped Objects Recursive Descent and LL parsers Multithreading Guidelines (especially in relation to doing DB coding) Locking and Resource Management Procedural, Object Oriented, Generic, Functional and Template Meta Programming Sockets and basic Internet Protocols Tracing and Debugging (without using a debugger)
I have over 15 years of professional C++ programming and have devised a complete web platform that is built in C++ (maybe the only one of its kind). I have done a lot of work in all of the above areas (which are actually all included in the CIYAM platform) and used to be fairly active in comp.lang.c++.moderated years ago (before around 2002).
Rates can be negotiated and if you are willing to do some small tasks for the CIYAM project then the mentoring could even be free of charge.
I know many of the members of this forum think that C++ is a "dinosaur" language but I think when it comes to security there is really nothing better and when it comes to understanding Bitcoin then it could be of real benefit to be able to better understand the source code.
(welcome to PM me for further dicussion)
Cheers,
Ian.
|
|
|
kjj ... I did see your post in the other thread ... SatoshiDice and the like can auto return funds, so there must be a way
They cannot do this reliably hence their warnings about what kind of client you need to be using to use their site - this has been discussed ad-nauseum - please do some searching (it just doesn't work the way you think it does).
|
|
|
Purely from a C++ coding style perspective I see no reason to be "indenting" the function calls you have (indenting is normally done for code *blocks* that are surrounded by braces or for conditional expressions). You might consider using an "empty code block" to make it more express the indenting you are after though: ... glPopMatrix(); { glBegin(GL_TRIANGLES); ... glEnd(); }
|
|
|
How do you rescan? When I say I opened it I clicked on wallet.dat and chose qt as default program to open.
It doesn't work like that - you can't treat a wallet as a "document". Don't worry about the internet connection - now if you have been able to "find" your new wallet then can you also "find" your old one? If so then please: 1) make backup copies of both wallet files and give them appropriate names (e.g. wallet.dat.new and wallet.dat.old) 2) *replace* you new wallet with your old one Now start Bitcoin (and don't do that by double clicking on a wallet as that makes no sense).
|
|
|
Sorry but "opened my wallet.dat file using the new qt client" isn't making much sense - you don't *open* a wallet instead the software creates a new one if one does not exist (for the user).
I am guessing you just need to replace your new wallet.dat (the one that has zero balance) with the old one and then do a "rescan".
Also be sure you keep backups of all files that you are playing with.
|
|
|
It is so strange today, Normally when I withdraw my BITCOIN from weexchange, I can tracking my transaction within minutes..In this time, I can't find anything... I am bit worry.,.these are all my Bitcoins....
AFAIA they are legit and have a good rep so I wouldn't panic - as stated with 0 tx fee it might end up taking quite a while and hopefully their support will be able to resolve it if the problem is a tx that simply won't work (if so no BTC should be lost).
|
|
|
|