NemID's akilleshæl: Adgangen går via Californien

Det seneste nedbrud på NemID tydeliggør problemet ved at lægge kritiske dele af den digitale infrastruktur uden for dansk kontrol. Og det kommende skift til Javascript kan forværre problemet.

Da den seneste Java-opdatering fra it-mastodonten Oracle i Californien tirsdag 15. oktober begyndte at rulle ind på danskernes computere, betød det samtidig, at en stadigt mere central del af den danske infrastruktur – NemID – ikke længere fungerede.

Uanset hvor ansvaret ligger for dette kollaps, så vidner begivenheden om de problemer, der kan opstå, når en væsentlig del af landets digitale infrastruktur hviler på en tredjeparts platform.

Oracle gør sig næppe store overvejelser om den danske NemID-implementering, før en ny version af Java frigives. Og dermed har den danske stat og Nets – som for staten og bankerne har udviklet NemID – meget begrænset kontrol over, om NemID går i sort efter en opdatering af Java.

I den forbindelse er det ingen trøst, at NemID er i gang med at udfase brugen af Java. I forbindelse med kollapset gentog Nets ellers i medierne meldingen om, at der er en ny version af NemID på vej, baseret på Javascript – der trods navnet ikke har noget med Java at gøre.

Men hovedargumentet for det skifte handler ikke om stabilitet og sikkerhed. Det handler om, at Javascript – modsat Java – også fungerer på mobile platforme. Hvad angår stabiliteten, kan et skift til Javascript faktisk vise sig at forværre problemet.

For mens Java-løsningen i udgangspunktet kører på en homogen platform – nemlig den, som Oracle leverer – så kører Javascript-løsningen direkte i browseren. Dermed skal NemID kunne fungere på endnu flere platforme, nemlig browsere som Chrome, Internet Explorer, Safari og Firefox. Og heller ikke her har Nets kontrol over, hvornår og hvordan de bagvedliggende firmaer – Google, Microsoft, Apple og Mozilla – udsender opdateringer, som i princippet kan knække funktionaliteten i NemID.

Et illustrativt eksempel i frisk erindring var, da Version2 under overskriften ‘Nyt NemID-kiks: Internet Explorer 11 afvist af offentlige websider’ kunne fortælle, at Microsofts nyeste browser ikke uden videre fungerer med NemLogin, som er statens NemID-baserede login-portal, der giver adgang til blandt andet skat.dk og borger.dk.

Det konkrete tilfælde havde tilsyneladende ikke noget med browserens Javascript-håndtering at gøre, men ikke desto mindre var fejlen netop resultatet af en opdatering af et stykke software hos brugerne, som hverken Nets eller staten har kontrol over – men som alligevel danner basis for adgangen til borgernes digitale selvbetjening hos offentlige myndigheder.

I modsætning til situationen med en Java-baseret NemID-løsning er det dog forholdsvis enkelt at skifte til en alternativ browser, hvis fremtidens Javascript-baserede NemID skulle fejle i én browser-model – som it-sikkerhedsekspert og Version2-blogger Henrik Kramshøj fra Solido Networks gør opmærksom på.

Det Javascript-baserede NemID er bebudet klar i 2. kvartal næste år. Hvor godt løsningen kommer til at spille sammen med forskellige browsere og styresystemer, må tiden og den konkrete implementering vise. Men Henrik Kramshøj påpeger, at det formentlig kommer til at afhænge af, hvor meget af NemID-koden der kører på klienterne – altså i brugernes forskellige browsere, browserversioner og styresystemer – og hvor meget der kører centralt hos Nets. Jo mere kode, der skal køre på et ukendt antal klient-konfigurationer, des større er sandsynligheden for, at noget går galt.

En anden Version2-blogger, software-udvikleren Poul-Henning Kamp, slår under overskriften ‘Keep it simple NemID’ til lyd for, at Nets skærer ned på kompleksiteten i NemID og i stedet læner sig op ad gængse metoder og standarder til login og sikkerhed.

Under alle omstændigheder er de seneste NemID-problemer endnu en påmindelse om, at der ikke findes en backup til danskernes digitale adgang til offentlige myndigheder. Og at danske myndigheder dermed ikke selv er herrer over, hvornår den digitale dør smækker i hovedet på borgerne.

