Uova di Pasqua come protezione IP nel software

11

Lavoro in software embedded e, per qualche motivo, la gestione vuole nascondere un uovo di Pasqua come mezzo di protezione IP. Lo chiamano filigrana e dal momento che il nostro software interagisce con il feed di anteprima video (l'immagine visualizzata su uno schermo prima di scattare una foto), vogliono che io implementi un trigger che reagirà a qualche input video insolito (un codice video konami come scuro - luminoso - scuro - luminoso - qualunque cosa). Quando questo trigger si attiva, accade qualcosa di strano (che è al di fuori del normale comportamento del software).

L'obiettivo è verificare se il nostro software è incluso in un dispositivo. Suona come una buona idea? Ho molti argomenti contro questa mossa:

  • Che cosa succede se il codice konami è troppo sensibile e l'utente lo attiva?
  • Questo tipo di watermark ha un valore legale?
  • Che cosa succede se questa "funzione" viene rilevata dal client?
  • La penalizzazione delle prestazioni dovrebbe essere molto piccola, dal momento che il soft run su dispositivi di piccole dimensioni.
  • Io sono colui che sviluppa questo innesco. Se le cose vanno male, qual è la mia responsabilità?

Qual è la tua opinione su questo metodo? Non riesco a trovare un collegamento, ma ricordo di aver visto una risposta su questo sito che suggeriva che mettere le uova di Pasqua a scopo di protezione fosse una buona idea. Qualcuno l'ha provato con buoni risultati?

    
posta Simon 17.11.2011 - 13:34
fonte

4 risposte

8

Esiste almeno un precedente, come descritto nel articolo di Wikipedia sulle uova di Pasqua :

The CVAX microchip implementation of the MicroVAX cpu contained in its etchings the Russian phrase in the Cyrillic alphabet "VAX: When you care enough to steal the very best" in an effort to needle potential intellectual property-stealing clone manufacturers in the Soviet Bloc.

Un po 'più di dettagli su questo, può essere trovato su questo articolo su CVAX (che è il riferimento alla citazione sopra):

Finally, the scribe lane contained the Cyrillic motto "VAX: When you care enough to steal the very best". In 1983, an Unnamed Intelligence Agency had given me the wording, saying that they got it off a purloined VAX-11/780 that was running a Soviet SS20 missile complex. Knowing that some CVAX's would end up in the USSR, the team wanted the Russians to know that we were thinking of them.

Come da domande specifiche:

What if the konami code is too sensitive and user triggers it?

Il codice Konami è troppo noto, quindi la possibilità che un utente lo faccia scattare è più grande. Se vai con l'uovo di Pasqua, dovresti scegliere una sequenza originale (e più grande). Dato che il tuo uovo di Pasqua dovrebbe essere un meccanismo di protezione invece di divertimento irragionevole, sarebbe meglio se la sequenza non fosse nota al di fuori della tua azienda.

Does this kind of watermark have any legal value? I am the one developping this trigger. If things go wrong, what is my responsibility?

Consultare un avvocato. Dipende molto dalla tua localizzazione e dalle specifiche del tuo contratto. In ogni caso, sarebbe meglio avere delle prove in forma scritta che la direzione chiedesse esplicitamente l'uovo di Pasqua. Uno scambio di email in cui è dimostrato che hai sollevato alcune preoccupazioni dovrebbe essere sufficiente.

What if this "feature" is discovered by the client?

Dipende dal cliente. Alcuni potrebbero ridere, alcuni potrebbero citare in giudizio. La mia opinione è che dal momento che l'uovo di Pasqua è incluso come mezzo di protezione IP, il cliente deve essere informato come per ogni altra caratteristica che costruisci per lui / lei.

The performance penalty should be very small, since the soft run on small devices.

Sì, dovrebbe, ovviamente. Se scopri che implementare l'uovo di Pasqua ha una penalità misurabile, sarebbe la migliore ragione per non farlo.

Non ho alcuna opinione in entrambi i casi. Se consultate un avvocato e coprite tutte le vostre basi legali, provatelo, probabilmente sarà inutile ma non lo saprete mai.

Aggiornamento: L'esempio CVAX è ovviamente un esempio di hardware, ma penso che non ci siano altri esempi rilevanti (per software e / o software embedded) che io conosca. Ho basato la risposta intorno a questo principalmente per rispondere alla parte Has anyone tried it della domanda. Ho cercato altri esempi, non ne ho trovato e ora ho qualche opinione:

È probabilmente non una buona idea. (non la parte dell'uovo di Pasqua, la parte di means of IP protection ). Dal momento che l'idea non è né originale né innovativa (i contesti possono essere diversi ma simili), se funzionasse ci sarebbero almeno alcuni esempi là fuori.

    
risposta data 17.11.2011 - 13:57
fonte
0

Se fossi un venditore di un produttore, mi aspetto che questo venga divulgato in quanto "fuori dal normale comportamento del software".

Se il tuo cliente è l'utente finale, dipenderà da ciò che fa il software quando viene inserito il "codice".

    
risposta data 17.11.2011 - 14:34
fonte
0

Non vedo nulla di sbagliato in un uovo di Pasqua non rivelato, a patto che sia estremamente improbabile che un utente possa imbattersi in esso e se è estremamente sottile. Se qualcuno dovesse imbattersi in esso, non dovrebbe vederlo come qualcosa di diverso da un piccolo problema tecnico o da un bug insignificante.

Ho avuto manager che discutevano con me per una funzionalità che è molto meno etica di un easter egg non rivelato, malware di confine, quindi ho problemi a visualizzare questo come un problema.

In un progetto che ho ereditato ho scoperto una gigantesca classe C # fuorviante, denominata qualcosa per l'effetto, UIDataTableColumnRenderer che aveva una dimensione di oltre 3mb. Ho scoperto un intero mini-gioco all'interno di quella classe, immagini e tutte le basi64 codificate in stringhe all'interno della classe. Era fondamentalmente uno sparatutto in cui il PC era uno sviluppatore che cercava di abbattere un inesorabile attacco di bug e di requisiti scritti male che i proprietari di PM e di prodotto stavano lanciando al software. È stato divertente in quanto è diventato sempre più difficile e non hai mai vinto, alla fine bug e cattive richieste distruggono il software e il PC perde il suo lavoro.

Era di gran lunga l'uovo di Pasqua più stupefacente che abbia mai trovato.

    
risposta data 17.11.2011 - 15:21
fonte
0

I am the one developping this trigger. If things go wrong, what is my responsibility?

Non ti stanno chiedendo di infrangere la legge. La tua responsabilità è solo per il tuo datore di lavoro. Vorrei scrivere un'e-mail attenta in cui dichiari eventuali dubbi in merito a quelli che sono registrati. Poi fai quello che il tuo capo ti dice o esci.

    
risposta data 17.11.2011 - 17:50
fonte

Leggi altre domande sui tag