1
|
Bitcoin / Bitcoin Discussion / Re: Is Bitcoin legally anonymous
|
on: August 06, 2011, 03:52:47 AM
|
So every transaction can be traced to its origin. If I connect to the network through TOR and generate 50 BTC, and then buy some substance with it, it's very hard to trace that to me. But even if I bought coins at an exchange, and they, as required, have verified my identity, I can still do the following:
- create another wallet (possibly online, like instawallet) - transfer some BTC to that wallet - buy substance with that second wallet - erase that second wallet
now I can always say in court that I paid some other guy for his service (drug withdrawal consultancy?) and that's him who later bought the substance. While obvious lie, can that be considered a proof beyond reasonable doubt that I indeed bought the substance?
I think trying to explain how the Bitcoin system works to a jury will most likely be a lost cause, unless & until BTC become much more mainstream. Most people won't understand how it works, so they won't understand how the law enforcers would connect the dots from you to the drug dealer. Unless I'm mistaken, what kji is trying to say is that the police likely wouldn't use the BTC as direct evidence. More likely, the investigators will use the transaction history to draw up a list of potential suspects, which will include you and a bunch of other people who have nothing to do with the drug transactions. Then, they will dig further into each suspect using standard, existing investigative techniques. They'll narrow the list to a few suspects (including you) and gather evidence in the "traditional" way (surveillance, phone taps, paid informants - whatever they currently do), and finally arrest you based on that evidence.
|
|
|
2
|
Bitcoin / Development & Technical Discussion / Re: Why so many 'inline' ?
|
on: May 18, 2011, 03:12:10 AM
|
Some points about 'inline'. - inline on a virtual member is ignored. It's impossible to have an inline virtual.
If the compiler can determine the dynamic type of an object at compile time, then it most certainly can omit virtual lookup, and either call the function directly or unroll it inline if it so chooses. Consider this code: class base { public: virtual void SomeFunction() { cout << "In base::SomeFunction" << endl; } };
class derived : public base { public: virtual void SomeFunction() { cout << "In derived::SomeFunction" << endl; } };
void f() { derived d; d.SomeFunction(); }
The compiler can optimize f() any way it sees fit. In fact, it could compile the code as if you had written: void f() { cout << "In derived::SomeFunction" << endl; }
since there is no observable difference between that and what you wrote. Edit: minor edit to clean up mis-matched 'list' tags
|
|
|
3
|
Bitcoin / Bitcoin Discussion / Re: How do we prevent money laundering and assasinations?
|
on: May 18, 2011, 02:59:55 AM
|
Let's hope Bitcoin is a key enabler for ideal government and liberty.
The ideal government is no government. -- sortedmush The ideal government is self-governance --deadlizard The ideal quote is my quote --fetokun The ideal ism is idealism -- sortedmush This quote space for lease. BTC accepted. -- Jim
|
|
|
4
|
Other / CPU/GPU Bitcoin mining hardware / Re: Official DiabloMiner Thread
|
on: May 18, 2011, 02:45:48 AM
|
Forgot to cd /; sudo tar zxvf /path/to/AMD-APP-SDK-2.4/icd-registration.tgz?
Nope, didn't forget. Nothing I read anywhere said I had to do that. So I did, and now I'm back where I started: as soon as I start DiabloMiner I'm booted out of my login session. You know how at the top of this thread you say that Ubuntu doesn't work? I think you need to mention Debian as well. I guess that makes sense - Ubuntu is a derivative of Debian, after all. So, now it's time to reformat and install Windoze, and see if that goes any better.
|
|
|
6
|
Other / CPU/GPU Bitcoin mining hardware / Re: Official DiabloMiner Thread
|
on: May 17, 2011, 01:27:52 AM
|
Make sure you have at least 11.1, and it was installed right, and you built the kernel module and its being loaded before X starts. Your 2D and 3D acceleration is dead, and OpenCL isn't going to work either. And since you'd be on 11.1 or later, make sure you're using SDK 2.4
Thanks for the tips. I have been a bit busy lately, so it might be a day or two before I get to this. Meanwhile, it's limping along CPU-mining :-/ OK, it's been a bit more than "a day or two" :-) Recap: I have two Radeon HD 6870s running under Debian. I ended up wiping the system and re-installing from scratch. I have 11.3 installed, with SDK 2.4. It's not crashing any more, but now I get the error "No OpenCL platforms found". Any suggestions?
|
|
|
7
|
Bitcoin / Development & Technical Discussion / Re: What are the best alternatives to SHA256 ?
|
on: April 30, 2011, 03:58:34 PM
|
Alternating is a good idea. Or perhaps one could find a system where different types of work can exist side by side. Nodes could be free to choose if they wanted the added security or not.
Security is not an option. One of the big difficulties with different types of work is the added complexity it introduces. Complexity is the enemy of security. The primary goal for Bitcoin must be security, otherwise the entire system can collapse.
|
|
|
8
|
Other / CPU/GPU Bitcoin mining hardware / Re: Official DiabloMiner Thread
|
on: April 29, 2011, 03:43:59 AM
|
Make sure you have at least 11.1, and it was installed right, and you built the kernel module and its being loaded before X starts. Your 2D and 3D acceleration is dead, and OpenCL isn't going to work either. And since you'd be on 11.1 or later, make sure you're using SDK 2.4
Thanks for the tips. I have been a bit busy lately, so it might be a day or two before I get to this. Meanwhile, it's limping along CPU-mining :-/
|
|
|
9
|
Bitcoin / Bitcoin Discussion / Re: Gavin will visit the CIA
|
on: April 29, 2011, 03:19:13 AM
|
0.8 THash/s and counting, grow baby grow the drones are still asleep.
Wait, wait - I'm still trying to get my GPU mining rig set up! Let the hash rate stay the same until I at least mine ONE block! :-D
|
|
|
11
|
Bitcoin / Bitcoin Discussion / Re: Gavin will visit the CIA
|
on: April 29, 2011, 02:54:13 AM
|
Oh, my objections aren't of the "spy novel" variety.
That comment wasn't aimed at you. I don't think. I'd have to go back and re-read the entire thread to be sure. :-) I'm just talking about the motives of those who represent and help drive open-source communities forward. The chances that Gavin will be bought off by the CIA as a result of this conference speech are nil. But it leads to potentially unfortunate project-management dynamics if, when the one chosen as "development lead" is asked to speak somewhere, he pockets the fee as if he has earned it personally rather than as a result of the efforts of the community of developers.
Well, by that logic, one could argue that all the bitcoins ever mined are the result of the efforts of the community of developers, and should not be pocketed by the miners. As far as I'm concerned, what Gavin does with whatever money is left over after he's finished is none of our damn business. You clearly disagree, and it's pretty clear neither one of us is going to convince the other. Gavin's accepting of the engagement and fee is not going to affect my involvement in this project (I have already submitted one pull request and have more planned when time permits). BTW - we do agree about certain people distorting the discussion :-)
|
|
|
13
|
Bitcoin / Bitcoin Discussion / Re: Gavin will visit the CIA
|
on: April 29, 2011, 02:01:11 AM
|
And you'd trust him as much regardless? What if it were a $300,000 yearly contract? Would you trust him to speak for the community regardless of who was paying him and how much?
I don't really understand your objections to all this. I don't have to trust Gavin, I can trust the source code. Gavin's not the only one who understands what the code does and how it works. If the CIA, or any other TLA-organization, tries to inject some suspicious code, there are enough programmers involved that the bad code will be quickly spotted. And if the community feels he no longer speaks for them, then the community can easily speak up and say that he no longer represents our viewpoint. I think some people in this thread have been reading too many spy novels.
|
|
|
15
|
Bitcoin / Bitcoin Discussion / Re: losing bitcoins?
|
on: April 24, 2011, 11:42:58 PM
|
I think I understand what you're asking - you broadcast a transaction to everyone, so it should be included in both chains eventually, so it doesn't matter what chain is the longest.
To refine this slightly: chances are your transaction will be included in both sides of the split. Transactions that are only on the shorter side of the split will automatically get transferred over to the longer side. Except for the first transactions in the block, which pay the miner, because they lost the bid.
|
|
|
16
|
Other / CPU/GPU Bitcoin mining hardware / Re: Official DiabloMiner Thread
|
on: April 24, 2011, 11:15:00 PM
|
You're supposed to start DiabloMiner in a terminal. It is not a GUI app.
I did start it from a terminal. Please post the entire error, then. I can't - the terminal displays two messages, which look normal, then disappears along with my login session. :-( I just checked the syslog, and there are no errors logged, but I did notice on login I get some warnings: Apr 24 18:43:08 griphook AptDaemon: INFO: Initializing daemon Apr 24 18:43:31 griphook acpid: client 9131[0:0] has disconnected Apr 24 18:43:31 griphook acpid: client connected from 10969[0:0] Apr 24 18:43:31 griphook acpid: 1 client rule loaded Apr 24 18:43:32 griphook gnome-session[10994]: atk-bridge-WARNING: AT_SPI_REGISTRY was not started at session startup. Apr 24 18:43:32 griphook gnome-session[10994]: atk-bridge-WARNING: IOR not set. Apr 24 18:43:32 griphook gnome-session[10994]: atk-bridge-WARNING: Could not locate registry Apr 24 18:43:32 griphook gdm-simple-greeter[11010]: Gtk-WARNING: /scratch/build-area/gtk+2.0-2.20.1/gtk/gtkwidget.c:5628: widget not within a GtkWindow
/var/log/Xorg.0.log has some interesting, and possibly useful info: (EE) fglrx(1): Multiview is only supported with acceleration; this screen will now shutdown. (EE) fglrx(1): PreInit failed (II) fglrx(1): === [xdl_x750_atiddxPreInit] === end (EE) fglrx(0): Failed shutdown interrupts. Error -9 (II) UnloadModule: "fglrx" (II) UnloadModule: "fb" (II) UnloadModule: "fglrxdrm" (II) UnloadModule: "fglrxdrm" (--) Depth 24 pixmap format is 32 bpp (EE) fglrx(0): atiddxDriScreenInit failed, GPS not been initialized. (WW) fglrx(0): *********************************************************** (WW) fglrx(0): * DRI initialization failed * (WW) fglrx(0): * kernel module (fglrx.ko) may be missing or incompatible * (WW) fglrx(0): * 2D and 3D acceleration disabled * (WW) fglrx(0): ***********************************************************
(II) Module amdxmm: vendor="X.Org Foundation" compiled for 1.4.99.906, module version = 2.0.0 (EE) fglrx(0): XMM failed to open CMMQS connection.(EE) fglrx(0): (EE) fglrx(0): XMM failed to initialize
(WW) fglrx(0): board is an unknown third party board, chipset is supported (EE) fglrx(0): ACPI: DRM connection failed (WW) fglrx(0): Hasn't establisted DRM connection (II) fglrx(0): [FB] MC range(MCFBBase = 0xf00000000, MCFBSize = 0x40000000) (WW) fglrx(0): No DRM connection for driver fglrx.
and this one: (II) fglrx(0): Modeline "1440x900"x0.0 136.75 1440 1536 1688 1936 900 903 909 942 -hsync +vsync (70.6 kHz)
Backtrace: 0: /usr/bin/Xorg (xorg_backtrace+0x28) [0x4acd58] 1: /usr/bin/Xorg (0x400000+0x61a09) [0x461a09] 2: /lib/libpthread.so.0 (0x7f7c7c125000+0xef60) [0x7f7c7c133f60] 3: /usr/lib/xorg/modules/drivers/fglrx_drv.so (xdl_x750_swlDriOpenConnection+0x25) [0x7f7c784a28d5] 4: /usr/lib/xorg/modules/drivers/fglrx_drv.so (0x7f7c780bb000+0x3d7150) [0x7f7c78492150] 5: /usr/lib/xorg/modules/drivers/fglrx_drv.so (0x7f7c780bb000+0x3d3d82) [0x7f7c7848ed82] 6: /usr/bin/Xorg (0x400000+0x48c84) [0x448c84] 7: /usr/bin/Xorg (0x400000+0x25c35) [0x425c35] 8: /lib/libc.so.6 (__libc_start_main+0xfd) [0x7f7c7ac29c4d] 9: /usr/bin/Xorg (0x400000+0x257e9) [0x4257e9] Segmentation fault at address 0x8
Fatal server error: Caught signal 11 (Segmentation fault). Server aborting
Please consult the The X.Org Foundation support at http://wiki.x.org for help. Please also check the log file at "/var/log/Xorg.0.log" for additional information.
Any other logs I should look at?
|
|
|
17
|
Bitcoin / Mining / Re: Just bought a dremel...
|
on: April 24, 2011, 10:35:12 PM
|
I used a blade lodged into a groove in my soldering iron. I spent quite a while finishing it off, as I preferred to remove too little at a time, rather than too much.
Probably a wise decision, since it's a lot easier to remove a little more than it is to put a little back :-D
|
|
|
18
|
Bitcoin / Mining / Re: Bitcoin mining pointless?
|
on: April 24, 2011, 10:27:04 PM
|
Surely after a while security of the network stops becoming an influencing factor. There reaches a threshold where you can clearly say 'the system is secure'. From what I can gather this is at some point where 50% or more of the computational power of the network is not within the control of a single user? I don't know where this point is, I'm sure this figure is completely wrong, but equally I'm sure the point was passed ages ago when bitcoin was in its infancy, when security was still a legitimate concern.
The 50% figure is correct for certain types of attack, particularly ones involving modifying the block chain. There are other attacks which do not rely on controlling a large portion of the network. The Finney Attack can be carried out by a single user. The basic attack is: - have some Bitcoins on hand. - Create a transaction to send those Bitcoins to yourself, but don't publish the transaction - Start mining, with the above transaction in the block. - When you find the solution, then immediately create a NEW transaction, sending the same Bitcoins to some unsuspecting victim, who acknowledges payment and sends you whatever it was you paid for - Publish your block If your timing is right, you have just successfully double-spent your coins. The only known defense against that attack is to keep the difficulty of creating a block containing arbitrary data as high as possible, requiring the attacker to expend a lot of effort and time. In order to make the attack worthwhile, the attacker will select high-value payments, which (presumably) the recipients will check more carefully before acknowledging. By this I mean, the security of the system increases as more and more user mine bitcoin but the advantage to security of having 100 million unique miners is, in truth, of no real difference to having just 1 million.
I doubt we'll even get to 1 million miners. As the system matures the goal is to have the majority of users running a "light" client, which does not mine. In fact, right now the option to turn on mining is being removed from the default client - there's no point to mining unless you have a GPU setup. The gold rush has peaked - at this point, only established miners and really determined newcomers will likely set up shop and continue mining. I'm guessing this [protein folding's centralization] doesn't work for something decentralised like bitcoin.
Ah, yes - that's another consideration. You're probably right. I don't claim to have a solution of how this surplus processing power could be better utilised, but at the moment it seems a tiny bit crazy that all those processor cycles are doing nothing more than solving puzzles of no consequence.
Then you still have not grasped the fundamentals of Bitcoin. The puzzle has actual dollar value. Solving a puzzle will earn you 50 Bitcoins, which according to Mt. Gox you can redeem right now for about $80. That hardly seems "no consequence" to me!
|
|
|
19
|
Bitcoin / Mining / Re: Bitcoin mining pointless?
|
on: April 24, 2011, 09:54:59 PM
|
The particular choice -- as the developer of the network, not a client of it! -- is arbitrary, or at least arbitrary within some constrained range. As a very simple example, imagine that one candidate hash algorithm favors hardware produced by a violent, morally repugnant regime and another favors hardware produced by a regime you want to support; why would you -- again, as the developer of the system, not a user of it! -- choose the former over the latter?
I will not succumb to your reductio ad absurdium argument, but rather I will point out that, when you are designing a system, you tend to focus on just the system and the immediate problem. Yes, the design choices are arbitrary, but the job of the designer is, by definition, to make arbitrary choices. Satoshi was designing a digital currency system - why on earth would he include something totally unrelated to digital currency? I'm not certain what the argument against trying to find a more productive side-effect for the mining process would be. The difficulty of the task need not be narrowly predictable for a protocol similar to Bitcoin to work; it just needs to be predictable enough.
Well, I'm going to go out on a limb here and potentially alienate myself from a lot of the people who've been around longer than I have, but there seems to be almost a reverence for "the way Satoshi set it up." It seems that Satoshi and an anointed few have the master plan for details of the road map, and any deviation from that is frowned upon. Now, putting aside my cynicism, I've already outlined a potential argument against different proofs of work, namely that you need a problem that can be easily verified and cannot be cheated. I don't know if those problems can be easily verified. The amount of work required to modify the system to allow different types of proofs of work is probably far more than the benefits Bitcoiners would derive, especially for something that's considered a "nice to have." Some more potential arguments: What if someone doesn't agree with the project that's chosen as the beneficiary of the work? Can we find a project that everyone can agree on? What if we don't? Do we deny someone access to Bitcoin because they don't agree with the beneficiary? That doesn't seem right to me. Your same reductio ad absurdium argument can be inserted here with little modification. Bitcoin is open source, and anyone can review the software. At the moment, it requires a basic understanding of cryptography to verify that the code does what it claims to do. If you add in protein folding, then in order to understand and verify that the proof of work cannot be cheated, then you now need to become familiar with protein folding. If it gets changed to finding more values of pi, then you have to become familiar with how to calculate pi. The more problem domains you add, the more complex the system becomes, and the easier it will be for someone to exploit a weakness and cheat. I think that's the most compelling argument: it adds unnecessary complexity. As an expert on cryptography, and by inference an expert on security (the two are not the same), you know that complexity is the antithesis of security. The existing system is simple, it works, and is secure. Yes, it would be nice if it did something that also had a useful side benefit, but I will take simple and secure over complex and unknown any day.
|
|
|
|