Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Kryptering!

Postades av 2002-11-12 09:36:49 - Per Johansson, i forum visual basic - allmänt, Tråden har 8 Kommentarer och lästs av 477 personer

Kan någon koden för dekryptera denna typ av kryptering?

<code>
Private Sub Text1_Change(Index As Integer)
Dim i As Integer
Dim a As Integer '// Ascii-värdet på tecknet

If Index = 0 Then
If Index = 0 Then '// Klartextrutan
Text1(1).Text = ""
For i = 1 To Len(Text1(0).Text)
a = Asc(Mid(Text1(0).Text, i, 1))
a = (a + 33) Mod 28 + 32
Text1(1).Text = Text1(1).Text & Chr(a)
Next i
End If
Else 'De Code'

End If
End Sub
</code>
Tacksam för hjälp!


Svara

Sv: Kryptering!

Postades av 2002-11-12 13:46:02 - Per Hultqvist

Om jag inte tänker helt fel så kan du inte få tillbaka all information med 100% säkerhet med denna kryptering, vilket inte gör den speciellt bra. Problemet är att Mod inte har en "inverterad"(?) funktion, du förlorar information när du utför den operationen. Möjligen är den här algoritmen endast gjord för ett begränsat intervall av ASCII-tabellen t ex stora bokstäver (A-Z).

Hur som helst, det finns andra algoritmer om du bara vill ha en enkel (men lättforcerad!) metod, t ex XOR-kryptering. Skickar med lite kod som visar hur man gör (du behöver i princip bara ändra en rad i din kod). Siffran 11 är godtyckligt vald av mig, jag tror att det fungerar med vilket värde som helst mellan 0 och 255. Detta värde kan användas som en enkel nyckel. Möjligen ger 0 och 255 tillbaka samma värde, dvs okrypterat (hinner inte testa det).

Observera än en gång att denna kryptering inte stoppar en någorlunda kompetent och kunnig människa att knäcka det på nolltid. Det finns bättre krypteringsmetoder att tillgå på nätet om du behöver det...

/Per

<code>
Private Sub Encrypt
Dim i As Integer
Dim a As Byte '// Ascii-värdet på tecknet

TextBox2.Text = ""
For i = 1 To Len(TextBox1.Text)
a = Asc(Mid(TextBox1.Text, i, 1))
a = (a Xor 11)
TextBox2.Text = TextBox2.Text & Chr(a)
Next i
End Sub

Private Sub Decrypt
Dim i As Integer
Dim a As Byte '// Ascii-värdet på tecknet

TextBox1.Text = ""
For i = 1 To Len(TextBox2.Text)
a = Asc(Mid(TextBox2.Text, i, 1))
a = (a Xor 11)
TextBox1.Text = TextBox1.Text & Chr(a)
Next i

End Sub
</code>


Svara

Sv: Kryptering!

Postades av 2002-11-12 13:50:41 - Per Hultqvist

Glömde nämna att om du vill göra XOR-krypteringen betydligt säkrare (men ändå inte säker mot skickliga kodknäckare) så kan du använda en hemlig sträng som nyckel. Du krypterar sedan 1:a tecknet i ursprungstexten med 1:a tecknet i den hemliga nyckeln, sedan 2:a tecknet mot 2:a tecknet i nyckeln o s v, tills du nått nyckelns längd. Därefter börjar du om igen från första tecknet i nyckeln...här är en länk som beksriver metoden lite noggrannare....

http://www.yoe.org/developer/xor.html

/Per


Svara

Sv: Kryptering!

Postades av 2002-11-12 14:02:26 - Per Johansson

Tusen tack!

Intressant.


Svara

Sv: Kryptering!

Postades av 2002-11-12 15:17:52 - Fredrik Hofflander

Ett bra sätt när man tex ska skicka information krypterat till en annan dator. Dvs när man vill att den som lyssnar av inte ska höra är följande:

Du som skickar använder XOR-kryptering. Den som tar emot kryperar den krypterade text han får (men med en annan "hemlig" sträng) och skickar sedan tillbaka denna. När den första användaren får tillbaka filen dekrypterar han den. Därefter skickar han tillbaka den "dekrypterade, krypterade, texten", slutligen dekrypterar mottagaren texten och kan då läsa den.

Exempel:

Användare 1 (A1) vill skicka "hej" till Användare 2 (A2). A1 har "aaa" som hemlig sträng (rätt dålig sträng iof). Han krypterar "hej" till "h+a" + "e+a" + "j+a". A2 får denna stäng (men kan inte tyda den då han inte vet A1:s hemliga stäng. A2:s hemliga sträng är "bbb". A2 krypterar då detta till "h+a+b" + "e+a+b" + "j+a+b" och skickar detta till A1. A1 dekrypterar till "h+b" + "e+b" + "e+j" och skickar ännu en gång. A2 kan nu enkelt tyda texten, efter sin egna dekryptering, till "hej".

Detta är bra då man kan slumpa fram en hemlig sträng varje gång utan att mottagaren behöver få den.


Svara

Sv: Kryptering!

Postades av 2002-11-13 09:03:58 - Andreas Hillqvist

Om du skall kryptera. Är det bra att använda bytarrayer. I vb. KAn du konvertera en sträng till en Byte array bara genom att tilldela den.<br>
<br>
Här är ett exempel som använder XOR kryptering med bytearrayer:
<code>
Public Function Encrypt(Text As String, Key As String) As String
Dim Result() As Byte

Dim KeyData() As Byte
Dim KeyIndex As Long
Dim KeyLength As Long

Dim TextData() As Byte
Dim TextIndex As Long
Dim TextLength As Long

KeyLength = Len(Key)
If KeyLength Then
KeyData = StrConv(Key, vbFromUnicode)
TextLength = Len(Text)
If TextLength Then
TextData = StrConv(Text, vbFromUnicode)

ReDim Result(0 To TextLength - 1)

For TextIndex = 0 To UBound(TextData)
Result(TextIndex) = TextData(TextIndex) Xor KeyData(KeyIndex)
KeyIndex = (KeyIndex + 1) Mod KeyLength
Next

Encrypt = StrConv(Result, vbUnicode)
End If
Else
Encrypt = Text
End If
End Function
</code>


Svara

Sv: Kryptering!

Postades av 2002-11-13 09:36:33 - Per Johansson

Nice!
Den värkar lite bättre, det blir ju inte samma tecken om man skriver AA.

Hur Decrypterar jag den?

Tusen tack alla för hjälpen!


Svara

Sv: Kryptering!

Postades av 2002-11-13 10:06:17 - Andreas Hillqvist

Du kör bara värdet genom funktionen igen. Den krypterar och dekrypterar.


Svara

Sv: Kryptering!

Postades av 2002-11-13 10:18:14 - Per Johansson

Fy #<N va bra!

Detta blir super safe!

:-) Tack!


Svara

Nyligen

  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo
  • 14:25 Tips på verktyg för att skapa QR-k
  • 14:23 Tips på verktyg för att skapa QR-k
  • 20:52 Fungerer innskuddsbonuser egentlig

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 602
27 953
271 705
5 884
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies