È possibile proteggere gli algoritmi lato client al 100%? [duplicare]

1

Se avessi un'idea carina e originale che riguardasse un nuovo algoritmo. Come diciamo che tu eri la prima persona a pensare a orbitz.com o kayak.com (siti di viaggio) e tu eri capace e volevi implementare tutto il nuovo algoritmo clientide in javascript.

È possibile offuscarlo al 100% dove non puoi decodificarlo come questo reverse engineer javascript obfuscators , o gli sviluppatori sono ancora costretti a mantenere gli algoritmi sensibili lato server se vogliono proteggerli completamente (o almeno avere una migliore possibilità di farlo)?

    
posta Frank Visaggio 07.01.2015 - 05:58
fonte

2 risposte

27

Javascript sul lato client non può essere protetto - mai. Se il browser è in grado di eseguirlo, significa che le istruzioni Javascript sono al 100% disponibili per chiunque ne abbia voglia.

Puoi comprimere e oscurare il Javascript. Questo è semplicemente un ostacolo che ogni sviluppatore di talento può aggirare con un investimento extra di tempo. Quindi, un nuovo algoritmo non può essere protetto in Javascript basato su browser.

Se si desidera proteggere un algoritmo, esso deve risiedere sul server ed essere eseguito lì - consegnando solo i risultati al client, non consegnando il codice al client.

    
risposta data 07.01.2015 - 06:23
fonte
18

Se vuoi che qualcuno sia in grado di eseguire un programma, devi dare loro il programma. (Duh!) Se vuoi che la CPU esegua il programma, la CPU deve capire il programma. (Di nuovo Duh.) I computer sono stupidi, molto più stupidi degli umani. Ergo, se la CPU è in grado di capire il programma, anche un umano può farlo.

Un modo sarebbe dare agli utenti sia il programma che la CPU. Trasforma il computer in una scatola nera dove mettono qualcosa e ottieni qualcosa, e il gioco è fatto. Nota, tuttavia, che questo è difficile . I progettisti di console di gioco spendono milioni, forse miliardi, a proteggere il loro hardware e continuano a essersi spaccati abbastanza velocemente. (E di solito non sono nefande organizzazioni criminali che vendono giochi piratati, ma studenti curiosi che vogliono eseguire Linux sul proprio XBox.)

Il modo migliore è quello di non dare loro né: mantenere il computer e il programma in proprio possesso e semplicemente offrire un servizio.

Oppure, non preoccuparti.

    
risposta data 07.01.2015 - 15:24
fonte

Leggi altre domande sui tag