Kamera Spotter API

Der er flere som har spurgt til API bag Kamera Spotter-projektet. Hermed dokumentation derpå.

Der er to grundlæggende funktioner: list og submit. List er en liste over alle kameraer og submit er funktionen der gør det muligt at uploade nye billeder af kameraer. API’et er baseret på HTTP requests til kameraspotter.information.dk eller ks.epilog.dk som fallback-domæne. Der findes også mulighed for KML og GeoJSON adgang.

Hvis du vil bruge submit funktionaliteten, anbefales at du bruger sandkassen på ks-sandkasse.epilog.dk.

LIST

Send en GET request til: /api/list 
Resultatet er en liste over kameraer i JSON format.

Følgende keys er udfyldt:
uid: et unik id for kameraet. 
message: tekst indtastet af bruger
latitude: breddegrad for kameraet
longitude: længdegrad  for kameraet
accuracy: nøjagtighed i meter for kameraets placering 

Et billede for kameraet kan dannes ud fra uid: /image/<uid>

SUBMIT 

Send en POST request til /api/submit
Body på request er af typen multipart/form-upload

Følgende keys skal udfyldes:
message: tekst indtastet af bruger
latitude: breddegrad for kameraet
longitude: længdegrad  for kameraet
accuracy: nøjagtighed i meter for kameraets placering 
signed: om kameraet er skiltet, udfyldes med: yes, no eller unknown
client: navn på din klient
file: billedet af kameraet 

Happy hacking. 

Don&#8217;t worry, the internet is here - A sign from the ACTA demonstration in front of the Danish parliament. Licence: CC-BY.

Don’t worry, the internet is here - A sign from the ACTA demonstration in front of the Danish parliament. Licence: CC-BY.

Rejsekortet: Sikkerhed som vi pensionerede i 90’erne.

Da jeg i januar 2010 stod i TV-Avisen og demonstrerede, hvor let det var at få adgang til og ændre i de data, der ligger på Rejsekortet, troede jeg, at det ville gøre indtryk på selskabet bag kortet.

Men her to år efter kan jeg konstatere, at Rejsekortet, som i skrivende stund er ved at blive rullet ud i hovedstadsområdet, fortsat baserer sig på sikkerhedsforanstaltninger, som længe har været betragtet som usikre.
Ligesom for to år siden er min holdning, at det er en helt klar fejl at blive ved med at bruge Mifare som platform.

For 17 år siden, i 1995, indledte en gruppe trafikselskaber arbejdet med at erstatte de allerede dengang aldrende klippekort-automater med et moderne elektronisk rejsekort. Året før var det nye RFID-baserede hukommelseskort Mifare blevet introduceret og var på det tidspunkt, hvor trafikselskaberne begyndte deres arbejde, på vej til at blive grundlaget for et nyt elektronisk rejsekort introduceret i Seoul, Korea.

Mifare-kortet vandt stor udbredelse som elektronisk rejsekort kloden rundt, blandt andet i London, Beijing og Taipei. Mifare var således et populært produkt i branchen og blev derfor også brugt som grundlag til en specifikation af et fælles nordisk rejsekort, der blev udviklet i samarbejde med danske trafikselskaber omkring årtusindskiftet. Den store vision var, at kortet skulle virke på tværs af operatører, på tværs af landegrænser.

Sikkerhed fra 90’erne

Mifare-kortets hukommelse er beskyttet af hemmelige 40 bits-nøgler, og kommunikation imellem kortet og kortlæser er krypteret. Kortet blev ligefrem markedsført på dets brug af en hemmelig proprietær krypteringsteknologi. Det fik i 2007 et hold forskere til at kaste sig over den krypteringsalgoritme, der blev benyttet. Efter et stykke enestående detektivarbejde, hvor Mifare-chippen blev kortlagt med mikroskop og billedgenkendelse af de logiske kredsløb, lykkedes det at finde den algoritme, der blev benyttet.

Det viste, at krypteringsalgoritmen havde store svagheder, især fordi den aldrig var blevet set efter i sømmene af uafhængige forskere. Efter at resultaterne blev fremlagt i 2007, har forskere fundet yderligere problemer i måden, hvorpå krypteringen er implementeret. Dette ledte til, at man i 2009 kunne bryde nøglerne på kortet blot ved brug af en computer og en billig usb-kortlæser.

Fejl i sikkerhedssystemer og svagheder i krypteringsalgoritmer har en karakteristisk failure-mode, som i høj grad minder om dæmninger. Når først der er kommet et lille hul, går der ikke længe, før dæmningen bryder sammen. I en lidt mere sejlivet version findes en krypteringsalgoritime fra 70’erne kaldet Data Encryption Standard, DES. I et forsøg på at gøre opmærksom på DES’ aldrende eksistens viste den amerikanske borgerrettighedsorganisation EFF i 1999, at den med en anskaffelse af specialdesignet hardware til en kvart million dollar, kaldet deep-crack, kunne bryde DES’ kryptering på 4½ dag i gennemsnit. En tilsvarende øvelse i dag ville kunne gennemføres ved brug af grafikkortene i en håndfuld spillecomputere.

