throbber
Case 3:17-cv-05659-WHA Document 129-1 Filed 06/28/18 Page 1 of 34
`
`
`
`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 129-1 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 129-1 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 129-1 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 129-1 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 129-1 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 129-1 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 129-1 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 129-1 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 129-1 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 129-1 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 129-1 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 129-1 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

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket