Skip to content

Commit

Permalink
nothing
Browse files Browse the repository at this point in the history
  • Loading branch information
RinCynar committed Jun 26, 2024
1 parent 113e369 commit 3b94b83
Show file tree
Hide file tree
Showing 2 changed files with 148 additions and 72 deletions.
218 changes: 147 additions & 71 deletions _posts/2024-06-23-RCS.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,114 +5,190 @@ author: RinCynar
categories: [IT,Encryption,Text]
tags: [IT,free,encryption,text]
---
# rcs - RC4-based text encryption tool
rcs is a powerful text encryption tool based on the RC4 encryption algorithm, with a simple design and easy to use. Whether you need to protect sensitive information or are interested in encryption technology, rcs is your ideal choice.
# RCS Tool Documentation

## Latest version: 1.67, [Download link](/assets/file/rcs.py)

## Overview

### The RCS tool is a text encryption utility based on the RC4 encryption algorithm. It allows users to encrypt and decrypt text using custom keys, manage encryption keys, and maintain a history of encrypted and decrypted messages. The tool supports various commands for managing keys, checking for updates, and performing brute-force decryption attempts.

### Features

#### Multi-key management:
##### Supports adding, deleting, resetting and displaying encryption keys.
##### Default key configuration to ensure convenience for first-time use.
#### Encrypt and Decrypt Text: Securely encrypt and decrypt text using the RC4 algorithm with custom keys.
#### Key Management: Easily add, delete, and display encryption keys.
#### History Management: Maintain and display a history of encrypted and decrypted messages.
#### Update Notifications: Check for updates and notify users of new versions.
#### Configuration Reset: Reset the tool to its default configuration.
#### Brute-force Decryption: Perform brute-force decryption attempts with customizable key lengths.
#### User-Friendly Commands: Intuitive commands for a smooth user experience.

### Requirements
#### Python 3.x
#### arc4 module
#### requests module

## Installation

### Ensure that Python and the required modules are installed:
#### pip install arc4 requests

## Usage
### To start the interactive mode, run the script:
#### python rcs.py

### Commands

#### rcs-help: Display usage instructions.
#### rcs-adk <new-key>: Add a new encryption key.
#### rcs-cle: Clear encryption/decryption history.
#### rcs-cuk: Display the currently saved encryption keys.
#### rcs-dek -<key_number>: Delete a specified encryption key.
#### rcs-exi: Exit the tool.
#### rcs-hst: Display encryption/decryption history.
#### rcs-pod <text>: Perform a brute-force decryption on the specified text.
#### rcs-res: Reset to default configuration.
#### rcs-udt: Check for updates.

## Functions
### print_message(message)
#### Prints a message to the console with newline characters before and after the message.

### get_input(prompt, default=None)
#### Prompts the user for input. If no input is provided, returns the default value.

### load_keys()
#### Loads encryption keys from the key file.

### save_keys()
#### Saves encryption keys to the key file.

### reset()
#### Resets the tool to its default configuration by deleting the key and history files and restoring the default key.

### add_key(new_key)
#### Adds a new encryption key if it does not already exist.

#### Efficient encryption and decryption:
##### Encrypt and decrypt text based on the RC4 algorithm.
##### Supports multiple encoding formats to ensure data integrity and security.
### delete_key(key_number)
#### Deletes a specified encryption key by its index number, unless it is the default key.

#### History management:
##### Automatically save the history of each encryption/decryption operation.
##### Supports displaying and clearing history for easy management and reference.
### utf16_to_bytes(s)
#### Converts a UTF-16 string to bytes.

#### Check for updates:
##### One-click check for the latest version information to ensure you are using the latest and most secure version.
### rc4_encrypt(key, plaintext)
#### Encrypts plaintext using the RC4 algorithm and the provided key.

#### Interactive command line interface:
##### Simple and intuitive user interface, supports multiple command operations, convenient and fast.
### rc4_decrypt(key, ciphertext)
#### Decrypts ciphertext using the RC4 algorithm and the provided key.

### Installation and running
### bytes_to_hex(b)
#### Converts bytes to a hexadecimal string.

#### Prerequisites
Make sure your system has the following software installed:
### hex_to_bytes(h)
#### Converts a hexadecimal string to bytes.

Python 3.x, requests library, arc4 library
### choose_key_for_encryption()
#### Prompts the user to choose a key for encryption from the available keys.

You can use the following commands to install the required libraries:
### choose_key_for_decryption()
#### Displays the available keys and returns them for decryption attempts.

$ pip install requests
### save_history(record)
#### Saves a record to the history file.

$ pip install arc4
### display_history()
#### Displays the history of encrypted and decrypted messages.

#### Download and run
##### Download the rcs tool software:
[Download link](/assets/file/rcs.py)
### clear_history()
#### Clears the history of encrypted and decrypted messages.

