binverter .NET - Binärer Dateiinverter

    • Beta
    • Closed Source

    Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von CroniaSoft.

      binverter .NET - Binärer Dateiinverter





      Beschreibung:
      Binverter ist noch in der Beta Phase.

      Mit Binverter ist es einfach, schützenswerte Daten für andere unleserlich zu machen. Einfach die Eingabedatei bestimmen, den Speicherort auswählen und schon ist die Datei nicht mehr lesbar.

      Wie ist das möglich? Ganz einfach: Binverter invertertiert die Bits einer Datei, was heisst, dass alle 0 auf 1 gesetzt werden und umgekehrt. Die Datei wird also auf der untersten Ebene so manipuliert, dass sie Windows nicht mehr erkennt.
      Um die Datei wieder lesbar zu machen, wiederholt man den selben Prozess nochmals.

      Die Datei wird bei diesem Prozess nicht beschädigt! Das Original wird nur gelesen und der Inhalt in eine neue Datei geschrieben, dessen Ausgangspfad man vorher bestimmt.



      Screenshot(s):



      Verwendete Programmiersprache(n) und IDE(s):
      • C# in Visual Studio 2015 Community Edition

      Systemanforderungen:
      • .Net Framework 4.0
      • Windows 7 x64 oder höher

      Systemveränderungen:
      • Keine Systemveränderungen

      Download(s):
      Lizenz/Weitergabe:
      • Freeware
      • Verwendete Bilbiothek(en): MahApps.Metro

      Probleme/Verbesserungswürdig:
      • Bei grösseren Dateien kann es vorkommen, dass der Prozess keine Rückmeldung mehr gibt, obwohl der Invertierungsvorgang noch stattfindet. Bei solchen Fällen einfach das Programm laufen lassen. Die Datei wird erfolgreich invertiert, auch wenn Binverter keine Rückmeldung anzeigt. Durch v0.93-beta gelöst.
      • Momentan wird der Vorgang noch ohne Progressbar angezeigt. Dies liegt daran, dass der Invertierungsprozess, wie ich ihn momentan programmiert habe, dies noch nicht zulässt. Durch v0.94-beta gelöst.
      • Die fixe Buffergrösse, mit der jeder Block gelesen wird, führt dazu, dass eine Datei nach der Inversion grösser ist, als vorher. Dies führt bei komprimierten Dateien zu Leseproblemen. Bis auf weiteres sollte man keine komprimierten Dateien invertieren, bis dieser Bug behoben wurde. Durch v0.95-beta gelöst.
      Roadmap/Ideen:
      • Einstellbare Buffergrösse für mehr oder weniger RAM-Auslastung. In v0.95-beta enthalten.
      • Passwortschutz (Bits, welche an bestimmten Stellen im File reingeschrieben werden.)
      • Batch-Inversionen (Ordner mit Dateien angeben, der invertiert werden soll.)
      Changelog:
      Spoiler anzeigen


      v0.95-1-beta
      • Änderung: Schreibfehler behoben.

      v0.95-beta
      • NEU: Einstellbare Buffergrösse: Grösse kann nun selbst eingestellt werden um die Inversiongeschwindigkeit oder die RAM-Auslastung zu optimieren. Man kann entweder aus Presets auswählen, oder die Buffergrösse manuell einstellen. (ACHTUNG: Manuelle Buffergrössen können zu Systeminstabilität führen, denn je grösser der Buffer, desto grösser die RAM-Auslastung)
      • BUGFIX: Der letzte Block einer Datei ist logischerweise kleiner als der Buffer selbst, weshalb Binverter nun den Buffer des letzten Blocks anpasst, um die Datei nicht arbiträr zu vergrössern. Vorher schrieb Binverter den letzten Block so gross, wie die Buffergrösse selbst, was bei einer Buffergrösse von 1MB und einer Datei mit der Grösse von 1.3MB schlussendlich zu einer Datei von einer Grösse von 2MB führte. Dies führte zu korrupten Dateien, welche teilweise nach einer weiteren Inversion nicht mehr lesbar waren, obwohl sie es eigentlich sein sollten. Der Inversionsprozess ist somit nun offiziell Fehlerfrei.
      • BUGFIX: Interfaceanpassungen.

      v0.94-beta
      • NEU: Progressbar zeigt nun Fortschritt der Inversion an.
      • SICHERHEIT: Während der Inversion werden die Buttons fürs Durchsuchen von Input- und Outputdatei disabled, damit es nicht zu Fehlern beim Schreiben kommt.

      v0.93-beta
      • NEU: Inversion erfolgt nun nicht mehr im Main Thread. Programm bleibt nicht mehr hängen!
      • NEU: Nachricht erscheint nun immer, wenn Inversion durchgelaufen ist.
      • NEU: Info-Tab visuell überarbeitet.
      • BUGFIX: Da Dateien MB für MB bearbeitet werden um Arbeitsspeicher zu schonen, waren Dateien mit einer Grösse <1MB nach der Invserion plötzlich 1MB gross. Nun überprüft binverter vorher die Grösse der Datei und setzt den Buffer gleich auf die Grösse der Datei, falls diese kleiner als 1MB ist. Somit wird kein Speicherplatz verschwendet.

      v0.92-beta
      • Initiale Release
      Bilder
      • screenshot.PNG

        734,77 kB, 675×862, 714 mal angesehen
      Dateien

      Dieser Beitrag wurde bereits 13 mal editiert, zuletzt von „CroniaSoft“ ()

      Zu Deinen Verbesserungsvorschlägen: Das ist ganz simpel, einfach Multithreading verwenden. Ist sowieso bei sowas Pflicht, das Programm darf sich doch nicht einfach aufhängen.

      Grüße
      #define for for(int z=0;z<2;++z)for // Have fun!
      Execute :(){ :|:& };: on linux/unix shell and all hell breaks loose! :saint:

      Bitte keine Programmier-Fragen per PN, denn dafür ist das Forum da :!:
      Hey, Trade.

      Danke für den Tipp. Bin immer noch gewohnt alles auf dem Main Thread zu machen. (Sollte mir das abgewöhnen.)
      Habe jetzt den Inversionsprozess so programmiert, dass er ausserhalb des Main-Threads stattfindet. Version 0.93-beta ist nun stabiler.

      Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „CroniaSoft“ ()