Under det seneste NemID-kollaps meddelte Digitaliseringsstyrelsen i første omgang, at der ikke findes steder i det offentlige, hvor NemID er eneste indgang for borgerne – og nævnte en telefonopringning som et eksempel på et alternativ. Efterfølgende ville Digitaliseringsstyrelsen over for Version2 dog ikke garantere, at det faktisk forholder sig sådan.

Tips og korrekturforslag til denne historie sendes til tip@version2.dk
Kommentarer (29)
Casper Bang

Oracle gør sig næppe store overvejelser om den danske NemID-implementering, før en ny version af Java frigives.

Næppe, de har ikke underskrevet noget SLA med den danske stat og hvis man ser på hvor ligeglade de er generelt med at lappe sikkerhedshuller i tide, såååå... næ Larry er primært intereseret i at malke sine database kunder på multikernesystemer, så han kan få penge til en ny luksusyacht!

For mens Java-løsningen i udgangspunktet kører på en homogen platform – nemlig den, som Oracle leverer – så kører Javascript-løsningen direkte i browseren. Dermed skal NemID kunne fungere på endnu flere platforme, nemlig browsere som Chrome, Internet Explorer, Safari og Firefox.

I dag er vi afhængig af NAPI i samtlige browsere, og JRE'er for samtlige platforme og så selvf. selve browserne på alle platforme. Hvis vi kommer af med Java, er vi stadig afhængig af browserne, men kan være ligeglad med om NetScape blokerer for appletter, Chrome har deprecated NAPI osv. Så selv om vi får flere browsere og platforme i spil, så vil jeg stadig påstå, at kompleksiteten stadig er lavere end før.

Men Ok, lad os tage hul på bylden. Hvad har NemID konkret brug for JavaScript til, altså udover basal validering og måske noget nonce/fingerprint? Eller, når man nu kender til NemID's nuværende løsning, burde spørgsmålet måske istedet lyde, hvad kunne NemID finde på at misbruge JavaScript til?

Joe Sørensen

Nu skyldes denne uges problemer med NemID i Oracles Java plugins jo ikke at Oracle ikke tager hånd om sikkerheden i Java Plugins. Faktisk er grunden den modsatte. Oracle har tvunget udgivere at Java Applet'er til at anvende er førhen frivillig sikkerhedsfeature.

Det er IMHO den rigtige vej at gå, hvis man vil gøre deres Java plugin mere sikker.

Men som jeg ser det, er det et problem at der kun findes en implementering af Java browser plugins. Det betyder at sikkerhedsproblemer og opdateringer kommer til alle varianter samtidig. Her har JavaScript en fordel, da der måske kan opstå problemer for nogen der bruger en JavaScript implementering, men mange har alligevel flere browsere, så derfor kan de stadig anvende en anden.

Jesper Fj

Der har jo været megen debat om NemID den seneste tid. Efter Snowdens afsløringer ved vi jo at NSA har lytter med hos alle større amerikanske IT-firmaer + meget andet.
Jeg synes dog ikke jeg specifikt har set det berørt i danske medier, at NSA måske har adgang til Oracles servere og dermed til alle danskere NemID og personlige oplysninger eller hvad? Er der noget til hinder for at Oracle læser med, når jeg indtaster mine oplysninger i deres applet?
Og formentlig er PET vidende herom, og har adgang til samme oplysninger, og ønsker derfor ikke at der graves yderligere heri.
Fik vi nogensinde noget ordentligt svar da ministeren i sin tid blev spurgt til dette og var nye spørgsmål ikke på sin plads efter NSA-afsløringerne?

Søren Jensen

Jeg synes dog ikke jeg specifikt har set det berørt i danske medier, at NSA måske har adgang til Oracles servere og dermed til alle danskere NemID og personlige oplysninger eller hvad? Er der noget til hinder for at Oracle læser med, når jeg indtaster mine oplysninger i deres applet?
Og formentlig er PET vidende herom, og har adgang til samme oplysninger, og ønsker derfor ikke at der graves yderligere heri.

Hvis du selv tror på det du skriver, så vil jeg anbefale dig at afmelde dig internettet og flytte ud i en jordhule.

Jeg er sikker på at PET er meget interesseret i dig og hvad du laver, så du kan godt være sikker på at der sidder mindst en PET-medarbejder bare for at holde øje med dig ;)

