Avatar billede slash_underscore Nybegynder
04. maj 2005 - 21:29 Der er 14 kommentarer og
1 løsning

Lagring af brugernavn og kode, på en sikker måde

Hej,

Jeg har en applikation jeg ønsker at begrænse adgangen til...

Hvor er det mest praktisk at gemme brugernavnet og passwordet?

Tænkte lidt på en XML-fil med MD5-hash af bruger og pass, men er det hensigtsmæssigt?
Avatar billede arne_v Ekspert
04. maj 2005 - 21:36 #1
MD5 af password er en ofte brugt metode.

(men plejer normalt ikke at encrypte username)
Avatar billede slash_underscore Nybegynder
04. maj 2005 - 21:37 #2
Nej men jeg tænker... hvis passwordet blot ligger i en fil, som MD5 - Så er det forholdvist nemt at knække?

Anyways - Hvordan griber man MD5-kryptering an?
Avatar billede arne_v Ekspert
04. maj 2005 - 21:40 #3
Det er faktisk ikke nemt at finde et password som har samme MD5 værdi
som det rigtige password.

Og giver vel heller ikke alle adgang til det password !?
Avatar billede arne_v Ekspert
04. maj 2005 - 21:40 #4
.NET har indbygger support for MD5.

Jeg laver lige et eksempel.
Avatar billede arne_v Ekspert
04. maj 2005 - 21:42 #5
Imports System
Imports System.Text
Imports System.Security.Cryptography

Class MainClass
    Public Shared Sub Main(ByVal args As String())
        Dim input As String = "Dette er en lille test streng"
        Dim utf8 As Encoding = New UTF8Encoding
        Dim md5 As MD5 = New MD5CryptoServiceProvider
        Dim output As String = Convert.ToBase64String(md5.ComputeHash(utf8.GetBytes(input)))
        Console.WriteLine(input & " -> " & output)
    End Sub
End Class
Avatar billede slash_underscore Nybegynder
04. maj 2005 - 21:43 #6
Jeg tænker blot på hvordan det skal gemmes...

Gemmes det i en fil, kan filen vel blot erstattes af en ny?
Avatar billede arne_v Ekspert
04. maj 2005 - 21:46 #7
ja - du skal forhindre adgang til den fil
Avatar billede arne_v Ekspert
04. maj 2005 - 21:46 #8
og vær også opmærksom på at .NET programmer nemt kan decompiles
Avatar billede slash_underscore Nybegynder
04. maj 2005 - 21:48 #9
Hvordan forhindrer jeg brugere adgang til filer - Nu da alm. bruger nu til dags alle er superbrugere (administratorer) i XP
Avatar billede guidmaster Nybegynder
04. maj 2005 - 21:49 #10
Hvornår sættes dit brugernavn og password? Hvis det er sådan at brugeren selv har mulighed for at ændre dette ville jeg nok tage et kig på IsolatedStorage som stedet hvor du gemme de informationer.

Se evt. http://msdn.microsoft.com/library/en-us/vbcon/html/vbconsecurefiledataaccessinwindowsforms.asp
Avatar billede arne_v Ekspert
04. maj 2005 - 21:52 #11
filen bør opbevares på en server uden bruger adgang men tilgåes via f.eks.
en web service

som nødløsning må du obfuskere den lidt
Avatar billede slash_underscore Nybegynder
08. maj 2005 - 00:24 #12
Jeg tænker umiddelbart - Man behøver jo ikke opbevare passwordet - hverken ukrypteret, eller krypteret.

Opgaven går for mit vedkommende ud på at gøre nogle xml-data ulæselige for andre - så disse skal krypteres (vel med en hvilken som helst string) og dekrypteres så med passwordet.

Hvordan gøres dette med henblik på ind- og udlæsning fra et datagrid.

XMLDataset.ReadXml("var.xml") ' Vi henter vores data fra XMLData.xml

DEKRYPTERING HER!!!

DataGrid_oversigt.DataSource = XMLDataset ' Vi henter de hentede data ind i vores datagrid
DataGrid_oversigt.DataMember = "vare" ' Vi sætter vores medlemsskaber til "vare"

KRYPTERING HER!!!

DataGrid_oversigt.DataSource.WriteXML("var.xml") ' Vi skriver indholdet af vores datagrid tilbage i vores XML-fil
Avatar billede arne_v Ekspert
08. maj 2005 - 08:18 #13
MD5 kan ikke "dekrypteres" - det er em en vejs hash

Så skal du bruge 3DES eller AES

Du skal enten kryptere i dit DataSet eller i XML filen.
Avatar billede arne_v Ekspert
28. maj 2005 - 16:53 #14
OK ?
Avatar billede slash_underscore Nybegynder
28. maj 2005 - 21:12 #15
Beklager... har ikke kigget i mine åbne spørgsmål, på det seneste...
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
Kurser inden for grundlæggende programmering

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