did-you-know? rent-now

Amazon no longer offers textbook rentals. We do!

did-you-know? rent-now

Amazon no longer offers textbook rentals. We do!

We're the #1 textbook rental company. Let us show you why.

9780137035335

The Software IP Detective's Handbook Measurement, Comparison, and Infringement Detection

by
  • ISBN13:

    9780137035335

  • ISBN10:

    0137035330

  • Edition: 1st
  • Format: Paperback
  • Copyright: 2011-04-28
  • Publisher: PEARSO
  • Purchase Benefits
List Price: $59.99

Summary

#x1C;IP, software plagiarism, patents, and copyrights are complicated subjects. This book explains the key elements better than anything else I have seen. I highly recommend it to anyone who develops software or needs to protect proprietary software algorithms, and to all attorneys involved with IP litigation.#x1D; #x13;Capers Jones, President, Capers Jones & Associates LLC #xA0; #x1C;Bob has done a fantastic job making computer science forensics understandable to attorneys, engineers, and managers. This is the ultimate handbook for expert witnesses, due diligence execution, and developing baselines for software valuation. Buy it before your competitors do!#x1D; #x13;Don Shafer, CSDP, CTO, Athens Group LLC The Definitive Software IP Guide for Developers, Managers, Entrepreneurs, Attorneys, and Consultants #xA0; The Software IT Detective#x19;s Handbookis the definitive reference for every software intellectual property owner, developer, manager, attorney, or consultant called upon to uncover theft#x13;and, if necessary, prove it in court. #xA0; Pioneering expert Bob Zeidman#x13;creator of CodeSuite#xAE;, the world#x19;s #1 software IP analysis tool#x13;thoroughly covers all technical and legal aspects of IP theft detection. Using his rigorous framework and practical examples, you can accurately determine whether software copying, theft, or infringement has occurred, and fully support your findings in any venue.#xA0; #xA0; This book will help you#xA0; Understand the key concepts that underlie software IP analysis Compare and correlate source code Identify and measure copying Uncover signs of copying in object code when source code is inaccessible Compare functional source code statements to nonfunctional comments Confirm suspected theft or infringement Track malware and third-party code in applications Use software clean rooms to avoid IP infringement Understand IP issues associated with open source and DMCA#xA0; Visitwww.SAFE-corp.bizto download your free trial version of CodeSuite#xAE;, the industry#x19;s #1 tool for detecting software copying.

Author Biography

Bob Zeidman is president and founder of Zeidman Consulting (www.ZeidmanConsulting.com), a leading Silicon Valley contract R&D firm specializing in engineering consulting on IP disputes. Since 1983, he has designed chips and boards for RISC-based systems, network equipment, and other complex systems. His clients have included Apple, Cisco, Cadence, Facebook, Symantec, Texas Instruments, and Zynga. Zeidman has worked on and testified in cases involving billions of dollars in disputed IP. He is also president and founder of Software Analysis and Forensic Engineering Corporation (www.SAFE-corp.biz). A prolific writer and instructor, he holds multiple patents, an M.S.E.E. from Stanford, and a B.A. in physics and a B.S. in electrical engineering from Cornell.

Table of Contents

Preface xxi

Acknowledgments xxiii

About the Author xxv

 

P art I: I ntroduction 1

Objectives 2

Intended Audience 2

 

Chapter 1: About this Book 5

Part I: Introduction 6

Part II: Software 6

Part III: Intellectual Property 6

Part IV: Source Code Differentiation 9

Part V: Source Code Correlation 9

Part VI: Object and Source/Object Code Correlation 10

Part VII: Source Code Cross-Correlation 10

Part VIII: Detecting Software IP Theft and Infringement 11

Part IX: Miscellaneous Topics 11

Part X: Past, Present, and Future 11

 

Chapter 2: Intellectual Property Crime 13

2.1 The Extent of IP Theft 14

 

P art II: S oftware 21

Objectives 22

