Just-My-2-Cents.de Reloaded

Libraries

Für die Programmierer unter Ihnen finden sich hier einige Libraries, um Ihre Programme zu erweitern. Generell gilt: Private Anwender dürfen die Libraries kostenfrei nutzen, bei Unternehmen wird eine kleine Lizensgebühr fällig. Nehmen Sie bitte hierzu mit mir Kontakt auf. Die Downloads enthalten den Source, die Binaries und eine Dokumentation. Außerdem liegt überall eine Beispiel-Anwendung bei.

[Java] Simple Plug-In System

Diese Java Library ermöglicht vorallem Anfängern einfach und schnell die eigenen Anwendungen über Plug-Ins erweiterbar zu machen. Der Klasse wird einfach die Zielklasse/das Zielinterface und ein oder mehrere Verzeichnis und/oder JAR-Dateien, in welchen sich Klassen befinden, die von dieser Klasse erben, oder das Interface implementieren, übergeben. Anschließend kann man sich ganz bequem eine ArrayList mit Objekten aller gefundenen Klassen zurück geben lassen. Die Konstruktoren können automatisch generiert, aber auch manuel hinzugefügt werden. Es ist außerdem möglich mehrere Klassen/Packages expliziet nicht zu berücksichtigen.

Download

[Java] Hide in Image

Um Daten sicher zu übertragen ist es sinnvoll sie zu verschlüsseln. Dadurch ist es für potentielle Angreifer zumindest nicht mehr so leicht an die geheime Botschaft zu kommen. Besser ist es aber, wenn ein Angreifer gar nicht weiß, dass es sich hierbei um eine Nachricht handelt, die nicht für die Öffentlichkeit gedacht ist.

Hier setzt Hide in Image an! Hide in Image ist eine Java-Library, mit der es möglich ist Wörter und binäre Daten in einem Bild zu verstecken. Die Bilder können gespeichert und später (an einem anderen Ort) wieder von der Nachricht extrahiert werden. Dabei stellt diese Java-Library die Schnittstelle dar, um ein BufferedImage entsprechend zu manipulieren. Sie haben richtig gehört! Die Daten werden nicht in Kommentaren, EXIF-Feldern oder sonstwo abgespeichert, sondern direkt in ein Bild versteckt eingebettet. Dadurch ist es selbstverständlich notwendig das Bild verlustfrei abzuspeichern (PNG oder BMP bietet sich hierfür an).

Hide in Image manipuliert das jeweils letzte Bit der Farbkanäle (Rot, Grün, Blau und ggf. Alpha) und versteckt dort die Daten. Trotzdem ist es völlig unmöglich für das menschliche Auge zu erkennen, dass in diesem Bild weitere Informationen versteckt sind, weil ...

  • ... sich jeder Pixel (und somit auch das Bild) maximal um 0,0039 Prozent vom Original unterscheidet
  • ... die durchschnittliche Unterscheidung zum Original bei gerade mal bei 0,00196 Prozent liegt
  • ... wenn das Bild als BMP gespeichert wird, sich die Größe im Vergleich zum Original nicht um ein Bit verändert
  • ... wenn das Bild als PNG gespeichert wird, sich der Speicherverbrauch im Vergleich zum Original nur geringfügig verändert (das Bild kann unter Umständen sogar kleiner werden)

Natürlich ist es auch möglich bei größeren Datenmengen das Ganze über mehrere Bilder zu verteilen.

Download

[Java] Single Instance Controller

Mit dieser kleinen Erweiterung für Ihr Java-Programm können Sie sicherstellen, dass ihre Anwendung nur einmal ausgeführt wurde. Da der Single Instance Controller nicht nur über lock-Dateien arbeitet, sondern eine zusätzliche Sicherheit durch die Verwendung von Sockets bietet, ist es möglich mit der bereits gestarteten Anwendung zu kommunizieren - um z. B. Parameter zu übergeben.

Download