##### Grant executable permissions to the script:
$ chmod + x rcs.py
### check_for_updates()
#### Checks for updates to the tool by querying the update URL.

##### Run the following command to start the rcs tool:
$ ./rcs.py
### handle_command(user_input)
#### Handles user input commands and performs the appropriate actions.

#### Usage
After entering the interactive mode, you can use the following command:
### interactive_mode()
#### Starts the interactive mode for the tool, allowing users to enter commands and encrypt/decrypt text.

##### Encrypt text:
###### Enter the text to be encrypted and press Enter, rcs will automatically encrypt with the default key.
### print_help()
#### Prints the usage instructions for the tool.

###### You can also select a specific key for encryption.
### display_keys()
#### Displays the currently saved encryption keys.

##### Decrypt text:
###### Enter - <ciphertext> and press Enter, rcs will try all saved keys for decryption.
###### Enter - <ciphertext> -<key number> and press Enter, rcs will use the specified key for decryption.
### decrypt_text(user_input)
#### Decrypts the provided text using the specified key or all available keys.

##### Manage keys:
###### rcs-adk <new key>: Add a new key.
###### rcs-dek -<key number>: Delete the specified key.
###### rcs-cuk: Display the currently saved keys.
###### rcs-res: Reset to the default key configuration.
### encrypt_text(plaintext)
#### Encrypts the provided plaintext using the chosen key and saves the result to the history.

##### History:
###### rcs-hst: Display history.
###### rcs-cle: Clear history.
### bruteforce_decrypt(ciphertext)
#### Performs a brute-force decryption attempt on the provided ciphertext using keys of specified lengths.

##### Check for updates:
###### rcs-udt`: Check for new versions and provide download links for the latest versions.
## Example Usage

##### Exit:
###### rcs-exi: Exit interactive mode.
### Encrypting Text
#### Enter interactive mode:
##### python rcs.py

##### Help information:
###### rcs-help: Display detailed usage help information.
#### Provide the text to encrypt:
##### # Hello, World!

### Example
#### Start rcs
$ python rcs.py
#### Choose a key for encryption or use the default key:
##### # Choose a key number (default is 0): 0

#### The encrypted text will be displayed and saved to the history.

#### Encrypted text
$ # Hello, World!
### Decrypting Text
#### Enter interactive mode:
##### python rcs.py

$ Encrypted text: 6A97B9D1A7C6F3E8D...
#### Provide the encrypted text in the format - <encrypted_text>:
##### # - 5D41402ABC4B2A76B9719D911017C592

#### The tool will attempt to decrypt the text using all available keys and display the results.

#### Decrypted text
$ # - 6A97B9D1A7C6F3E8D...
### Adding a New Key
#### Enter interactive mode:
##### python rcs.py

#### Add a new key:
##### # rcs-adk my-new-key

### Displaying History
#### Enter interactive mode:
##### python rcs.py

#### Display the history of encrypted and decrypted messages:
##### # rcs-hst

## Feature Highlights

$ Decrypted text: Hello, World!
### Secure Text Encryption and Decryption
#### The RCS tool uses the RC4 encryption algorithm to securely encrypt and decrypt text. Users can choose from multiple encryption keys to enhance security.

#### Add new key
$ # rcs-adk MyNewKey
### Easy Key Management
#### The tool allows users to easily manage their encryption keys. Keys can be added, deleted, and displayed with simple commands.

$ Key added: MyNewKey
### History Tracking
#### All encrypted and decrypted messages are saved in a history file. Users can view and clear the history as needed, ensuring they can track their encryption activities.

#### Check for updates
$ # rcs-udt
### Update Notifications
#### RCS checks for updates and notifies users when a new version is available. This ensures that users always have access to the latest features and security improvements.

$ This version is x.xx
### Configuration Reset
#### Users can reset the tool to its default configuration, which is useful if they need to start fresh or encounter issues with their current setup.

$ Connecting to rcva.san.tc
### Brute-force Decryption
#### The tool includes a brute-force decryption feature that allows users to attempt decryption with keys of various lengths. This can be useful for recovering encrypted text when the key is unknown.

$ Latest version: x.xx
### User-Friendly Interface
#### The RCS tool provides a user-friendly interface with intuitive commands, making it easy for users to encrypt and decrypt text, manage keys, and view history without needing advanced technical knowledge.

### Support and Feedback
If you have any questions or need help, please contact the development team: [email protected]
## Support and feedback
#### If you have any questions or need help, please contact the development team: [email protected]
#### Thank you for using the rcs tool software!

Thank you for using rcs!
## License
#### RCS is licensed under the MIT License. See the [LICENSE](https://github.com/RinCynar/rcs/blob/main/LICENSE) file for more information.
2 changes: 1 addition & 1 deletion assets/rcs.html
Original file line number Diff line number Diff line change
@@ -1 +1 @@
1.59
1.67

0 comments on commit 3b94b83

Please sign in to comment.