Som tidligere nævnt er der ingen 100 % sikkerhed mulig. Men der er flere løsninger, der tilsammen giver stor sikkerhed.
Https
Som du påpeger, er dette en vigtig del, da det forhindrer snifning.
Sessioner
Brug sessioner og tillad ikke nogen anmodning uden en gyldig session (undtagen den første, der skal godkende appen).
Fingeraftryk
Tjek brugeragenten og indstil ekstra http-headere for at få et fingeraftryk, der er unikt for din app. ( Stadig nogen kunne snuse, men han skulle bruge curl eller lignende. )
Obfusker anmodninger
Byg din forespørgselsstreng og anvend en hash-funktion. Serveren skal implementere den omvendte funktion. ?43adbf764Fz i stedet for ?a=1&b=2
Krypter
Dette går et skridt videre. Brug en delt hemmelighed til at beregne en hash. Gentag det samme på serveren. Dette er allerede en stærk sikkerhed. For at gå i stykker, er man nødt til at reverse engineering af din app.
Brug en unik delt hemmelighed
Du siger, det er en app til iOS. Ved installationen genereres et unikt token af iOS. Få din app til at registrere dette token på din server. Som dette har du en stærk fælles hemmelighed, der er unik for hver installation, og der ville ikke være nogen måde at hacke din webapp på.