COPA v. Wright, Court Filing, retrieved on January 29, 2024, is part of
33. C++ Code {ID_004712} {PTR-F/69/1} and {ID_004713} {PTR-F/70/1}
648. In this and the following two sections, I turn to consider documents which concern the Bitcoin Source Code. The two documents purport to be C++ source code, presented as code files for models of Bitcoin, as if Dr Wright had in October 2007 already been working on such code using C++ (the same coding language as used by Satoshi Nakamoto).
(a) COPA’s Reasons for Alleging Forgery
649. These documents are among the 71 New Reliance Documents that were inserted into the BDO Drive by the editing process and which the parties’ experts agree were manipulated [Madden / Lynch1 [12] Q/6/5].
650.1. They call on the use of the libraries “<chrono>”, <thread>” and “<random”. These libraries are part of the C++11 standard, first released in 2011. [Stroustrup 1 [4] C/23/1]
650.2. <chrono>was not first proposed until 11 June 2008. [Hinnant1 [4] C/18/1]
650.3. The first discussion of what became <chrono> was not published until 19 January 2008, and was not at that time called <chrono>. [Hinnant1 [5] C/18/2]
650.4. Within <chrono>, these documents call for the use of the function “sleep_for”. By 19 January 2008, the function was referred to as ‘sleep’ (not yet ‘sleep_for’). [Hinnant1 [5] C/18/2]
650.5. By that time, neither <chrono> nor “sleep_for” yet existed, even on the personal computer of its developer. [Hinnant1 [5] C/18/2]
651. The documents were sourced from BDOPC.raw. The section “BDOPC.raw” above is repeated. These documents were added by the Manipulation User.
(b) COPA’s Reasons for Inferring Dr Wright’s Knowledge / Responsibility
652. The effect of the tampering is to make the documents appear to be supportive of Dr Wright’s claim to be Satoshi Nakamoto, contrary to fact.
653. The further effect of the tampering is to lead to source code files being presented as if they are relevant to the case, contrary to fact. This includes human-readable comments within the source code such as “// Calculate Total Proof of Work”.
654. These documents were added to BDOPC.raw by the Manipulation User. The Manipulation User is Dr Wright. The section “BDOPC.raw” above is repeated.
655. Dr Wright has attached particular importance to these documents:
655.1. Both are said to be important to Dr Wright’s case because they are “C++ code files code for a simplified model of Bitcoin to evaluate transaction processing, cryptographic security, and consensus mechanisms. This is analysed and described in {ID_004710}, which is a LaTeX file that codes for a paper setting out a “Game Theoretical Analysis of Node Strategies in a Decentralised System”” [Wright6 E/21/3; Schedule 1 to Field1, L20/223/6)].
655.2. They are said to be one of Dr Wright’s “Notes, drafts and articles addressing technical concepts that underpin the concepts developed in the Bitcoin White Paper" [Wright6 E/21/3; Schedule 1 to Field1, L20/223/4]
656. The documents were not disclosed at the proper time. They were disclosed instead from the BDOPC.raw image. BDOPC.raw is not a reliable source because it has been manipulated by Dr Wright. The section “BDOPC.raw” above is repeated.
657. The documents were sourced from BDOPC.raw. The section “BDOPC.raw” above is repeated. These documents were added to BDOPC.raw by the Manipulation User.
(c) Dr Wright’s Explanations and COPA’s Rebuttal
658. Dr Wright claimed that this was a simplified model of Bitcoin in C++ code. It contains the Chrono time utility that was first standardised in 2011. Dr Wright said that he produced his own time library from Project Chrono, a physics engine first developed in 1998. He said that he had developed C++ libraries and commercially produced these when he was running Integrys in Australia. His account was that he used a modified version of the Project Chrono physics engine (which simulates movements of cars etc.) because he was looking at movements from one node to another. He said that he also used the “sleep_for” syntax in his code. He asserted that the reference to “random” in his code was explained by him creating random number generators since the 1980s including for a large number of online gambling sites: Wright11 {CSW/1/87} {Day5/113:24} and following.
659. COPA submitted that this explanation should be rejected as dishonest for the following reasons:
659.1. If the BDOPC.raw is accepted as being forged, it follows that documents on it should be treated as being forged unless they are documents which Mr Madden says are original to the image that was taken in October 2007.
659.2. It was not possible to use and “sleep_for” in C++ code in October 2007 prior to its public release in 2011. Whilst an earlier version of what became was mentioned publicly on 19 January 2008, the word “chrono” was not used: Hinnant{C/18/1}.
659.3. Project Chrono is a physics simulation library. The only thing that it shares with the Chrono library is the name. Mr Hinnant’s evidence was that it would take a huge amount of work to turn Project Chrono into Chrono and that it would be far quicker to build Chrono (as a time library) from scratch. He added that “the mere fact that somebody says that they derived a date time library from a physics library indicates to me that they don’t have the technical expertise to even write Chrono from scratch” because it would actually take more work to write it from a physics library than from scratch: {Day14/43:2}.
659.4. Dr Wright does not have a good understanding of C++ code, as was clear from his inability to understand what an unsigned integer is: {Day8/143:4} and following.
659.5. There is no evidence that he, or any company associated with him, has sold commercial C++ packages.
659.6. Dr Wright’s story that he used a modified physics engine to consider movements inside a computer network from one node to another is not only a fiction, but it also reveals that he simply does not understand the difference between modelling of real-world movements affected by gravity and the movements of signals in a computing network.
659.7. His excuse means that even if he did all of the above, he still managed to land on the exact nomenclature and spacing used in Chrono, which would not be developed for another four years, as set out in Mr Hinnant’s evidence (references above).
659.8. Even if Dr Wright had created his own version of a personalised Chrono library, as this was not standardised it would be regarded as “undefined behaviour” by the compiler, the effect of that being that the compiler may or may not do what the programmer intends, as “literally anything can happen when the compiler comes upon undefined behaviour”: {Day14/44:12}.
659.9. His boasts of creating random number generators for a host of online gambling sites are not backed up by any evidence, and furthermore, the evidence that there is of his work for these sites is that he was involved in IT security, not programming on the gaming side of things.
659.10. Mr Lynch agreed with Mr Madden that ID_004712 and ID_004713 were manipulated: {Q/6/5}.
(d) Conclusion
660. In addition to COPA’s submissions set out above, I refer also to the following sections in the main Judgment, [258]-[263], [637]-[646] and [647]-[650], all of which demonstrate very clearly, in my judgment, that these two documents were forged by Dr Wright.
Continue Reading Here.
About HackerNoon Legal PDF Series: We bring you the most important technical and insightful public domain court case filings.
This court case retrieved on January 29, 2024,