È possibile costruire un messaggio passivamente auto-distruttivo?

19

È possibile costruire un messaggio che degrada passivamente nel tempo senza richiedere un fattore esterno per distruggerlo?

Cose simili, ma non ciò che intendo:

  • Un disco rigido che si deteriora nel tempo potrebbe diventare più difficile da leggere, ma se si copiano correttamente i dati da esso su un supporto più robusto, i dati persistono. In altre parole, questo è il media che degrada, non il messaggio.
  • Un eseguibile che, quando eseguito, distrugge tutto o parte di sé. Ma se riesci a impedirlo, non può distruggere se stesso. Qui, non è un tratto passivo che causa la distruzione del messaggio, né è imprevedibile.

Invece, intendo descrivere un messaggio che va da uno stato leggibile a uno illeggibile per un periodo di tempo configurabile senza alcun intervento esterno. Ad esempio, se potessi crittografare un messaggio utilizzando una caratteristica non riproducibile di un isotopo radioattivo, una volta che l'isotopo era decaduto oltre un punto, potrebbe non essere possibile decodificare il messaggio originale. Ma sembra pazzesco fantascienza. Ci sono degli scenari reali in cui una cosa del genere è possibile?

Note su "esterno"

Mi sono un po 'sovraeccitato su questa idea e ho abusato della parola "esterno". Non importa se ci sono fattori esterni coinvolti; quello che voglio dire è

Is it possible to create a real system where a message can be created with a TTL and no human power can prevent that message from becoming unreadable after the TTL?

Il concetto di "isotopo" è un esempio in cui il messaggio stesso esiste ancora, ma la nostra capacità di leggerlo decade. Non voglio entrare nelle discussioni sulla semantica di "esterni", ma quello che intendo è che il decadimento è "non prevenibile" (senza magia o ancora più avanzato di fantascienza).

Modifica: ho aggiunto note in corsivo all'elenco puntato.

    
posta kojiro 06.03.2015 - 18:26
fonte

9 risposte

11

Se il tempo è il vincolo, usa il tempo come soluzione.

Le password One Time possono utilizzare la sincronizzazione temporale come fattore. È possibile progettare un sistema in cui è richiesto un algoritmo OTP, ma utilizzare la porzione di sincronizzazione temporale non solo per verificare l'OTP, ma anche come controllo per verificare se la soglia temporale è stata superata.

    
risposta data 06.03.2015 - 18:50
fonte
14

Escludiamo la parte "se può essere copiata" prima. Posso iniziare con una telecamera e scendervi da lì. Posso anche arruolare un numero sufficiente di monaci, non media digitali.

Sei su una pista con decadimento radioattivo. Se è possibile disporre una chiave sufficientemente grande rappresentata da un numero di radioisotopi in decomposizione e disporre tale chiave con un codice di correzione degli errori, si avrà una perdita prevedibile della chiave all'interno di una determinata finestra temporale che è una funzione della perdita di N bit di dati a una velocità determinata dall'emivita dei mezzi radioattivi combinata con i bit M della chiave perduta.

Questo lascia ancora l'idea che una chiave parzialmente decaduta fornisce un punto di partenza migliore di una chiave completamente decaduta, ma poi torniamo alla matematica sul numero di tentativi di correggere la chiave errata e questa è anche una combinazione matematica . Una volta che la chiave è decaduta in modo tale che metà dei bit siano probabilmente sbagliati dopo la dimensione correggibile dell'errore, i tuoi dati sarebbero protetti altrettanto bene che se un utente malintenzionato non avesse nulla.

Fare una matematica legata al tempo per il materiale radioattivo selezionato e il codice CE è un esercizio per il lettore.

    
risposta data 06.03.2015 - 20:31
fonte
8

Se ho capito cosa vuoi correttamente, in particolare l'esempio hard disk , quindi no.

Perché se qualcuno è in grado di leggere il messaggio per qualche tempo, significa che è stato in grado di salvarlo dal computer su un disco flash, stamparlo, estrarlo dalla memoria del computer, copiarlo usando penna e ... carta, fotografia, audio / video registrarlo, memorizzarlo, parlarlo ad alta voce ecc. Quindi, anche se il supporto è degradato, il messaggio è stato salvato di nuovo su altri media, anche se il media è il cervello della persona che ha letto / ascoltato al messaggio.

Ma se il tuo scenario non lo include, e vuoi dire che il messaggio è stato memorizzato in un computer totalmente protetto e che vuoi essere in grado di recuperare le informazioni solo in un determinato momento, e non prima / dopo di che, allora sì: puoi crittografarlo usando la crittografia più potente che hai e poi avere qualcuno di terze parti che ti fornisce la chiave solo al momento specifico. Dal momento che nessuno avrebbe accesso al computer, la chiave sarebbe in grado di decodificare il messaggio solo durante tale periodo. Prima, la forza bruta avrebbe fallito. Dopo, la chiave non verrebbe fornita. E invece il problema è il tuo computer, andrebbe alla terza parte che fornisce la chiave.

    
risposta data 06.03.2015 - 20:05
fonte
5

Ecco alcune idee per te:

Sembra che tu voglia fare affidamento sulla fisica e sulla natura per agire come costante di tempo t per degradare il messaggio originale m in m' dove m' = f(t,m)

  1. Gli isotopi, le radiazioni cosmiche, l'orbita prevedibile della Terra, potrebbero agire come t .

  2. Usa t per generare un OTP (o un equivalente più sicuro) o XOR l'output

  3. Scopri la matematica da fare al punto # 2 sopra.

  4. L'utile !!!

In alternativa

Le cose potrebbero essere più semplici se sostituiamo il n. 1 con un calcolo limitato dalla fisica, dove il calcolo del logaritmo discreto rivela parte di, ma non tutto il messaggio. Più a lungo aspetti, più grande è il numero e più difficile sarà il fattore.

L'ispirazione che ho per il paragrafo precedente è la Bitcoin Blockchain, e sto ri-immaginando il "bersaglio" risolto come il blocco precedente come un fattore del blocco successivo.

  Block #1 =  11  (this prime decrypts the first word of the file)
  Block #2 =  #1 * new prime
  Block #3 =  #2 * new prime
  Block #4 =  #3 * new prime
  ...

Per evitare che gli imbroglioni tornino indietro nel tempo (per ottenere un numero più facile da calcolare) i vecchi blocchi verranno scartati su questa catena principale.

Come implementeresti questo? Avresti bisogno di un sistema che non mantenga una cronologia completa di questi numeri primi. Nel gergo bitcoin, avere un indirizzo di pubblicazione editoriale ben noto. Questo indirizzo inserisce i dati nella catena, in cui i dati sono un elenco di enigmi delimitati da codice operativo NOP (un primo per frase). Il cliente dovrebbe quindi elencare tutti i numeri primi e lavorare sodo per decifrare ogni frase finché non diventa troppo difficile da risolvere.

Mi piacerebbe vedere o sentire di più su chiunque voglia esplorare ulteriormente questa idea.

    
risposta data 06.03.2015 - 20:36
fonte
4

Questo non è il mio strong ma se;

1) non vuoi copiare il messaggio per fermare il degrado 2) vuoi che il messaggio sia leggibile (comprensibile?) Fino a un tempo predefinito - presumibilmente con una certa accuratezza in quel momento 3) non ci sono limiti nel tempo minimo richiesto

Quindi una soluzione semplice è scriverlo in un dialetto colloquiale, quindi attendere che quel linguaggio evolva fino al punto di oscuramento in cui le variazioni nelle conversazioni rendono il messaggio poco chiaro o la lingua semplicemente si estingue. Per calcolare il tempo che questo richiede puoi guardare le lingue passate, o anche scegliere le frasi che sono in declino (google in realtà tiene traccia di questo tipo di cose, quando sono fuori dal mio cellulare produrrò alcuni link). Il tempo previsto sarà solo una stima, ma poi tutto si riduce a barre di errore.

    
risposta data 07.03.2015 - 02:14
fonte
2

È abbastanza ridicolo il contrario. È possibile costruire un messaggio passivamente più leggibile. Considera l'uso della crittografia nei messaggi. La legge di Moore garantisce praticamente che tutto sarà leggibile a un certo punto.

E così per andare dall'altra parte, è necessario avere un messaggio strongmente crittografato le cui chiavi in qualche modo scadano. A quel punto sei ora di fronte a un attacco di data. L'altro modo sarebbe quello di incorporare in qualche modo qualche tipo di meccanismo del battito cardiaco.

È tutto piuttosto difficile da fare. Quindi, logicamente, il metodo olistico consiste nel richiedere al destinatario di trovarsi in un'area sicura dove è impossibile copiare digitalmente il messaggio ed eliminare tutte le attività correlate dopo il tempo.

    
risposta data 06.03.2015 - 20:30
fonte
2

