2023年10月18日 星期三

一或多部電腦中的"至少一部電腦"執行了所有步驟的侵權議題 - Finjan v. SonicWall (Fed. Cir. 2023)

前言:
這件案例有趣的是教示我們"collateral estoppel"(旁系禁反言)雖是避免訴訟對重複議題重複審判,但是如果之前的訴訟是被撤回,仍非"collateral estoppel"之適用。

另一有點"警惕"專利工程師的請求項寫法也是學習之一(雖此解釋仍應有空間),也就是,軟體專利範圍常常是以步驟流程表達,而其中為了要提供一個"主詞"(有些審查委員會要求有執行步驟的主詞,或是寫在前言,或是寫在步驟中);還有另一想法是加入適當的"硬體"以"形式上"滿足35USC101的檢查,就會在步驟"Ving, by a computer"之後,加入"by the computer",結果這樣的寫法在解釋上被認為這些步驟是被"相同電腦"所執行,有時會有不當限縮的問題。判決中引用相關案例如:by the processor / by the microprocessor,都有類似的解釋

然而,這樣的解釋都不是被告侵權產品用不同的電腦分別執行了不同的功能。

案件資訊:
原告/上訴人/專利權人:FINJAN LLC, FKA FINJAN, INC.
被告/被上訴人:SONICWALL, INC.
系爭專利:US8,677,494, US6,154,844, US6,804,780, US7,613,926, US8,225,408 ("ARB Patent")
判決日期:October 13, 2023

本案歷史有點複雜,嘗試理解如下。

本案緣起Finjan對SonicWall在北加州地方法院提出專利侵權告訴,雙方訴訟始自2019年,地方法院基於"collateral estoppel"(旁系禁反言:禁止針對相同爭點重複審判、或是重複行使權利)的決定判定系爭專利無效,原告提出上訴。

特別列舉"ARB Patent" claim 1,涉及一種"基於規則的內容掃描器",用來掃描網路上傳遞資料的安全漏洞。


1. A computer processor-based multi-lingual method for scanning incoming program code, comprising:
receiving, by a computer, an incoming stream of program code;
determining, by the computer, any specific one of a plurality of programming languages
in which the incoming stream is written;
instantiating, by the computer, a scanner for the specific programming language, in
response to said determining, the scanner comprising parser rules and analyzer rules
for the specific programming language, wherein the parser rules define certain patterns
in terms of tokens, tokens being lexical constructs for the specific programming
language, and wherein the analyzer rules identify certain combinations of tokens and patterns as being indicators of potential exploits, exploits being portions of program
code that are malicious;
identifying, by the computer, individual tokens within the incoming stream;
dynamically building, by the computer while said receiving receives the incoming stream, a parse tree whose nodes represent tokens and patterns in accordance with the
parser rules;
dynamically detecting, by the computer while said dynamically building builds the parse tree, combinations of nodes in the parse tree which are indicators of potential exploits, based on the analyzer rules; and
indicating, by the computer, the presence of potential exploits within the incoming stream, based on said dynamically detecting.

爭議中的被告侵權產品為閘道器、電子郵件安全裝置與威脅保護產品等網路設備,如'494的Claim 10描述管理可下載內容(Downloadable: executable application program)的系統,其中包括接收器、可下載掃描器,用以產生安全檔案,其中列舉可疑清單,以及資料庫管理員,將以上資訊儲存起來。

在地院階段,被告SonicWall提出專利無效請願,其主張系爭專利'780, '844, '494基於"collateral estoppel"而專利無效,理由是'780與'844曾於其他訴訟程序(2021年 - Finjan, Inc. v. ESET, LLC (S.D. Cal. Mar. 29, 2021),"ESET")中判定無效,理由是不明確。

於是地方法院同意SonicWall請願,判定'780, '844, '494因旁系禁反言無效。Finjan曾於2022年提起上訴 - Finjan LLC v. ESET, LLC (Fed. Cir. 2022),CAFC當年作出撤回地院簡易判決的決定,ESET案的決定是:否決專利因為不明確而無效的決定,發回重審

在2019年訴訟 - Finjan LLC v. SonicWall, Inc. (N.D. Cal. Mar. 26, 2019)的解釋專利範圍命令(“Claim Construction Order”)中,雙方同意"Downloadable"指的是從來源電腦下載並執行於目標電腦的可執行應用程式(executable application program),基於此解釋,SonicWall提起侵權不成立簡易判決請願,因為其產品並不會接收所述"Downloadable";即便部分產品會接收封包,但不會解出其中資料而重組為檔案;還有經過專利範圍解釋,相關產品並不滿足下載資料與執行電腦是相同的限制。

地方法院判決同意SonicWall主張,專利無效,並且侵權不成立。

其中爭議是,過去的訴訟是否形成旁系禁反言?以及,即便專利有效,是否侵權成立?

CAFC階段:

專利無效議題:

法院指出,如果要訴諸"collateral estoppel"作為專利無效的理由,其中必須要證明:
(1)當下訴訟議題應與前次爭議(如訴訟...)相同;
(2)涉及的議題在前次爭議要實際爭訟過;
(3)議題的決定在前次爭議中為重要議題;
(4)主張旁系禁反言的一方在前次爭議中有完整且公平的機會進行爭訟。

意思就是,在後的訴訟中要主張"collateral estoppel"的議題應是前次爭議中實際進行爭訟的重要議題



ESET案中,CAFC撤回地院基於旁系禁反言判決專利無效的決定,因此CAFC決定是不會用之前撤回的判決作為旁系禁反言的適用

因此,CAFC撤回地方法院作出基於旁系禁反言而判決專利無效的決定

侵權議題(針對'494, '844, '780, '926中特徵"Downloadable"

侵權議題涉及專利範圍解釋與技術討論,經雙方辯論後,CAFC同意地方法院的決定,其中主要爭議是甚麼是"Downloadable"?如上述討論的,解釋為可執行應用程式("executable application program"),問題是,被告侵權產品是否會接收這個可執行應用程式?就理解被告侵權產品的作用,如網路閘道器,這類裝置僅接收封包並轉送出去,過程中"不會重組這些封包的內容",因此認為與系爭專利的"Downloadable"不同,也就是不會接受到"可執行應用程式",就網路裝置而言,看到的都是封包,不會重組內容為可執行應用程式


因此判定對侵權不成立

重要侵權議題(針對'408 ("ARB Patent"):

針對ARB專利的侵權議題為,SonicWall主張"ARB專利"中的"a computer"雖可解釋為"one or more computers",但請求項隨後的描述是"by the computer",解釋應為由"相同的computer/one or more computer"所執行~


就CAFC的解釋來看,有前例支持(如以下介紹),ARB專利claim 1中界定的步驟確實由相同一部電腦執行

案例Salazar v. AT&T Mobility LLC (Fed. Cir. 2023)告訴我們:定冠詞"said"的使用就是引用先前用語,而且不會改變其數量級。也就是,當之前的"a"解釋為"one or more"時,後續的"said"引用的詞也是"one or more"。(補充,除非答辯歷史有特定限制。)

案例Traxcell Techs., LLC v. Nokia Sols. & Networks Oy (Fed. Cir. 2021)告訴我們,雖請求項字面上有特定限制,如上述"a computer"與"the computer"可能解釋為相同電腦,但仍需要考量其他內部證據,包括說明書的描述以及審查答辯歷史。(補充,此案例因為專利審查答辯過程要區隔先前技術以"多部電腦"執行,因此答辯說明該案僅用"一部電腦",產生禁反言,就解適使用同一部電腦執行相關程序。)

特別考量前例-Baldwin Graphic Sys., Inc. v. Siebert, Inc., 512 F.3d 1338, 1342–43 (Fed. Cir. 2008),其中表示:"a"不總是解釋為"one or more",因為需要考量實際技術特徵

可參考過去報導:
- 還在討論"a"怎麼解釋?其實有很大的學問 - Salazar v. AT&T Mobility LLC (CAFC 2023)(https://enpan.blogspot.com/2023/04/a-salazar-v-at-mobility-llc-cafc-2023.html)。
- 常見的用語"location"與"computer"卻有不同的解釋 - Traxcell Technologies v. Nokia (Fed. Cir. 2021)(https://enpan.blogspot.com/2021/10/locationcomputer-traxcell-technologies.html)。

回頭看SonicWall相應ARB專利的被告侵權產品,網路裝置中的網路安全機制(網路威脅保護功能Capture ATP)、電子郵件安全產品(ES product)與閘道器為不同的電腦所執行

法院判定ARB專利範圍界定的步驟由相同的電腦,或是相同的one or more computer所執行,而被告侵權產品的幾個安全性功能由"多個不同電腦/裝置"所執行,而即便"a computer"可以解釋為"one or more computer",但ARB專利的要求是至少有一部電腦執行了專利範圍中所有的功能

經參照以上案例對於相關a/one or more computers, the same one or more computers的解釋,顯然都無法讀到被告侵權產品是由不同電腦/裝置分別執行了不同的功能的方式,判定對ARB專利侵權不成立

"Even if an infringing system can use “one or more computers,” the plain language of the claims requires at least one of those computers to perform all the functions listed in the claims of the ARB Patent.

(另有專家證詞議題,就不在此討論了)

my two cents:
寫在前言!!!

然而,進一步想,在專利範圍解釋上,仍應有一定的寬容度,應以實質技術特徵來解釋,而不應限定在特定用語(這是應小心謹慎的地方),特別在軟體流程步驟是否由相同電腦執行的問題,如果被告產品確實有執行軟體專利的每一步驟,但是由不同電腦或是裝置執行,是否就不能認定侵權?我認為應依照實際狀況而定。



Ron

沒有留言: