Metodologie
Scorurile sunt produsul pe care îl vinde acest site, așa că modelul este publicat, nu doar descris: această pagină este generată din methodology.json, același fișier pe care îl citește evaluatorul. Metoda nu se poate abate de la cifre, pentru că există o singură copie a ei.
Niciunul dintre scoruri nu este afișat fără clasa de serviciu, care este cea care îți spune care dintre cele două răspunde la întrebarea pe care o ai de fapt.
Locul din clasament nu este o valoare stocată. Este o proprietate a unei liste: fiecare pagină clasată ordonează furnizorii după cele două scoruri și spune după care axă a sortat. Un clasament de confidențialitate conduce pe securitate, unul de streaming pe utilizabilitate. Unde axa principală este la egalitate, lista revine la celălalt scor și apoi la nume, așa că ordinea este totală și niciun rând nu poartă același număr. Nu există niciun câmp de loc în clasament pe care cineva să-l poată împinge.
Opt canale independente de risc, fiecare punând o întrebare fișei publicate. Un canal răspunde cu o probabilitate între 0 și 1 — cât de probabil este ca tocmai această cale să identifice utilizatorul — iar cele opt sunt înmulțite, nu adunate.
Niciun canal nu este ponderat după cât de important pare. Ponderea stă în ce găsește fiecare canal, iar a nu găsi nimic lasă scorul neatins.
Fiecare canal numește câmpurile pe care le citește, iar fiecare pagină de furnizor arată valorile reale citite, cu surse și date. Numărul de mai jos arată câte din cele 67 câmpuri de securitate alimentează fiecare canal; un câmp care răspunde la mai mult de o întrebare este numărat la fiecare, motiv pentru care sumele depășesc 67.
| Canal | Întrebarea pusă | Câmpuri |
|---|---|---|
| Reținere | Există o fișă care leagă traficul de o persoană și cine a verificat-o? | 13 |
| Jurisdicție | Poate cineva să impună ceea ce există, fără ca furnizorul să aibă un cuvânt de spus? | 5 |
| Divulgare | A predat deja ceva? | 6 |
| Integritate | A fost prins spunând un lucru și făcând altul? | 17 |
| Arhitectură | Cine operează ieșirea și ce face aceasta traficului? | 2 |
| Igienă | Ce material de identificare este colectat în treacăt și poate fi verificat clientul în vreun fel? | 12 |
| Necunoaștere | Cât din toate acestea nu a dovedit nimeni? | 6 |
| Tăcere | Zece ani, milioane de utilizatori și nimic în fișă? | 5 |
Un canal nu citește un câmp și nu produce o cifră de la sine. Între cele două stau regulile modelului: 32 la număr, fiecare numind ce citește, cărui canal răspunde și ce formă de aritmetică folosește. Sunt tipărite aici în întregime pentru că o regulă pe care cititorul nu o poate vedea este o regulă luată pe încredere.
Zece forme le acoperă pe toate, iar forma este rezumatul onest a ceea ce poate face o regulă unui scor:
capped_sum
Termenii aditivi se acumulează către un plafon pe care nu îl pot depăși.
constraint
O invariantă pe care tabelele trebuie să o respecte. Nu atribuie nicio pondere și este verificată de selftest.py, nu evaluată pentru fiecare furnizor.
decay
O valoare scalată în funcție de vechimea dovezilor din spatele ei.
derivation
Calculează un câmp din altele, astfel încât faptul să fie stocat o singură dată.
flag
Publică un indicator pentru cititor și nu modifică niciun scor.
gate
Alege ramura modelului care se aplică, în loc să calculeze un număr.
max
Cea mai nefavorabilă dintre mai multe codificări ale aceleiași circumstanțe. Nu se cumulează: un eveniment consemnat de două ori rămâne un singur eveniment.
noisy_or
Constatările independente se cumulează: 1 - produsul(1 - fiecare).
product
Factorii se înmulțesc, fiecare modificând ceea ce au stabilit ceilalți.
threshold
Un test asupra intrărilor care decide o bandă sau dacă regula se declanșează.
Nu toate cele 32 prețuiesc ceva. Patru poartă forma constraint, iar trei dintre ele — R08, R22, R23 — nu se evaluează pentru niciun furnizor: sunt invarianți pe care tabelele înseși trebuie să-i satisfacă, verificați la construirea contractului, nu la evaluarea unei fișe, motiv pentru care numesc un domeniu, nu un număr de câmpuri.
A patra, R29, chiar citește o fișă, dar pentru a decide cum poate fi codat un câmp, nu cât costă codarea. Încă una, R15, este un flag: publică un marcaj pentru cititor și nu mișcă nicio cifră.
R01_bought_coverageintegritatemaxcitește 4 câmpuri
Acoperire care există pentru că a fost plătită
maximul dintre: perechea (X08, X10) tarifată după params.bought_coverage și — atunci când M10 listează review_directory — X11 tarifat după params.review_directory; 0.000 când niciuna dintre rute nu se activează
R02_cluster_contagionintegritateproductcitește 4 câmpuri
Risc importat de la un furnizor înrudit prins mințind
min(params.cap, coupling x transfer x maximul pentru frații s al R04_lie_group(s)); coupling este params.coupling citit din M18_shared_infrastructure, cu revenire la M17_brand_role atunci când infrastructura este separată, necunoscută sau nu denumește nimic din tabel; transfer: 1.0 dacă data constatării >= max(M16 pentru ambele), altfel 0.0; constatarea fără dată -> 0.0; frații trebuie să fie fișe publicate; nu citește niciodată contagiunea proprie a unui frate
R03_owner_businessintegritatemaxcitește 1 câmp
Monetizare sugerată de ceea ce mai vinde grupul
maximul pentru categoriile M10; combinat cu X05 prin max, nu prin noisy-OR (o circumstanță, două codificări)
R04_lie_groupintegritatemaxcitește 2 câmpuri
Axa minciunii
max(X01, X02) — niciodată noisy-OR: un eveniment codificat de două ori nu trebuie să se cumuleze până la CHANNEL_CAP; S19 = caught_lying dacă >0, neexaminat dacă ambele sunt necunoscute, curat în rest
R05_exposuretăcerethresholdcitește 3 câmpuri
Bandă de expunere
pts = ani de activitate punctați după params.years_points + M08 după params.scale_points + params.stayed_logging_points când P04=stayed_logging; banda este pragul cel mai înalt din params.bands la care ajunge totalul, slabă în rest; P10 scris manual este ignorat
Banda se citește din scorul publicat, nu se stochează alături de el, așa că numele și numărul nu se pot îndepărta unul de altul.
| Bandă | Scor | Ce înseamnă |
|---|---|---|
| Protecție: ridicată | 75–100 | Afirmațiile-cheie ale furnizorului privind confidențialitatea sunt susținute de dovezi, iar un audit independent le-a verificat. |
| Protecție: medie | 55–74 | Cea mai mare parte din ce contează este confirmată și nimic din fișă nu elimină furnizorul, dar rămân câteva lacune. |
| Protecție: sub medie | 35–54 | Mai mult este neconfirmat decât confirmat. Nimic scandalos, dar nu suficient pentru a recomanda. |
| Protecție: scăzută | 15–34 | Ce se știe contează mai ales împotriva furnizorului, sau aproape nimic despre el nu poate fi confirmat. |
| Nerecomandat | 0–14 | Eliminat: furnizorul a fost prins mințind despre ce face, sau aplicația sa trimite traficul altor persoane prin dispozitivele utilizatorilor săi. |
Securitatea este un prag, nu o cantitate negociabilă. Într-un clasament general, un scor mare de utilizabilitate nu poate ridica un furnizor deasupra unuia cu un scor de securitate mai bun. Lista sortează întâi după securitate și apelează la utilizabilitate doar între fișe cu scoruri de securitate identice.
În registrul actual, un furnizor cu 60 la utilizabilitate stă cu 25 locuri sub unul cu 55 — și aceasta este ordinea corectă, nu o eroare.
Modelul evaluează starea dovezilor publicate, nu opinia noastră despre o companie. Trei lucruri despre o valoare contează, așadar, la fel de mult ca valoarea însăși.
Fiecare valoare poartă sursele sale, iar fiecare sursă poartă un nivel. Ponderile aparțin modelului:
| Nivel | Pondere | Ce este |
|---|---|---|
| A | 1.00 | Documentul propriu-zis — politica, raportul, actul instanței |
| B | 0.85 | Furnizorul care o spune undeva, în mod responsabil |
| C | 0.70 | O terță parte competentă care o raportează |
| D | 0.35 | Orice este mai firav decât atât |
Separat, fiecare valoare înregistrează cum a ajuns acolo. document înseamnă că există o citare, și doar acestea pot fi afișate ca afirmații cu sursă; derived a fost calculat din alte câmpuri printr-o regulă de pe această pagină; asserted este o valoare fără nimic în spate, adică modul în care este stocat un câmp pe care nimeni nu l-a dovedit.
Nu există un al patrulea grad: o valoare fie se bazează pe un document, fie a fost calculată din valori care se bazează, fie nu are nimic în spate.
Cele trei curbe, în cifre:
| Ce îmbătrânește | Contează integral pentru | Se înjumătățește la fiecare | Niciodată sub |
|---|---|---|---|
| Un audit sau o inspecție | 12 luni | 18 luni | 5% |
| O afirmație despre o practică în curs | 12 luni | 60 luni | 15% |
| O cifră de transparență | 12 luni | 60 luni | 35% |
Cele trei curbe diferă pentru că lucrurile pe care le descriu se schimbă cu viteze diferite. Instantaneul unui auditor se învechește cel mai repede: spune ce era adevărat într-o săptămână a unui an. O afirmație despre o practică în curs și o cifră de transparență descriu o stare de fapt de durată, așa că își păstrează valoarea mult mai mult — iar un raport de transparență păstrează cel mai înalt prag dintre cele trei, pentru că o companie care și-a publicat odată cifrele a stabilit ceva despre sine ce un an tăcut nu anulează.
O formă cu totul diferită, pentru că răspunde la un alt tip de întrebare: o sumă ponderată aditivă, unde funcțiile se adună și una lipsă este un deficit. Treisprezece câmpuri, douăsprezece dintre ele purtând pondere, 34 de puncte între ele. Al treisprezecelea este prețul anual: publicat pentru că un cititor îl vrea, ponderat cu nimic pentru că o reducere pentru plata a douăsprezece luni în avans este un termen comercial, nu o proprietate a serviciului.
| Câmp | Pondere | Recitit |
|---|---|---|
| Funcționează sub cenzură activă | 5 | 30 zile |
| Platforme cu client | 4 | 30 zile |
| Țări în care sunt oferite locații de ieșire | 4 | 90 zile |
| Preț lunar în USD, plan lunar, conform sumei percepute | 3 | 30 zile |
| Nivel gratuit utilizabil | 3 | 30 zile |
| Protocoale oferite | 3 | 30 zile |
| Acoperirea întrerupătorului de urgență | 3 | 30 zile |
| Conexiuni simultane | 2 | 30 zile |
| Dificultatea de a începe utilizarea | 2 | 30 zile |
| P2P permis | 2 | 30 zile |
| Servicii majore de streaming accesibile | 2 | 30 zile |
| Tunel divizat disponibil | 1 | 30 zile |
| Prețul planului anual în USD, prima perioadă conform sumei percepute | — | 30 zile |
Rezultatul este mediat pe câmpurile care poartă o valoare, așa că un furnizor nu este penalizat pentru un câmp pe care nimeni nu l-a completat pentru nimeni. Ocolirea cenzurii poartă cea mai mare pondere pentru că este singura proprietate de utilizabilitate care decide dacă serviciul funcționează deloc în locurile în care contează cel mai mult; tunelul divizat poartă cea mai mică, pentru că absența lui este doar un inconvenient.
Prețul intră aici, nu pe axa de securitate, și doar tariful lunar. Tarifele anuale sunt afișate peste tot pe site, dar nu sunt punctate: o reducere pentru angajamentul de douăsprezece luni în avans este un termen comercial, nu o proprietate a serviciului.
Un scor la 50% completitudine este o afirmație diferită de același scor la 95%, așa că completitudinea însoțește scorul, iar cele două sunt afișate împreună. Este partea de câmpuri care au fost dovedite, în orice sens.
Alături de el, fiecare fișă poartă lacune-cheie: text de analiză care numește ce nu a fost dovedit, ce ar lămuri lucrurile și rezervele care nuanțează cifra. Aici află cititorul că un raport de asigurare este de Tip I, nu Tip II, sau că o țară din flotă a fost dedusă dintr-o notă de rutare.
Un scor mare cu o listă lungă de lacune nu este o contradicție: scorul spune ce susțin dovezile, lacunele spun câte dovezi au existat. Niciuna dintre cele două jumătăți nu este ascunsă pentru ca cealaltă să sune mai bine.
Unde un furnizor nu publică nimic, câmpul rămâne necunoscut. Nu este niciodată estimat, niciodată dedus de la un concurent, niciodată completat pe tăcute cu o cifră de marketing, și niciodată ghicit în vreun sens — canalul necunoașterii este locul unde asta costă scorul, ceea ce este locul cinstit pentru a costa ceva. Într-un tabel, o valoare nedovedită se afișează ca — și se sortează ultima în ambele direcții: sortarea după mărimea flotei, crescător, nu răsplătește un furnizor pentru că a refuzat să ne spună.
Două axe, două praguri, stabilite intenționat la înălțimi diferite. La securitate, modelul reține un verdict atunci când sub 30% din câmpurile substanțiale au fost dovedite deloc, sau când — sub 50% dovedite și sub 35 puncte — riscul dominant este propriul nostru ignorance. Niciuna dintre situații nu este o afirmație despre furnizor: spune că cercetarea nu a ajuns suficient de departe pentru a-l plasa, iar 9 din 77 fișe se află.
La utilizabilitate, pragul este mai înalt — scorul trebuie să se bazeze pe 50% din ponderea disponibilă, nu 30% — și este mai înalt pentru că cele două axe taxează diferit un gol. Securitatea prețuiește necunoașterea în interiorul scorului, așa că o fișă subțire poartă deja ce o costă.
Utilizabilitatea nu are un asemenea canal: o funcție nedovedită pur și simplu părăsește media, așa că fără un prag o fișă cu doar două câmpuri cunoscute ar suna ca una măsurată. 15 din 77 fișe publică usability.state: no_data, iar numărul pe care îl poartă este o limită inferioară, nu o măsurătoare — nu este niciodată afișat alături de unul known ca și cum cele două ar fi comparabile.
Șase limite, publicate odată cu modelul, nu descoperite mai târziu. Fac parte din methodology.json și însoțesc fiecare scor pe care îl produce, motiv pentru care sunt tipărite aici cuvânt cu cuvânt, nu parafrazate:
expires_at înainte de a cita un preț.key_gaps este locul unde acest lucru trebuie spus.V15_assurance_strength are valoarea unknown, iar fiecărui furnizor auditat i se atribuie norma pieței, nu ceea ce spune propriul raport. Câmpul înregistrează forța declarată, nu rigoarea din spatele ei — o misiune poate avea o opinie de asigurare rezonabilă și să fie totuși îngustă, iar pentru aceasta există V03_audit_subject și V04_scope_servers.Nu există nicio ajustare editorială. O versiune anterioară a acestei metode permitea unui editor să mute un scor calculat cu până la două puncte, cu un motiv publicat; a fost eliminată, pentru că detalierea de pe fiecare pagină de furnizor arată acum aritmetica în întregime, iar o cifră care nu ar ieși din acea aritmetică ar face din detaliere o minciună.
Judecata editorială are un singur loc unde poate trăi, și nu este scorul: un nivel de calitate stabilit manual, ținut separat și niciodată amestecat. Dacă un editor crede că o fișă este greșită, calea este aceeași deschisă oricărui cititor — schimbă dovada, și lasă modelul să recalculeze.
Scorurile sunt recalculate la fiecare import și la cerere. Pentru că versiunea modelului se aplică deodată fiecărei fișe, o schimbare a ei mișcă tot registrul, nu un singur rând — ceea ce este ce ar trebui să se întâmple, și de ce fiecare schimbare este înregistrată public. Data de actualizare a unui furnizor se mișcă doar când s-a schimbat ceva material; un reimport care nu schimbă nimic lasă fiecare dată neatinsă, pentru că a marca 77 pagini cu data de azi ar fi un semnal de prospețime pe care nu l-am fi câștigat.
Ce poate cumpăra este un comision atunci când cineva se abonează printr-un link, și — dacă plasarea plătită va fi vreodată vândută — un bloc etichetat propriu deasupra clasamentului, în afara ordinii. Niciuna nu este activă azi — niciun link nu poartă un parametru de afiliere și nicio plasare nu a fost vândută — iar ambele sunt divulgate acolo unde apar și în divulgarea de afiliere. Pentru că clasamentul este calculat din dovezi, iar dovezile sunt publicate alături, cumpărarea unei poziții mai bune ar necesita schimbarea fișei publicate — exact lucrul pe care oricine îl poate verifica.
R06_ignorancenecunoaștereproductcitește 5 câmpuri
Prețul a ceea ce nimeni nu a dovedit
min(params.cap, params.slope x (1 - known_share)) x (1 - params.posture_relief x postura); postura = suma posturii: intrările sunt plafonate la 1.0
R07_silencetăcerethresholdcitește 4 câmpuri
Tăcere proporțională cu expunerea
se activează numai când P01 și P03 sunt în {none_known, unknown}, iar P05 este în {none, unknown, fresh_no_numbers}; riscul = min(params.cap, params.per_year x ani de activitate x pondere), ponderea fiind preluată din params.weight după banda de expunere. Tarifat pe an deoarece tăcerea se acumulează: cincisprezece ani fără nimic în fișă nu reprezintă aceeași afirmație ca cinci, iar o bandă fixă a spus asta. Un furnizor al cărui an de lansare este necunoscut nu adaugă nimic aici, conform R08
R08_unknown_pricing6 canaleconstraintfiecare tabel de risc și prag din schemă
Prezumția de nevinovăție ca regulă aritmetică
se aplică numai constatărilor împotriva furnizorului și niciodată unui necunoscut scris ca antecedent de canal publicat (C01 = prior_0.550), care este o rată de bază, nu o constatare. În rest, riscul(necunoscut) <= 0.50 x riscul(celei mai nefavorabile valori confirmate) pentru acel câmp și nu este niciodată egal cu acesta; o minciună depistată este întotdeauna deasupra unui câmp gol; pe axa minciunii și în fiecare câmp de eveniment, riscul(necunoscut) = 0.000 fără excepție. Prețul integral al unui câmp gol este plătit o singură dată, în ignoranță, acolo unde este etichetat ca fiind al nostru
R09_channel_combination8 canalenoisy_orcitește 8 câmpuri
Cum devin cele opt canale un singur număr
scor = 100 x product(1 - min(0.90, r_c)) pentru cele opt canale; fără prag minim sau maxim general; S18 intră în integritate, nu ca al nouălea canal
R10_disclosure_decaydivulgaredecaymaxcitește 4 câmpuri
Evenimentele nefavorabile îmbătrânesc și ele
divulgare = max pentru P01, P02 și P03 dintre prețurile proprii ale acelui câmp după depreciere — un singur traseu luat la valoarea sa cea mai nefavorabilă, niciodată cumulat, deoarece trei codificări ale unei singure confiscări reprezintă o singură confiscare; decay(plateau=12, half_life=60, floor=0.35) la data intrării P12_case_history pentru același episod, corelată cu ceea ce spune intrarea că s-a întâmplat — P01 cu o confiscare, P03 cu un court_order, subpoena sau mandate_order — și niciodată cu modul în care s-a încheiat, deoarece un episod care nu a produs nimic rămâne episodul care datează constatarea; P02 este corelat pe baza rezultatului, deoarece acolo rezultatul este faptul; un eveniment advers fără o astfel de intrare își păstrează valoarea nedepreciată; forma curbei practicii, cu un prag minim mai ridicat, 0.35 aici față de 0.15 pentru dovezile privind practica, deoarece o divulgare dovedită rămâne permanent în fișă
R11_evidence_voidingrețineredivulgareintegritategatecitește 1 câmp
Schimbarea controlului resetează ceea ce se transferă
dovezile datate înainte de M16 nu se atașează proprietarului actual: auditurile pierd bonusul de serie, evenimentele de divulgare coboară la pragul minim R10, iar constatările surorilor nu se transferă deloc
R12_report_plausibilityintegritatenecunoașterethresholdcitește 5 câmpuri
Un raport de transparență valorează cât conținutul său
P06 = zero_implausible când P09 = 0 și P08 este peste params.min_requests, iar fișa stabilește că există un registru per persoană care poate fi divulgat — severitatea reținerii la sau peste params.min_retention. Evaluarea sa doar după dimensiunea utilizatorilor penaliza opusul scopului său: un furnizor care își publică cifrele și raportează că nu a fost acordată nicio divulgare era numit mincinos, în timp ce unul care nu publică nimic nu plătea nimic. Nicio divulgare acordată este incredibilă doar în cazul unui furnizor a cărui fișă proprie spune că deține ceva ce poate acorda; în cazul unei constatări dovedite privind lipsa jurnalelor, acesta este răspunsul așteptat, iar modelul nu trebuie să respingă într-un canal ceea ce a creditat în altul. Când se activează, ameliorarea poziției din P05 este setată la 0.00, iar integritatea primește traseul din params.route
R13_derived_jurisdictionjurisdicțienoisy_ormaxcitește 6 câmpuri
Câmpurile obligației legale sunt derivate, nu evaluate
C10 = M06 în MANDATE_COUNTRIES; C11 = M11 în MANDATE_COUNTRIES; când M11 = M06, cele două reprezintă o singură situație, iar jurisdicția ia max(C10, C11, P11), niciodată SAU logic zgomotos; expunerea flotei intră ca max(C09b, P04), care este un traseu separat de cel al companiei; o suprascriere scrisă manual necesită propria sursă și este publicată ca atare
R14_disclosure_ratedivulgarethresholdcitește 2 câmpuri
Ponderea cererilor care au produs date
rată = P09 / P08 după ce P08 atinge params.min_requests; risc = params.weight x rată; publicată alături de rată deoarece comparabilitatea între jurisdicții este redusă — o cerere înseamnă un ordin judecătoresc într-o țară și o scrisoare în alta
R15_free_tier_flagniciun canalflagcitește 2 câmpuri
Planurile gratuite sunt plătite cumva
S22 = marcat când fiecare câmp numit în params conține una dintre valorile pe care params le enumeră pentru acesta, în niciun alt caz; nu schimbă niciun scor pe niciuna dintre axe — ambele intrări sunt deja tarifate acolo unde le este locul, iar tarifarea conjuncției lor ar însemna efectuarea mediei pe care cele două axe există pentru a o refuza
R16_opaque_at_mass_scaleintegritatethresholdcitește 2 câmpuri
Opacitatea este mai gravă cu cât acoperă mai mulți oameni
X03 = opac și M08 = masă -> params.at_mass_scale în locul propriului preț al X03 pentru opac
R17_location_noticejurisdicțiederivationcitește 3 câmpuri
Acolo unde este oferită o țară cu obligație legală, ce se află de fapt acolo
C09 = țările U02 care apar în MANDATE_COUNTRIES, derivate și niciodată completate manual. C09 singur nu adaugă nimic și rămâne în afara numitorului completitudinii: oferirea unei ieșiri într-o astfel de țară nu spune nimic de una singură și este publicată în raport cu locația aleasă de cititor. Ceea ce este evaluat este C09b, singura întrebare care merită pusă odată ce C09 nu este gol — dacă hardware-ul se află efectiv sub acea obligație sau dacă locația este virtuală, iar hardware-ul se află în altă parte. C09b este n/a când C09 este gol și se combină cu P04 prin max: prezența sub o obligație este o singură circumstanță, codificată de două ori
R18_audit_gaterețineregatemaxcitește 2 câmpuri
Ce ramură a reținerii urmează un audit
V11 indică reținerea -> ramura declarată la params.credence_stated; V01 = yes_* și V11 este tăcut -> ramura tăcută la params.credence_silent x subject_factor (params.subject_default când subiectul nu este dovedit), iar nicio ramură nu depășește params.credence_max; în caz contrar, nu există deloc dovezi documentare; severitatea pe ramura aleasă = max(C01_linkable_retention, V11_audit_findings), niciodată noisy-OR — o singură circumstanță codificată de două ori nu trebuie cumulată (ca în R04)
R19_audit_decayrețineredecaycitește 1 câmp
Configurația se schimbă frecvent
decay(params.decay) — continuă în luni, fără noduri
R20_practice_agesrețineredecaymaxcitește 1 câmp
Fiecare eveniment documentat are propria dată
fiecare eveniment din P12 cu outcome = nothing_produced contribuie decay(practice, propria dată); valoarea practice a câmpului este max peste evenimentele sale, niciodată suma lor; înlocuiește interpretarea cu o singură dată a P01 și P03, care reducea mai multe confiscări la una singură
R21_circumvention_decayusabilitydecaycitește 1 câmp
Blocarea avansează mai repede decât dovezile
U06 = scorurile dovedite sunt considerate declarate odată ce data proprie la care se raportează câmpul este mai veche de 12 luni; fișa datează deja fiecare câmp, astfel încât vechimea este citită de acolo, nu înscrisă în valoare; singurul câmp de utilizabilitate cu decay, deoarece este singurul a cărui valabilitate expiră
R22_completenessnecunoaștereconstraintcoloana completitudinii fiecărui câmp
Ce numără numitorul
câmpuri de fond cu completitudine = yes; n/a lasă numitorul neschimbat, necunoscut rămâne în el; câmpurile de identitate, rezultatele modelului, etichetele redundante și câmpurile de utilizabilitate sunt toate excluse — acoperirea utilizabilității este raportată separat ca S16
R23_credence_defaultsreținereconstraintfiecare tabel de factori din schemă
Dovezile necitite nu sunt creditate
oglinda lui R08 și, în mod deliberat, nu este simetrică față de acesta. factor(necunoscut) <= cel mai slab nivel probatoriu autentic din acel câmp și strict peste orice valoare care codifică un refuz de a divulga (V06 unnamed, V02 none). A acorda din oficiu credibilitate unui audit pe care nimeni nu l-a citit este modul în care un raport cumpărat ajunge să fie cosmetizat într-un scor; a pune propria noastră ignoranță în sarcina refuzului furnizorului este eroarea opusă. Refuzul de a acorda credibilitate unor dovezi neverificate nu este o acuzație — furnizorul revine la prior, rata de bază a pieței, nu la o constatare
R24_retention_compositionreținereproductmaxcitește 14 câmpuri
Cum devin subcanalele reținerii un singur număr
cele patru sub-canale nu se calculează ca medie. credence.paper = ramura aleasă de R18 (declarată: credence_stated; tăcută: credence_silent x subject_factor) x source_credence din propriul .conf al ramurii x audit_decay (R19) x publication_factor x engagement_factor (firm x standard x tăria asigurării) x scope_factor pe ramura declarată x series_bonus când R11 lasă seria în vigoare, plafonat la credence_max. credence.practice = max peste evenimentele nothing_produced datate ale practice_credence x practice_decay (R20). credence = min(credence_max, max(paper, practice) + secondary_weight x min(paper, practice)) — două tipuri de dovezi au o pondere mai mare decât unul, iar nicio cantitate de dovezi nu atinge certitudinea. severity = max(C01, V11) conform R18 sau prior când niciuna nu este dovedită. retention = credence x severity + (1 - credence) x max(severity, prior): regresia la rata de bază a pieței este doar ascendentă, astfel încât o recunoaștere împotriva propriului interes își păstrează valoarea nominală. retention.floor = max(retention, pragul C12:) la final, deoarece un audit limitat la tunel nu poate infirma un fapt din aplicație
R25_integrity_compositionintegritatenoisy_orcitește 14 câmpuri
Cum devin traseele integrității un singur număr
integritatea = 1 - produsul(1 - rută) pentru rutele care se declanșează: axa minciunii (R04), transparența proprietarului (R16 la scară de masă), istoricul grupului proprietar, monetizarea combinată cu ceea ce vinde grupul (R03), gestionarea incidentelor, afirmațiile absolute, promovarea pe viață, acoperirea cumpărată (R01), ruta raportului neverosimil (R12), lacuna declarației magazinului (R28), disclosure_rate_weight x rate (R14) și contagiunea de cluster (R02, S18). Rutele se cumulează deoarece sunt constatări separate; perechile care reprezintă o singură circumstanță codificată de două ori au fost deja reduse prin max în propria regulă, motiv pentru care aici nu se mai reduce nimic
R26_hygiene_compositionigienăcapped_sumcitește 12 câmpuri
Cum devin câmpurile igienei un singur număr
igiena = min(params.cap, suma riscului: prețul fiecărui câmp direcționat aici). Singurul canal aditiv de pe axa securității: acestea sunt mici scurgeri independente care se acumulează, nu o singură constatare care decide un rezultat, iar plafonul împiedică o acumulare de colectări minore să fie interpretată ca o divulgare. Un câmp de tip listă valorează cât membrul său cel mai ieftin — este suficientă o metodă de plată anonimă — și revine la propriul preț pentru necunoscut atunci când niciun membru nu are preț. C13_weakest_protocol este aici un termen derivat (R32): un transport legacy activ este încă un lucru colectat în treacăt, nu o constatare care decide un rezultat
R27_report_concealmentintegritatemaxcitește 2 câmpuri
Tăcere despre divulgare la o scară care garantează cereri
un furnizor la scară medie sau de masă primește cu siguranță cereri, astfel încât o absență dovedită a numerelor este un fapt despre furnizor, nu o lacună în cercetarea noastră: P05 = none impune 0,150, fresh_no_numbers 0,100 — un raport publicat care omite singurul număr relevant este forma cea mai clară a acestui lucru — iar stale 0,050. Se declanșează numai pentru o valoare dovedită; unknown nu impune nimic aici și este evaluat în ignoranță, unde se încadrează faptul că noi nu am verificat. Oglinda lui R12: unul evaluează un număr incredibil, acesta evaluează absența oricărui număr
R28_store_declaration_gapintegritatemaxcitește 1 câmp
Declarația magazinului în raport cu politica pe care furnizorul a oferit-o magazinului
formularul obligatoriu al magazinului este declarația semnată chiar de furnizor despre aplicația sa, astfel încât orice declară formularul trebuie să apară și în politica la care furnizorul însuși trimite magazinul. Se citește într-o singură direcție: aplicația este un subset al serviciului, astfel încât un formular care declară mai puțin decât admite politica se explică prin domeniu de aplicare și nu impune nimic, în timp ce o categorie declarată de formular și nemenționată niciodată în politică nu are această scuză. Evaluarea se face după ceea ce dezvăluie categoria nedivulgată: un identificator sau un diagnostic impune 0,150, comportamentul — activitatea aplicației, aplicațiile instalate, locația sau orice scop publicitar — impune 0,300, iar declararea chiar a colectării negate de o afirmație fără jurnale impune 0,450. Cele două magazine definesc colectarea diferit, astfel încât o diferență între formularul Apple și formularul Google nu este în sine o constatare. Cea mai mare lacună dintre magazine este cea care prevalează
R29_session_statereținereconstraintcitește 2 câmpuri
Conexiunea nu este o fișă a conexiunii
C01 evaluează ce mai poate lega un furnizor de o persoană după încheierea sesiunii. Starea care există numai cât timp tunelul este activ — un source_ip, un account id și un connection timestamp păstrate pentru ca serverul să poată direcționa pachetele și aplica limita de dispozitive — este conexiunea în sine, nu o fișă a acesteia, iar evaluarea ei ca reținere impune unui furnizor un cost pentru descrierea modului în care funcționează un VPN. Mai rău, impune mai mult decât a nu spune nimic: spațiul gol din acest câmp este priorul pieței 0,550, iar source_ip este 0,750, astfel încât descrierea onestă a unui interval tampon de cincisprezece minute a costat mai mult decât tăcerea. Excepția este restrânsă și trebuie să fie astfel, altfel devine propoziția pe care o scrie fiecare furnizor. Se aplică numai atunci când propriul document al furnizorului stabilește un interval de ștergere legat de sfârșitul sesiunii și de cel mult 24 de ore — cea mai scurtă unitate calendaristică, mai lungă decât orice dezafectare de care are nevoie un serviciu și mai scurtă decât orice rotație pe care o păstrează un jurnal. Durata nedeclarată este reținere. O perioadă calendaristică — 7 zile, 30 de zile, un ciclu de rotație — este reținere indiferent cum este formulată, deoarece supraviețuiește sesiunii în mod deliberat. Orice păstrează furnizorul după acest interval își merită în continuare propriul nivel, iar excepția citește doar afirmația furnizorului: acolo unde un audit a constatat că datele sunt prezente, R18 plasează deja constatarea deasupra afirmației
R30_usability_foundationusabilitythresholdcoloana ponderii fiecărui câmp de utilizabilitate
Cât de mult se bazează scorul de utilizabilitate pe tabel
suma utilizabilității se împarte la ponderea pe care a putut-o citi: un câmp pe care nimeni nu l-a dovedit rămâne în numitor în loc să primească scorul zero, deoarece acoperirea nu este calitate. Costul este că scorul nu își poate vedea propria fundație — o coloană al cărei câmp cu cea mai mare pondere nu este citit produce aceeași formă de număr ca una completată. S21 = pondere citită / pondere disponibilă, unde disponibilă înseamnă fiecare câmp de utilizabilitate cu pondere, mai puțin cele care sunt n/a. Sub usability_foundation_floor S20 = no_data: un număr bazat pe mai puțin de jumătate din tabel indică ce câmpuri au fost completate, nu ce face produsul. Pragul este mai strict decât cel de securitate deoarece această axă nu are canal de ignoranță — securitatea impune un cost pentru un spațiu gol din scor, iar utilizabilitatea nu îi atribuie niciun cost. Scorul este totuși publicat sub no_data, exact ca scorul de securitate; un număr retras nu poate fi verificat.
R32_protocol_floorigienăderivationmaxcitește 1 câmp
Cel mai slab transport încă oferit
C13_weakest_protocol este cel mai riscant protocol din U07_protocols conform ordinii de risc din propriul tabel al C13, derivat la încărcare și niciodată completat manual — aceeași structură ca R17, care derivă C09 din U02. Intră în R26_hygiene_composition ca încă un termen și este limitat de plafonul canalului de igienă ca orice termen de acolo. Într-o flotă care oferă numai transporturi moderne, câmpul este not_applicable, nu un nume: fără prețuri de protocol mai mari de 0,000, nu există nimic slab oferit asupra căruia să se indice, iar alegerea celui mai puțin bun dintre cele bune după ordinea de departajare ar publica o constatare pe care nimeni nu a făcut-o. Câmpul este păstrat pentru segmentul ieftin în care PPTP și L2TP sunt încă active. Prețul proprietary nu este un cost pentru un furnizor care își scrie propriul protocol — este prețul imposibilității de a spune dacă acel protocol este slab, motiv pentru care vendor_open nu costă nimic: un transport al furnizorului al cărui cod sursă este publicat și evaluat independent poate fi analizat, iar nimic din evaluare nu spune că este slab. Aplicarea unui cost și aici ar evalua o ignoranță care a fost rezolvată și ar face publicarea codului sursă mai costisitoare decât ascunderea lui.
R33_exit_conductarhitecturămaxcitește 2 câmpuri
Ce face ieșirea traficului pe care îl transportă
arhitectura = max(prețul C00_architecture, prețul C14_traffic_modification). Cine operează ieșirea și ce face ieșirea cu ceea ce trece prin ea sunt o singură întrebare — dacă extremitatea îndepărtată a tunelului se află de partea ta — și un singur răspuns negativ decide, astfel că canalul ia prețul mai mare dintre cele două și niciodată suma lor: o ieșire operată de străini care îți și rescrie antetele nu este de două ori mai rea decât oricare dintre cele două, ci este la fel de rea. headers_injected (0,300) este un identificator de sesiune sau orice alt antet adăugat traficului care trece prin ieșire, oferind fiecărei destinații un nume pentru utilizator; content_injected (0,500) reprezintă scripturi, publicitate sau alt material plasat în pagini; tls_interception (0,750) înseamnă că ieșirea deschide sesiuni criptate. none trebuie dedus dintr-un document care spune acest lucru, iar puține documente o fac, astfel că unknown poartă același prior de piață ca C00, iar canalul de ignoranță se ocupă de restul.
verdict: no_data spune acest lucru explicit. Citiți completeness pe ambele axe înainte de a citi oricare dintre scoruri.M14_inclusion_basis este singura fișă a motivului pentru care fiecare se află aici. Absența unui furnizor din catalog este o dovadă despre această selecție manuală înainte de a fi o dovadă despre furnizor, iar nimic de aici nu estimează cât de mult omite.Cinci
Nimic nu intră în acest model la valoarea nominală. Ce spune raportul și cine o spune sunt două scări separate, și se înmulțesc.
Ce spune raportulreținere credence_stated față de credence_silent
Cine o spunecele patru niveluri ale source_credence
Cele două se înmulțesc. Cele patru niveluri ale cui o spune, și ce este fiecare:
Trei
Iată ce cumpără înmulțirea. Șapte canale pot fi impecabile, iar al optulea tot poate hotărî soarta fișei — de aceea un furnizor nu poate media un fapt descalificant fiind ordonat peste tot în rest. Mută comanda.
Șapte canale ținând fiecare 0.05, iar unul — cel roșu — pe care îl mută cititorul
Nimic nu a fost adunat și nimic nu a fost mediat. Cele șapte canale ordonate sunt tot ordonate la celălalt capăt al acelei comenzi — și nu pot răscumpăra ce a luat al optulea, ceea ce este întregul motiv pentru care cele opt sunt înmulțite.
Opt
Fiecare linie din evantai este o regulă care numește canalul căruia îi răspunde. Toate sunt tipărite în întregime mai jos pe această pagină, pentru că o regulă pe care cititorul nu o poate vedea este o regulă luată pe încredere.
Evantaiul din stânga este fiecare regulă care ajunge la câmpurile pe care le citește; cel din dreapta este fiecare regulă care numește canalul căruia îi răspunde. Toate cele 32 sunt tipărite mai jos pe această pagină în întregime, pentru că o regulă pe care cititorul nu o poate vedea este o regulă luată pe încredere. Mecanismul nu este mare pentru că este ingenios — este mare pentru că întrebările sunt mari, iar un model suficient de mic pentru a fi rezumat într-un paragraf ar rezuma lucrul greșit.
Unu
Sunt desenate aici în proporția în care le desenează registrul, pentru că acea proporție este argumentul: unul dintre cele două decide ordinea, iar celălalt descrie ce primești pentru ea.
Securitatea pune 8 întrebări
Fiecare dintre cele 67 câmpuri de securitate alimentează cel puțin una dintre ele. Cele opt răspunsuri sunt înmulțite.
Decide ordinea
Descrie ce primești
Utilizabilitatea cântărește 12 câmpuri
Ponderile însumează 34, iar cele 12 sunt adunate ca medie ponderată. Al treisprezecelea este purtat la pondere zero, așa că este publicat și nu este prețuit de nimic.
Patru
Niciun canal nu poate trece de 0.9, pentru că certitudinea nu se poate obține din citirea documentelor. Iar o singură constatare fixează un canal de jos, acolo unde niciun audit nu poate ajunge.
Canalul de reținere
Un raport impecabil golește paharul. Ce rămâne în el este identificatorul pe care îl deține furnizorul:
Un raport poate spune doar ce a fost consemnat. Un identificator spune că utilizatorul poate fi numit indiferent dacă a fost sau nu consemnat ceva, așa că cele două nu răspund la aceeași întrebare — iar modelul refuză să lase primul să-l tranșeze pe al doilea.
Șase
Trei tipuri de dovezi, trei curbe, fiecare rămânând constantă pentru un platou și apoi scăzând la un prag pe care nu-l mai părăsește. Un audit este ceva ce s-a întâmplat la o dată, nu o stare în care se află un furnizor.
Pe verticală: ponderea pe care o mai poartă dovada — plină sus, la propriul prag jos
azi1 an23456 ani
Fiecare curbă rămâne constantă pentru un platou și apoi scade la un prag pe care nu-l mai părăsește — dovezile se învechesc, nu devin o minciună. Punctele sunt cele 30 fișe din registru care publică un audit datat, plasate pe curba auditului la propria lor vechime. Un audit nu este o stare în care se află un furnizor; este ceva ce s-a întâmplat la o dată.
Nouă
Fiecare VPN de aici primește un singur întreg dintr-o sută, iar modelul taie această scală la 4 praguri publicate dinainte. Trece de un prag și cuvântul se schimbă. Nimic altceva nu-l mișcă — nici un logo mai frumos, nici o reducere, nici un comunicat de presă.
Benzile sunt intervale, fixate înainte ca vreo fișă să fie evaluată, și tipărite ca să poți verifica singur fiecare trecere — numărul este calculat, cuvântul se citește din el, iar niciunul nu poate fi cumpărat.
Doi
Nimic nu se adună. Fiecare canal păstrează partea din fișă pe care cel dinainte a lăsat-o în picioare, așa că cele opt formează un lanț, nu o coloană de cifre.
scor = 100 × ∏ (1 − canal)
Forma este un noisy-OR over independent risk channels. Ilustrat aici pe fișa lui Proton VPN, cel mai mare scor din registru — cifrele de mai jos sunt ale acestei fișe, nu un exemplu scris pentru ocazie.
3 canale nu găsesc nimic și nu iau nimic. Celelalte 5 iau fiecare o parte mică, iar părțile se compun, nu se anulează: 70 este ce a rămas din sută.
Șapte
Singurul canal care prețuiește un gol. Este și singurul lucru de pe acest site pe care un furnizor îl poate mișca singur — iar modul de a-l mișca este să publice, nu să ceară.
0.00taxat fișei
min(0.6, 0.9 × (1 − established)) × (1 − 0.4 × posture)
A nu ști nu este neutru. Un furnizor despre care nimeni nu a dovedit nimic poartă un risc real, iar modelul îl prețuiește în loc să lase un gol politicos — ceea ce face din acesta singurul număr de pe tot site-ul pe care un furnizor îl mișcă singur. Fiecare alt canal așteaptă să se găsească ceva; acesta așteaptă să se publice ceva.