Skip to content
/ xoreen Public

Xoreen. Encrypt and Decrypt Every File Type Using Xor Gate.

License

Notifications You must be signed in to change notification settings

ccan23/xoreen

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 

Repository files navigation

xoreen

Read before using the program.
  • Xoreen's purpose and what it does
  • How it works
  • Xor Gate
  • Base64 Algorithm and Compatible Documents
  • Warnings
  • Installation
  • Contact Information, Version and License
  • Detailed Information About the Xor Gate

Xoreen's Purpose and What it Does

The purpose of this program is to protect the desired documents in an unbreakable way.

How it Works

The desired document is taken to a Xor Gate with a user determined key. The Xor Gate encrypts this document in a recoverable way. To recover it, the document must be taken to the Xor Gate with the same key that was used to encrypt the document. No other key can recover the original document.

Xor Gate

Xoreen can interact with any document that the operating system can read or write.

Xor Gate Confusion Matrix : (a and !b) or (!a and b)
A B A XOR B
0 0 0
0 1 1
1 0 1
1 1 0

The document's codepoints and the key's codepoints are passed through the Xor Gate.

Simplified Graphical Representation:
Defined Keys
Character Binary
c 01100011
e 01100101
n 01101110
o 01101111
r 01110010
s 01110011
t 01110100
x 01111000
Xor Encryption with a selected document and a key
String Status String Name String Binary
Original xoreen 01111000 01101111 01110010 01100101 01100101 01101110
Key secret 01110011 01100101 01100011 01110010 01100101 01110100
Encrypted undefined 00001011 00001010 00010001 00010111 00000000 00011010
Decrypting the selected document with the correct key
String Status String Name String Binary
Encrypted undefined 00001011 00001010 00010001 00010111 00000000 00011010
Key secret 01110011 01100101 01100011 01110010 01100101 01110100
Original xoreen 01111000 01101111 01110010 01100101 01100101 01101110

Base64 Algorithm and Compatible Documents

Base64 can encrypt binary data but UTF8 and UTF16 can only encrypt Unicode texts, for this reason, in some cases, Base64 algorithm can be used.

Since Base64 algorithm can transform almost any file format to UTF-8 characters, the transformed characters can pass through the Xor Gate .

Any file format that can be processed with the Base64 algorithm can pass through the Xor Gate.

.pdf, .mp3, .doc, .jpg, .png, vb...

Any compressed file can pass through the Xor Gate.

.zip .rar, .tar.xz vb...

Processing Base64 with the Xor Gate at the same time:

Encoding Process(Encryption)

document --> base64 encode --> xor gate

Decoding Process(Decryption)

document--> xor gate --> base64 decode

Warnings

  • Don't interrupt the program. A file that was broken during the encryption process may not be recovered.
  • Do not lose or forget the key. An encrypted file cannot be recovered without a key.
  • The Xor Gate is safest when the file's byte size is the same length as the key.
  • To keep your key safe a random key can be generated. .--keygen
  • If a random key is not generated, it is suggested that log files be deleted from the terminal.history -c history -w
  • Based on the processing speed, the process can be either quick or slow.

Installation

  • The following steps are valid for the Linux Distributions.
  • Xoreen only requires a Ruby compiler. If ruby is not installed:

sudo apt install ruby

  • If it is installed, give any permission you like to Xoreen.

sudo chmod 777 /root/xoreen/xoreen

  • put xoreen in the /usr/bin/ folder.

sudo cp /xoreen/xoreen /usr/bin/xoreen

  • xoreen does not use ruby gem but requires getoptlong.rb and base64.rb documents.

  • If ruby is up-to-date, then the files must be present. If it is not up-to-date or if the files are deleted, they can be found in the /xoreen/require/ folder.

  • If encountered with the Load Error:

  1. getoptlong.rb may be deleted.

sudo cp /xoreen/require/getoptlong.rb /usr/lib/ruby/(user version)/getoptlong.rb

  1. base64.rb may be deleted.

sudo cp /xoreen/require/base64.rb /usr/lib/ruby/(user version)/base64.rb

Contact Information, Version ve License

NOTE: If you've found any exploits or errors or if you have any suggestions, please contact me.

Detailed Information about the Xor Gate