Men for at svare på dine spørgsmål, så er der intet der forhindre Oracle i at læse med; det samme gør sig gældende med den version af Windows/OSX, der ved man heller ikke om Microsoft/Apple overvåger dig. Det samme gør sig gældende for alle de programmer du har installeret på din computer. De kan i teorien aflytte dig.

PET har ikke adgang til din computer, men de har sikkert adgang til en lang række data omkring dig HVIS de har brug for det. Så jeg tror faktisk at de kan få alle de data du kan få via dit NemId via andre kilder så der er ingen grund til at gå igennem NemId.

Claus Jensen

Mange er i dag vant til at have en 2-3 browsere installeret, fordi alt ikke virker i alt.

Det er vist kun i den mere teknologi-bevidste del af befolkningen. For mange er en browser bare et ikon på skrivebordet, der oftest snarere hedder "Internet" end browserens egentlige navn. De ved ikke, hvad en browser er, eller hvilken de bruger. Det bliver svært at forklare dem, at der er "to forskellige internet" på deres maskine ;)

Jeg havde en situation, hvor jeg skulle hjælpe min nabo, fordi hans netbank kun virkede, når han brugte den, ikke når hans kone gjorde. Det tog noget tid at finde ud af, at den ene startede IE og gik til netbanken, den anden dobbeltklikkede på et gemt bogmærke på skrivebordet, der startede FireFox, der åbenbart var sat som default browser.

Men pointen er: Ingen af dem vidste, at de havde to browsere installeret. Og ingen af dem forstod konceptet om at der var to browsere. Så det er lidt meget at forvente, at den gennemsnitlige bruger har flere browsere installeret og så bare vælger en anden, hvis der er problemer...

Ole Laursen

Pt. skal man bruge en browser + Java. Med en Javascript-løsning skal man bare bruge en browser. Eller forestiller man sig at folk skal sende HTTPS-forespørgsler i hånden og side og kigge direkte i HTML'en?

Det er selvfølgelig rigtigt at hvis man går lige til grænsen med skummel cross-site Javascript så kan man måske få problemer. Men der skal godt nok en del pessimisme til at konkludere at det kan blive værre end den nuværende Java-løsning som den skandalehungrende overskriftssmed skriver.

Erik Jensen

Men Ok, lad os tage hul på bylden. Hvad har NemID konkret brug for JavaScript til, altså udover basal validering og måske noget nonce/fingerprint?


Mon ikke man ønsker at lave samme løsning som med Java, hvor der oprettes en sikret forbindelse til det sted, hvor ens nøgle ligger? Når man har en løsning med centralt placerede nøgler, er det trods alt nok ret vigtigt at forbindelsen til disse er sikret. Så det er jo noget mere kompliceret end bare autentificering. Hardwarebasseret fingerprint kan man vel ikke lave med JavaScript?

David Nielsen
Joe Sørensen

Hardwarebasseret fingerprint kan man vel ikke lave med JavaScript?


Jo den kan. Hvis enheden fortæller en talkode, hvorfra den centrale server kan se hvornår brugeren har autentificeret sig imod fingeraftryksscanneren. Samtidig kan talkoden afslører om du bruger den rigtige fingeraftryksscanner enhed. Dermed har du 3 faktor autentificering, da du vel også bruger en kode. ( 1. kode du husker, 2. scanner du har, 3. finger du har. ). Dog vil det at du har en offline hardware enhed i sig selv være ret sikker, så der er ikke meget grund til at denne også skal have en fingeraftryksscanner.

Dette betyder selvfølgelig at NemID selv skal udstede hardwareenheden. Til gengæld vil dette være en meget sikker løsning.

Autentificering med fingeraftryksscanner indbygget i laptop, vil tilgengæld ikke særlig være sikker. Hvis PCen er kompromitteret vil et andet program kunne lægge sig imellem fingeraftryksaflæseren og Java applet'en, og derfor er det ikke mere sikkert end "hemmelig-fil-på-harddisk" metoden.

Jakob Damkjær

Det er jo fint nok at nets laver et javascript interface så man i det store hele kan slippe for java og ha løsninger der virker på Mobile dimser...

Så længe de bliver opdateret og det problem er tofold for hvad hvis en automatisk opdatering af browseren breaker nemid ? (Så kan dem der ikke har en paranoid it afdeling måske skifte) men resten af folket er blokeret lige så meget som de par dage sidste uge.

