Jälg on hulk tehnilisi tunnuseid, mis ilmusid samadel tellimustel, hoitud koos sellel põhjusel ja mitte ühelgi teisel. Ta ei ole isik, ta ei ole konto, ja miski süsteemis ei otsusta kunagi, et ta on üks ostja. See artikkel räägib, miks nõrgem väide on kasulikum, ja mida maksab kellegi alt välja pääsemine.
Omadus
Jälg on ajaloo omadus, mitte isiku oma. Tunnused, mis ilmusid koos tellimustel, kus kahju hiljem kinnitati, jäävad seotuks, ja värske tunnus, mis ilmub nende kõrvale, pärib selle seose. Keegi ei väida, et jälg on üks isik. Kirje ütleb ainult, et need asjad nähti koos.
Miks see kehtib
Juhtum, mille järele see ehitati
Enne, kui oli kuhugi kontrolli saata, töötas üks Eesti veebipood oma logides tagurpidi läbi terve rea pettustellimusi. Mitu tellimust paari päeva jooksul, millest igaüks oli võtmisel näinud tavaline. Mis neid sidus, ei olnud nimi ega konto, sest need olid iga kord erinevad. See oli väike hulk tehnilisi tunnuseid, mis ilmusid ikka samas seltskonnas.
Huvitav oli, kuidas hulk püsis. Üks tellimus jagas tunnust järgmisega, see tellimus jagas teist tunnust järgmisega, ja lõpuks kattis ahel tellimusi, millel ei olnud midagi nähtavalt ühist. Kui pood kahju kinnitas ja need tellimused märkis, maandusid märgid hulgal, mitte isikul, ja kellelgi ei tulnud selgeks teha, kes selle taga oli. Kasulik objekt osutus isikust väiksemaks ja palju kindlamini teadaolevaks.
Joonis 1
Koosesinemine, mitte väide
Seos on täpselt ühel põhjusel: kaks tunnust olid samal tellimusel. See on vaatlus tellimuse viitega taga, mitte järeldus, ja mitte väide, et kaks asja kuuluvad samale inimesele. Identiteedi lahendamise süsteem teeks järgmise sammu, otsustaks, et kirjegrupp on üks isik, ja arutleks avatud toimiku üle. Heatrail keeldub sellest sammust.
Tagajärg kõlab kirja panduna veidralt, ja see on disaini mõte: jälg võib isiku kohta vale olla ja ajaloo kohta ikka õige. Kui kaks seosetut inimest jagasid ühel tellimusel tõesti tunnust, jääb kirje, et nad jagasid, tõeseks, ja lause, mis oleks vale olnud, on see, mida keegi ei öelnud.
See paneb paika ka keele. Kontroll vastab, et see tellimus puudutab jälge, millel kahju on kinnitatud. Ta ei vasta kunagi, et see ostja on pettur, sest süsteemil ei ole subjekti, kelle kohta sellist lauset saaks moodustada. Tagasi tuleb skoor ja põhjused tellimuse kohta, ja inimene poes otsustab, mida nendega teha, mis on nõuandev konstruktsiooni järgi ja põhjused, mida saab lugeda teema.
Pärimine, ja miks rotatsioon ei lähtesta midagi
Jälg kasvab samamoodi, nagu ta algas. Kui tellimus kannab tunnust, mis on juba jäljel, on kõik muu sellel tellimusel nüüd temaga seotud, sealhulgas midagi, mida pole kusagil varem nähtud. Ta saabub millegi kõrvale, mis ei ole uus, ja seos tehakse osa pealt, mis ei ole uus.
See on suurem osa vastusest ilmsele küsimusele sellise süsteemi kohta, nimelt miks keegi lihtsalt identifikaatorit ei vaheta ja edasi ei lähe. Ühe identifikaatori vahetamine toodab tellimuse, mis kannab värsket tunnust tuttavate kõrval. Värske tunnus liitub jäljega saabumisel ja jääb sinna omal õigusel, nii et asendus midagi maksis ja ei midagi võitnud.
Joonis 2
Üks jälg, igas poes teine nimi
Jäljel ei ole avalikku identifikaatorit. Iga pood näeb teda läbipaistmatu aliase all, mis on genereeritud ainult selle poe jaoks, seega kannab sama jälg igas liikmepoes teist käepidet, ja kaks poodi, kes oma kirjed kõrvuti panevad, ei saa käepidemeid joondada. Omadus on osa lepingust API viites: stabiilne teile, erinev kõigile teistele, kes sama asja vaatavad.
Ta on kasulik teie enda kirjetes, kus ta laseb poel oma tellimusi rühmitada ja samale asjale kaks korda viidata. Ta ei ole võti võrgustikku: ta ei saa küsida jälje kohta, mida teie tellimused ei ole puudutanud, ja päring teise poe ressursi kohta vastatakse nii, nagu ressurssi ei oleks, mis on isolatsioonireegel. Käepide, mis poodide vahel reisiks, saaks asjaks, millest räägitakse, ja asi, millest räägitakse, saab asjaks, mida koheldakse isikuna.
Mida vältimine maksab
Mida ründaja kulutab
Iga tunnus, mis jälge puudutas, peab järgmiselt tellimuselt puuduma, kõik korraga. Üks kordus tühistab pingutuse, sest üksainus tuttav tunnus uute kõrval ehitab seose uuesti ja kannab jälje edasi kõigele muule sellel tellimusel. See ei ole üks uus aadress ega üks uus number. See on kogu hulk, igal tellimusel, nüüdsest, igas võrgustiku poes, ilma võimaluseta teada saada, kas see töötas, sest vastus läheb poele ja mitte kunagi ostjale.
Mida ründaja võidab
Ühe tellimuse veel, ühes poes veel, kes saab ta samal päeval märkida. Signaal on võrgustiku, mitte ühe poe oma, seega pood, kes kahju kinnitab, ei pea olema see, keda esimesena tabati. Täielik asendus ostab ühe tehingu ja tuleb siis järgmise jaoks uuesti, täies mahus, teha. Kaks poolt ei ole lähedal, ja just see ebavõrdsus on kogu disaini mõte.
Kuidas kontrollida
Väide siin räägib sellest, mida vastusel on lubatud öelda, seega kontrollitakse teda üht lugedes. Saatke kontroll omaenda tellimuse kohta:
# Sign it for real and send an Idempotency-Key: both are checked before the
# payload is, so a placeholder signature answers 401 and a missing key 400.
curl -s -X POST https://api.heatrail.eu/v1/check \
-H "Content-Type: application/json" \
-H "Authorization: HR1 {key id}:{signature}" \
-H "Idempotency-Key: chk-verify-what-a-reason-says-01" \
-d @order.json
# What comes back: a score, reasons that describe this order and the
# trail it touched, and an opaque trail_alias that means something
# only inside your shop. No name, no account, no other shop's data,
# and no sentence about a buyer.Seejärel lugege vastusevälju ja põhjuskoode API viites hulgana, ja pange tähele, millist laadi laused nad kõik on. Igaüks kirjeldab teie ees olevat tellimust või jälge, mida see tellimus puudutas. Ükski ei kirjelda isikut, ja välja, kuhu sellise kirjelduse saaks panna, ei ole.
Teine pool on alias. Võtke viide, mida teie pood pole kunagi saanud, ja küsige seda. Te saate 404 not_found, sama vastuse kui viitele, mida pole kusagil kunagi olnud, seega alias on käepide teie enda konto sees, mitte tee üle võrgustiku. Turvaleht selgitab, miks see staatusekood ja mitte ilmsem.
Õiguslik alus
Jälg on hulk pseudonüümitud tehnilisi jälgi (GDPR artikkel 4(5)), seotud koosesinemise kaudu ja hoitud piiratud aja (artikkel 5(1)(e), vt unustamine ajakava järgi). Tellimuse skoorimine jälje vastu on profiilianalüüs artikli 4(4) tähenduses, ja me ütleme seda, selle asemel et definitsioonist välja vaielda: isikuandmeid hinnatakse automaatselt, et ennustada midagi isiku käitumise kohta. Profiilianalüüs on seaduslik poe artikli 6(1)(f) alusel, ja just see teeb poe kohustused artiklite 13(2)(f) ja 15(1)(h) all vastatavaks, mis on põhjus, miks põhjused tulevad tagasi lausetena (põhjused, mida saab lugeda). See, mis ta ei ole, on otsus artikli 22 tähenduses: vastusest üksi ei järgne midagi (nõuandev konstruktsiooni järgi). Vt andmetöötluslepingut ja usalduskeskust.
Seotud
- Identiteet ilma isikuteta, millised tunnused meieni jõudes on, ja miks räsitud väärtus on endiselt isikuandmed.
- Kuumus ja mis seda jahutab, mida kinnitatud silt jäljega teeb, ja mis seda ei tühista.
- Kinnitus, miks ühe poe vaade jäljele ei ole võrgustiku vaade sellele.
- Miks võrku ei saa loetleda, teine põhjus, miks jälje alias ei ole otsinguvõti.