Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 19
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    670

    Nuovo sistema di crittografia

    Ciao a tutti
    Ho ideato un nuovo sistema di crittografia basato su l'hash restituito dalla funzione HD5 più password di protezione.
    Ovvero, il lavoro lo svolge cosi:

    TESTO IN CHIARO (+ chiave) ---> HASH(chiave + password_di_protezione) ----> TESTO CIFRATO

    Secondo me è indecifrabile, perchè come ho detto si basa sull'hash restituito..quindi...
    Ho messo in internet un test, potete fare le vostre prove
    QUI

    Dopo i vostri consigli posterò il codice per la funzione di cript e decript da me realizzata!
    Grazie per i suggerimenti

    Aaaaaah provate a criptare più volte la stessa stringa


  2. #2
    ehm ...


    guarda che l'hash si dice hash perché fa un HASHING e non fa un CYPHERING (ovvero crittazione)

    di conseguenza quello che tiri fuori tu, in base a quello che hai detto, è ne + ne - un HASH con l'aggiunta di un SALT, anche chiamano HMAC-MD5 o HMAC-SHA1 e cosi via

    ---

    quello che hai detto qui è tutt'altro rispetto a quello che fa la tua pagina php

    posta il codice se comunque vuoi avere dei veri suggerimenti/consigli perché ciò che hai detto non è ciò che fai

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    670
    Perchè non fa quello che ho detto???
    Come promesso ecco il codice, che sicuramente sarà da migliorare anche nella sua stesura...



    codice:
    FUNZIONE PER CRIPTARE:
    
    function cripta($testo, $key) {
    	$n_random = rand(1000,9999);
    	$passw = "ASdwEfVcHy;.y";
    	$chiave = md5($n_random . $key . $passw);		
    	$posizione = 0;
    		for($i = 0; $i < strlen($testo); $i++){	
    			if ($cont > 31){
    				$cont = 0;
    			}
    			$ascii_testo = ord(substr($testo,$i,1));				
    			$ascii_chiave = ord(substr($chiave,$cont,1));			
    				if ($ascii_testo > $ascii_chiave) {
    					$controllo = "8";
    					$valore = ($ascii_testo - $ascii_chiave) + $posizione;							
    				}
    				else {
    					$controllo = "9";					
    					$valore = $ascii_testo + $ascii_chiave + $posizione;						
    				}								
    					$lunghezza = strlen($valore);
    					$append = $controllo . $lunghezza . $valore;
    						$testoCompleto = $testoCompleto . $append;
    						$cont = $cont + 1; 	
    						if ($posizione > 32) {
    							$posizione = 0;						
    						}
    						else {	
    							$posizione = $posizione + 2 + $i;
    						}							
    		}		
    	return $n_random . $testoCompleto;		
    }
    
    
    FUNZIONE PER DECRIPTARE:
    
    function decripta($testo, $key) {
    	$n_random = substr($testo, 0, 4);
    	$passw = "ASdwEfVcHy;.y";
    	$chiave_originale = md5($n_random . $key . $passw);	
    	$puntatore = 4;	
    	$posizione = 0;
    	$cont = 0;
    	$c = 0;
    		for($i = 4; $puntatore < strlen($testo); $i++){	
    			if ($cont > 31){
    				$cont = 0;
    			}
    			$controllo = substr($testo,$puntatore,1);			
    			$puntatore = $puntatore + 1;			
    			$n_lungh = substr($testo,$puntatore,1);			
    			$puntatore = $puntatore + 1;			
    			$valore = substr($testo,$puntatore,$n_lungh);			
    			$puntatore = ($puntatore + $n_lungh);
    			       if ($controllo == 8) {
    					$ascii_key = ord(substr($chiave_originale,$cont,1));						
    					$ascii_chiave = $ascii_key + $valore - $posizione;					
    					$c_valore = chr($ascii_chiave);						
    				}
    				else {
    					if ($controllo == 9) {
    						$ascii_key = ord(substr($chiave_originale,$cont,1));							
    						$ascii_chiave = (($valore - $ascii_key) - $posizione);						
    						$c_valore = chr($ascii_chiave);
    					}
    					else {
    						return "-1";
    					}
    				}
    					$testoCompleto = $testoCompleto . $c_valore;	 				
    						if ($posizione > 32) {
    							$posizione = 0;						
    						}
    						else {	
    							$posizione = $posizione + 2 + $c;
    						}	
    			$cont = $cont + 1; 	
    			$c = $c + 1;	
    		}
    			return $testoCompleto;
    }
    Che ve ne pare...
    E' un vero capolavoro



  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    460
    Scusa se ti smonto, ma la la crittografia e' una scienza fatta di teoremi e di dimostrazioni di matematica superiore.. non ha molto a che vedere con questo.

    Usa algoritmi pubblici e studiati da team di teorici della crittografia e crittanalisi, e' meglio.
    There are 10 types of people in the world - those who understand binary and those who don't.

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    670
    Originariamente inviato da frinkia
    Scusa se ti smonto, ma la la crittografia e' una scienza fatta di teoremi e di dimostrazioni di matematica superiore.. non ha molto a che vedere con questo.

    Usa algoritmi pubblici e studiati da team di teorici della crittografia e crittanalisi, e' meglio.

    no non mi smonto, ma prima di dire queste cose...sicuramente giuste, hai provato a dare un occhio all'algoritmo?

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    460
    No, perche' non sono un matematico.
    There are 10 types of people in the world - those who understand binary and those who don't.

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    670
    Originariamente inviato da frinkia
    No, perche' non sono un matematico.
    Ah ecco, io non esprimo mai un parere su un argomento che non conosco....comunque grazie!

  8. #8
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    460
    Fammi capire.. sei laureato in matematica e/o sei uno studioso di crittografia?
    There are 10 types of people in the world - those who understand binary and those who don't.

  9. #9
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    670
    Originariamente inviato da frinkia
    Fammi capire.. sei laureato in matematica e/o sei uno studioso di crittografia?
    mi stò laureando in ing. informatica

  10. #10
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    460
    Ok, allora parliamo molto approssimativamente la stessa lingua. Poco prima del quinto 5o anno, quando mi laureai io alcuni anni fa, presi in mano un libro di crittografia. Quando ho visto che a pagina 15 dopo avere parlato del codice di Cesare e di Enigma parlava in termini di spazi vettoriali n-dimensionali, ho dato un occhio alla prima dimostrazione e mi sono detto: bel materiale! Quando avro' dato qualche esame di geometria superiore tornero' a chiedere il libro alla biblioteca del Dipartimento. Pero' avevo gia' in mente che "secondo me e' indecifrabile" non e' una frase che mi aspetto da uno che studia crittografia.
    There are 10 types of people in the world - those who understand binary and those who don't.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.