Hul på Rejsekortet

Da det gik op mig, at Rejsekortet var baseret på Mifare, skyndte jeg mig til Høje Taastrup Station og bestilte et sådant, således at jeg kunne blive test-pilot på en strækning på Vestsjælland. Efter lidt tid lykkedes det da også at få dumpet hukommelsen ned i en fil på min computer. Det stod imidlertid klart, at det ikke var umiddelbart til at tyde, hvad de forskellige dele af hukommelsen repræsenterede. Til mit held viste det sig dog, at specifikationen til en tidligere version af Rejsekortet var blevet offentliggjort år tidligere, men nyere versioner blev ikke længere offentliggjort efter opdagelsen af sikkerhedsproblemerne med plastikkortet. Efter timers interessant læsning stod følgende klart:

For at spare på pladsen på kortet og minimere transaktionstiden er alle dataformater ikke nødvendigvis byte-aligned og kan have ulige antal bits, således at de ikke optager mere plads end nødvendigt. Alle de vigtige dele af kortet er beskyttet af en kryptografisk signatur. Denne signatur bliver dannet ved hjælp af DES. Og til genereringen af denne signatur samt til krypteringen af kommunikationen med kortet anvendes det samme sæt nøgler til alle brugere.

Dette betyder, at bryder man nøglerne på blot ét kort, vil disse være gyldige for alle Rejsekort. Derfor skal der forholdsvist lidt til, før Rejsekort A/S mister monopolet på at udstede billetter. Særligt fordi nye smartphones i dag leveres med indbygget Mifare-kortlæser, således at snydetampe ikke skal ud og investere i kompliceret udstyr.

Security through obscurity

Auguste Kerckhoff formulerede allerede i 1883, at design af sikkerhedssystemer ikke bør hemmeligholdes, på nær nøglerne til systemet. Dette princip betyder ofte, at man ikke kan sikre sine systemer udelukkende på baggrund af hemmeligholdelse af dets funktion. Tværtimod viste det sig, da der blev kigget nærmere på Mifare, at der var store kryptografiske, og mindst lige så store implementationsmæssige, problemer i kortets design.

Tilsvarende er det stadig min påstand, at Rejsekortet lider af de samme problemer. Det bliver ikke bedre af, at specikationerne til dataformaterne hemmeligholdes, således at det ikke er muligt for tredjeparter som mig at undersøge, hvordan det faktisk står til. I hvert fald er det værd at bemærke, at samtidigt med at specifikationerne til kortet blev udformet, og hele verden stod på den anden ende for at gennemteste og eliminere eventuelle Y2K-bugs, lykkedes det i iver over at spare bits på kortet at klemme et hhv. år 2021-, 2031- og 2041-problem ind i specifikationen.

Signaturene på kortet baseres stadig på en krypteringsalgoritme, som skulle være pensioneret i 1999, og hvis man kunne låne en netcafé i et par dage, ville man kunne finde nøglen og selv lægge gyldige billetter på kortet med sin mobiltelefon. Dertil eksisterer der sikkert allerede en lang række replay-angreb, som der endnu ikke er taget højde for.

Nu er jeg stor tilhænger af offentlig transport, og jeg håber ikke, at folk vil spilde en masse CO2 på at finde disse nøgler. Men det ærgrer mig, at det, allerede inden kortet for alvor er i landsdækkende drift, har så slæbt så mange børnesygdomme fra 90’erne med sig, som softwareverdenen for længst har opbygget resistens over for.

Foto: Kim Bach CC-SA

Og så stoppede det med at være sjovt

larsoghelle skriver:

Jeg har netop modtaget dette fine brev fra DR, som ikke har albuerum nok til lidt politisk satire.

Det er vist på tide at os som betaler licens må bruge DR’s indhold som vi har lyst til.

Og så er det meget mystisk at DR.dk synes at #larsoghelle er så morsomme at de selv skriver om det.

Overspringshanding 2 (istedet for at forberede specialeforsvar)

Overspringshanding 2 (istedet for at forberede specialeforsvar)

Overspringshandling 1 (istedet for at forberede specialeforsvar)

Skønt hensigten har været tilforladelig, betyder det, at en simpel feature, som en hurtig GPS bestemmelse, har været medvirkende til, at man kan følge en persons liv – minut for minut – igennem de år de har ejet en mobiltelefon.
Theodore Vail spøger stadig hos AT&T

Med det seneste opkøb af T-Mobile er det amerikanske telefonselskab AT&T endnu et skridt tættere på fordums storhed. Nu er der kun fire nationale mobilselskaber tilbage i USA. Verizon og AT&T udgør nu tilsammen 70% af markedsandelen.

Det er bekymrende at netop disse to selskaber står bag denne konsolidering af markedet. Verizon og AT&T er skabt fra det gamle Bell Systems ribben efter at selskabet blev opbrudt af finansmyndighederne i 1984.

Jeg er netop blevet færdig med at læse Tim Wu’s The Master Switch, og kan varmt anbefale den. Det er baggrundshistorien til, hvorfor det lader til, at denne type konsolideringer nærmest synes uundgåelige.