Stai usando un browser non aggiornato. Potresti non visualizzare correttamente questo o altri siti web. Dovreste aggiornare o usare un browser alternativo.
... visto che il confronto tra più messaggi criptati con la stessa chiave potrebbe far emergere uno schema che eventuali malintenzionati potrebbero sfruttare per decriptarli (tutti o in parte).
E se ho detto "ipotizzo" è perchè secondo me l'intera baracca messa in piedi, in piedi ci sta poco, nel senso che non mi convince minimamente sulla validità della crittografia risultante
Cioè prima accusi l'autore di non fornire prove a sostegno di quello che afferma, poi noi dovremmo accontentarci della tua impressione? Puoi dimostrarlo o quantomeno argomentarlo in modo logico e minimamente convincente?
e tu lo capisci quello che rispondo?
se vuoi fare una messaggistica (=apri un canale di comunicazione), le coppie di chiavi pubblio/privato si usano solo per scambiare una chiave (simmetrica) segreta che cifri il canale di comunicazione. Tu parli di messaggistica, l'autore parla di cifratura dati personali.
Cioè prima accusi l'autore di non fornire prove a sostegno di quello che afferma, poi noi dovremmo accontentarci della tua impressione? Puoi dimostrarlo o quantomeno argomentarlo in modo logico e minimamente convincente?
E noi dovremmo accontentarci della vostra?
La mia argomentazione si chiama buon senso. Il genio solitario che fa clamorose scoperte è una figura romantica legata a epoche passate.
La teoria dei numeri è la parte della matematica più studiata nell'ultimo secolo, vi si sono dedicate le menti matematiche più geniali.
Se la proprietà di cui parli è vera e anche facile da dimostrare, non è possibile che nessuno se ne sia mai accorto, soprattutto da chi si occupa di crittografia per lavoro. Probabilmente è già nota ma non è rilevante, oppure, se lo è, non è ritenuta adatta alle attuali esigenze.
"Vostra"? Perché parli al plurale?
Poi io non mi sono accontentato della parola dell'autore, e infatti ho ragionato sulla proprietà matematica sfruttata dal metodo per poterla o dimostrare o confutare (alla fine la dimostrazione è nel post iniziale per chi vuole leggerla).
E allo stesso modo non vedo perché dovrei accontentarmi della tua...
Se la proprietà di cui parli è vera e anche facile da dimostrare, non è possibile che nessuno se ne sia mai accorto, soprattutto da chi si occupa di crittografia per lavoro. Probabilmente è già nota ma non è rilevante, oppure, se lo è, non è ritenuta adatta alle attuali esigenze.
Ma io non sono il difensore del metodo crittografico dell'autore, a me non cambia niente se esso sia valido o meno, e un'eventuale stroncatura nel merito, benché potrebbe dispiacerlo, sarebbe comunque utile anche per l'autore. Il punto è che finora non sei stato in grado di argomentare logicamente perché sarebbe "irrilevante" o "inadatto", ma ti sei limitato a cambiare discorso, a buttarla in caciara o a dare giudizi di pancia spacciati per buon senso comune...
perché lo hai usato tu: "noi dovremmo accontentarci della tua impressione?"
ho interpretato il "noi" come tu e l'autore con cui sei o sei stato a contatto, tutto qua
l'ho già fatto: quello è praticamente la crittografia asimmetrica, non è una cosa nuova;
è fatta passare per "nuova" e rivoluzionaria (dall'autore, non da te) usando una certa proprietà matematica osservata durante le sue prove.
Se una proprietà è NUOVA (non nota, mai osservata prima), la verifica va fatta da persone del campo, non è BAT che devi convincere, ma loro perchè così prevede il metodo scientifico. Se non ti piace te lo devi far piacere.
Ed essendo, a detta tua, facile da dimostrare, trovo incredibile che sia rimasta inosservata a tutti i più grandi matematici dal 1600 in poi.
D'altra parte, se non è nuova, è altrettanto incredibile che nessun crittologo a partire dalla fine della II guerra mondiale, abbia pensato di usarla a fini crittografici.
l'ho già fatto: quello è praticamente la crittografia asimmetrica, non è una cosa nuova;
è fatta passare per "nuova" e rivoluzionaria (dall'autore, non da te) usando una certa proprietà matematica osservata durante le sue prove.
Se una proprietà è NUOVA (non nota, mai osservata prima), la verifica va fatta da persone del campo, non è BAT che devi convincere, ma loro perchè così prevede il metodo scientifico. Se non ti piace te lo devi far piacere.
Ed essendo, a detta tua, facile da dimostrare, trovo incredibile che sia rimasta inosservata a tutti i più grandi matematici dal 1600 in poi.
D'altra parte, se non è nuova, è altrettanto incredibile che nessun crittologo a partire dalla fine della II guerra mondiale, abbia pensato di usarla a fini crittografici.
In pratica stai dicendo che se la proprietà matematica fosse certificata, allora il metodo crittografico utilizzato dall'autore sarebbe valido e sicuro?
In pratica stai dicendo che se la proprietà matematica fosse certificata, allora il metodo crittografico utilizzato dall'autore sarebbe valido e sicuro?
no, sto dicendo che che funzionerebbe, dovrebbe programmarlo in modo molto più "professionale", non mettendo chiavi hard-coded nel codice. Soprattutto dovrebbe scrivere una funzione di calcolo della chiave che al momento è assente, in pratica la mette a mano (almeno a quanto ho vsito). Insomma, anche se programma per divertimento e non a fini commerciali, un po' di sano metodo ci vuole.
Per la sicurezza non credo che possa reggere il confronto con i metodi sofisticati attuali (PgP, Kerberos e simili). Ma qu mi fermo, di dettagli tecnici su queste cose non so nulla, lascio la parola a chi ne sa perché ci lavora.
no, sto dicendo che che funzionerebbe, dovrebbe programmarlo in modo molto più "professionale", non mettendo chiavi hard-coded nel codice. Soprattutto dovrebbe scrivere una funzione di calcolo della chiave che al momento è assente, in pratica la mette a mano (almeno a quanto ho vsito). Insomma, anche se programma per divertimento e non a fini commerciali, un po' di sano metodo ci vuole.
Se sei in grado di esporre delle critiche argomentate sulla validità del metodo e sulla sicurezza, accomodati, però per favore smettila di buttarla in caciara facendo finta di non capire la mia richiesta...
ed io l'ho già fatto ma tu evidentemente non capisci ciò che scrivo, per cui ribadisco: il "metodo" presentato non è altro che una variazione sul tema della crittografia a chiave asimmetrica, è noto dalla fine degli anni '70 del secolo scorso.
già fatto, e più di una volta, lungo tutto il topic, purtroppo non lo capisci eppure sta scritto in chiaro anche nel codice;
i primi in uso non sono casuali, ma generati da una funzione Python mediante un algoritmo; il processo è descritto in modo molto confuso qui quando @r3dl4nce voleva usare un paio di primi decisi da lui. L'autore prende i primi dell'utente ed invece di usare quelli, li manipola "gonfiandoli" con operazioni di elevazione a potenza e alla fine il risultato è SOSTITUITO dai primi più vicini generati dalla funzione Python. Infine esegue il resto delle operazioni. L'unico risultato di queste operazioni è aumentare il numero di cifre del semiprimo risultante illudendosi che sia ciò che conferisce la sicurezza, quando invece è sulla casualità dei primi che la sicurezza si costruisce, che è ciò che fanno metodi classici, come il vecchio RSA.
Vabbè ormai è evidente che sei in malafede e fai finta di non capire solo per evitare di rispondere nel merito... probabilmente perché non sei in grado di farlo...
Non ci sono altre spiegazioni davanti al fatto che continui senza pudore a tirare fuori roba non scritta da me e non presente in questo topic, dopo che per l'ennesima volta ti ho detto che quello che dovete valutare è quanto riportato in questo post, dove la base matematica, che ho detto di dare per buona, è quella da me descritta nel post iniziale: quindi nessun primo "gonfiato", nessun numero pseudocasuale, nessuna strana funzione python e nessuna chiave "hard-coded" nel codice... nella mia trattazione matematica a e b, ossia i valori iniziali dei due intervalli, sono due numeri qualsiasi e da loro dipende sia la chiave c che l'estensione m degli intervalli.
Quello che chiedo quindi è una risposta del genere:
"Dando per buona la dimostrazione riportata nel post iniziale, il metodo crittografico descritto in questo post (e basato sulla trattazione matematica riportata nel post iniziale) non va bene per i seguenti motivi: ...." e argomenti.
Se tu dici di averlo già fatto e che io non capisco (ma ne dubito), tanto meglio per te, infatti in tal caso ti basterà un copia e incolla dai tuoi precedenti messaggi.
Vediamo se questa volta sono stato abbastanza chiaro...
ciò che io vedo è il quadro generale: quel programma non va bene così come sta fatto
mentre tu insisti su quella parte per tua pura soddisfazione personale, ti vorrei ricordare che la cosa la "diamo per buona" per farti contento e tener aperta la discussione dato che di conferme non ce ne sono: nemmeno i forum di esperti che frequenti te l'hanno data la risposta, quindi la tua pretesa che quello che dici tu è solo e tutto giusto (ma le osservazioni altrui sono in malafede) è semplicemente ridicola, per cui continua pure a cantartela e suonartela da solo
non spenderò una sillaba oltre, non discuto con gente che mi accusa di malafede
la discussione rimane ovviamente aperta per chi volesse contribuire
Se non sei in malafede significa che o non leggi quello che scrivo oppure sei stupido, tertium non datur...
Vuoi che conto tutte le volte che hai tirato in ballo roba non scritta da me e non presente in questo topic? Lo hai fatto in 11 dei tuoi 18 post in questa discussione!
Poi se vuoi conto anche tutte le volte che te l'ho fatto notare, tutte le volte che ti ho pregato di riferirti alle mie affermazioni e non a quelle altrui, e tutte le volte che ti ho chiesto di rispondere nel merito a questo post...
Non è malafede? Ditemi voi cos'è!
mentre tu insisti su quella parte per tua pura soddisfazione personale, ti vorrei ricordare che la cosa la "diamo per buona" per farti contento e tener aperta la discussione dato che di conferme non ce ne sono: nemmeno i forum di esperti che frequenti te l'hanno data la risposta, quindi la tua pretesa che quello che dici tu è solo e tutto giusto (ma le osservazioni altrui sono in malafede) è semplicemente ridicola, per cui continua pure a cantartela e suonartela da solo
Ma che cavolo stai dicendo?! Ti stai incartando alla grande... queste uscite potranno fare presa sul tuo modesto fan club, ma ti assicuro che non hanno alcun senso, e te lo dimostro.
La proprietà riscontrata sperimentalmente dall'autore mi aveva incuriosito, e quindi ho deciso di ragionarci allo scopo di giungere ad una dimostrazione o confutazione. Alla fine sono riuscito a dimostrarla e a definirne il campo di applicabilità, ossia gli intervalli in cui la formula funziona. A quel punto ho creato questo topic per approfondire le questioni liquidate con troppa superficialità nell'altro, e in particolare il mio intento era prima discutere della parte matematica (e quindi della mia dimostrazione della proprietà), e poi discutere della parte più prettamente legata alla crittografia. Bene, quello che è successo è che la mia dimostrazione matematica ha subito una marea di obiezioni che si sono rivelate tutte infondate, e a quel punto, visto anche che sull'altro forum in cui l'ho postata non avevo ancora ricevuto risposte, per continuare il discorso ho quindi proposto di ipotizzare che fosse corretta, di darla per buona, in modo da poter passare alla parte crittografica. Quindi ho inserito questo post dove descrivevo il funzionamento effettivo del metodo dell'autore, e vi ho chiesto di valutarlo, avendo a quel punto tutti gli elementi a disposizione per poterlo fare in modo oggettivo e definitivo, ma per adesso ancora nulla...
E nel momento in cui arrivasse una sentenza sulla parte crittografica del metodo si aprirebbero due scenari:
- parte crittografica non valida: ai fini del metodo complessivo quindi poco cambierebbe se la dimostrazione matematica che abbiamo assunto vera sia effettivamente corretta o meno;
- parte crittografica valida: si aspetta la sentenza sulla dimostrazione, visto che in un modo o nell'altro vi assicuro riuscirò a fornire (e a tal riguardo, anche se non conta nulla, sono convinto che sarà una convalida e non una confutazione).
il funzionamento effettivo del metodo dell'autore sta scritto nel suo codice, non necessito della ricostruzione matematica, corretta o meno che sia la dimostrazione. Ed è su quello che baso l'affermazione che la cosa così come sta fatta non va affatto bene in da punto di vista crittografico.
Se non sei in malafede significa che o non leggi quello che scrivo oppure sei stupido, tertium non datur...
E se ho replicato è perché ad essere insultato non ci sto.
Ora spero di non dover sprecare altre sillabe su questioni di lana caprina.
il funzionamento effettivo del metodo dell'autore sta scritto nel suo codice, perché contrariamente a te, non necessito della ricostruzione matematica, corretta o meno che sia la dimostrazione. Ed è su quello che baso l'affermazione che la cosa così come sta fatta non va affatto bene in da punto di vista crittografico.
Se non sei in malafede significa che o non leggi quello che scrivo oppure sei stupido, tertium non datur...
E se ho replicato è perché ad essere insultato non ci sto. Ora spero di non dover sprecare altre sillabe su questioni di lana caprina.
no, sto dicendo che che funzionerebbe, dovrebbe programmarlo in modo molto più "professionale", non mettendo chiavi hard-coded nel codice. Soprattutto dovrebbe scrivere una funzione di calcolo della chiave che al momento è assente, in pratica la mette a mano (almeno a quanto ho vsito). Insomma, anche se programma per divertimento e non a fini commerciali, un po' di sano metodo ci vuole.
Evidentemente non sai leggere il codice Python. Il programma non contiene Hard Coded, non contiene numeri costruiti ad arte e neanche primi gonfiati e per ultimo non inserisce niente a mano. Niente di tutto quello che hai detto è vero. Spero vivamente non sia malafede perchè questo tipo di atteggiamento deistrugge ciò che c'è di più bello dei forum, confrontarsi e aiutarsi.
il funzionamento effettivo del metodo dell'autore sta scritto nel suo codice, non necessito della ricostruzione matematica, corretta o meno che sia la dimostrazione. Ed è su quello che baso l'affermazione che la cosa così come sta fatta non va affatto bene in da punto di vista crittografico.
Se non sei in malafede significa che o non leggi quello che scrivo oppure sei stupido, tertium non datur...
E se ho replicato è perché ad essere insultato non ci sto.
Ora spero di non dover sprecare altre sillabe su questioni di lana caprina.
Ti rispondo anche in modo più dettagliato rispetto a questa tua affermazione "sta scritto nel suo codice"
Ti spiego brevemente il funzionamento del programma. Lo faccio solo per dimostrarti quanto hai torto nel sentenziare spazzatura un programma che neanche avrai letto, o peggio ancora, capito.
Aperto il programma vai nella sezione Invia File
1) Premi su Seleziona Codifica e si aprirà una cartella con dentro una serie di file che riportano la grandezza del semiprimo. Selezioni quello che vuoi e premi OK
Nota: questi file contengono semiprimi creati in precedenza per evitare che la funzione Sympy Nextprime all’interno del programma lo blocchi per alcuni minuti in quanto i numeri primi a 6000/7000bit sono abbastanza complessi da individuare
Quando premi OK il semiprimo viene caricato in modo random con il seme dell’orario del sistema, per questo motivo sarà sempre differente anche tu dovessi caricarlo più volte.
2) Caricato il semiprimo apre la USB per caricare la chiave abbinata a questo tipo di semiprimo e la carica nel sistema
Nota bene anche qui… se non hai la USB con dentro la chiave ti attacchi al tram, sia che lo vuoi mandare, il messaggio, o lo devi ricevere
3) Fattorizza il semiprimo, in un tempo inferiore a un secondo, ed estrae i due numeri primi enormi
4) Scrivi il tuo messaggio nella apposita finestra, alleghi il file se ne hai uno e premi invia file
5) Parte il processo di criptazione basato su spostamenti randomizzati legati ai due numeri primi, che vengono usati tutti e due per una ulteriore sicurezza, e... FINE
Tempo di esecuzione da quando premi invia file a quando il file viene depositato in una cartella di tua scelta. Da 1 a 20 secondi in base al fatto se c’è o non c’è un allegato, e che dimensione ha questo allegato. Puoi scrivere in tutte le lingue che vuoi, dal cirillico al cinese, dall’aramaico, all’ebraico, o semplicemente latino, anglosassone ecc... ecc…
Posso anche aggiungere una cosa… Sicuramente può essere migliorato perché qui siamo solo all’inizio di quanto questo metodo di fattorizzazione possa offrire.
E chiudo rifacendomi a una tua affermazione in questo topic
“deve essere veramente magica se ne basta una, sempre quella, sempre la stessa, per domarli tutti, manco fosse il Signore degli Anelli.
Assurdo no? Questa non è matematica, è fantascienza”
Io non sono il signore degli anelli e questa non è fantascienza
@piergiac-1 vabbè già prima ignoravano quello che dicevo andando a ripescare tue affermazioni dal topic che è stato chiuso, adesso gli sarà ancora più facile ignorarmi...
il funzionamento effettivo del metodo dell'autore sta scritto nel suo codice, non necessito della ricostruzione matematica, corretta o meno che sia la dimostrazione. Ed è su quello che baso l'affermazione che la cosa così come sta fatta non va affatto bene in da punto di vista crittografico.
Ma il topic l'ho aperto io, se chiedo di valutare il metodo crittografico che ho descritto in questo post https://forum.tomshw.it/threads/programma-di-criptazione-decriptazione-parte-2.933380/post-8711657
perché ti ostini ad ignorarlo e a rifarti a cose estranee a questo topic?! Roba da matti...
Anche perché il codice dell'autore io non l'ho nemmeno letto e quindi potrebbe anche essere che il metodo in sé (che è quello che ho descritto io) sia valido, ma la messa in pratica fatta dall'autore no... non mi sembra tanto difficile da capire...
perché ti ostini ad ignorarlo e a rifarti a cose estranee a questo topic?! Roba da matti...
Anche perché il codice dell'autore io non l'ho nemmeno letto
nel momento in cui mi assicuri che la tua analisi fotografa esattamente il funzionamento del metodo usato dall'autore, per dare un'opinione la lettura del suo codice mi basta. Viceversa, se tu il codice non lo hai letto a questo punto non comprendo come fai a sostenerlo.
In ogni caso, il topic è partito da quel programma ed è a quello che mi riferisco. Se vuoi un giudizio sul post specifico è inutile che insisti a chiederlo a me, devi aspettare che lo faccia qualcun altro: è il motivo per cui la discussione rimane aperta.
Giusto per tua curiosità, guarda cosa sto per rispondere all'autore, così forse riesci a comprendere il mio punto di vista (salta la prima citazione, non è pertinente) e vedrai pure che il metodo proposto è inadatto così come è concepito.
Purtroppo per rispondere alle nuove ridicole accuse dell'autore mi tocca andare OFF-TOPIC
disse quello che pensa che i byte esistano da 6 bit e 7 bit, citando il tuo sito
e non contento, prima mi diffama in altri forum in preda a teorie complottistiche, poi torna qua per "instaurare un dialogo" (per tua info: sono attivo solo qui, se ti hanno trattato a pesci in faccia altrove, di certo non sono stato io e men che mai in un forum "Python"). Vergognati.
i quali sono un esempio di numeri hard-coded: roba precalcolata che non fa il programma in modo dinamico, li hai generati tu a parte e inseriti "a mano" in un file. Ma la cosa che fa ridere è la giustificazione che dai:
per evitare che la funzione Sympy Nextprime all’interno del programma lo blocchi per alcuni minuti in quanto i numeri primi a 6000/7000bit sono abbastanza complessi da individuare
eh certo! siccome per generare questi numeri ci vuole un sacco di tempo macchina, decidi tu quali vanno bene. Con l'aggravante che non riesci a capire che il tempo impiegato per farlo, fa parte della complessità temporale del problema. Ma non finisce qui:
Ossia, sulla chiavetta USB ci sono le chiavi di decifrazione precalcolate e inserite (hard-coded) in un archivio di chiavi;
una chiave di decifrazione dovrebbe essere segreta ma, avendola precalcolata in qualche modo, almeno tu la conosci...
Ricapitolando,
abbiamo un programma che usa semiprimi hard-coded inseriti in un file e usati a scopo cifratura;
per ogni "tipo di semiprimo" esiste una corrispondente chiave di decifrazione hard-coded su un archivio;
--> avendo precalcolato tutto, l'autore conosce sia i semiprimi che le relative chiavi: segretezza zero, quindi sicurezza zero
Dati e informazioni hard-coded vanno evitati, i calcoli (generazione di primi/semiprimi/calcolo della chiave) vanno fatti dinamicamente da programma, quindi i tempi di elaborazione si dilateranno in proporzione.
Ti spiego brevemente il funzionamento del programma. Lo faccio solo per dimostrarti quanto hai torto nel sentenziare spazzatura un programma che neanche avrai letto, o peggio ancora, capito.
E' come ti ho appena spiegato che i programmatori lo vedono: non va bene.
Hai preso un po' dalla cifratura asimmetrica implementandola male: i tempi di calcolo su numeri da migliaia di bit sono incompatibili se fatti al volo, il precalcolo obbliga l'hard-coding di informazioni, l'hard coding manda la segretezza a rotoli.
Se te ne vai in giro per forum a blaterare insensatezze come "scoperta rivoluzionaria, complessità O(1)" è ovvio che ti trattino da ciarlatano.
Ed io ti ho fatto solo una minima parte delle osservazioni che ti ha fatto gente ben più preparata di me.
E poi ripeto: anche nel tuo caso, non è BAT che devi convincere, ma chi con la crittografia ci lavora.
Girovagando per la rete, vedo che sono anni che pubblichi il metodo sui forum di programmazione, ma non hai mai convinto nessuno... hanno tutti torto?
FINE OFF-TOPIC
--> continuare a parlarne con me è inutile, non perderò ulteriore tempo, inoltre l'op si è già lamentato che la cosa non è pertinente alla sua richiesta.