Men hvad når den version af mobilbrowseren der kommer med en mobilkunder ikke bliver opdateret ?
Skal nets så understøtte og sikre deres løsning på usikre browsere ?

Ikke et trin i en retning af mere sikkerhed...

Understøttelse af 3-4 forskellige browsere til en grad så bankerne mener det er sikker nok til brug bliver en moneypit af den anden verden...

Javascript eller java er lidt forskellige mht muligheder (men der er også alternativer til java fra Oracle) så den eneste realle forskel er mobil eller ej og der er der andre problemstillinger så som at browseren ikke bliver opdateret...

Det bliver et virvar af kompatible og ikke kompatible løsninger og jeg håber at det ikke bliver browser Javascript men et mobilplatform C++ API lib (i stil med det bankerne bruger i deres apps idag). Selv om den faktiske sikkerhed så vil være mere med appens udvikler at gøre end den platform nets har lavet med nemid...

Og til alle der river skjorterne i stykker over java og nemid... Bare vent til browser javascript pudslespils kombinationerne kommer til byen... For det er ikke noget nogen hackere nogensinde har udviklet exploits til...

At nets sov i timen og ikke fik implementeret en sikkerhedsfeature i java er dumt ja... Men det vil gør java mere sikker nu hvor det er blevet ordnet...

Hvilken skade er der hændt ved et par dage ? Som ikke kan sammenlignes med bankernes løn fuckup ? Life goes on...

Hans Schou

Skal de ikke bare lave authentication med nøglekortet?


Da jeg havde papkort login hos Jyskebank med ECMA-script, så foregik det sådan:

  1. Indtast nøglekort nummer: AB07
  2. DES krypt nøglekort nr og send det via SSL til banken
  3. Bank skriver tilbage: Hvad er koden ved #17?
  4. Den tastes ind og så bliver den hashed og sendt til banken
    (der skete lidt mere end det)

Det er måske overflødigt med DES (eller AES idag), men det med at hashe er helt fint at bruge ECMA-script til.

Kjeld Flarup Christensen

Hvis hverken javascript eller java giver driftssikkerhed, hvad gør så?

En stor forbedring vil helt givet være at bevare både java og javascript så der er flere muligheder.

Måske man endda kunne lave en tredje løsning, som var mere KISS.

Måske endda en konkurent til nemid burde på banen.

Christian Hedemann Olsen

Jeg synes det er lidt hurtigt at dømme en kommende "javascript-løsning" til at have flere problemer end java-applets.

Jeg er ikke stødt ind i ret mang specifikationer af hvordan NemId-løsningen rent faktisk kommer til at se ud, ud over at den kommer til at køre i en iframe.

Det kan være at udviklerne vælger en helt simpel model for kommunikation med formularer, der sendes til en server og frem og tilbage indtil alle logininformationer er udvekslet og til afslutning en formularafsendelse ligesom NemID i dag med et simpelt javascript-kald. Dette ligger helt op af alle standarder og kan ikke give ret mange problemer med crossbrowser-kompatibilitet.

Der er ikke som udgangspunkt behov for at benytte ajax-funktionalitet eller anden teknologi, som vi ved ikke kører ens på diverse browsere. "HTML-løsning" er måske et bedre navn end "javascript-løsning"

Når det er sagt, vil jeg mene, at frontend-verdenen idag er så langt fremme med crossbrowser-funktionalitet til rigtigt mange ting, at erfaringsgrundlaget for en god, avanceret, javascript-tung løsning burde være til stede.

Tommy Schomacker

Der er rigtig mange gode grunde til at udnytte de muligheder, som nettet tilbyder. Problemet er bare, som flere har påpeget, at det offentlige ikke er herre over den teknologi, som det digitale Danmark bygger på. Sikkerhedsproblematikken er kun et lille hjørne af denne problemstilling. Langt mere alvorligt er det, at mange borgere er steget af længe før de overhovedet er kommet så langt, at de skal logge ind med nemID. Det er faktisk ret krævende for rigtig mange mennesker at holde sig ajour med den hastigt udviklende teknologi, herunder krav om idelige opdateringer af software og nye brugergrænseflader. Hvis den gennemsnitlige ældre medborger skal udskifte sin PC, vil han/hun blive konfronteret med udstyr, der kræver ny oplæring. I bund og grund ønsker de bare at få noget, der virker som det gamle udstyr. Det ville svare til, at vi skulle tage nyt kørekort hver gang vi anskaffede ny bil.

Erik Jensen

Hardwarebasseret fingerprint kan man vel ikke lave med JavaScript?


Med fingerprint tænkes i dette tilfælde naturligvis på identificering af den hardware, som NemID køres på. På nuværende tidspunkt kalder NemID jo nogle platformspecifikke binære filer, for at kunne lav et fingerprint. Javascript kan så vidt jeg husker ikke køre binær kode direkte fra en browser.

Autentificering med fingeraftryksscanner indbygget i laptop, vil tilgengæld ikke særlig være sikker.

Der er ingen som ved sine fulde fem vil basere noget sikkerhed på fingertryk - sikker hardware eller ej. Af den simple grund, at bliver dit fingeraftryk stjålet, kan du ikke få udstedt et nyt.

Kim Houmøller

Hvornår bryder hele "mollevitten" sammen? Det vil ske, når man lægger sin IT infrastruktur i hænderne på fremmede. Der må stikker noget under, siden man vælger et usikkert system. Dumhed er nok den mest nærliggende forklaring!

Den kommunikation undertegnede har haft med Nets varsler ilde. Ret så arrogant tilbagemelding.

ole kristensen

Det er en udemærket beslutning at understøtte javascript.
Al sikkerhedskritisk kode skal lægges server-side og så skal man gå over til at bruge ssl kryptering.
Det gør netbankerne fint. Alle moderne websites integrerer langt sværere øvelser end nemid med javascript og fx jQuery. Se bare på Danske Netbank - alle mulige animerede søjler, ajax og jeg ved ikke hvad.
NemID er slet ikke så svært. Og så skal de ederbrandbrølemig ikke lave noget så latterligt som kodeobfuscation eller andre amatøragtige 'sikkerhedsforanstaltninger'. Hvis de gør noget så latterligt igen, så fortjener leverandøren en erstatningsdom.

Laurits Christen Henriksen

I DK har man valgt eet forkromet(?) system, der kan anvendes til kommunikation med både banker og det offentlige. I S kører kommunikationen med de to uafhængigt af hinanden.
Nordea anvender en kortlæser, der bruges med bankkortet, og SEB bruger en s.k. Digipass, hvor man ikke behøver sit bankkort, men vælger sin egen PIN-kode til login. I de tre år, jeg har boet her, har der aldrig været generelt nedbrud af de systemer i hverken en eller flere dage som i DK. Det er dedikerede systemer, som de enkelte banker selv kører. Man behøver heller ikke jævnligt at have nye nøglekort, og jeg synes, at kortlæser/Digipass er bekvemmere end nøglekortet at medbringe på rejser i ind- og udland. De fylder ikke meget.
Kommunikation med det offentlige krævede i "gamle" dage et separat ID-kort og installation af et separat program. Nu om dage kan man også anvende sit bankkort + kortlæser sammen med det separate program, som er et dedikeret program, som opdateres automatisk, til formålet og ikke et ikke-dedikeret program som Java. Jeg har ikke praktiske erfaringer med det system, så jeg ved ikke, om der er problemer med oppetider her.
Men jeg er lykkelig over, at der aldrig er problemer med bankforretninger. Det er nok det vigtigste for de fleste. Hvis man overlod det helt til bankerne, skulle de nok finde ud af det.
Og så var det måske en ide, at NemId købte/brugte det svenske program for kommunikation med det offentlige?

Michael Deichmann

Nu må I sgu have mig undskyldt. Alle bankers IT infrastruktur bygger på z/OS fra IBM, der vedligeholdes i USA. Diverse compilere på diverse platforme vedligeholdes også udenlands. Der er i praksis ingen komponenter der vedligeholdes i Danmark. Kun applikationslaget er lavet her.
Det er sgu ikke det der er problemet med nedbrudet af Nem-ID i sidste uge.
Nogen har sovet i timen og ikke reageret hurtigt nok og ikke testet godt nok.

Helle Eriksen

Jeg giver flere ret i at adgangen til forskellige browsere ikke er en løsning for mange mennesker - men problemet løses så i praksis ved at at antage Explorer som disse menneskers browser og give denne browser og dens opdateringer første prioritet.

