webForumDet fria alternativet

MD5 och säkerhet

Datasäkerhetur Datasäkerhet

7 svar · 359 visningar · startad av AG

Medlem sedan mars 20001 266 inlägg
Frågan#1

Har precis börjat titta på det där emd md5. I korta drag hur fungerar denna typ av kryptering egentligen? Om man skulle sätta in den på en skala, hur säker är den då?

Andreas

Medlem sedan okt. 20023 030 inlägg
#2

Otroligt säker. Inte många som kan tyda den. Vad jag vet finns det inte ens något sätt att tyda det på. Så om man vill kolla om ett lösenord är rätt som är sparat med md5 så får man jämföra md5 och md5. Det finns t.ex. en API för programmerare för att göra till md5 men inte ifrån. använd den du.

Medlem sedan apr. 2000642 inlägg
#3

md5 är en sk envägskryptering. det går att kryptera, men inte att "kryptera upp". För att se om någon har rätt lösenord krypterar man det användaren skrev in och jämför med det krypterade lösenordet.

på det sättet går det inte för någon att se vad användaren har för lösenord. har för mig att md5-summor brukar vara 128 bitar.

Medlem sedan okt. 20023 030 inlägg
#4

Peter_B skrev:

md5 är en sk envägskryptering. det går att kryptera, men inte att "kryptera upp". För att se om någon har rätt lösenord krypterar man det användaren skrev in och jämför med det krypterade lösenordet.

på det sättet går det inte för någon att se vad användaren har för lösenord. har för mig att md5-summor brukar vara 128 bitar.

Härmis.. :e

Däremot har jag för mej att det finns allt från 32-bitars till 128-bitars.

Medlem sedan mars 20001 266 inlägg
#5

Oki.
Ï mitt program gör den om till 32tecken, något med det?

Enda nackdelen måste väl då vara att mina användare får en tomruta när de ska byta lösenord.

Andreas

Medlem sedan jan. 200398 inlägg
#6

Det där med 32 tecken låter som om du menar ett program som gör en md5-checksumma (vilket är något helt annat än krypteringen som diskuteras ovan). md5-checksummor används ofta för att se till att garantera att en fil laddats ner korrekt över internet, genom att jämföra lokalt genererade md5-summor med summor från nedladdningssiten. Det är dock viktigt i detta fallet att inse att detta icke ger någon garanti för att filen ej modifierats, endast att överföringen gått bra. Om någon lyckas hacka den webserver filen ligger på kan man förstås byta ut md5-checksumman också. För att garantera att filen ej modifierats får man använda public/private key-kryptering, t ex pgp.

Medlem sedan mars 20001 266 inlägg
#7

Följande Javakod används:

import java.security.*;
public class MD5Hash extends Object {	
/**	 
* Private function to turn md5 result to 32 hex-digit string	 
*/  
private static String asHex (byte hash[]) {    
StringBuffer buf = new StringBuffer(hash.length * 2);    
int i;    
for (i = 0; i < hash.length; i++) {      
if (((int) hash[i] & 0xff) < 0x10)         
buf.append("0");      
buf.append(Long.toString((int) hash[i] & 0xff, 16));    
}       
return buf.toString().toUpperCase();  
}
	
/**	 
* Take a string and return its md5 hash as a hex digit string	 
*/  
public static String hash(String arg)	
{	
	return hash(arg.getBytes());	
}
	/**	 
* Non static version for VB	 
*/  
public String doHash(String arg)	
{	
	return hash(arg.getBytes());
	}	
/**	 
* Take a byte array and return its md5 hash as a hex digit string	 
*/  
public static String hash(byte barray[])	
{               
String restring = "";            
try{                
MessageDigest md = MessageDigest.getInstance("MD5");                
md.update(barray);                
byte[] result = md.digest();            		
restring = asHex(result);            
}  catch (NoSuchAlgorithmException nsa){ }                         
return restring;
}

}

Andreas

Medlem sedan apr. 2000642 inlägg
#8

Härmis.. :e

tänkte bara förtydliga lite ;)

135 ms totalt · 3 externa anrop · v20260731065814-full.4bcf49fe
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)