Men användaren använder redan ditt protokoll.
Ditt problem är att serverns gränssnitt för vad användaren kan göra inte är säkert!
Du bestäm vilka data din server skickar ut till vem!
(Hej kära onlinetidningar. Ja, jag tittar på dig!)
Designa det , förutsatt att användaren är klienten. Inte din kod. Eftersom han är det. Det borde inte ha någon roll vilken klient som används.
Din app körs på en CPU som är under maskinvarukontroll av användaren. Din kod är bara en lista med kommandon / data, och användaren och hans CPU kan bearbeta den hur som helst. Inkluderar inte bearbetar det.
Han bestämmer vad hans CPU gör. Missa inte hans nåd att acceptera din appkod som den är för en rätt till blind körning. Du är den som har litat på här, och det förtroendet är väldigt flyktigt.
Speciellt med sleazy-taktik som denna.
I vilket fall som helst: Du ger användaren krypteringsnyckeln och allt och förväntar honom att inte använda den själv, för du lägger den någonstans i din korg med kod. ... Precis som DRM är det ormolja och kan aldrig fungera.
Det tar bara en person att hitta var du sätter nyckeln. (Det skulle till exempel vara jag.) Alla andra måste bara google för det.
Men jag är förvånad över att du bara tänker på att kryptera protokollet mot användaren, istället för för hans skydd mot människa-i-mitten-attacker.
förutsatt att detta vanligtvis görs (Ja, jag pratar med dig "innehållsbranschen" igen.): Om din användare är din fiende, kanske du bör leta efter en affärsmodell som är baserad på rättvisa och vinn-vinn, istället för att slita bort användaren och behöva hantera motreaktioner.
PS: Ignorera alla ”säkerhet genom dunkelhet” svar. Detta är ett misstag som resulterar i korrekt beteende men som fortfarande bygger på ogiltiga antaganden. Att använda det som ett argument är i bästa fall amatörmässigt och inte riktigt kompetent.
I själva verket är all säkerhet genom dunkelhet. Vissa är bara mer dunkla (= bättre förklädda). Den verkliga anledningen till att detta är dåligt beror på att det vi kallar verklig säkerhet är en bazillion gånger mer obskyr, vilket ger en verklig (statistisk) pålitligt hög dunkel, i motsats till mycket enkel dunkel som bara är för troligt för någon att komma på från ingenting.