/ Forside / Teknologi / Udvikling / Java / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java
#NavnPoint
molokyle 3688
Klaudi 855
strarup 740
Forvirret 660
gøgeungen 500
Teil 373
Stouenberg 360
vnc 360
pmbruun 341
10  mccracken 320
Tekstsløring
Fra : Jes Søndergaard


Dato : 17-12-02 20:50

Mit program gemmer et kodeord i en fil, som senere skal bruges af programmet
igen. Da det ikke umiddelbart skal være muligt at læse kodeordet bare ved at
åbne filen skal det sløres. Hvordan gør jeg dette nemmest uden at det bliver
for kompliceret?

Jeg har set på Javas krypteringsklasser, men jeg synes det ser ud til at de
enten skal bruge nøgler eller også er det envejskryptering og dette har jeg
ikke brug for.

/Jes



 
 
Jesper Sørensen (17-12-2002)
Kommentar
Fra : Jesper Sørensen


Dato : 17-12-02 22:03

http://math.uh.edu/~minru/web/apps5.html
Den beskriver metoden rot 13 den er meget brugt, men ikke udpræget sikker :)
men den slører umiddelbart det der står.

mvh
jS



"Jes Søndergaard" <jes-s@stofanet.dk> wrote in message
news:3dff7ff2$0$24701$ba624c82@nntp02.dk.telia.net...
> Mit program gemmer et kodeord i en fil, som senere skal bruges af
programmet
> igen. Da det ikke umiddelbart skal være muligt at læse kodeordet bare ved
at
> åbne filen skal det sløres. Hvordan gør jeg dette nemmest uden at det
bliver
> for kompliceret?
>
> Jeg har set på Javas krypteringsklasser, men jeg synes det ser ud til at
de
> enten skal bruge nøgler eller også er det envejskryptering og dette har
jeg
> ikke brug for.
>
> /Jes
>
>



Jimmi W. (17-12-2002)
Kommentar
Fra : Jimmi W.


Dato : 17-12-02 22:34

Her er en meget nem krypter klasse, cæsar algoritme, som jeg har sat sammen.
Måske du kan bruge den.



class Krypter
{
public static String encrypt(String str)
{
char ch = 'n';
String St1 = "";
StringBuffer buf = new StringBuffer();

for(int i = 0; str.length() > i; i++)
{
int temp;

temp = (int)((str.charAt(i)) * 2);

ch = (char)temp;
buf.append(ch);

}

return buf.toString();
}

public static String decrypt(String encrypt)
{
char real = '0';
StringBuffer buf = new StringBuffer();

for(int i = 0; encrypt.length() > i; i++)
{
int temp;

temp = ((int)(encrypt.charAt(i) )/2);
real = (char)temp;

buf.append(real);
}
return buf.toString();
}
}



Jesper Sørensen (17-12-2002)
Kommentar
Fra : Jesper Sørensen


Dato : 17-12-02 22:49

Cæsar = rot 13 afart ikke. Det er ikke nogen kritik bare information. Rart
med lidt kode.

mvh
JS
"Jimmi W." <jimmi1311XXX@stofanet.dk> wrote in message
news:3dff9831$0$1773$ba624c82@nntp03.dk.telia.net...
> Her er en meget nem krypter klasse, cæsar algoritme, som jeg har sat
sammen.
> Måske du kan bruge den.
>
>
>
> class Krypter
> {
> public static String encrypt(String str)
> {
> char ch = 'n';
> String St1 = "";
> StringBuffer buf = new StringBuffer();
>
> for(int i = 0; str.length() > i; i++)
> {
> int temp;
>
> temp = (int)((str.charAt(i)) * 2);
>
> ch = (char)temp;
> buf.append(ch);
>
> }
>
> return buf.toString();
> }
>
> public static String decrypt(String encrypt)
> {
> char real = '0';
> StringBuffer buf = new StringBuffer();
>
> for(int i = 0; encrypt.length() > i; i++)
> {
> int temp;
>
> temp = ((int)(encrypt.charAt(i) )/2);
> real = (char)temp;
>
> buf.append(real);
> }
> return buf.toString();
> }
> }
>
>



Aggeboe (18-12-2002)
Kommentar
Fra : Aggeboe


Dato : 18-12-02 16:08

Jes Søndergaard wrote:
> Mit program gemmer et kodeord i en fil, som senere skal bruges af programmet
> igen. Da det ikke umiddelbart skal være muligt at læse kodeordet bare ved at
> åbne filen skal det sløres. Hvordan gør jeg dette nemmest uden at det bliver
> for kompliceret?

Hvis ikke du skal kunne læse kodeordet direkte igen fra filen, men
f.eks. bare skal checke om det er det rigtige password, kan du vel bare
gemme en hash værdi af passwordet i filen?
Så kan du checke om de to hashværdier er ens istedet...
Java har vist både md5 og SHA-1 indbygget, så vidt jeg husker.

/Aggeboe