Intended Audience 22

 

Chapter 3: Source Code 23

3.1 Programming Languages 24

3.2 Functions, Methods, Procedures, Routines, and Subroutines 26

3.3 Files 32

3.4 Programs 35

3.5 Executing Source Code 36

 

Chapter 4: Object Code and Assembly Code 39

4.1 Object Code 39

4.2 Assembly Code 40

4.3 Files 43

4.4 Programs 44

 

Chapter 5: Scripts, Intermediate Code, Macros, and Synthesis Primitives 45

5.1 Scripts 45

5.2 Intermediate Code 47

5.3 Macros 48

5.4 Synthesis Primitives 49

 

P art III: I ntellectual P roperty 53

Objectives 55

Intended Audience 55

 

Chapter 6: Copyrights 57

6.1 The History of Copyrights 57

6.2 Copyright Protections 60

6.3 Software Copyrights 63

6.4 Allowable and Nonallowable Uses of Copyrighted Code 72

 

Chapter 7: Patents 79

7.1 The History of Patents 80

7.2 Types of Patents 81

7.3 Parts of a Patent 82

7.4 Patenting an Invention 85

7.5 Special Types of Patent Applications 86

7.6 Software Patents 90

7.7 Software Patent Controversy 91

7.8 Patent Infringement 95

7.9 NPEs and Trolls 99

 

Chapter 8: Trade Secrets 103

8.1 The History of Trade Secrets 103

8.2 Uniform Trade Secrets Act (UTSA) 104

8.3 Economic Espionage Act 105

8.4 Aspects of a Trade Secret 106

8.5 Trade Secret Theft 111

8.6 Patent or Trade Secret? 112

 

Chapter 9: Software Forensics 113

9.1 Forensic Science 115

9.2 Forensic Engineering 116

9.3 Digital Forensics 119

9.4 Software Forensics 120

9.5 Thoughts on Requirements for Testifying 121

 

P art IV: S ource C ode D ifferentiation 125

Objectives 126

Intended Audience 126

 

Chapter 10: Theory 127

10.1 Diff 128

10.2 Differentiation 133

10.3 Types of Similarity 135

10.4 Measuring Similar Lines 136

10.5 Measuring File Similarity 140

10.6 Measuring Similar Programs 142

 

Chapter 11: Implementation 147

11.1 Creating and Comparing Arrays 147

11.2 Number of Optimal Match Score Combinations 151

11.3 Choosing Optimal Match Scores for Calculating File Similarity 153

11.4 Choosing File Similarity Scores for Reporting Program Similarity 161

 

Chapter 12: Applications 165

12.1 Finding Similar Code 165

12.2 Measuring Source Code Evolution 168

 

P art V: S ource C ode C orrelation 183

Objectives 185

Intended Audience 185

 

Chapter 13: Software Plagiarism Detection 187

13.1 The History of Plagiarism Detection 187

13.2 Problems with Previous Algorithms 189

13.3 Requirements for Good Algorithms 192

 

Chapter 14: Source Code Characterization 197

14.1 Statements 199

14.2 Comments 206

14.3 Strings 207

 

Chapter 15: Theory 209

15.1 Practical Definition 210

15.2 Comparing Different Programming Languages 213

15.3 Mathematical Definitions 214

15.4 Source Code Correlation Mathematics 215

15.5 Source Code Examples 216

15.6 Unique Elements 218

15.7 Statement Correlation 219

15.8 Comment/String Correlation 223

15.9 Identifier Correlation 225

15.10 Instruction Sequence Correlation 227

15.11 Overall Correlation 228

 

Chapter 16: Implementation 233

16.1 Creating Arrays from Source Code 234

16.2 Statement Correlation 239

16.3 Comment/String Correlation 240

16.4 Identifier Correlation 241

16.5 Instruction Sequence Correlation 243

16.6 Overall Correlation 245

16.7 Comparing Programs in Different Programming Languages 246

