Programma di criptazione/decriptazione (Parte 2)

Pubblicità
Io rimango della mia teoria che ho citato sopra, la teoria matematica non è completa così come l’algoritmo è un buco nero. Fine. Io quello che dovevo fare l’ho fatto.
L’algoritmo in questione è come una gloryhole, pieno di BUCHI.

Adesso cito anche @BAT e @DispatchCode e @ilfe98 a dare un’occhiata
 
Io rimango della mia teoria che ho citato sopra, la teoria matematica non è completa [...] Fine. Io quello che dovevo fare l’ho fatto.
Sì, mi sembra la giusta replica dopo che nel precedente post mi sono preso la briga di rispondere punto per punto ad ogni tua "obiezione"...
Voglio credere nella buona fede dei miei interlocutori, ma il dubbio che questo post sia stato solo un modo per gettare un po' di fumo negli occhi allo scopo di tirartene fuori qualunque fosse stata la mia replica (ammessa che tu l'abbia letta), rimane... anche perché dai tuoi precedenti post è evidente che già partivi dal presupposto che la mia analisi matematica dovesse essere errata:
E continua ad aspettare, perché intanto ti ho dato del materiale verificato da studiare.
Poi appena ho tempo come ho smontato l’algoritmo smonto anche la teoria matematica
Sto facendo l’analisi matematica, stai sereno che entro domani rispondo pure ai tuoi quesiti.
Già trovo qualcosa che non quadra
 
