AIMagasinet
AI-kloner och reverse engineering: vilka tjänster kan kopieras?
AI-Säkerhet12 min läsning

AI-kloner och reverse engineering: vilka tjänster kan kopieras?

AI-agenter kan skriva om programvara utifrån hur den fungerar. Vad det betyder för tjänster som säljs i dag, och var gränsen mellan klon, ren omskrivning och piratkopiering går.

Nicklas Hallberg-porträttNicklas Hallberg
Dela
Innehåll

När en beskrivning räcker för att bygga om en produkt

Under de senaste veckorna har ett projekt fått mycket uppmärksamhet i utvecklarkretsar: ArtCraft, som har 13 appar på sin webbplats och som enligt rapporteringen bygger öppna alternativ till Adobe-program med hjälp av en AI-modell. Det intressanta är inte att någon försöker göra en gratisversion av ett dyrt program. Det har alltid hänt. Det intressanta är hur snabbt det gick, hur få människor som behövdes, och vad det säger om programvara som i dag säljs som prenumeration.

Den här artikeln är en redaktionell analys, inte en handbok. Den handlar om vad som händer, vilka begrepp som är viktiga att hålla isär, vilka typer av tjänster som kan vara mer eller mindre utsatta, och vad rättsläget ser ut att vara. Den innehåller inga instruktioner för att kopiera eller kringgå något.

Vad som händer just nu: ArtCraft och PhotoCraft

Exemplet heter ArtCraft och drivs av en utvecklare som går under namnet Brandon Thomas. Det är oklart om det är hans riktiga namn. Projektets egen webbplats nämner ingen person.

Enligt projektets egen sida har ArtCraft 13 appar, bland annat PhotoCraft (en bildredigerare i alfa, som motsvarar Photoshop), VectorCraft, FilmCraft, LightCraft, PdfCraft, WordCraft och DeckCraft. De flesta är markerade som "in development". Sidan beskriver apparna som skrivna "from scratch" i Rust, "rebuilt in pure Rust", och som native snarare än inpaketerade webbappar. Den anger att koden är öppen källkod med "permissive licenses", utan att nämna något licensnamn. Termen clean-room förekommer i rapporteringen om projektet, inte på projektets egen sida.

Enligt rapporteringen användes Claude Opus 5.5 för att skriva koden. Projektets egen sida nämner varken Claude eller hur koden skrevs, så uppgiften är inte bekräftad av projektet, och vi har inte kunnat granska hur arbetet gick till i detalj. Uppgifterna finns hos Pasquale Pillitteri och Phoronix.

Projekten har fått flera tusen stjärnor på GitHub. Stjärnor på en kodplattform mäter intresse, inte kvalitet och inte användning, men det visar att många vill att det här ska fungera.

Det finns en viktig motvikt. Photoworkout skriver att klonerna inte är redo att ersätta professionella verktyg. Det är en alfa, och ingen bör tolka siffrorna som att Photoshop är på väg att ersättas i morgon. Frågan är inte om just PhotoCraft lyckas. Frågan är vad det visar att det går att försöka.

Begreppen: fyra ord som ofta blandas ihop

Debatten drabbas av att orden används löst. Här är en kort ordlista, där gränserna är det som faktiskt spelar roll.

Reverse engineering

Att studera en färdig produkt för att förstå hur den fungerar och vad den gör. Det kan handla om att iaktta beteende, läsa dokumentation eller analysera dataformat. Metoden i sig är ett arbetssätt, inte ett lagbrott eller en kopia. Det avgörande är vad man sedan gör med kunskapen.

Klon

Ett vardagsord, inte en juridisk term. Det betyder ungefär "något som gör samma sak som originalet". En klon kan vara ett helt egenskrivet program med samma funktioner, eller något som i praktiken är en kopia av originalets kod. Ordet säger alltså ingenting om huruvida något är lagligt eller inte.

Ren reimplementation (clean room)

En metod där skillnaden mellan förståelse och kopiering görs tydlig i arbetsordningen. Ett team studerar programvaran och skriver en specifikation. Ett annat team, som aldrig har sett originalkoden, skriver ny kod utifrån specifikationen. Tanken är att den nya koden inte kan vara en kopia, eftersom de som skrev den aldrig hade något att kopiera. Metoden beskrivs bland annat av advokatfirman Reed Smith i en text om clean room-kodning i AI:ns tid.

Piratkopiering

Att kopiera och sprida någon annans program eller kod utan tillstånd, eller att ta sig förbi de skydd som styr hur programmet får användas. Här finns ingen ny skapelse, bara en kopia.

Var gränserna går

  • Att förstå vad ett program gör (reverse engineering) är ett steg som kan leda åt olika håll.
  • Att bygga något nytt som gör samma sak (klon eller reimplementation) kan vara fullt legitimt, eller kan vara kopiering i förklädnad. Det beror på hur det görs.
  • Att ta originalets kod eller material och sprida det är piratkopiering.

Poängen med clean room-metoden är att kunna visa vilken av de här kategorierna man befinner sig i. Och det är just det som blir svårt när en AI-modell är med.

Varför tröskeln har sjunkit

Att skriva om en produkt har historiskt krävt tre saker: tid, kunnig arbetskraft och uthållighet. Ett program som Photoshop har byggts under lång tid av många människor, och att bygga om det för hand är i praktiken ett jättearbete. Det har fungerat som ett skydd, inte juridiskt men ekonomiskt. Ingen la tiden.

Om en AI-agent kan ta en beskrivning av vad en programvara gör och producera fungerande kod, flyttas den spärren. Arbetet går att påbörja av en enda person, och det går att köra många försök. Exemplet ArtCraft pekar åt det hållet, även om det är en alfa som Photoworkout inte bedömer vara redo för professionellt bruk.

Det finns också en äldre påminnelse om vad som gick att åstadkomma före dagens AI-verktyg. Photopea skapades av Ivan Kutskir, och första versionen släpptes 2013. Det är ett gratis, annonsfinansierat verktyg med en premiumversion, enligt Wikipedia. Exemplet visar att något användbart gick att nå fram till redan före dagens AI-verktyg, men det tog år. Skillnaden nu är tidsskalan: ArtCraft-projektens publika historik mäts i veckor.

Vad det gör med programvara som bygger på ett enkelt gränssnitt

Det här är ett resonemang, inte ett bevisat samband. Men logiken är rimlig: ju tydligare en programvaras funktion kan beskrivas, desto lättare är den att beskriva för en AI-agent. Om värdet i en produkt ligger i att den gör en avgränsad sak, med ett gränssnitt som en användare ser och förstår, finns det mer att replikera. Om värdet ligger i något som inte syns utifrån, är det svårare.

Det betyder inte att koden i sig är det som skyddar en tjänst. Tvärtom: om koden går att skriva om relativt billigt, blir koden mindre av en vallgrav. Det som är kvar att konkurrera med är annat.

Vilka tjänster kan vara mer eller mindre utsatta

Nedan följer ett resonemang från redaktionen, inte fakta. Vi har inga data som visar hur många tjänster som påverkas eller i vilken takt, och vi anger därför inga siffror. Se det som en tankemodell för den som ska bedöma sina egna leverantörer.

Kan vara mer utsatta

  • Verktyg där värdet främst är en funktion i ett fönster. Om en produkt i huvudsak är ett gränssnitt över en väldefinierad uppgift, till exempel att omvandla, redigera eller formatera något, är den lättare att beskriva och därmed att bygga om.
  • Produkter som lever på att vara dyra snarare än unika. Om prenumerationspriset i huvudsak speglar utvecklingskostnaden, och inte något annat, minskar skälet att betala när utvecklingskostnaden faller.
  • Programvara med öppna eller väldokumenterade dataformat. Ju tydligare filformat och gränssnitt är beskrivna, desto mindre behöver en nybyggare gissa.
  • Enkla mellanlager mellan en användare och en annan tjänst. Om produkten mest är ett lager ovanpå något annat är det lager som lätt kan byggas om.

Kan vara mindre utsatta

  • Tjänster där värdet ligger i data, inte i kod. En kloning av programmet ger inte tillgång till innehållet, användarbasen eller historiken.
  • Tjänster med nätverkseffekter. Värdet av att alla andra redan är där går inte att skriva om.
  • Produkter där förtroende, ansvar och support är en del av erbjudandet. Företag köper ofta mer än programkoden: de köper någon att ringa och någon som ansvarar.
  • Mycket komplexa produkter med lång mognadstid. Photoworkout pekar på just att klonerna inte är redo att ersätta professionella verktyg. Skillnaden mellan en fungerande demo och något man litar på i produktion kan vara stor.
  • Integrerade ekosystem. En enskild funktion kan kopieras, men en hel arbetskedja med tillägg, mallar och samarbetsvanor är svårare att flytta.

Observera att "mindre utsatt" inte betyder "oberörd". Det kan räcka att en bra-nog-version finns som gratisalternativ för att pressa priset eller förändra förväntningarna hos kunderna.

Verktyg som gör processen snabbare

REA (Reverse Engineer Anything) är en MCP-server som kopplar AI-kodagenter till verktyg för reverse engineering som Ghidra, Hopper och IDA. Enligt verktygets egen blogg ger verktyget agenten pseudokod och en lista över det den inte förstår, och agenten skriver sedan en egen implementation.

Observera: testet med Mac-appen Preview beskrivs av verktygets egen blogg och är inte oberoende verifierat. Samma sida säger själv att det är en juridisk gråzon som varierar mellan länder och licenser, och att en nära kopia av någon annans app väcker "real intellectual property concerns".

Vad det betyder: verktyg av det här slaget kopplar ihop steget att förstå en produkt med steget att skriva ny kod, vilket är just den gräns som avsnittet om begreppen ovan beskriver. Det är en redaktionell iakttagelse, inte en bedömning av något enskilt fall.

Juridik: vad som är oprövat och vad som verkar klart

Det här är inte juridisk rådgivning. Texten nedan är en journalistisk sammanfattning av vad källorna säger. Den som ska fatta beslut som beror på rättsläget bör vända sig till en jurist med erfarenhet av immaterialrätt och programvarulicenser.

Det som är oprövat

Reed Smith pekar på att AI-stödd clean room kommer att granskas hårdare, och Live in the Future beskriver frågan som oprövad. Den klassiska clean room-metoden bygger på att två grupper människor hålls åtskilda, så att det går att visa att den som skrev koden aldrig såg originalet. När en AI-modell skriver koden uppstår frågor som ingen domstol har tagit ställning till: Vad innebär det att modellen "aldrig sett" originalkoden? Hur visar man det? Vem äger det som modellen producerar? Live in the Future beskriver detta som en oprövad fråga, inte som avgjord.

Att termen clean-room används om ett projekt i rapporteringen är en beskrivning, inte ett juridiskt avgörande. Projektets egen sida säger att apparna är byggda "from scratch", men det säger inget om hur en domstol skulle se på saken.

Det som verkar vara klart (ej verifierat av oss)

EU-domstolens dom C-406/10 från 2012 tolkade direktiv 91/250/EEG, som i dag är kodifierat som 2009/24/EG. Nedan beskrivs domstolens tolkning i korthet. Vi har inte själva kontrollerat den mot primärkällorna, och en jurist bör granska den innan någon förlitar sig på den.

  • Domen i målet SAS Institute mot World Programming anges innebära att ett programs funktionalitet och dataformat inte är skyddat uttryck. Domstolen tog också upp programspråk.
  • Rätten att studera ett program gäller den som har rätt att använda programmet, och bara genom handlingar som licensen redan tillåter. Att kopiera en manual kan vara intrång, även om studiet i sig är tillåtet.

Om det stämmer, innebär det att själva idén om vad ett program gör, och förståelsen av hur det beter sig utåt, står friare än många tror. Det som däremot är skyddat är det konkreta uttrycket, alltså själva koden. Därför spelar det roll om nyskriven kod i praktiken är en kopia eller inte. Det är en tolkning vi återger, inte något vi har prövat, och den gäller EU, inte nödvändigtvis andra länder.

Det som aldrig är oklart

Piratkopiering, alltså att sprida någon annans kod eller material utan tillstånd, blir inte laglig för att en AI var inblandad någonstans i kedjan. Att ett verktyg gör det tekniskt enkelt förändrar inte frågan om tillstånd.

Vad det betyder för den som bygger tjänster

Det här är redaktionella slutsatser, inte råd i juridisk eller affärsmässig mening.

  • Fråga vad kunden egentligen betalar för. Om svaret är "en funktion som går att beskriva på två rader" är det en riskfaktor. Om svaret handlar om data, förtroende, integrationer eller ansvar, står tjänsten starkare.
  • Räkna med att kodens värde sjunker. När det går snabbare och billigare att skriva kod flyttar konkurrensen till det som inte är kod.
  • Var försiktig med vad som sägs om den egna processen. Den som själv använder AI för att bygga något som liknar en befintlig produkt bör kunna redogöra för hur arbetet gick till. Att kalla något "clean room" utan att kunna visa vad det betyder kan bli en belastning, inte ett skydd.
  • Följ rättsutvecklingen. Eftersom frågan är oprövad kan ett enda avgörande flytta gränsen åt något håll.

Vad det betyder för den som använder och köper

  • Gratisalternativ kan dyka upp snabbt, men mognad tar tid. Photoworkouts omdöme om ArtCraft-klonerna är en bra påminnelse: att något finns är inte detsamma som att det räcker för yrkesbruk.
  • Läs licensen. Öppen källkod är en bekant licensform, men det är värt att förstå vad licensen tillåter och vad den inte säger om ursprunget till koden. En öppen licens på en klon avgör inte om klonen är rättsligt oproblematisk.
  • Ställ frågor om ursprung. Den som tänker bygga verksamhet på ett nytt alternativ bör fråga hur det tillkom, vem som ansvarar och vad som händer om en rättighetshavare invänder.
  • Använd inte piratkopior. En kopia som sprids utan tillstånd är inte ett billigt alternativ, det är ett eget problem. Det gäller oavsett om den är AI-genererad eller inte.
  • Förhandla utifrån den nya situationen. Som köpare kan det vara rimligt att fråga leverantörer vad de tillför som inte går att ersätta, särskilt vid förnyelse av dyra avtal.

Vart är vi på väg?

Det vi vet är begränsat. Verktygen är i ett tidigt skede: ArtCraft är i alfa, och recensenter säger att klonerna inte är redo att ersätta professionella verktyg. Allt som följer bygger på det, och på resonemang snarare än på belägg.

Om ett år är det rimligt att vänta sig bättre kvalitet, eftersom både modeller och verktyg fortsätter att förbättras. Men kloner behöver också underhåll, svar på supportfrågor och nya funktioner när användarna ber om dem. Det är sällan samma sak att skriva en första version som att driva den över tid, och det är i den andra delen som många projekt visar vad de håller för.

Om fem år är osäkerheten störst, och utvecklingen kan gå åt olika håll. Det här är scenarier, inte prognoser, och vi väljer inget av dem:

  • Klonerna blir goda nog för många användare, som då inte längre ser någon anledning att betala för originalet.
  • De stannar vid enkla verktyg, medan basmodellerna själva tar över vissa funktioner och gör en del separata tjänster överflödiga.
  • Juridiken eller plattformarna sätter gränser för vad som är möjligt att bygga, sprida eller sälja.

Vad som avgör är flera saker i samspel: kvaliteten på detaljerna, underhållet, data och nätverkseffekter, distribution och varumärke, och hur lagstiftningen utvecklas. Ett resonemang, inte en fakta, är att en tjänst som bara är ett gränssnitt ovanpå en funktion är mer utsatt än en tjänst som bygger på data, användare eller kontinuerlig drift. Det är svårare att kopiera något som växer med sina användare än något som går att beskriva på två rader.

Ingen vet säkert hur det blir, och det är skälet till att följa utvecklingen.

Dela