Git Product home page Git Product logo

xorj's Introduction

XorJ

Java multi-file binary XOR utility with a Swing UI.

Bitwise XOR is a useful operation that can be used to, reversibly, combine two inputs into a third that represents their differences in binary. Xor is commutative, associative, and given one of the inputs and the output, you can use the same operation to find the other input. Considering this, XOR is extremely useful in steganography and cryptography.

XorJ allows you to xor each corresponding byte from portions of multiple files, or to xor files against a constant value, to produce a new file with the properties discussed above. If you use only a single file, you can also use the program to extract a portion of a file.

Downloading the Program pre-built

You can find released JARs which you can run on the Releases tab of this project.

If you want something a bit more shiny, you can check out our development builds available through Jenkins CI.

Running the Program

To run the program, you first need to have Java installed. You can do this through your system's package manager or by using the official Java download page.

On Windows, if you have Java SE/JRE installed, you can usually just double-click the JAR file to run it as a program.

On linux and Windows, if you have OpenJDK or your relevant java package installed, you can run javaw -jar path-to-the-jarfile-here in order to run the program.

Note: Version 1.4+ requires Java 7 or higher, version 1.5+ requires Java 8.

Building the Project yourself

We've recently moved to using Maven! If you used build.xml or a Netbeans Project before, you may need to import the project again as a maven project / from existing POM.

This document may help you import the project in your IDE.

xorj's People

Contributors

crashdemons avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar

xorj's Issues

Certain platforms may not display the open-file window (by report)

A report was made of versions 1.5.1 not displaying a dialog when clicking "+ File" and 1.4 doing the same after initial success.

It should be noted that 1.4 was compiled against java 7, 1.5+ is java 8 and it happens on both.

The window was not locked / did not lose focus, which implies the window was not open off-screen, so an exception may have occured during FileEntry select.

Overread by decoder during extraction pass

Too many input bytes can be read during an extraction pass at the end of the selection:
As long as the end point lies somewhere in the current CHUNK (512) bytes being read, up to CHUNK may still be read and possibly written.

This does not corrupt decoded output but it outputs extra bytes in error.

Visual indication for working/busy program

Some sort of progress bar or throbber is needed while performing an action (like the Extraction pass)

Disabling UI controls temporarily as an added visual indication might also be worthwhile

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.