Henrik Schmidt (28-01-2003)
Kommentar
Fra : Henrik Schmidt


Dato : 28-01-03 21:57

"Jes Søndergaard" <jes-s@stofanet.dk> wrote in message
news:3dff7ff2$0$24701$ba624c82@nntp02.dk.telia.net...
> Mit program gemmer et kodeord i en fil, som senere skal bruges af
programmet
> igen. Da det ikke umiddelbart skal være muligt at læse kodeordet bare ved
at
> åbne filen skal det sløres. Hvordan gør jeg dette nemmest uden at det
bliver
> for kompliceret?
>
> Jeg har set på Javas krypteringsklasser, men jeg synes det ser ud til at
de
> enten skal bruge nøgler eller også er det envejskryptering og dette har
jeg
> ikke brug for.

Hvad er der galt med envejskryptering? Hvis du krypterer dit password og
gemmer det i filen, kan dit program jo bare kryptere det indtastede password
og teste mod filens krypterede password. Det ville alt andet lige være
sikrere end at begynde at dekryptere i dit program.

Mvh,
Henrik Schmidt



soren (29-01-2003)
Kommentar
Fra : soren


Dato : 29-01-03 00:17

"Henrik Schmidt" <ingenspam(smoelf@stofanet.dk)> writes:

> "Jes Søndergaard" <jes-s@stofanet.dk> wrote in message
> news:3dff7ff2$0$24701$ba624c82@nntp02.dk.telia.net...
> > Mit program gemmer et kodeord i en fil, som senere skal bruges af
> programmet
> > igen. Da det ikke umiddelbart skal være muligt at læse kodeordet bare ved
> at
> > åbne filen skal det sløres. Hvordan gør jeg dette nemmest uden at det
> bliver
> > for kompliceret?
> >
> > Jeg har set på Javas krypteringsklasser, men jeg synes det ser ud til at
> de
> > enten skal bruge nøgler eller også er det envejskryptering og dette har
> jeg
> > ikke brug for.
>
> Hvad er der galt med envejskryptering? Hvis du krypterer dit password og
> gemmer det i filen, kan dit program jo bare kryptere det indtastede password
> og teste mod filens krypterede password. Det ville alt andet lige være
> sikrere end at begynde at dekryptere i dit program.

Den naest-aeldste kryptering i verden efter rot13 tror jeg .

//
public class XorTest {

private static final int SEC_KEY = 37;

public static String xor(String in, int secretKey) {

String out = "";
for (int i = 0; i < in.length(); i++)
out += (char) ((int)in.charAt(i) ^ secretKey);

return out;
}

public static void main(String [] args) {

String pass = "secret";

String encPass = xor(pass, SEC_KEY);

System.out.println("pass = " + pass);
System.out.println("encPass = " + encPass);
System.out.println("xor(encPass) = " + xor(encPass, SEC_KEY));
}

}


Mvh,

Morten F. Hansen (29-01-2003)
Kommentar
Fra : Morten F. Hansen


Dato : 29-01-03 01:01

> for (int i = 0; i < in.length(); i++)
> out += (char) ((int)in.charAt(i) ^ secretKey);

Hvad så hvis resultatet af (in.charAt(i) ^ secretKey) bliver '\0'?

Så cropper den strengen der når man skal decrypte igen.. Ikke smart.

Dette er en typisk fejl ved xor-crypt. Man skal have længden af strengen
i en variable for sig selv.



soren (29-01-2003)
Kommentar
Fra : soren


Dato : 29-01-03 09:54

"Morten F. Hansen" <info@127.0.0.1> writes:

> > for (int i = 0; i < in.length(); i++)
> > out += (char) ((int)in.charAt(i) ^ secretKey);
>
> Hvad så hvis resultatet af (in.charAt(i) ^ secretKey) bliver '\0'?
>
> Så cropper den strengen der når man skal decrypte igen.. Ikke smart.
>
> Dette er en typisk fejl ved xor-crypt. Man skal have længden af strengen
> i en variable for sig selv.

Heh, nu er det jo Java og ikke C

Men du har ret, man boer enkode for at goere det laes-bart fra
eg. filer ogsaa..


Mvh,

--

school.soren.davidsenATturtleDOTmathDOTklteDOThu//math-institute/uni-debrecen
other..sorenATtaneshaDOTnet//oesterbro/denmark/www.tanesha.net

Morten F. Hansen (29-01-2003)
Kommentar
Fra : Morten F. Hansen


Dato : 29-01-03 13:08

> Heh, nu er det jo Java og ikke C

Ups! Jeg havde ikke fanget at en String ikke er nul-afsluttet i Java.
Jeg har vist brugt nul-afsluttede strenge for meget til, at jeg kan
forestille mig andet



Søg
Reklame
Statistik
Spørgsmål : 177492
Tips : 31966
Nyheder : 719565
Indlæg : 6408466
Brugere : 218886

Månedens bedste
Årets bedste
Sidste års bedste