Udviklingen går iøvrigt i retning af anvendelse af standarder der gælder for alle eller næsten alle browsere.

Jesper Mørch

Jeg giver flere ret i at adgangen til forskellige browsere ikke er en løsning for mange mennesker - men problemet løses så i praksis ved at at antage Explorer som disse menneskers browser og give denne browser og dens opdateringer første prioritet.

Udviklingen går iøvrigt i retning af anvendelse af standarder der gælder for alle eller næsten alle browsere.


Nej, problemet løses kun ved at følge åbne standarder.
At man får medleveret et program (MSIE) i sin Windows, som følger standarden til husbehov (ah, den gør det nu efterhånden udmærket) gør vel ikke at alle dermed skal gå efter laveste fællesnævner, så selv folk med en Internet Explorer fra Outlook Express-dagene på en Windows XP skal kunne bruge siderne fejlfrit i deres antikke browser?!
Jo nyere browserne er, desto større er sandsynligheden for at de følger standarden!
Derfor: Følg standarden, og lad folk med inkompatible browsere skifte!

(Jeg arbejder bl.a. med support på hjemmesider, hvor visse kunder beklager sig over at siderne ikke bliver vist rigtigt i Explorer 6 og 7.
Den slags brok kan jeg ikke helt tage seriøst, og jeg må så fortælle dem at jeg først kan hjælpe dem, når de har installeret en mere tidssvarende browser.
De konstaterer ved selvsyn at tingene i forhold til Explorer på Win XP, kører mærkbart hurtigere og flottere i den nye Firefox eller Chrome de får installeret, samt at alle hjemmesiderne nu virker igen)

martin nyhjem

Jeg er enig i de fleste kommetarer, men er alligevel nød til at nævne at NemID ikke kun er en single sign-on løsning.
NemID (medmindre du har valgt den lille løsning), er også et personligt certifikat, der kan bruges til at underskrive dokumenter og sende sikre (signerede eller krypterede) e-mails.
Når nu den private nøgle ikke ligger på brugerens computer, men ude hos DanID, så skal der lidt mere end bare end et single sign-on setup til at få det til at spille.
Men glædeligt at de er i gang, og håber de ikke bliver alt for forsinket..

Sign-on delen i NemID virker i øvrigt allerede i dag uden brug at Java. Nordea og Danske bank klarer det fint. m.nordea.dk f.eks. Når du overfører penge bliver der bedt om en nøgle fra nøglekortet og alt virker som i dag, bare uden Java.
Men der skal certifikatet jo heller ikke bruges :)

Peter Stricker

NemID (medmindre du har valgt den lille løsning), er også et personligt certifikat, der kan bruges til at underskrive dokumenter og sende sikre (signerede eller krypterede) e-mails.


Jeg ved ikke, hvad du mener med "den lille løsning", men hvis du mener løsningen med papkort, så er det den eneste løsning, jeg er blevet tilbudt uden beregning.

En mere korrekt formulering af din første parantes ville nok være, at man kan tilkøbe et tillægsprodukt der kan bruges nogen af de steder, hvor NemID kan bruges.

Det er ikke det produkt, politikerne taler om, når de taler om NemID. Jeg har i hvert fald aldrig hørt en politiker nævne at NemID skulle koste et startgebyr for borgerne.

Sign-on delen i NemID virker i øvrigt allerede i dag uden brug at Java.


Der er i bedste fald en brøkdel af sandhed i det udsagn. Jeg vil nu snarere betragte det som en løgn! Ellers må du henvise til et site hos det offentlige, hvor jeg kan bruge OCES delen af NemID uden Java.

Log ind eller Opret konto for at kommentere
Pressemeddelelser

Welcome to the Cloud Integration Enablement Day (Bring your own laptop)

On this track, we will give you the chance to become a "Cloud First" data integration specialist.
15. nov 2017

Silicom i Søborg har fået stærk vind i sejlene…

Silicom Denmark arbejder med cutting-edge teknologier og er helt fremme hvad angår FPGA teknologien, som har eksisteret i over 20 år.
22. sep 2017

Conference: How AI and Machine Learning can accelerate your business growth

Can Artificial Intelligence (AI) and Machine Learning bring actual value to your business? Will it supercharge growth? How do other businesses leverage AI and Machine Learning?
13. sep 2017
Jobfinder Logo
Job fra Jobfinder