Avatar billede noobsaibot Nybegynder
05. december 2005 - 23:56 Der er 15 kommentarer og
1 løsning

Kryptere en streng med SHA1CryptoServiceProvider

Hej experter. Jeg vil gerne kryptere en streng med SHA1CryptoServiceProvider()

Jeg har fundet følgende eksempel:

byte[] data = new byte[DATA_SIZE];
            byte[] result;

            SHA1 sha = new SHA1CryptoServiceProvider();
            // This is one implementation of the abstract class SHA1.
            result = sha.ComputeHash(data);

Jeg kan bare ikke se hvor min inputstreng kommer ind i billedet .. Eller min outputstreng for den sags skyld..
Så mit problem består i at læse eksemplet.
Hvis der er en lettere måde, at kryptere en streng på er forslag meget velkomne :)

Venlig hilsen
Avatar billede arne_v Ekspert
06. december 2005 - 00:16 #1
input er data
output er result
Avatar billede arne_v Ekspert
06. december 2005 - 00:16 #2
og SHA1 er vel en hash og ikke en kryptering ??
Avatar billede noobsaibot Nybegynder
06. december 2005 - 00:18 #3
okay - ved ikke hvad forskellen er på Hash og Kryptering :)
Avatar billede noobsaibot Nybegynder
06. december 2005 - 00:19 #4
Jeg ville gerne have at input skulle være en streng .. fx fra en textbox.
Avatar billede noobsaibot Nybegynder
06. december 2005 - 00:21 #5
Jeg vil nemlig gerne have et password hash'ed så jeg kan anvende det i min web.config
Avatar billede arne_v Ekspert
06. december 2005 - 00:23 #6
eksempel med MD5:

using System;
using System.Text;
using System.Security.Cryptography;

class MainClass
{
    public static void Main(string[] args)
    {
        string input = "Dette er en lille test streng";
        Encoding utf8 = new UTF8Encoding();
        MD5 md5 = new MD5CryptoServiceProvider();
        string output = Convert.ToBase64String(md5.ComputeHash(utf8.GetBytes(input)));
        Console.WriteLine(input + " -> " + output);
    }
}
Avatar billede arne_v Ekspert
06. december 2005 - 00:24 #7
kryptering:

konverter N bytes til N bytes - kan konverteres tilbage igen (dekrypteres)

hashing:

konverterer N bytes til f.eks. 16 bytes - kan ikke konverteres tilbage
Avatar billede noobsaibot Nybegynder
06. december 2005 - 00:40 #8
JEg kan godt få dit fixe eksempel til at virker, men jeg kan ikke få det anvendt i min web.config.

Skal passwordet ikke stå i web.config'en sådan her:

<authentication mode="Forms">
    <forms name="Auth" loginUrl="login.aspx" >
        <credentials passwordFormat="MD5">
            <user name="usr" password="lcODrCJOJZpfXQi02rCM/w=="/>
        </credentials>
    </forms>
    </authentication>


password="lcODrCJOJZpfXQi02rCM/w== får jeg ved at anvende dit eksempel (med inputstring = "Hej" )
Avatar billede arne_v Ekspert
06. december 2005 - 00:48 #9
jeg tror ikke at ASP.NET bruger base64
Avatar billede arne_v Ekspert
06. december 2005 - 00:50 #10
prøv:

using System;
using System.Text;
using System.Security.Cryptography;

class MainClass
{
    public static void Main(string[] args)
    {
        string input = "Dette er en lille test streng";
        Encoding utf8 = new UTF8Encoding();
        MD5 md5 = new MD5CryptoServiceProvider();
        byte[] output = md5.ComputeHash(utf8.GetBytes(input));
        for(int i = 0; i < output.Length; i++)
        {
            Console.Write(String.Format("{0:x2}",output[i]));
        }
        Console.WriteLine();
    }
}
Avatar billede noobsaibot Nybegynder
06. december 2005 - 00:51 #11
Okay tak - kigger lige på det i morgen :)
Avatar billede arne_v Ekspert
31. december 2005 - 14:10 #12
virkede det ?
Avatar billede noobsaibot Nybegynder
12. januar 2006 - 22:19 #13
Ja :)
Men hvordan dekrypterer jeg ?
Avatar billede arne_v Ekspert
13. januar 2006 - 01:04 #14
MD5 kan ikke dekrypteres

det er one way
Avatar billede noobsaibot Nybegynder
13. januar 2006 - 13:49 #15
Nej .. det er vel egentlig også meningen :)

Smid et svar :)
Avatar billede arne_v Ekspert
13. januar 2006 - 13:53 #16
netop

og svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester