`
`
`
`PAUL ANDRE (State Bar No. 196585)
`pandre@kramerlevin.com
`LISA KOBIALKA (State Bar No. 191404)
`lkobialka@kramerlevin.com
`JAMES HANNAH (State Bar No. 237978)
`jhannah@kramerlevin.com
`KRISTOPHER KASTENS (State Bar No. 254797)
`kkastens@kramerlevin.com
`KRAMER LEVIN NAFTALIS & FRANKEL LLP
`990 Marsh Road
`Menlo Park, CA 94025
`Telephone: (650) 752-1700
`Facsimile: (650) 752-1800
`
`Attorneys for Plaintiff
`FINJAN, INC.
`
`
`IN THE UNITED STATES DISTRICT COURT
`
`FOR THE NORTHERN DISTRICT OF CALIFORNIA
`
`SAN FRANCISCO DIVISION
`
`FINJAN, INC., a Delaware Corporation,
`
`
`
`
`
`
`Plaintiff,
`
`v.
`
`
`JUNIPER NETWORKS, INC., a Delaware
`Corporation,
`
`
`Defendant.
`
`
`
`Case No.: 3:17-cv-05659-WHA
`
`DECLARATION OF DR. MICHAEL
`MITZENMACHER IN SUPPORT OF
`PLAINTIFF FINJAN, INC.’S OPPOSITION
`TO DEFENDANT JUNIPER NETWORKS,
`INC.’S MOTION FOR SUMMARY
`JUDGMENT
`
`July 26, 2018
`Date:
`8:00 a.m.
`Time:
`Courtroom: Courtroom 12, 19th Floor
`Before:
`Hon. William Alsup
`
`
`
`
`REDACTED VERSION OF DOCUMENT SOUGHT TO BE SEALED
`
`
`MITZENMACHER DECL. ISO OPP. TO DEFENDANT’S MSJ
`
`CASE NO. 3:17-cv-05659-WHA
`
`1 2 3 4 5 6 7 8 9
`
`10
`
`11
`
`12
`
`13
`
`14
`
`15
`
`16
`
`17
`
`18
`
`19
`
`20
`
`21
`
`22
`
`23
`
`24
`
`25
`
`26
`
`27
`
`28
`
`
`
`Case 3:17-cv-05659-WHA Document 127-5 Filed 06/28/18 Page 2 of 34
`
`
`
`I, Michael Mitzenmacher, hereby declare that:
`1.
`I have been asked by Plaintiff Finjan, Inc. (“Finjan”) to testify as an expert witness in
`
`the above referenced action. As part of my work in this action, I have been asked by Finjan to provide
`
`a declaration as to if Defendant Juniper Networks, Inc. (“Juniper” or “Defendant”) infringes Claim 1 of
`
`U.S. Patent No. 6,804,780 (the “’780 Patent”). I expect to testify at trial in these actions regarding the
`
`opinions set forth in this report (the “Report”), as well as on any other issues for which I have
`
`submitted or will submit an expert report in this action. I relied on the documents cited herein,
`
`including the ‘780 Patent, the file history of the ‘780 Patent, the source code review computer, source
`
`code printouts, the deposition transcripts of Tenorio, Manthena, Nagarajan, and Manocha, as well as
`
`exhibits thereto, Finjan’s Infringement Contentions, and Juniper’s Discovery Responses.
`I.
`
`BACKGROUND, EXPERIENCE AND QUALIFICATIONS
`2.
`
`I am currently employed as a Professor of Computer Science at Harvard University.
`
`Specifically, I am the Thomas J. Watson, Sr. Professor of Computer Science in the School of
`
`Engineering and Applied Sciences. I joined the faculty of Harvard as an Assistant Professor in January
`
`1999. I was promoted to Associate Professor in 2002 and to Professor in 2005. In 2010, I began a
`
`three-year term as Area Dean, which is essentially equivalent to what other schools call Department
`
`Chair, of Computer Science, and held that position through June 2013.
`3.
`
`I received my undergraduate degree in Mathematics and Computer Science from
`
`Harvard College in 1991. I received a Certificate of Advanced Study in Mathematics from Cambridge
`
`University in 1992. I received a Ph.D. in Computer Science from the University of California at
`
`Berkeley in 1996. From August 1996 to January 1999, I was employed as a Research Scientist at
`
`Digital Systems Research Center.
`4.
`
`I have published over 200 research papers in computer science conferences and journals,
`
`many of which have explored algorithms and data structures for communication networks and data
`
`transmission. I am listed as an inventor or co-inventor on 19 issued patents, and am the co-author of a
`
`textbook entitled “Probability and Computing” published by Cambridge University Press.
`5.
`
`The field of endeavor at issue in this case is networking security — in particular, the
`
`design and operation of systems to protect clients from malware from sources on the Internet. Much of
`
`1
`MITZENMACHER DECL. ISO OPP. TO DEFENDANT’S MSJ
`
`CASE NO. 3:17-cv-05659-WHA
`
`1 2 3 4 5 6 7 8 9
`
`10
`
`11
`
`12
`
`13
`
`14
`
`15
`
`16
`
`17
`
`18
`
`19
`
`20
`
`21
`
`22
`
`23
`
`24
`
`25
`
`26
`
`27
`
`28
`
`
`
`Case 3:17-cv-05659-WHA Document 127-5 Filed 06/28/18 Page 3 of 34
`
`
`
`my work involves issues relating to networking and/or network security. I regularly serve on program
`
`committees for conferences in networking, algorithms, and communication. For example, I have served
`
`on the program committee multiple times for the SIGCOMM conference, which is described on the
`
`conference homepage as follows: “SIGCOMM is the flagship annual conference of the ACM Special
`
`Interest Group on Data Communication (SIGCOMM) on the applications, technologies, architectures,
`
`and protocols for computer communication.” Similarly, I have served several times on the Program
`
`Committee for NSDI, the USENIX Symposium on Networked Systems Design and Implementation. I
`
`have written papers on networking that have been published in the IEEE/ACM Transactions on
`
`Computer Networking, the SIGCOMM conference, the INFOCOM conference, and other major venues
`
`for networking research. My graduate course entitled “Algorithms at the end of the wire” covers many
`
`subjects at the intersection of networking and algorithms.
`A.
`6.
`
`Compensation
`
`My rate of compensation for my work in this case is $750 per hour plus any direct
`
`expenses incurred. My compensation is based solely on the amount of time that I devote to activity
`
`related to this case and is in no way affected by any opinions that I render. I receive no other
`
`compensation from work on this action. My compensation is not dependent on the outcome of this
`
`matter.
`II.
`
`LEGAL STANDARDS
`7.
`
`Counsel for Finjan has informed me of the following legal standards that I have used as
`
`a framework in forming my opinions contained herein.
`B.
`8.
`
`Infringement
`
`I have been informed that claim construction is a legal issue for the Court to decide. I
`
`also understand that the Court has not issued a claim construction order in this case. As such, I have
`
`applied the plain and ordinary meaning of all terms, unless specifically identified below.
`9.
`
`I have been informed that infringement is determined on a claim by claim basis. I have
`
`been further informed that literal infringement is found if an accused product, system or method meets
`
`each and every element of a single claim. I have been informed that direct infringement is found if a
`
`party or its agents make, use, sell, or offer to sell a product or system that contains all elements of a
`
`2
`MITZENMACHER DECL. ISO OPP. TO DEFENDANT’S MSJ
`
`CASE NO. 3:17-cv-05659-WHA
`
`1 2 3 4 5 6 7 8 9
`
`10
`
`11
`
`12
`
`13
`
`14
`
`15
`
`16
`
`17
`
`18
`
`19
`
`20
`
`21
`
`22
`
`23
`
`24
`
`25
`
`26
`
`27
`
`28
`
`
`
`Case 3:17-cv-05659-WHA Document 127-5 Filed 06/28/18 Page 4 of 34
`
`
`
`claimed system or perform all of the steps of a claimed method.
`10.
`
`I have been informed that in the case of direct infringement of a system claim, a party
`
`can be found to use a patented system even if the party does not exercise physical or direct control over
`
`every element of the system. For elements that are not subject to the physical or direct control of the
`
`party, I have been informed that the party is still deemed to be using that component or part of the
`
`patented system when (1) it puts the component into service, i.e., causes it to work for its intended
`
`purpose and (2) receives the benefit of that purpose. For example, if a company queries a third-party's
`
`database, thereby causing the database to run a query and return a result to the company, the company
`
`is deemed to have used the database for infringement purposes by putting it into service (causing it to
`
`run the query) and receiving the benefit of that operation (the result of the query), even though the
`
`company does not own or control the database.
`11.
`
`I have been informed that infringement under the doctrine of equivalents is found if an
`
`accused product, system or process contains parts or steps that are identical or equivalent to each and
`
`every element of a single claim. A part or step is equivalent if a person of ordinary skill in the art
`
`would conclude that the differences between the product or method step and the claim element were not
`
`substantial at the time of infringement. I have been further informed that one common test to determine
`
`if the difference between a component or method step and a claim element is not substantial is asking if
`
`the component or step performs substantially the same function, in substantially the same way, to
`
`achieve substantially the same result.
`12.
`
`I have been informed that in the case of direct infringement of a multinational system
`
`claim where elements of such system are located in multiple countries, a party can be found to use the
`
`patented system in the United States if the place where control of the accused system is exercised and
`
`where beneficial use of the system is obtained are both within the United States. For example, if the
`
`accused system is controlled by a device in the United States that generates requests sent to the accused
`
`system and the benefit of the accused system is obtained by the company or person using the device in
`
`the United States, the company is deemed to have used the accused system for infringement purposes in
`
`the United States even though the accused system has some elements located outside the United States.
`
`3
`MITZENMACHER DECL. ISO OPP. TO DEFENDANT’S MSJ
`
`CASE NO. 3:17-cv-05659-WHA
`
`1 2 3 4 5 6 7 8 9
`
`10
`
`11
`
`12
`
`13
`
`14
`
`15
`
`16
`
`17
`
`18
`
`19
`
`20
`
`21
`
`22
`
`23
`
`24
`
`25
`
`26
`
`27
`
`28
`
`
`
`Case 3:17-cv-05659-WHA Document 127-5 Filed 06/28/18 Page 5 of 34
`
`
`
`A.
`13.
`
`Person of Ordinary Skill in the Art (“POSITA”)
`
`Based on review of the ‘780 Patent and consideration of the abovementioned factors, it
`
`is my opinion that a POSITA at the time of the invention of the ‘780 Patent would be a person with a
`
`Bachelor’s degree in computer science or a related academic field, and either (1) two or more years of
`
`industry experience and/or (2) an advanced degree in computer science or a related academic field. In
`
`forming my opinions in this declaration, I have considered the issues from the perspective of a
`
`hypothetical POSITA. My opinion would not change if a somewhat lower or higher level of skill were
`
`adopted. In particular, while it appears that Dr. Rubin has suggested slightly more experience and/or
`
`education for a POSITA in his declaration (¶ 20), I believe my opinions herein would be the same
`
`under either definition.
`III.
`
`SUMMARY OF DECLARATION
`14.
`
`I have been asked by counsel for Finjan to consider if Juniper infringes Claim 1 of the
`
`‘780 Patent and to consider the opinions set forth by Juniper’s expert, Dr. Aviel Rubin, in support of
`
`Juniper’s Motion for Summary Judgment (Dkt. 95-10, “Rubin Decl.”). In particular, I have been asked
`
`by counsel for Finjan to consider whether the SRX Gateway with Sky ATP infringe Claim 1 of the ‘780
`
`Patent. I assumed that Claim 1 of the ‘780 Patent is valid and enforceable. I have not considered any
`
`issues related to damages associated with this infringement.
`15.
`The language of Claim 1 of the ‘780 Patent is set forth below.
`A computer-based method for generating a Downloadable ID to identify a
`Downloadable, comprising:
`
`
`obtaining a Downloadable that includes one or more references to software
`components required to be executed by the Downloadable;
`
`fetching at least one software component identified by the one or more
`references; and
`
`performing a hashing function on the Downloadable and the fetched
`software components to generate a Downloadable ID.
`IV. RESPONSE TO DR. RUBIN’S DECLARATION
`16. While I provide more detailed descriptions below regarding why I disagree with Dr.
`
`Rubin’s opinions, I discuss here certain aspects of Dr. Rubin’s Declaration that are incorrect and/or
`
`4
`MITZENMACHER DECL. ISO OPP. TO DEFENDANT’S MSJ
`
`CASE NO. 3:17-cv-05659-WHA
`
`1 2 3 4 5 6 7 8 9
`
`10
`
`11
`
`12
`
`13
`
`14
`
`15
`
`16
`
`17
`
`18
`
`19
`
`20
`
`21
`
`22
`
`23
`
`24
`
`25
`
`26
`
`27
`
`28
`
`
`
`Case 3:17-cv-05659-WHA Document 127-5 Filed 06/28/18 Page 6 of 34
`
`
`
`require clarification. First, I note that Dr. Rubin explained that various members of his “team” assisted
`
`in writing his Declaration and in fact, in certain instances, he disagrees with the statements provided.
`
`See e.g., Rubin Tr. at 8:2-9:7, 20:4-14, 61:8-10. While it remains unclear, therefore, whether all of the
`
`opinions in his declaration are his, I assume, for purposes of this Declaration, they are. Second, while
`
`Dr. Rubin repeatedly references the “source code” of the products, in most instances he fails to provide
`
`any specific citations to the code. E.g., Rubin Decl., ¶¶ 67, 71, 81, 91, 100, 113, 114, 125, 127. In fact,
`
`I have reviewed the source code citations provided by Dr. Rubin, and in some cases, they are incorrect.
`
`For example, in paragraph 128 of Rubin’s declaration he says that a hash is created when the
`
`“_on_complete()” function is called “by calling content_path, sample_sha256 = self._write_content(sid,
`
`sample_data, current_ts)”, but it seems he has misread the source code, because the line he describes
`appears in the “_process_sample” function. Ex. 71, Juniper Source Code at 456.
`V.
`OVERVIEW OF THE ‘780 PATENT
`17.
`
`The ’780 Patent describes methods for protecting computer systems against a class of
`
`executable programs that would typically be downloaded to be run by a process such as an Internet
`
`browser. The patent refers to such programs as “Downloadables.” See e.g. Dkt. 98-5, Ex. 2, “’780
`
`Patent, Col. 1, ll. 47-61 (“However, these security systems are not configured to recognize computer
`
`viruses which have been attached to or configured as Downloadable application programs, commonly
`
`referred to as ‘Downloadables.’ A Downloadable is an executable application program downloaded
`
`from a source computer and run on the destination computer. Downloadables are typically requested
`
`by an ongoing process such as by an Internet browser or web engine. Examples of Downloadables
`
`include Java applets…JavaScript scripts … ActiveX controls …, and Visual Basic …. Therefore, a
`
`system and method are needed to protect a network from hostile Downloadables.”). Downloadables,
`
`therefore, include HTMLs and PDFs as I further explain below.
`18.
`
`The ‘780 Patent specifies the use of a “Downloadable ID” as an identifier for a
`
`Downloadable and the associated software components. Benefits of the Downloadable ID are also
`
`specified in the patent description, and include allowing the network security system to avoid expensive
`
`
`1 Unless otherwise noted, all “Ex.” citations are to the Declaration of Kristopher Kastens in Support of
`Opposition to Motion for Summary Judgment.
`
`5
`MITZENMACHER DECL. ISO OPP. TO DEFENDANT’S MSJ
`
`CASE NO. 3:17-cv-05659-WHA
`
`1 2 3 4 5 6 7 8 9
`
`10
`
`11
`
`12
`
`13
`
`14
`
`15
`
`16
`
`17
`
`18
`
`19
`
`20
`
`21
`
`22
`
`23
`
`24
`
`25
`
`26
`
`27
`
`28
`
`
`
`Case 3:17-cv-05659-WHA Document 127-5 Filed 06/28/18 Page 7 of 34
`
`
`
`analysis operations for Downloadables that have been seen previously. It may also allow the security
`
`system to allow or block the Downloadable without further reanalysis. The use of a Downloadable ID
`
`can yield significant performance improvements in the Web environment. See, e.g., ’780 Patent, Col.
`
`8, ll. 7-20 (“The first comparator 320 in step 608 examines the lists of Downloadables to allow or to
`
`block per administrative override 425 against the Downloadable ID of the incoming Downloadable to
`
`determine whether to allow the Downloadable automatically. If so, then in step 612 the first
`
`comparator 320 sends the results to the logical engine 333. If not, then the method 600 proceeds to step
`
`610. In step 610, the first comparator 620 examines the lists of Downloadables to block per
`
`administrative override 425 against the Downloadable ID of the incoming Downloadable for
`
`determining whether to block the Downloadable automatically. If so, then the first comparator 420 in
`
`step 612 sends the results to the logical engine 333. Otherwise, method 600 proceeds to step 614.”).
`19.
`
`A Downloadable may identify various software components that are called for during its
`
`execution. ‘780 Patent, Abstract. As stated in the ‘780 Patent and Claim 1 of the ‘780 Patent, a
`
`Downloadable ID should be generated for the Downloadable itself and its other components.
`
`Otherwise, there is risk that a required software component could be modified without the security
`
`system recognizing that a change had occurred, leaving the system vulnerable to attack based on the
`
`software component. ‘780 Patent, Col. 4, ll. 64-66. The ‘780 Patent, including Claim 1, further
`
`discloses how a Downloadable ID will “hash” all or part of the Downloadable to create this
`
`Downloadable ID. ‘780 Patent, Claims 1 (“at least one software component”) and 8 (“fetching all
`
`software components”).
`A.
`20.
`
`State of the Art
`
`A hashing function is applied to data such as a computer file. Hashing functions have
`
`many uses, one of which, as described in the ‘780 Patent, is the ability to create an identifier (or “ID”)
`
`for a Downloadable. This “ID” can then be used to quickly determine information about the
`
`Downloadable because the function can be applied again to the data and used to determine if it is the
`
`same as a Downloadable that has already been seen.
`21.
`
`I have reviewed the portion of Dr. Rubin’s declaration entitled “State of the Art” (¶¶ 24-
`
`33). I provide herein a discussion of certain aspects of Dr. Rubin’s Declaration with which I disagree.
`
`6
`MITZENMACHER DECL. ISO OPP. TO DEFENDANT’S MSJ
`
`CASE NO. 3:17-cv-05659-WHA
`
`1 2 3 4 5 6 7 8 9
`
`10
`
`11
`
`12
`
`13
`
`14
`
`15
`
`16
`
`17
`
`18
`
`19
`
`20
`
`21
`
`22
`
`23
`
`24
`
`25
`
`26
`
`27
`
`28
`
`
`
`Case 3:17-cv-05659-WHA Document 127-5 Filed 06/28/18 Page 8 of 34
`
`
`
`22.
`
`In paragraph 24 of his declaration, Dr. Rubin discusses “hashing functions” but there are
`
`inaccuracies in his description. For example, Dr. Rubin states, “[t]ypically, hashing functions are
`
`designed to minimize ‘collisions,’ meaning that each input hashes to a unique output.” However, while
`
`he states that “each input hashes to a unique output,” that is not possible under any circumstance where
`
`the number of inputs is larger than the number outputs. I understand that Dr. Rubin also testified to the
`
`inaccuracy of his statement. Rubin Tr. at 18:24-20:9.
`23.
`
`Dr. Rubin also states, in paragraph 24 of his declaration, that “Additionally, in computer
`
`science applications, hash functions are expected to be non-invertible, meaning that it is
`
`computationally impractical to determine an input given only the corresponding hash.” This is not
`
`correct; the non-invertible hash functions he describes are typically referred to as “cryptographic hash
`
`functions” (see e.g., https://en.wikipedia.org/wiki/Cryptographic_hash_function), and the requirement
`
`of non-invertibility is only expected or desired in specific computer science applications. While this
`
`requirement does often appear in security applications, it is not a general property of hash functions, as
`
`Dr. Rubin suggests. Indeed, Exhibit 13 to the Declaration of Rebecca Carson in support of Juniper’s
`
`Motion for Summary Judgment (“Carson Decl.”) at page 508, citing Knuth, discusses two non-
`
`invertible hash functions (“let h(K) be three digits chosen from somewhere near the middle of the 20-
`
`digit product of K X K” and “we simply use the remainder module M: h(K) = K mod M.”).”
`
`Moreover, Dr. Rubin acknowledged in his testimony that hash functions do not have to be non-
`
`invertible. Rubin Tr. at 18:24-20:9.
`24.
`
`In paragraph 26, Dr. Rubin provides hash values for “Example” and “example” using the
`
`MD5 hash function shown below:
`
`I disagree with the values that he provides. For example, the correct MD5 hash value should be
`0a52730597fb4ffa01fc117d9e71e3a9. The value that Dr. Rubin has provided appears to be for
`the string “Example\n,” that is, the string “Example” followed by a carriage return.
`
`7
`MITZENMACHER DECL. ISO OPP. TO DEFENDANT’S MSJ
`
`CASE NO. 3:17-cv-05659-WHA
`
`1 2 3 4 5 6 7 8 9
`
`10
`
`11
`
`12
`
`13
`
`14
`
`15
`
`16
`
`17
`
`18
`
`19
`
`20
`
`21
`
`22
`
`23
`
`24
`
`25
`
`26
`
`27
`
`28
`
`
`
`Case 3:17-cv-05659-WHA Document 127-5 Filed 06/28/18 Page 9 of 34
`
`
`
`25.
`
`In paragraph 32 of his declaration, Dr. Rubin acknowledges that “fetching” means to
`
`retrieve: “In the context of the ‘780 Patent, fetching is used to retrieve the software components
`
`identified by references in a Downloadable.” Dr. Rubin’s discussion appears to be related to his
`
`proposed claim constructions. As I discuss more below with respect to claim construction, “retrieving”
`
`is the same as “fetching” when used in the ‘780 Patent. Dr. Rubin’s additional discussion in paragraph
`
`32 suggesting that somehow this refers to “Information retrieval” over the Internet, is out of place and
`
`not suggested by the ‘780 Patent itself.
`B.
`26.
`
`Benefits of the ‘780 Patent
`
`The ‘780 Patent describes systems and method for implementing a new solution that was
`
`part of Finjan’s pioneering technology. The ‘780 Patent provided benefits to this system because it
`
`specifically addressed Downloadables, which, at the time of the filing of the ‘780 Patent, represented a
`
`novel concept and collection of threats based on the growth of executable content downloaded on the
`
`Internet.
`27.
`
`In addition, at the filing of the ‘780 Patent, virus scanning was focused on “signature
`
`matching” where a set of signatures was scanned over a file. In this case, the signatures would be used
`
`to scan a file every time, and it was counterintuitive to make a separate ID for a file because the
`
`signature itself may identify the file. The ‘780 Patent, thus, provided a benefit, particularly for Finjan’s
`
`new behavioral based technology, because Finjan’s technology protected against Downloadables and
`
`generated IDs for the Downloadable and software components. For Downloadables, they could execute
`
`on a computer without a user’s knowledge. This was a shift in thinking from the conventional thinking
`
`at the time, as there were no technologies for analyzing Downloadables to generate a Downloadable ID
`
`that could be used to prevent harmful Downloadables from infecting a computer. A Downloadable ID
`
`achieves this efficiency by enabling the security system to allow or block the Downloadable without
`
`reanalyzing the Downloadable because the Downloadable ID can be used to determine if that
`
`Downloadable has already been seen by the security system, so that it does not need to be analyzed
`
`again, but its prior analysis can be used. As a result, these Downloadable IDs allowed Downloadables
`
`to be identified without needing to rescan them.
`
`8
`MITZENMACHER DECL. ISO OPP. TO DEFENDANT’S MSJ
`
`CASE NO. 3:17-cv-05659-WHA
`
`1 2 3 4 5 6 7 8 9
`
`10
`
`11
`
`12
`
`13
`
`14
`
`15
`
`16
`
`17
`
`18
`
`19
`
`20
`
`21
`
`22
`
`23
`
`24
`
`25
`
`26
`
`27
`
`28
`
`
`
`Case 3:17-cv-05659-WHA Document 127-5 Filed 06/28/18 Page 10 of 34
`
`
`
`VI. CLAIM CONSTRUCTION FOR CLAIM 1 OF THE ‘780 PATENT
`28.
`I understand that the Court has not yet entered a claim construction order for the ‘780
`
`Patent. Claim 1 of the ‘780 Patent recites the following, with the terms that Juniper requests
`
`construction on identified in bold:
`
`1. A computer-based method for generating a Downloadable ID to identify a
`
`Downloadable, comprising:
`1(a). obtaining a DownloadableA that includes one or more references to
`software components required to be executed by the DownloadableB;
`1(b). fetching at least one software component identified by the one or more
`referencesC; and
`1(c). performing a hashing function on the Downloadable and the fetched
`software components to generate a Downloadable IDD.
`I note that Dr. Rubin advocates for construction of nearly the entire claim. I have
`
`29.
`
`reviewed the declaration of Dr. Rubin submitted in support of Juniper’s requested claim construction of
`
`several of these terms and address his arguments below. However, as I explain more below, most of
`
`these terms do not need construction and the plain and ordinary meaning should apply. To the extent
`
`“plain and ordinary meaning” benefits from explanation, I have provided it below.
`A.
`30.
`
`“Downloadable”
`
`I understand that Dr. Rubin agrees that the construction of “Downloadable” should be
`
`“an executable application program, which is downloaded from a source computer and run on the
`
`destination computer.” I agree that this construction is correct, as this is how the term is defined in the
`
`‘780 Patent, and therefore I understand that its construction is not in dispute.
`B.
`31.
`
`“software components required to be executed by the Downloadable”
`
`I understand that Dr. Rubin believes that this term should be construed as “software
`
`components that are needed to execute the Downloadable.” This term does not require construction
`
`beyond its plain and ordinary meaning. Generally, this plain and ordinary meaning is “software
`
`components referenced by a Downloadable for execution.” Dr. Rubin’s rewording adds confusion to
`
`the term and its scope and he provides no support for the wording of his construction—namely, he
`
`9
`MITZENMACHER DECL. ISO OPP. TO DEFENDANT’S MSJ
`
`CASE NO. 3:17-cv-05659-WHA
`
`1 2 3 4 5 6 7 8 9
`
`10
`
`11
`
`12
`
`13
`
`14
`
`15
`
`16
`
`17
`
`18
`
`19
`
`20
`
`21
`
`22
`
`23
`
`24
`
`25
`
`26
`
`27
`
`28
`
`
`
`Case 3:17-cv-05659-WHA Document 127-5 Filed 06/28/18 Page 11 of 34
`
`
`
`identifies nothing in the record for the term “needed to execute the Downloadable.” In fact, his
`
`language results in a misinterpretation of the plain meaning of the term – that is, his construction
`
`appears to change the meaning from software components that are executed by the Downloadable to
`
`software components that are executing the Downloadable. As such, I found no support for his position
`
`that this is how a POSITA would understand the term. Instead, I understand it the term based on its
`
`plain and ordinary meaning.
`32.
`
`To the extent Dr. Rubin argues that the Downloadable cannot execute at all without all
`
`of the referenced the software components, this is incorrect and contrary to the intrinsic record and the
`
`knowledge of a POSITA. As stated, the components are required to be executed by the Downloadable
`
`so it can operate an intended, not that the Downloadable needs these components to be executed. This
`
`is the plain reading of the claim language. Dr. Rubin even testified that the ‘780 Patent discloses
`
`software components that are not required to be executed. Rubin Tr. at 20:15-28:20. Dr. Rubin’s
`
`argument also makes no sense in the context of the claims. Specifically, dependent Claims 5 and 13 of
`
`the ‘780 Patent states that the Downloadable includes “HTML code.” As known to a POSITA, HTML
`
`code can be executed without all of its referenced software components (such as JavaScript), but may
`
`instead execute based on the components that are present. For example, if an HTML file includes
`
`referenced JavaScript or VBScript components, it may still execute according to those JavaScript
`
`components that it can access. While the Downloadable may not execute as intended, it may still
`
`execute according to the components that it can access. This is the plain reading of the claim language.
`
`This plain reading is consistent with the claim being applied to “dropper” Downloadables, where the
`
`Downloadable can run without its fetched components, but will not operate as intended.
`33. My understanding of the claim language is consistent with the prosecution history of the
`
`‘780 Patent that was cited by Dr. Rubin as well. For example, I have reviewed the prosecution history
`
`of the patent, and both Finjan and the patent office refer to “software components required to be
`
`executed by the Downloadable.” Ex. 8, Notice of Allowability at 3. At no point was the language
`
`described as software components that are “needed to execute the Downloadable.” I also found that Dr.
`
`Rubin ignores different types of disclosed Downloadables that refute his conclusion that the software
`
`components are “needed to execute the Downloadable.” The ‘780 Patent specifically sets forth that
`
`10
`MITZENMACHER DECL. ISO OPP. TO DEFENDANT’S MSJ
`
`CASE NO. 3:17-cv-05659-WHA
`
`1 2 3 4 5 6 7 8 9
`
`10
`
`11
`
`12
`
`13
`
`14
`
`15
`
`16
`
`17
`
`18
`
`19
`
`20
`
`21
`
`22
`
`23
`
`24
`
`25
`
`26
`
`27
`
`28
`
`
`
`Case 3:17-cv-05659-WHA Document 127-5 Filed 06/28/18 Page 12 of 34
`
`
`
`HTML can be part of a Downloadable, and that JavaScript and VBScript can be included as well. ‘780
`Patent, Claim 5 and Col. 2, ll. 4-6 (“Downloadable may include ... a JavaScriptTM script, or a Visual
`Basic script.”). As was known to a POSITA at the time of the invention, HTML files can include
`
`scripts (like JavaScript and VBScript) as internal code blocks or via reference to separate software
`
`components. Ex. 9, JavaScript for Dummies at FINJAN-JN 398436-37 (“You can use <SCRIPT> and
`
`</SCRIPT> tags to include JavaScript code directly into an HTML file … [or] to include a separate
`
`external JavaScript file …”). As would be known to a POSITA, these script software components are
`
`not required to execute the rest of the page.
`C.
`34.
`
`“fetching at least one software component identified by the one or more references”
`
`I understand that Dr. Rubin believes that this term should be construed as “retrieving at
`
`least one software component that is referenced but not included in the content of the Downloadable.”
`
`First, I agree that “fetching” generally means the same thing as “retrieving.” However, as the plain and
`
`ordinary meaning of the terms is already known, there is no need to simply replace one word with
`
`another without purpose. Second, I disagree with Dr. Rubin’s conclusion that the claim language must
`
`be limited to “at least one software computer that is referenced but not included in the content of the
`
`Downloadable.” The ‘780 Patent discloses that “fetching” can be performed both internally and
`
`externally to Downloadable, and does not require that one component always be external. ‘780 Patent,
`
`Col. 4, ll. 56-58.
`35.
`
`In fact, one of the examples provided in the ‘780 Patent explicitly describes an example
`
`“Downloadable” as a “Java Applet.” ‘780 Patent at Col. 1, ll. 55-56. As is known to those of skill in
`
`the art, Java Applets are distributed as a single JAR file (Java Archive) with referenced software
`
`components included in the single JAR file. Ex. 10, Java in a Nutshell at FINJAN-JN 358557 (“all (or
`
`many) of the files an applet needs can be combined into a single JAR file, which an applet viewer or
`
`Web browser can download with a single HTTP requests”). For this JAR file, multiple classes are
`
`aggregated into one file for distribution. This understanding is consistent with Claim 1 of the ‘780
`
`Patent, because when a JAR file is first used it is “extracted,” thereby causing multiple class files to be
`
`exposed from a single file so that they can be retrieved to build the Java Applet. Id. at FINJAN-JN
`
`358556-57. Therefore, the ‘780 Patent includes a specific example where “fetching” refers to
`
`11
`MITZENMACHER DECL. ISO OPP. TO DEFENDANT’S MSJ
`
`CASE NO. 3:17-cv-05659-WHA
`
`1 2 3 4 5 6 7 8 9
`
`10
`
`11
`
`12
`
`13
`
`14
`
`15
`
`16
`
`17
`
`18
`
`19
`
`20
`
`21
`
`22
`
`23
`
`24
`
`25
`
`26
`
`27
`
`28
`
`
`
`Case 3:17-cv-05659-WHA Document 127-5 Filed 06/28/18 Page 13 of 34
`
`
`
`retrieving software components from within a single distributed file, where the individual components
`
`are “fetched” from this JAR file that was downloaded.
`36.
`
`I disagree with Dr. Rubin, in paragraph 51 of his declaration, that a “POSITA would
`
`understand that one would only ‘include’ components ‘in’ the code if they were part of the same file,
`
`not disparate files.” However, this conclusion does not make sense, because, as Dr. Rubin
`
`acknowledges, code often consists of and can consist of multiple files. Rubin Tr. at 36:20-39:7.
`37.
`
`I also disagree with Dr. Rubin that components of the “runtime environment” would be
`
`considered part of the fetched components. This is equivalent to the operating system used for the Java
`
`Applet, and would not be considered one of the “software components.”
`38. My understanding is supported by the specification, where “fetching” is performed on
`
`the components that are “embodied in” the file, which is also set forth in the specification of the ‘780
`
`Patent. Dr. Rubin misinterprets the ‘780 Pate