BlowFish.pbi

Hier könnt Ihr gute, von Euch geschriebene Codes posten. Sie müssen auf jeden Fall funktionieren und sollten möglichst effizient, elegant und beispielhaft oder einfach nur cool sein.
Benutzeravatar
roherter
Beiträge: 1407
Registriert: 10.04.2005 18:58
Kontaktdaten:

Beitrag von roherter »

Gibt es auch die Möglichkeit diese Proceduren dazu zu benutzen ganze Dateien zu verschlüsseln?
Also ich meine alle Dateien nicht nur Textfiles?
Purebasic 5.0 32bit und 64 bit

I'm back from hell
Benutzeravatar
HeX0R
Beiträge: 3040
Registriert: 10.09.2004 09:59
Computerausstattung: AMD Ryzen 7 5800X
96Gig Ram
NVIDIA GEFORCE RTX 3060TI/8Gig
Win11 64Bit
G19 Tastatur
2x 24" + 1x27" Monitore
Glorious O Wireless Maus
PB 3.x-PB 6.x
Oculus Quest 2 + 3
Kontaktdaten:

Beitrag von HeX0R »

Im Prinzip sollte nichts dagegen sprechen.
Benutzeravatar
roherter
Beiträge: 1407
Registriert: 10.04.2005 18:58
Kontaktdaten:

Beitrag von roherter »

Ok,dann muss ich mir das nochmal anschauen muss ich da irgendwie großartig was ändern ?
Purebasic 5.0 32bit und 64 bit

I'm back from hell
Benutzeravatar
HeX0R
Beiträge: 3040
Registriert: 10.09.2004 09:59
Computerausstattung: AMD Ryzen 7 5800X
96Gig Ram
NVIDIA GEFORCE RTX 3060TI/8Gig
Win11 64Bit
G19 Tastatur
2x 24" + 1x27" Monitore
Glorious O Wireless Maus
PB 3.x-PB 6.x
Oculus Quest 2 + 3
Kontaktdaten:

Beitrag von HeX0R »

Brauchst nix ändern, geht allerdings so wie es ist nur im Speicher.
Musst also die Quell-Datei in den Speicher laden und auch für die Verwurstete Datei einen genügend grossen MemoryBlock reservieren.
Benutzeravatar
roherter
Beiträge: 1407
Registriert: 10.04.2005 18:58
Kontaktdaten:

Beitrag von roherter »

Alles klar so habe ich mir das auch gedacht,danke dir! :wink:

Also irgendwas mache ich noch falsch @hexor kannst du den fehler erkennen?
PB 4.0(Codeausschnitt)

Code: Alles auswählen

 If OpenFile(0,File$)
          *mem=AllocateMemory(Lof(0))
          *mem2=AllocateMemory((Lof(0)/100)*150)
           
          passtest$="a142317"
          Size=Lof(0)
          ReadData(0,*mem,Lof(0))
          CloseFile(0)
            
        EndIf
        length=Blowfish_Crypt(*mem,Size,@passtest$,Len(passtest$),*mem2,MemorySize(*mem2))
        Debug lenth
        If OpenFile(1,"g:\new.crypt")
          WriteData(1,*mem2,length)
          CloseFile(1)
          Debug "written"
        EndIf
      EndIf 
Purebasic 5.0 32bit und 64 bit

I'm back from hell
Benutzeravatar
roherter
Beiträge: 1407
Registriert: 10.04.2005 18:58
Kontaktdaten:

Beitrag von roherter »

Kriegs net hin was mache ich falsch? :freak:
Purebasic 5.0 32bit und 64 bit

I'm back from hell
m0
Beiträge: 150
Registriert: 12.10.2004 13:55
Wohnort: Immenstadt
Kontaktdaten:

Beitrag von m0 »

Also ich habe jetzt auch mal ne ganze Weile rumgetestet, und ich grieg das mit der Dateien Verschlüsseln auch nicht hin, die Proceduren laufen zwar durch ohne weiteres, jedoch ist die wieder Eentschlüsselte Datei nicht dieselbe wie die verschlüsselte... hat das schon jemand hingekriegt?

Wäre toll wenn jemand n beispiel posten könnte
mfg
m0
Schaut euch doch http://www.momo-wagner.de mal an ;)

MfG
m0
Benutzeravatar
HeX0R
Beiträge: 3040
Registriert: 10.09.2004 09:59
Computerausstattung: AMD Ryzen 7 5800X
96Gig Ram
NVIDIA GEFORCE RTX 3060TI/8Gig
Win11 64Bit
G19 Tastatur
2x 24" + 1x27" Monitore
Glorious O Wireless Maus
PB 3.x-PB 6.x
Oculus Quest 2 + 3
Kontaktdaten:

Beitrag von HeX0R »

Bin wieder da!

Evtl. ist da noch irgendwo ein Bug versteckt, aber ich hab zur Zeit völlig andere Dinge im Kopp.

Vielleicht hat ja jemand anders die Muse sich mit dem Blowfish-Algo auseinanderzusetzen, ich müsste auch wieder quasi bei Null anfangen...
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Dann gratuliere ich mal "zu den anderen Dingen" :wink:
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
HeX0R
Beiträge: 3040
Registriert: 10.09.2004 09:59
Computerausstattung: AMD Ryzen 7 5800X
96Gig Ram
NVIDIA GEFORCE RTX 3060TI/8Gig
Win11 64Bit
G19 Tastatur
2x 24" + 1x27" Monitore
Glorious O Wireless Maus
PB 3.x-PB 6.x
Oculus Quest 2 + 3
Kontaktdaten:

Beitrag von HeX0R »

Danke :)

@roherter:
Dieses Beispiel geht bei mir:

Code: Alles auswählen

File$ = OpenFileRequester("File", "", "", 0)
If OpenFile(0,File$)
	*mem  = AllocateMemory(Lof(0)*16)
	*mem2 = *mem + Lof(0)*8

	passtest$="a142317"
	Size = Lof(0)
	ReadData(0,*mem,Lof(0))
  CloseFile(0)
           
EndIf
length = Blowfish_Crypt(*mem,Size,@passtest$,Len(passtest$),*mem2,Size*8,0)
Debug length
If CreateFile(1,File$ + ".pk")
	WriteData(1,*mem2,length)
  CloseFile(1)
  Debug "written"
EndIf

File2$ = GetPathPart(File$) + Left(GetFilePart(File$), Len(GetFilePart(File$)) - Len(GetExtensionPart(File$)) - 1) + "_2." + GetExtensionPart(File$)

If CreateFile(0, File2$)
	If ReadFile(1, File$ + ".pk")
		ReadData(1, *mem2, Lof(1))
		Debug Lof(1)
		length = Blowfish_DeCrypt(*mem2,Lof(1),@passtest$,Len(passtest$),*mem,Size*8,0)
		CloseFile(1)
		Debug length
		WriteData(0, *mem, length)
		CloseFile(0)
	EndIf
EndIf
Allerdings ist das Ausgabefile einen Tick (0-2Bytes) grösser :freak:
Antworten