De Franse app-ontwikkelaar Applidium heeft het protocol achter de Siri-spraakherkenning van de iPhone 4S ontrafeld. Het bedrijf heeft code vrijgegeven waarmee de Siri-servers vanaf een willekeurig apparaat benaderd kunnen worden.
Het bedrijf zegt dat met de vrijgegeven tools en programmacode een willekeurige audiostream naar de servers van Apple gestuurd kan worden en dat deze vervolgens omgezet kan worden naar tekst. Hierdoor zouden in theorie naast Siri op de iPhone 4S ook andere applicaties gebruik kunnen maken van de text-to-speech-algoritmes die op Apples servers draaien.
Hoewel de tools van Applidium het mogelijk maken om vanaf elk willekeurig apparaat audiostreams naar de Siri-servers te sturen, is een iPhone 4S of in ieder geval de unieke code van dat apparaat, vereist. Elke audiostream die naar Apple verstuurd wordt, moet namelijk voorzien zijn van een specifieke header. Onderdeel van deze header is de variabele 'X-Ace-Host'; een waarde die voor elke iPhone uniek is.
Het Franse bedrijf doet in een blogpost uit de doeken hoe het protocol in elkaar steekt. Door tcp-verkeer van een iPhone 4S af te luisteren werd achterhaald naar welke server Siri de audiostreams verstuurt voor analyse. Daarna zette het bedrijf lokaal een server op en spoofde de dns-gegevens zodat Siri hiermee communiceerde in plaats van met de officiële Apple-servers. Hiervoor moest het bedrijf wel zelf een ssl-certificaat aanmaken voor de lokale server, en de iPhone 4S laten denken dat deze legitiem was.
Toen de server eenmaal operationeel was, kon begonnen worden met ontcijferen van de datapakketjes die Siri verstuurde. De software comprimeert ingesproken commando's met de Speex-audiocodec alvorens deze te verzenden. De Apple servers sturen daarop een extreem uitgebreid antwoord met niet alleen de tekstuele versie van de audiostream, maar ook een score die aangeeft hoe secuur de conversie is en de timestamp waarop de individuele woorden werden uitgesproken.