Potresti usare alcuni sistemi "induriti" come quelli che esistono su schede di telefoni cellulari, carte di credito, ecc. che gestiscono un piccolo computer e possono fisicamente distruggersi dopo che alcune condizioni sono state soddisfatte (cioè 3 tentativi non validi a un pin) - questi potrebbero essere migliorati relativamente facilmente dove contengono un piccolo timer / batteria (e durano per anni), e progettati per essere a prova di manomissione in modo tale da distruggere se stessi piuttosto che visualizzare le informazioni.

Il problema arriva quando vuoi leggere i dati - come fai ad assicurarti che non ci siano copie fatte? non è possibile visualizzarlo, poiché ciò significherebbe che può essere copiato tramite fotografie, non è possibile riprodurlo, in quanto è possibile utilizzare i dispositivi di registrazione, ma forse è possibile inviarlo digitalmente, ovviamente dovrebbe essere crittografato e è necessario verificare che il ricevitore non sia in alcun modo compromesso o che possa essere modificato per ritrasmettere il messaggio. Sfortunatamente non vedo alcun modo per aggirare questo problema, perché in ultima analisi, se si ha così tanta fiducia nel ricevitore, si può anche solo dare loro il messaggio all'inizio e averne fatto. Che utilità è che non lo so, a meno che le informazioni diventino rapidamente obsolete non appena vengono utilizzate (cioè il codice di lancio per un particolare missile nucleare - una volta lanciato, non importa chi ha il codice, poiché è inutile) .

    
risposta data 06.03.2015 - 21:54
fonte
1

Inerentemente, se il messaggio crittografato può essere decodificato una volta, può essere memorizzato in forma decifrata e non c'è modo di fare altro.

TUTTAVIA

C'è un modo per renderlo decodificatore HARDER con il passare del tempo.

Se il tempo in cui è stato crittografato è stato reso parte della chiave, e supponendo che non sia stato trapelato in alcun modo (ad esempio la data e l'ora del file), allora qualcuno che decrittografa il messaggio dovrebbe provare diverse volte. Se il destinatario non ha modo di sapere l'ora effettiva in cui è stato inviato, allora dovrà provare tutte le volte da quando è stato crittografato. Ciò significa che, con il passare del tempo, ci sono più timestamp da provare.

Potresti usare la precisione del timestamp (giorni, secondi, microsecondi) per renderlo più o meno difficile. La difficoltà aumenterebbe linearmente, cioè se il doppio del tempo è passato, sarà due volte più difficile da decodificare; Non penso che ci sia molto da fare al riguardo.

Si noti che questo approccio è soggetto a molte perdite chiave - se si sa quando il messaggio è stato crittografato, anche approssimativamente, allora lo spazio di ricerca del timestamp può essere enormemente ridotto. Inoltre, se il destinatario sa a che ora del giorno è probabile che venga generato il messaggio, ciò ridurrebbe anche lo spazio di ricerca - "l'orario lavorativo" copre solo 1/3 delle 24 ore dell'orologio, quindi se un utente malintenzionato sa o sospetta che sia stato scritto nell'orario di lavoro, lo spazio di ricerca viene ridotto di 2/3.

Inoltre, come accennato prima, la maggior parte dei file ha data e ora - questo darebbe immediatamente la risposta. Se ci sono altre informazioni (ad esempio in quale ordine sono stati crittografati i messaggi, come in una conversazione), ciò indebolirebbe notevolmente il sistema.

    
risposta data 07.03.2015 - 00:58
fonte
0

No . Solo no.

Hai detto:

Sorry, I think it may not have been clear that the "hard drive" example was an example of the media degrading, not the message. IOW the hard drive was an "external factor" that you can easily overcome by copying the file. What I mean is that even if you copy the message, all the copies degrade at the same rate

E questo è impossibile. Alcune altre risposte lo hanno già sottolineato, ma non abbastanza prominente secondo me.

Non appena leggi un messaggio per la prima volta, puoi copiarlo e conservarlo per sempre.

Puoi costruire sistemi che rilasciano solo il messaggio di testo normale durante determinati intervalli di tempo, ma una volta fuori, è fuori. E anche questi sistemi devono ancora essere attivi in qualche modo, come un supporto di memorizzazione con una bomba a tempo legata ad esso o un'unità NAS con un UPS che inizia a sovrascrivere i suoi dati ad un certo punto fino a quando non si esaurisce la corrente, o la risposta accettata dove un fidato la terza parte conferma il tempo.

    
risposta data 24.07.2016 - 20:51
fonte

Leggi altre domande sui tag