方法論
分數正是本站所出售的產品本身,因此模型不是被描述,而是被公開:本頁正是從methodology.json渲染而來,與評分引擎所讀取的是同一份檔案。方法與數字不可能出現偏差,因為副本只有這一份。
任何一個分數都不會脫離服務類別單獨顯示 — 因為正是類別告訴你,你真正關心的問題應該由哪一個來回答。
名次並非儲存的值。它是清單的一種屬性:每個排名頁面都依據這兩個分數對業者排序,並說明依據哪個維度排序。以隱私為導向的排名以安全為先,以串流為導向的排名以易用性為先。當排序所依的主維度出現並列,清單會回退到另一個分數,再回退到名稱,因此順序始終唯一,不會有兩列攜帶相同的數字。不存在任何人可以撼動的「名次」欄位。
八個獨立的風險通道各自向公開紀錄提出一個問題。每個通道以0到1之間的機率作答 — 這條特定路徑識別出使用者的可能性有多大 — 這八項相乘,而非相加。
沒有任何通道會因「感覺重要」而被賦予更高權重。權重體現在每個通道發現了什麼,一無所獲則不影響分數。
每個通道都註明自己讀取的欄位,每個業者頁面都會顯示它實際讀取到的值,並附帶出處和日期。下方數字表示每個通道反映了67個安全欄位中的多少個;一個欄位若能回答不只一個問題,會分別計入各自的通道下,因此總數會超過67。
| 通道 | 提出的問題 | 欄位 |
|---|---|---|
| 留存 | 有沒有將流量連結至個人的紀錄,以及由誰查核? | 13 |
| 管轄地 | 是否有人能強制取得現有資料,而業者無從置喙? | 5 |
| 揭露 | 是否已經交出過某些資料? | 6 |
| 誠信 | 是否曾被發現說一套、做一套? | 17 |
| 架構 | 誰在運作出口,以及它如何處理流量? | 2 |
| 衛生 | 隨手收集了哪些識別資料,以及是否完全無法檢查用戶端? | 12 |
| 無知 | 有多少內容無人確認? | 6 |
| 沉默 | 十年、數百萬使用者,卻沒有任何紀錄? | 5 |
通道不會自行讀取欄位並直接產出數字。介於兩者之間的是模型的規則:共32條,各自註明讀取什麼、對應哪個通道、使用哪種運算形態。之所以在此完整列出,是因為讀者看不到的規則,就只能被信任。
十種形態涵蓋了全部規則,形態正是對一條規則能做什麼的誠實概括:
capped_sum
加項會累積至無法超過的上限。
constraint
表格必須滿足的一項不變量。它不對任何內容定價,而是由 selftest.py 檢查,不按業者個別評估。
decay
按其背後證據的年齡縮放的值。
derivation
從其他欄位計算一個欄位,因此該事實只儲存一次。
flag
為讀者公開一個標記,且不改變分數。
gate
選擇模型適用的分支,而非計算數值。
max
同一情況的多種編碼中最差者。它們不會疊加:同一事件記錄兩次,仍然只算一個事件。
noisy_or
獨立的發現會複合:1 - product(1 - each)。
product
因子會相乘,各自放大其他因子已確認的部分。
threshold
對輸入進行的測試,用來決定區間或規則是否觸發。
並非全部32條都在為某項內容計分。其中4條屬於constraint形態,而這4條中的3條 — R08、R22、R23 — 根本不針對任何業者進行評估:它們是表格本身必須滿足的不變條件,在契約建構時而非紀錄評分時被檢查,這也是它們標注的是範圍而非欄位數的原因。
第四條R29確實讀取紀錄,但目的是決定一個欄位該如何編碼,而不是編碼本身的代價。另一條R15屬於flag形態:它只為讀者公開一個標記,不會左右任何數字。
R01_bought_coverage誠信max讀取4個欄位
因付費而存在的涵蓋範圍
以下兩者取最大值:依 params.bought_coverage 計價的(X08、X10)組合,以及在 M10 列出 review_directory 時,依 params.review_directory 計價的 X11;兩條路徑皆未觸發時為 0.000
R02_cluster_contagion誠信product讀取4個欄位
被抓到說謊的姊妹業者所引入的風險
min(params.cap, coupling x transfer x 對 siblings s 的 R04_lie_group(s) 取最大值);coupling 是讀取自 M18_shared_infrastructure 的 params.coupling;若基礎設施分開、未知,或在表格中沒有列出任何名稱,則改用 M17_brand_role;transfer:若 finding date >= 兩者的 M16 最大值,則為 1.0,否則為 0.0;日期未知的 finding -> 0.0;siblings 必須是已公開的紀錄;絕不讀取 sibling 自身的傳染效應
R03_owner_business誠信max讀取1個欄位
集團銷售其他產品所暗示的變現
對 M10 類別取最大值;與 X05 以 max 結合,而非 noisy-OR(同一情況、兩種編碼)
R04_lie_group誠信max讀取2個欄位
說謊軸線
max(X01, X02) — 絕不使用 noisy-OR:同一事件被編碼兩次時不得累加至 CHANNEL_CAP;S19 = caught_lying(若 >0)、unexamined(若兩者皆未知)、否則為 clean
R05_exposure沉默threshold讀取3個欄位
暴露區間
pts = 依 params.years_points 計算的營運年數 + 依 params.scale_points 計算的 M08 + P04=stayed_logging 時的 params.stayed_logging_points;區間為總值達到的 params.bands 中最高的門檻,否則為 low;手寫的 P10 不予採用
R06_ignorance無知product讀取5個欄位
無人確認之事的代價
min(params.cap, params.slope x (1 - known_share)) x (1 - params.posture_relief x posture);posture = posture 項目的總和,每個項目上限為 1.0
R07_silence沉默threshold讀取4個欄位
與暴露程度成比例的沉默
僅在 P01 和 P03 屬於 {none_known, unknown},且 P05 屬於 {none, unknown, fresh_no_numbers} 時觸發;risk = min(params.cap, params.per_year x years operating x weight),weight 依 exposure 區間取自 params.weight。由於沉默會累積,因此按年計價:紀錄中十五年毫無內容,與五年並不是同一項主張,而固定區間已表明這一點。依 R08,啟用年份未知的業者在此處不計費
區間從公開分數中讀取,而非另行儲存,因此措辭與數字不會出現偏差。
| 區間 | 分數 | 意味著什麼 |
|---|---|---|
| 保護程度:高 | 75–100 | 業者的核心隱私聲明有證據支持,並經過獨立稽核核實。 |
| 保護程度:中 | 55–74 | 重要事項大多已確認,紀錄上沒有將業者排除的因素,但仍有一些空白。 |
| 保護程度:低於平均 | 35–54 | 未確認的多於已確認的。沒有醜聞,但不足以推薦。 |
| 保護程度:低 | 15–34 | 已知資訊大多對業者不利,或幾乎無法確認任何內容。 |
| 不推薦 | 0–14 | 被排除:業者被發現就其行為撒謊,或其應用程式透過使用者裝置轉發他人的流量。 |
安全是一道門檻,而非可交易的量。在綜合排名中,再高的易用性分數也無法讓某業者排到安全分數更高者之前。清單首先依安全排序,只有在安全完全並列時才會依賴易用性。
以目前的名錄為例,某業者易用性分數為60,排在分數為55者之後25位 — 這是正確的順序,而非漏洞。
模型評分的是公開證據的狀態,而非我們對某家公司的看法。因此有三件事和值本身同樣重要。
每個值都帶有出處,每個出處都帶有層級。權重由模型自身設定:
| 層級 | 權重 | 內容 |
|---|---|---|
| A | 1.00 | 文件本身 — 政策、報告、法院紀錄 |
| B | 0.85 | 業者在負責任的場合親口所述 |
| C | 0.70 | 有能力的第三方報導 |
| D | 0.35 | 比這更單薄的一切 |
此外,每個值都記錄它是如何存在於此的。document意味著存在可供引用的出處,只有這類值才能作為有出處的說法呈現;derived是由本頁規則從其他欄位計算得出的;asserted是背後沒有任何支撐的值,一個無人確認的欄位就是這樣被記錄的。
不存在第四個等級:一個值要麼立足於文件,要麼由立足於文件的值計算而來,要麼背後一無所有。
以數字呈現這三條曲線:
| 會陳舊的內容 | 維持滿值的時長 | 每隔多久減半 | 從不低於 |
|---|---|---|---|
| 稽核或檢查 | 12個月 | 18個月 | 5% |
| 關於持續做法的聲明 | 12個月 | 60個月 | 15% |
| 透明度相關數據 | 12個月 | 60個月 | 35% |
這三條曲線之所以不同,是因為它們所描述的對象以不同的速度變化。稽核人員的快照最快陳舊 — 它只說明某一年某一週內的真實情況。關於持續做法的聲明與透明度數據描述的是一種持續的狀態,因此價值保持得久得多 — 而透明度報告在三者中保有最高的下限,因為一家曾經公開過數字的公司,已經確立了某種即便沉寂一年也不會被推翻的事實。
這是一種完全不同的形態,因為它回答的是不同類型的問題:加權累加 — 各項功能相加,缺失的一項即視為不足。十三個欄位中有十二個帶有權重,合計34分。第十三個是年付價格 — 因讀者想了解而公開,但權重為零,因為提前一年付費的折扣屬於商業條款,而非服務本身的屬性。
| 欄位 | 權重 | 重新核查 |
|---|---|---|
| 在作用中的審查下運作 | 5 | 30天 |
| 提供用戶端的平臺 | 4 | 30天 |
| 提供出口位置的國家 | 4 | 90天 |
| 每月價格(USD),按月方案,實際收費 | 3 | 30天 |
| 可使用的免費方案 | 3 | 30天 |
| 提供的通訊協定 | 3 | 30天 |
| 終止開關涵蓋範圍 | 3 | 30天 |
| 同時連線數 | 2 | 30天 |
| 開始使用的阻力 | 2 | 30天 |
| 允許 P2P | 2 | 30天 |
| 可連線的主要串流服務 | 2 | 30天 |
| 提供分割通道 | 1 | 30天 |
| 年度方案價格(USD),首期實際收費 | — | 30天 |
結果只在有值的欄位上取平均,因此不會因為某個欄位無人填寫而懲罰業者。反審查權重最高,因為在最要緊的地方,它是唯一決定服務能否使用的易用性屬性;分流通道權重最低,因為缺少它只是不便而已。
價格進入的是這裡,而非安全維度,且只計入月付費率。年付費率在站內隨處顯示,但不計分:提前一年付費的折扣是商業條款,而非服務本身的屬性。
完整度為50%時的某個分數,與完整度為95%時的同一分數是不同的說法,因此完整度與分數一同公開,兩者並排顯示。它表示已確認欄位所占的比例。
與之相伴,每筆紀錄都帶有主要空白:由分析人員撰寫,說明哪些內容未被確認、什麼能夠解決它,以及為該數字附加限定條件的注意事項。正是從這裡,讀者得知某份保證報告屬於Type I而非Type II,或某個船隊所在國是從路由說明中推斷出來的。
高分與一長串空白並不矛盾:分數說明證據支持什麼,空白說明證據究竟有多少。任何一半都不會為了讓另一半顯得更好看而被隱藏。
若業者未公開任何資訊,該欄位就保持未知。它絕不會被估算,不會從競爭對手那裡推斷,不會被悄悄填入行銷數字,也不會被隨意猜測 — 這一成本由無知通道承擔,那正是它應當付出成本的地方。在表格中,未確認的值顯示為—,且無論哪個方向排序都排在最後:依船隊規模升冪排序,不會因為某業者拒絕告知而給予獎勵。
兩個維度,兩條下限,且刻意設置在不同的高度。在安全性方面,若實質性欄位中已確認的比例低於30%,或已確認比例低於50%且低於35分而主要風險來自我們自身認定的ignorance,模型將不予結論。二者都不是對該業者的斷言:它說明的是調查尚未深入到足以確定其位置,且77家中有9家如此。
在易用性方面,下限更高 — 分數必須基於可用權重的50%,而非30% — 之所以更高,是因為兩個維度對空白計分的方式不同。安全在分數內部為無知計分,因此一筆單薄的紀錄已經為此付出了代價。
易用性沒有這樣的通道:未確認的功能只是從平均值中消失,若無下限,一筆只有兩個已知欄位的紀錄看起來會像被完整測量過一樣。77家中有15家紀錄公開了usability.state: no_data,它們所帶的數字是下限值而非測量值 — 絕不會與已知分數並列,彷彿二者可比。
六項侷限,與模型一同公開,而非事後才被發現。它們是methodology.json的一部分,隨模型產出的每一個分數一起流傳,因此在此逐字照錄,而非改寫:
expires_at。key_gaps 就是必須說明這點的欄位。V15_assurance_strength 會顯示 unknown,每個已稽核業者也會按市場常態計分,而不是依其自身報告所述計分。此欄位記錄的是宣告的強度,而非背後的嚴謹程度——一次委任可以採用合理確信程度的意見,但範圍仍可能狹窄;這正是 V03_audit_subject 與 V04_scope_servers 的用途。verdict: no_data 就是明白說明這點的內容。讀取任一分數前,請先讀取兩個軸向的 completeness。不存在任何編輯調整。本方法論早期版本曾允許編輯在公開說明理由的前提下,將計算得出的分數上下調整最多兩分;該做法已被取消,因為如今每個業者頁面的明細都完整展示了運算過程,一個並非源自該運算的數字,只會讓這份明細變成謊言。
編輯判斷只有一個容身之處,而那不是分數:一個單獨保留、從不混入分數的人工品質等級。若某位編輯認為某筆紀錄有誤,其途徑與任何讀者相同 — 更改證據,讓模型重新計算。
分數在每次匯入時以及依需求重新計算。由於模型版本一次性適用於所有紀錄,對其的修改會牽動整個名錄而非一列 — 這本應如此,也正因如此,每一次改動都會公開記錄。業者的更新日期只有在發生實質性變化時才會變動;一次未改變任何內容的重新匯入不會更新任何日期,因為給77個頁面統一打上今天的日期,會傳遞出一種我們並未獲得的新鮮感。
金錢能買到的是:有人透過連結訂閱時產生的佣金,以及 — 若日後開放付費展示位 — 一個帶標籤、獨立於排名之外的專屬版塊。目前兩者均未啟用 — 沒有任何連結攜帶聯盟參數,也沒有任何展示位被出售 — 且二者一旦出現,都會在出現之處以及聯盟揭露中說明。由於排名由證據計算得出,而證據又公開在旁,購買更好的名次就必須改變公開紀錄本身 — 而那正是任何人都能核實的事。
R08_unknown_pricing6個通道constraint結構中的每個風險與下限表
無罪推定作為算術規則
僅適用於針對業者的 findings,且絕不適用於被寫成已公開通道先驗的 unknown(C01 = prior_0.550);後者是基準率,而非 finding。除此之外,對該欄位而言,risk(unknown) <= 0.50 x risk(worst confirmed value),且絕不等於後者;caught lie 始終高於空白;在說謊軸及每個事件欄位上,risk(unknown) 一律直接為 0.000。空白的完整代價只在無知中支付一次,並在其被標為 ours 的地方支付
R09_channel_combination8個通道noisy_or讀取8個欄位
八個通道如何成為一個數字
score = 100 x product(1 - min(0.90, r_c)),取八個通道的結果;沒有一律適用的下限或上限;S18 納入 integrity 之內,而非作為第九個通道
R10_disclosure_decay揭露decaymax讀取4個欄位
不利事件也會隨時間變舊
disclosure = P01、P02 與 P03 中,該欄位自身經衰減後價格的最大值——一個路徑按其最差情況計算,絕不複合,因為同一扣押事件的三種編碼就是一次扣押;在同一事件的 P12_case_history 紀錄所載日期套用 decay(plateau=12, half_life=60, floor=0.35),以紀錄所述的發生事項配對——P01 配對 seizure,P03 配對 court_order、subpoena 或 mandate_order——絕不依其結果配對,因為沒有產生任何結果的事件,仍是決定該發現日期的那個事件;P02 依結果配對,因為在該處結果就是事實;沒有這類紀錄的不利事件保留其未衰減值;實務曲線的形狀採用較高的下限,此處為 0.35,相較於實務證據的 0.15,因為已證實的揭露會永久留在紀錄上
R11_evidence_voiding留存揭露誠信gate讀取1個欄位
控制權變更會重設所轉移的內容
M16 之前日期的證據不附著於目前的所有者:稽核失去系列加成,揭露事件降至 R10 下限,同業發現完全不轉移
R12_report_plausibility誠信無知threshold讀取5個欄位
透明度報告的價值在於其內容
P06 = zero_implausible,當 P09 = 0、P08 高於 params.min_requests,且紀錄已確認存在可供揭露的每人紀錄——留存嚴重度達到或高於 params.min_retention。僅按使用者規模判斷,反而懲罰了它原本要處理的情況:一個公開其數字且回報沒有核准項目的業者被稱為說謊者,而一個什麼都不公開的業者則不付出任何代價。零個核准項目,只有對其自身紀錄表示持有可核准項目的業者而言才不可信;對已確認無紀錄的發現而言,這是預期答案,模型不得在一個通道所採信的內容上,於另一個通道不予相信。觸發時,P05 的態勢緩解設為 0.00,而 integrity 取得 params.route 中的路徑
R13_derived_jurisdiction管轄地noisy_ormax讀取6個欄位
義務欄位是推導而非判定
C10 = M06 in MANDATE_COUNTRIES;C11 = M11 in MANDATE_COUNTRIES;當 M11 = M06 時,兩者是同一情況,jurisdiction 取 max(C10, C11, P11),絕不使用 noisy-OR;伺服器群暴露度取 max(C09b, P04),這是有別於公司路徑的獨立路徑;手寫覆寫需要自身的來源,並以此形式公開
R14_disclosure_rate揭露threshold讀取2個欄位
產生資料的請求占比
rate = P09 / P08,當 P08 達到 params.min_requests 後適用;risk = params.weight x rate;與 rate 一併公開,因為跨管轄地的可比性很低——在一個國家,請求指法院命令;在另一個國家,則指信函
R15_free_tier_flag無通道flag讀取2個欄位
免費方案總有某種付費方式
S22 = flagged,當 params 所指定的每個欄位都帶有 params 為其列出的其中一個值;否則為未標記;不改變任一軸的分數——兩個輸入都已在其應在的位置計價,而替它們的合取計價,正是把兩個軸設計來拒絕的平均化
R16_opaque_at_mass_scale誠信threshold讀取2個欄位
涵蓋的人越多,不透明性越糟
X03 = 不透明且 M08 = mass -> 使用 params.at_mass_scale,而不是不透明狀態下 X03 自身的價格
R17_location_notice管轄地derivation讀取3個欄位
提供義務國家時,實際上有什麼
C09 = 出現在 MANDATE_COUNTRIES 中的 U02 國家,經推導而來,從不手動填寫。C09 單獨不收取任何費用,也不列入完整度分母:在這類國家提供出口本身不代表任何事情,且會依讀者選取的位置公開。真正計入的是 C09b,也就是 C09 非空時唯一值得提出的問題——硬體是否確實位於該義務的管轄下,或該位置為虛擬位置而硬體在其他地方。C09 為空時,C09b 為 n/a,並以 max 與 P04 合併:在義務管轄下的存在是同一種情況,只是編碼兩次
R18_audit_gate留存gatemax讀取2個欄位
稽核採取哪個留存分支
V11 表示留存 -> params.credence_stated 的已陳述分支;V01 = yes_* 且 V11 未陳述 -> params.credence_silent x subject_factor 的未陳述分支(主體未已確認時使用 params.subject_default),且任何分支都不超過 params.credence_max;否則完全沒有書面證據;所選分支的嚴重度 = max(C01_linkable_retention, V11_audit_findings),絕不使用 noisy-OR——同一種情況編碼兩次不得複合(如 R04)
R19_audit_decay留存decay讀取1個欄位
設定不斷變動
decay(params.decay) — 以月為單位連續衰減,沒有節點
R20_practice_ages留存decaymax讀取1個欄位
每個有文件記載的事件都有自己的日期
P12 中每個 outcome = nothing_produced 的事件,都會以其自身日期貢獻 decay(practice);欄位的 practice 值取其事件中的最大值,絕不加總;取代 P01 和 P03 將多次扣押合併為一次的單一日期解讀
R21_circumvention_decayusabilitydecay讀取1個欄位
封鎖速度快於證據累積
U06 = 當欄位自身的截至日期已超過 12 個月時,已證實的分數按自稱處理;名錄已為每個欄位標示日期,因此年限從該處讀取,而不是寫入值中;唯一具有衰減機制的易用性欄位,因為它是唯一真實性會到期的欄位
R22_completeness無知constraint每個欄位的完整度欄
分母計算什麼
完整度 = yes 的實質欄位;n/a 不列入分母,unknown 留在分母中;識別欄位、模型輸出、冗餘標籤和易用性欄位全部排除——易用性涵蓋率另以 S16 報告
R23_credence_defaults留存constraint結構中的每個因素表
未閱讀的證據不計入分數
R08 的鏡像,並刻意不與其對稱。factor(unknown) <= 該欄位中最弱的真正證據層級,且嚴格高於任何表示拒絕揭露的值(V06 unnamed、V02 none)。照單全收一份沒有人讀過的稽核,會讓一份購買的報告洗入分數;把我們自身的無知當成業者的拒絕,則是相反的錯誤。不採信未經驗證的證據不是指控——業者回到先驗,即市場基準率,而不是某項發現
R24_retention_composition留存productmax讀取14個欄位
留存子通道如何成為一個數字
四個子通道不取平均。credence.paper = R18 選擇的分支(已陳述:credence_stated;未陳述:credence_silent x subject_factor)x 該分支自身 .conf 的 source_credence x audit_decay (R19) x publication_factor x engagement_factor(公司 x 標準 x 保證強度)x 已陳述分支上的 scope_factor x R11 使系列維持有效時的 series_bonus,並以 credence_max 封頂。credence.practice = 具日期的 nothing_produced 事件中,practice_credence x practice_decay (R20) 的最大值。credence = min(credence_max, max(paper, practice) + secondary_weight x min(paper, practice))——兩種證據勝過一種,但再多證據也達不到確定性。severity = 依 R18 取 max(C01, V11),或在兩者皆未已確認時取 prior。retention = credence x severity + (1 - credence) x max(severity, prior):回歸市場基準率只能向上,因此不利於自身的承認保留其表面值。最後,retention.floor = max(retention, C12 floor:);稽核若僅涵蓋通道,就不能清除應用程式中的事實
R25_integrity_composition誠信noisy_or讀取14個欄位
誠信路徑如何成為一個數字
完整性 = 1 - product(1 - route),套用於已觸發的路徑:謊言軸(R04)、所有者透明度(大規模時的 R16)、所有者集團歷史、獲利方式與集團銷售內容合併考量(R03)、事件處理、絕對性聲稱、終身方案推銷、購買的涵蓋範圍(R01)、不可信報告路徑(R12)、商店聲明空白(R28)、disclosure_rate_weight x rate(R14)以及叢集傳染(R02、S18)。路徑會複合,因為它們是分開的發現;同一情況被編碼兩次的配對,已在各自規則內由 max 合併,因此這裡不會再次合併
R26_hygiene_composition衛生capped_sum讀取12個欄位
衛生欄位如何成為一個數字
衛生度 = min(params.cap, 導向此處的各欄位風險價格總和)。安全軸上唯一的加總通道:這些是累積的小型獨立洩漏,不是由單一發現決定結果,而 cap 防止一堆輕微收集行為被解讀成披露。清單欄位的價值取其成員中最便宜者——一種匿名付款方式就已足夠——若沒有成員定價,則回退至自身的未知價格。C13_weakest_protocol 是此處的衍生加數項(R32):仍在使用的舊式傳輸只是順帶收集的另一項內容,不是決定結果的發現
R27_report_concealment誠信max讀取2個欄位
在必然產生請求的規模下對揭露保持沉默
中型或大規模的業者確實會收到請求,因此已確認的數字缺失是關於業者本身的事實,而不是我們研究中的空白:P05 = none 的費用為 0.150,fresh_no_numbers 為 0.100——已公開的報告省略了唯一重要數字,是其中最鮮明的形式——而 stale 為 0.050。僅在已確認的值上觸發;unknown 在此不收取任何費用,而是在無知通道中定價,我們自己尚未查閱的情況就屬於此處。這是 R12 的對照:一者為不可信的數字定價,另一者為完全沒有任何數字的情況定價
R28_store_declaration_gap誠信max讀取1個欄位
商店聲明與業者提供給商店的政策相對照
強制性的商店表單是業者針對其應用程式所作的親自簽署聲明,因此表單聲明的任何內容,也必須出現在業者自己引導商店查看的政策中。僅以一個方向解讀:應用程式是服務的子集,因此表單聲明少於政策承認的內容可由範圍解釋,不收取任何費用;而表單聲明了某個類別、政策卻從未提及,則沒有這種理由。依未披露類別所揭示的內容分級:識別碼或診斷資料收取 0.150,行為——應用程式活動、已安裝的應用程式、位置或任何廣告用途——收取 0.300,而聲明了無日誌聲稱所否認的實際收集行為,則收取 0.450。兩家商店對收集的定義不同,因此 Apple 表單與 Google 表單之間的差異本身不是發現。各商店中的最大空白勝出
R29_session_state留存constraint讀取2個欄位
連線不是該連線的紀錄
C01 評估業者在工作階段結束後,仍能將哪些內容連結至某個人。僅在隧道建立期間存在的狀態——來源 IP、帳號 ID 以及為了讓伺服器路由封包並執行裝置限制而保留的連線時間戳記——就是連線本身,而不是連線紀錄;將其作為留存定價,等於因業者描述 VPN 的運作方式而向其收費。更糟的是,這比什麼都不說收費更多:此欄位的空白是市場先驗 0.550,而 source_ip 是 0.750,因此,對十五分鐘緩衝區的誠實描述,比沉默的成本更高。例外範圍很窄,而且必須如此,否則它會變成每個業者都會寫的句子。它僅適用於業者自己的文件明確說明,與工作階段結束相關且不超過 24 小時的刪除期限——最短的曆法單位,比服務所需的任何拆除時間長,卻比日誌保留的任何輪替週期短。未聲明的期間就是留存。無論如何措辭,曆法期間——7 天、30 天、輪替週期——都是留存,因為它在設計上會超出工作階段而存在。業者在期限後仍保留的任何內容,仍值得其自身的分級,而此例外只讀取業者的聲稱:稽核發現資料存在時,R18 已將該發現置於聲稱之上
R30_usability_foundationusabilitythreshold每個易用性欄位的權重欄
易用性分數所依據的表格有多少
易用性總和除以它能讀取的權重:未有任何人確認的欄位會留在分母中,而不是計為零,因為涵蓋度不是品質。代價是分數看不見自身的基礎——最重的欄位未讀取的欄,會產生與已填滿的欄相同形式的數字。S21 = 已讀取權重 / 可用權重,其中 live 是所有加權易用性欄位扣除 n/a 欄位後的集合。低於 usability_foundation_floor 時,S20 = no_data:建立在不到一半表格上的數字,只說明哪些欄位已填寫,而不是產品的運作方式。此門檻比安全軸的門檻更嚴格,因為此軸沒有無知通道——安全分數會對分數中的空白收費,而易用性分數對空白不在任何地方收費。分數仍會在 no_data 下公開,正如安全分數一樣;不提供數字就無法檢查
R32_protocol_floor衛生derivationmax讀取1個欄位
仍在提供的最弱傳輸
C13_weakest_protocol 是 U07_protocols 中依 C13 自身表格的風險順序排列後最差的通訊協定,在載入時衍生,絕不手動填寫——其形式與 R17 衍生 C09 自 U02 相同。它以另一個加數項進入 R26_hygiene_composition,並如同其中每一項,受衛生度通道上限約束。只提供現代傳輸的伺服器群組,其欄位是 not_applicable,而不是某個名稱:當沒有任何通訊協定的定價高於 0.000 時,便沒有可指出的弱項;依平手決勝順序從優良項目中選出較差者,會公開一項沒有人提出的發現。此欄位是為 PPTP 與 L2TP 仍在使用的低價區段保留的。proprietary 的價格不是對業者自行撰寫通訊協定收費——而是對無法判斷該通訊協定是否薄弱這件事定價,這就是為何 vendor_open 不收費:原始碼已公開且經獨立審查的業者傳輸可以被評估,而評估中沒有任何內容表示它薄弱。仍對其收費,會將已解決的無知定價,並使公開原始碼比隱瞞原始碼更昂貴
R33_exit_conduct架構max讀取2個欄位
出口如何處理其承載的流量
架構 = max(C00_architecture 的價格、C14_traffic_modification 的價格)。誰執行出口,以及出口對通過其中的內容做了什麼,是同一個問題——隧道的遠端是否在你方——而一個不良答案就能決定結果,因此通道取兩個價格中較差者,而不是它們的總和:由陌生人執行、同時也改寫標頭的出口,不會比任一項糟兩倍,而就是那麼糟。headers_injected(0.300)是加入通過其中之流量的工作階段識別碼或任何其他標頭,讓每個目的地都取得使用者的名稱;content_injected(0.500)是放入頁面的指令碼、廣告或其他內容;tls_interception(0.750)是出口開啟加密工作階段。none 必須從明確如此說明的文件中讀取,而這類文件很少,因此 unknown 帶有與 C00 相同的市場先驗,其餘由無知通道處理
M14_inclusion_basis 是每家業者為何列於其中的唯一紀錄。業者未出現在名錄中,首先是關於這種人工挑選的證據,其次才是關於該業者的證據,而此處沒有任何內容估算名錄遺漏了多少。一
此處按名錄本身所用的比例繪製,因為這個比例正是論點所在:其中一個決定順序,另一個描述你能得到什麼。
安全提出8個問題
全部67個安全欄位至少反映在其中之一。八個答案相乘。
決定順序
描述能得到什麼
易用性對12個欄位賦權
權重合計為34,其中12個以加權平均的方式相加。 第十三項以權重零的方式記錄,因此雖被公開,卻不被任何東西計分。
五
在這個模型裡,沒有什麼會被照單全收。報告說了什麼,以及是誰說的,是兩把獨立的梯子,二者相乘。
報告說了什麼留存的credence_stated對比credence_silent
是誰說的source_credence的四個層級
這兩者相乘。是誰說的的四個層級,以及各自是什麼:
四
任何通道都不能超過0.9,因為僅憑閱讀文件無法獲得確定性。而一項發現能從下方釘住某個通道,那是任何稽核都無法觸及的地方。
留存通道
無懈可擊的報告會把杯子倒空。留下的是業者所持有的識別符:
報告只能說出被記錄下來的內容。識別符則說明,無論是否有任何記錄,使用者都是可被指認的 — 二者並非對同一個問題的回答。因此模型不允許前者來決定後者。
八
圖中每一條線都是一條規則,標注著它所對應的通道。它們全部在本頁下方完整列出,因為讀者看不到的規則,就只能被信任。
左側的圖展示了每條規則所要讀取的全部欄位,右側的圖展示了每條規則對應的通道。全部32條規則都在本頁下方完整列出,因為讀者看不到的規則,就只能被信任。這台機器之所以龐大,不是因為它精巧,而是因為問題本身就龐大 — 一個能用一段話概括的模型,概括的必定是錯誤的對象。
三
這正是乘法帶來的效果。七個通道可以無懈可擊,第八個仍能決定這筆紀錄 — 這就是為何業者無法靠把其他方面都做好,來平均掉一個失格因素。移動這個控制項試試。
七個各自保持0.05的通道,加上一個 — 紅色的那個 — 由讀者移動
沒有累加,也沒有平均。那七個整潔的通道,即便在該控制項被拉到極限之後依然整潔 — 但它們買不回第八個通道所削減的部分,這正是這八項要相乘的全部原因。
二
並非累加。每個通道都直接承接前一個通道所剩的比例 — 因此這八項是一條鏈,而非一列數字。
score = 100 × ∏ (1 − channel)
這個形態是noisy-OR over independent risk channels。此處以在冊最高分紀錄Proton VPN為例計算 — 以下數字並非為此臨時編造,而是那筆紀錄本身的數字。
3個通道一無所獲,因而不削減任何東西。其餘5個各自削減一小部分,且這些比例相互疊加而非抵消:100中剩下的是70。
七
唯一為空白本身計分的通道。也是本站唯一一個業者能夠自行左右的數字 — 左右它的方式是公開,而不是申辯。
0.00計入紀錄
min(0.6, 0.9 × (1 − established)) × (1 − 0.4 × posture)
不知道並非中立。一家未被確認任何資訊的業者,本身就承擔著真實的風險,模型為此計分,而不是留下一片客氣的空白 — 這也使其成為全站唯一一個業者能自行左右的數字。其他每個通道都在等待被發現的東西,唯獨這一個,等待的是被公開的東西。
六
三種證據,三條曲線 — 各自在一段平台期內保持不變,隨後降至一個永不跌破的下限。稽核是發生在某個日期的一次事件,而不是業者所處的一種狀態。
縱軸:證據目前仍保有的權重 — 頂端為滿分,底端為其自身的下限值
今天1年23456年
每條曲線都在一段平台期內保持不變,隨後降至一個永不跌破的下限 — 證據會陳舊,但不會變成謊言。這些點代表在冊的30筆紀錄,它們公開了帶日期的稽核,並依各自的年限置於稽核曲線之上。稽核不是業者所處的一種狀態,而是發生在某個日期的一次事件。
九
這裡的每一個VPN都會得到一個百分制的整數。模型再依事先公開的4個閾值劃分這個尺度。跨過一個閾值,措辭就會改變。此外沒有任何東西能左右它 — 無論是更好看的標誌、折扣,還是新聞稿。
區間是範圍,在任何一筆紀錄被評分之前就已固定,並且公開,方便任何人自行核實每一次跨越 — 數字是計算出來的,措辭是從中讀出的,兩者都無法用金錢購買。