Per me sei solo un tipo polemico, io ti rispondo con i miei ragionamenti e la mie considerazioni tecniche sia lato programmazione (dove ho dimostrato coi fatti che l'algoritmo è scritto coi piedi e ha vulnerabillità) sia con il lato matematico (dove sono meno forte) in quanto la matematica non mi fa impazzire.
Leggi anche la targhetta sotto il mio profilo per capire la mia "PROFESSIONE" e dunque non ho altro da dimostrare io.
Se le mie risposte non sono state soddisfacenti puoi permetterti di scrivere a qualche professore di matematica lato universitario magari sottoponendo il tuo problema e vediamo cosa ti dice.

FINE, non ho altro da aggiungere perchè questo atteggiamento attezzoso mi ha più che stufato, sono stato gentile e garbato.
SALUTI
 
Per me sei solo un tipo polemico
Se per polemico intendi uno che non lascia correre inesattezze e cose non vere, allora sì, sono un tipo polemico...

ti rispondo con i miei ragionamenti e la mie considerazioni tecniche sia lato programmazione (dove ho dimostrato coi fatti che l'algoritmo è scritto coi piedi e ha vulnerabillità)
Le tue critiche al codice python dell'autore non mi interessano, sia perché io quel codice non l'ho nemmeno letto (visto che non conosco il suddetto linguaggio di programmazione), sia perché si tratta di cose estranee a questo topic; invece, checché tu ne dica, finora non hai fornito nessuna valida argomentazione che dimostri l'infondatezza del metodo crittografico generale nei termini da me espressi (e bada bene che ciò non significa che io escluda che il metodo possa essere non valido, visto che io stesso ho espresso delle perplessità al riguardo).

sia con il lato matematico (dove sono meno forte) in quanto la matematica non mi fa impazzire.
Leggi anche la targhetta sotto il mio profilo per capire la mia "PROFESSIONE" e dunque non ho altro da dimostrare io.
Se le mie risposte non sono state soddisfacenti puoi permetterti di scrivere a qualche professore di matematica lato universitario magari sottoponendo il tuo problema e vediamo cosa ti dice.
Mi sembra di avere un déjà vu... comunque ti faccio notare che sei stato tu a dire che avresti smontato la mia dimostrazione matematica...

FINE, non ho altro da aggiungere perchè questo atteggiamento attezzoso mi ha più che stufato, sono stato gentile e garbato.
SALUTI
Fa sorridere detto da chi ha esordito in questo topic con
Io faccio il developer sono un senior, lavoro da 13 anni nel settore, ho studiato all'università, ho preso 2 lauree, e non parlo tanto per dare fiato.
Voglio dare un suggerimento reale e formativo valido per tutti.

Parto con l'analisi del codice python fornito dove elenco tutte le criticità, mi sono preso un paio di ore, penso che con un altro paio di ore questo algoritmo lo cracco e ne faccio vedere l'instabilità
e non riporto tutte le altre battutine e il tuo atteggiamento da maestrino... anche perché sono lì per chi vuole leggerle.
Comunque, saluti.


penso che ti ritroverai da solo a scrivere post e a rileggerteli, dopo un po'...uno si stufa anche
Pazienza, nessuno vi obbliga a rispondere... anzi vuoi sapere la verità? Avrei preferito di più un topic senza risposte, piuttosto che trovarmi a replicare continuamente ad obiezioni campate in aria e soprattutto non finalizzate ad una sincera discussione e ad un dialogo costruttivo...
 
Se vuoi qualcosa di costruttivo, parti dal cambiare il tuo atteggiamento, che tutto è tranne che COSTRUTTIVO.

Saluti, mr.inesattezze
 
Pazienza, nessuno vi obbliga a rispondere... anzi vuoi sapere la verità? Avrei preferito di più un topic senza risposte, piuttosto che trovarmi a replicare continuamente ad obiezioni campate in aria e soprattutto non finalizzate ad una sincera discussione e ad un dialogo costruttivo...
un monologo...anzi, un diario personale
 
C'è del topic in questa faziosità! 😅
Vabbè mi sembra ovvio che replicare sarebbe inutile, se non deleterio...
 
@theprogrammer.99
ammesso e non concesso che ne trovi il tempo (cosa di cui dubito molto) li leggerò dopo

tuttavia questa discussione non va chiusa perché la questione è aperta:
alla domanda se il "metodo" dell'autore è un buon metodo di cifratura la risposta è ovviamente NO, nonostante l'ultima sequela di irripetibili boiate che ha sparato nei suoi ultimi post (mi riferisco all'autore del "metodo");

la tesi che rimane da dimostrare sarebbe che esiste un certo valore z=p^k (k intero positivo) per cui l'espressione MCD(s, s mod z) riesce ad individuare uno dei fattori primi di s , precisando che qui tutti i valori sono interi, p è un numero primo e quindi s=p*q è la fattorizzazione di s (dove ovviamente anche q è primo). In più si individuano gli intervalli dove cercare tale valore z
è questo che richiede la supervisione di gente del campo

invece la "dimostrazione" di @M1n021 non porta a nulla: i passi di calcolo che ha fatto sono cose note da circa 350-400 anni, oltretutto messe in malo modo (non me ne sono accorto all'inizio per la troppa fretta che ho portato)
i punti da 1 a 4 sono la nozione elementare di congruenza lineare che evidentemente NON conosce, a dimostrazione che si può essere logici quanto si vuole ma se non sei del campo al massimo riscopri che esiste l'acqua calda
cos'è una congruenza lineare?
dati a, b, n, q interi, si dice che a è congruo a b modulo n se a-b è divisibile per n e si scrive
acb.webp
in alternativa si può dire che a-b è multiplo di n o, ancora, che la divisione intera tra a ed n e tra b ed n dà lo stesso resto;
esempio: 47 è congruo a 23 modulo 8 perché (a=48, b=23, n=8, q=3)
  • 47-23=24 è divisibile per 8
  • 47-23=24 = 3*8 cioè 24 è multiplo di 8
  • 47:8 = 5 con resto 7 e 23:8= 2 con resto 7
l'unica restrizione è su n che deve essere diverso da 0 (la divisione per 0 non si può fare) e da 1 (banale perché tutti i numeri sono divisibili per 1, per cui non è di nessun interesse); ma parte questo è indipendente dai numeri interi a, b, che siano pari, dispari, primi o composti.
Inoltre è completamente indipendente dagli intervalli considerati.
La "fattorizzazione" di semiprimi avviene per le proprietà delle conguruenze lineari, ma non c'è nessuna evidenza che avvenga per un valore della forma z=p^k e si può verificare coi numeri dell'intervallo che lui stesso ha postato.

invece se ci sono esempi di soluzioni in forma di potenza la cosa sarebbe interessante da sapere
 
la tesi che rimane da dimostrare sarebbe che esiste un certo valore z=p^k (k intero positivo) per cui l'espressione MCD(s, s mod z) riesce ad individuare uno dei fattori primi di s , precisando che qui tutti i valori sono interi, p è un numero primo e quindi s=p*q è la fattorizzazione di s (dove ovviamente anche q è primo). In più si individuano gli intervalli dove cercare tale valore z
è questo che richiede la supervisione di gente del campo
invece la "dimostrazione" di @M1n021 non porta a nulla
Vedo che continui a capirci poco e a parlare a vanvera... la proprietà matematica riscontrata sperimentalmente dall'autore (con intervalli e chiavi trovati attraverso un procedimento a tentativi) è solo un caso particolare del caso generale mostrato nella mia dimostrazione (la cui prima versione è quella che trovate sotto spoiler nel post iniziale, qui invece potete vederne una versione aggiornata in cui ho separato la dimostrazione vera e propria dai "corollari").

L'utilizzo pratico della mia dimostrazione per individuare intervalli e chiave è molto semplice ed è il seguente: si scelgono due generici numeri a e b (con a>b) che andranno a costituire l'origine dei due intervalli; la chiave c sarà uguale ad a-1 o ad un suo divisore maggiore di b ; l'estensione m dei due intervalli sarà calcolata con la formula 8) (o la 12) nella versione più recente), da cui si evince che più grande sarà il valore di c adottato, più grande sarà m . A tal proposito va detto che l'estensione m degli intervalli si attesta più o meno su 10^d , dove d è la differenza tra il numero di cifre di a e b .
A questo punto, volendo limitarci al caso di nostro interesse, avremo che per ogni coppia di numeri primi A e B prelevati rispettivamente dagli intervalli [a;a+m] e [b;b+m] sarà
MCD(A*B , A*B mod c) = B .

Per esempio scegliamo a=15835 e b=627 ; il massimo valore della chiave sarà c=a-1=15834 (altri possibili valori di c sono costituiti dai divisori di 15834 maggiori di 627, ossia 754 , 1131 , 1218 , 2262 , 2639 , 5278 e 7917 ). La massima estensione degli intervalli sarà quella associata a c=15834 , da cui si ricava m=23 .
A questo punto avremo che la formula
MCD(A*B , A*B mod 15834) = B
sarà valida per ogni coppia di numeri primi A e B prelevati rispettivamente dagli intervalli [15835;15858] e [627;650] .
 
Vedo che continui a capirci poco e a parlare a vanvera... la proprietà matematica riscontrata sperimentalmente dall'autore (con intervalli e chiavi trovati attraverso un procedimento a tentativi) è solo un caso particolare del caso generale mostrato nella mia dimostrazione (la cui prima versione è quella che trovate sotto spoiler nel post iniziale, qui invece potete vederne una versione aggiornata in cui ho separato la dimostrazione vera e propria dai "corollari").

L'utilizzo pratico della mia dimostrazione per individuare intervalli e chiave è molto semplice ed è il seguente: si scelgono due generici numeri a e b (con a>b) che andranno a costituire l'origine dei due intervalli; la chiave c sarà uguale ad a-1 o ad un suo divisore maggiore di b ; l'estensione m dei due intervalli sarà calcolata con la formula 8) (o la 12) nella versione più recente), da cui si evince che più grande sarà il valore di c adottato, più grande sarà m . A tal proposito va detto che l'estensione m degli intervalli si attesta più o meno su 10^d , dove d è la differenza tra il numero di cifre di a e b .
A questo punto, volendo limitarci al caso di nostro interesse, avremo che per ogni coppia di numeri primi A e B prelevati rispettivamente dagli intervalli [a;a+m] e [b;b+m] sarà
MCD(A*B , A*B mod c) = B .

Per esempio scegliamo a=15835 e b=627 ; il massimo valore della chiave sarà c=a-1=15834 (altri possibili valori di c sono costituiti dai divisori di 15834 maggiori di 627, ossia 754 , 1131 , 1218 , 2262 , 2639 , 5278 e 7917 ). La massima estensione degli intervalli sarà quella associata a c=15834 , da cui si ricava m=23 .
A questo punto avremo che la formula
MCD(A*B , A*B mod 15834) = B
sarà valida per ogni coppia di numeri primi A e B prelevati rispettivamente dagli intervalli [15835;15858] e [627;650] .
Adesso perdonami, calma i toni, altrimenti ti chiappi la sanzione e vai a farti un giro nel forum del cucito.
Uomo avvisato, mezzo salvato!

Ti abbiamo risposto mantenendo l'educazione cosa che tu non hai!
Alla prossima davvero ti prendi una sanzione per Flame recidivo.
 
risponderò in modo molto pacato
Vedo che continui a capirci poco e a parlare a vanvera
questa è la seconda volta che mi insulti in questo thread, e lo fai gratis dopo non aver capito una sillaba di quanto ti ho detto;
io invece non ti insulto perché non sono il tipo, mi limiterò a farti fare la figura dell'imbecille sbattendoti in faccia i numeri che tu stesso hai postato, poi vediamo chi è che parla a vanvera: se oggi pomeriggio pensavo che la tua pseudodimostrazione fosse inutile, adesso ho la certezza matematica che è sbagliata
Per esempio scegliamo a=15835 e b=627 ; il massimo valore della chiave sarà c=a-1=15834 (altri possibili valori di c sono costituiti dai divisori di 15834 maggiori di 627, ossia 754 , 1131 , 1218 , 2262 , 2639 , 5278 e 7917 ). La massima estensione degli intervalli sarà quella associata a c=15834 , da cui si ricava m=23 .
A questo punto avremo che la formula
MCD(A*B , A*B mod 15834) = B
sarà valida per ogni coppia di numeri primi A e B prelevati rispettivamente dagli intervalli [15835;15858] e [627;650] .
bene bene... non ci resta che fare 2 conti con l'eccezionale con WolphramAlpha per l'espressione MCD(s , s mod c):
innazitutto mi procuro una bella lista di numeri primi da qui: https://www.mathematical.com/primes0to1000k.html
nell'intervallo [627;650] abbiamo i primi {631, 641, 643 647}, ottimo! chi ben comincia è a metà dell'opera
nell'intervallo [15835;15858] abbiamo i primi { } 🤣
complimenti genio, la tua infallibile formula ha selezionato un insieme senza numeri primi 👍 chi è che parla a vanvera adesso?

In matematica discreta si usano solo gli interi, non si usano equazioni di secondo grado ordinarie e/o approssimazioni prese come ti fa più comodo. Te lo avevo già detto e te lo aveva ribadito @Skills07

Ma facciamo finta di niente, diciamo che hai sbagliato a calcolare m, così invece di m=23, per farti contento prendiamo m=24, in modo da includere il numero primo che viene dopo 15858 che è 15859. Facciamo i conti moltiplicandolo per i primi dell'intervallo più piccolo:
s = 15859 * 631 = 10007029 è il semiprimo di test per cui, con tutte le chiavi "buone" finiremo per avere il fattore primo 631:

per la chiave "massima" c=15834 -> s mod c -> 10007029 mod 15834 = 15775 -> MCD(10007029, 15775) = 631 -> funziona
testiamo gli altri valori "chiave" calcolati dalla tua "infallibile e dimostrata formula"
conclusione: del tuo arzigogolato meccanismo non funziona una mazza, a partire dalla "formula" per determinare gli insiemi alle "chiavi" -> la dimostrazione è sbagliata
giusto per la cronaca: se invece del 631 prendi il 641 nessuna delle chiavi che hai citato funziona

rileggiti quanto ti ho detto al post precedenze sulle congruenze lineari, la "chiave massima" non è affatto quella che pensi tu: tanto per prenderne un paio a caso c=19561 e c=23347 ritornano 631 se usate in MCD(s , s mod c)

Se trovo il tempo torno sull'argomento nei prossimi giorni.
 
Adesso perdonami, calma i toni, altrimenti ti chiappi la sanzione e vai a farti un giro nel forum del cucito.
Uomo avvisato, mezzo salvato!
Non mi ero reso conto che foste così sensibili, magari potevo indorare la pillola un po' di più, ma nella sostanza confermo totalemente quanto detto in precedenza.
E comunque i toni derivano dal fatto che ad un certo punto uno si stufa pure di replicare ad obiezioni senza senso, ma ahimè mi sa che mi tocca farlo ancora...


complimenti genio, la tua infallibile formula ha selezionato un insieme senza numeri primi 👍 chi è che parla a vanvera adesso?
Come detto nel precedente post, tutto parte dalla scelta di due generici numeri a e b , da cui segue il calcolo della chiave c e dell'estensione m degli intervalli. Semplicemente per i valori di a e b che ho scelto a caso è capitato un insieme senza numeri primi, tutto qui, ma ciò non dimostra o confuta nulla, quindi mi dispiace dirti che tutta questa tua euforia per la presunta rivalsa nei miei confronti è assolutamente fuori luogo...
E' vero, magari potevo essere più zelante e controllare che entrambi gli intervalli contenessero dei numeri primi, ma come si suol dire non tutti i mali vengono per nuocere, infatti questa mia superficialità è stata comunque utile, in quanto le cose che hai scritto in seguito hanno dimostrato senza timore di smentita che non hai assolutamente capito nulla di quanto riportato nella dimostrazione e nel mio precedente post.

Ma facciamo finta di niente, diciamo che hai sbagliato a calcolare m, così invece di m=23, per farti contento prendiamo m=24, in modo da includere il numero primo che viene dopo 15858 che è 15859.
Non ho sbagliato nulla, se applicando la formula viene m=23, il risultato è quello, non è che lo puoi estendere a piacere... quindi tutti i calcoli che fai in seguito sono perfettamente inutili, in quanto non rispettano le ipotesi alla base della mia dimostrazione.

Facciamo i conti moltiplicandolo per i primi dell'intervallo più piccolo:
s = 15859 * 631 = 10007029 è il semiprimo di test per cui, con tutte le chiavi "buone" finiremo per avere il fattore primo 631:

per la chiave "massima" c=15834 -> s mod c -> 10007029 mod 15834 = 15775 -> MCD(10007029, 15775) = 631 -> funziona
testiamo gli altri valori "chiave" calcolati dalla tua "infallibile e dimostrata formula"
Non offenderti, ma questa è l'ennesima riprova che quello che scrivo o non lo leggi o non lo capisci:
l'estensione m dei due intervalli sarà calcolata con la formula 8) (o la 12) nella versione più recente), da cui si evince che più grande sarà il valore di c adottato, più grande sarà m .
Tu invece che fai?! Utilizzi lo stesso valore (peraltro inventato) di m=24 anche per valori della chiave c più piccoli...

Quindi in definitiva tutte le frecciatine sparse nel tuo precedente messaggio diventano un'enorme fiera del grottesco, ma non mi va di infierire ulteriormente e spero che tu metta in pratica quanto riportato qui:
semplice: se sbaglio non ho alcuna a difficoltà ad ammettere l'errore, solo gli sciocchi insistono sull'indifendibile.


Poi domani con calma posto anche qualche esempio numerico facendo maggiore attenzione al fatto che gli intervalli trovati contengano più numeri primi.
 
Ultima modifica:
Pubblicità
Pubblicità
Indietro
Top