16.8 Comparing Sections of Code Other than Files 246

 

Chapter 17: Applications 247

17.1 Functional Correlation 248

17.2 Identifying Authorship 249

17.3 Identifying Origin 251

17.4 Detecting Copyright Infringement (Plagiarism) 252

17.5 Detecting Trade Secret Theft 252

17.6 Locating Third-Party Code (Open Source) 253

17.7 Compiler Optimization 254

17.8 Refactoring 254

17.9 Detecting Patent Infringement 255

 

P art VI: O bject and S ource /O bject C ode C orrelation 257

Objectives 258

Intended Audience 259

 

Chapter 18: Theory 261

18.1 Practical Definition 266

18.2 Extracting Elements 268

18.3 Comparing Different Programming Languages 270

18.4 Mathematical Definitions 270

18.5 Object and Source/Object Code Correlation Mathematics 272

18.6 Comment/String Correlation 273

18.7 Identifier Correlation 274

18.8 Overall Correlation 275

18.9 False Negatives 276

 

Chapter 19: Implementation 279

19.1 Creating Text Substring Arrays from Object Code 279

19.2 Creating Arrays from Source Code 283

19.3 Identifier Correlation 287

19.4 Comment/String Correlation 287

19.5 Overall Correlation 287

 

Chapter 20: Applications 289

20.1 Pre-Litigation Detective Work 289

20.2 Tracking Malware 293

20.3 Locating Third-Party Code 293

20.4 Detecting Open Source Code License Violations 294

 

P art VII: S ource C ode C ross -C orrelation 295

Objectives 296

Intended Audience 296

 

Chapter 21: Theory, Implementation, and Applications 299

21.1 Comparing Different Programming Languages 300

21.2 Mathematical Definitions 300

21.3 Source Code Cross-Correlation Mathematics 301

21.4 Source Code Examples 303

21.5 Statement-to-Comment/String Correlation 307

21.6 Comment/String-to-Statement Correlation 308

21.7 Overall Correlation 308

21.8 Implementation and Applications 310

 

P art VIII: D etecting S oftware IP T heft and I nfringement 313

Objectives 315

Intended Audience 315

 

Chapter 22: Detecting Copyright Infringement 317

22.1 Reasons for Correlation 318

22.2 Steps to Find Correlation Due to Copying 326

22.3 Abstraction Filtration Comparison Test 331

22.4 Copyright Infringement Checklist 338

 

Chapter 23: Detecting Patent Infringement 341

23.1 Interpreting the Claims 341

23.2 Examining the Software 348

23.3 Tools 350

23.4 Determining Patent Validity 352

 

Chapter 24: Detecting Trade Secret Theft 359

24.1 Identifying Trade Secrets 360

24.2 Tools 367

 

P art IX: M iscellaneous T opics 369

Objectives 370

Intended Audience 370

 

Chapter 25: Implementing a Software Clean Room 371

25.1 Background 372

25.2 The Setup 374

25.3 The Procedure 376

 

Chapter 26: Open Source Software 383

26.1 Definition 383

26.2 Free Software 386

26.3 Open Source Licenses 388

26.4 Open Source Lawsuits 390

26.5 The Pervasiveness of Open Source Software 396

 

Chapter 27: Digital Millennium Copyright Act 399

27.1 What Is the DMCA? 399

27.2 For and Against the DMCA 400

27.3 Noteworthy Lawsuits 403

 

P art X: C onclusion : P ast , P resent , and F uture 407

 

Glossary 409

References 423

Index 435

Supplemental Materials

What is included with this book?

The New copy of this book will include any supplemental materials advertised. Please check the title of the book to determine if it should include any access cards, study guides, lab manuals, CDs, etc.

The Used, Rental and eBook copies of this book are not guaranteed to include any supplemental materials. Typically, only the book itself is included. This is true even if the title states it includes any access cards, study guides, lab manuals, CDs, etc.

Rewards Program