https://github.com/saransh-cpp/chaotic-encryption
This repository contains the code for encrypting an image using various techniques and PRNGs.
https://github.com/saransh-cpp/chaotic-encryption
decryption-algorithm encryption encryption-algorithms encryption-decryption image-encryption image-encryption-algorithm image-manipulation logistic lorenz lorenz-attractor lorenz-equation python python3
Last synced: 11 days ago
JSON representation
This repository contains the code for encrypting an image using various techniques and PRNGs.
- Host: GitHub
- URL: https://github.com/saransh-cpp/chaotic-encryption
- Owner: Saransh-cpp
- Created: 2021-02-27T15:22:02.000Z (about 4 years ago)
- Default Branch: master
- Last Pushed: 2021-03-30T08:27:03.000Z (about 4 years ago)
- Last Synced: 2025-04-14T16:13:27.276Z (11 days ago)
- Topics: decryption-algorithm, encryption, encryption-algorithms, encryption-decryption, image-encryption, image-encryption-algorithm, image-manipulation, logistic, lorenz, lorenz-attractor, lorenz-equation, python, python3
- Language: Python
- Homepage:
- Size: 29 MB
- Stars: 24
- Watchers: 3
- Forks: 3
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Chaotic Encryption
This repository contains the code for encrypting an image using various techniques written completely in python.## Chaotic systems used
### 1. Logistic map equation
### 2. Lorenz system of differential equations## Encryption methods used
### 1. Only substitution (Confusion method)
Here, the code substitutes every pixel of the image with another pixel (which is obtained be XORing the initial pixel's value with a pseudo-random number (different for every pixel) generated using one of the above mentioned PRNG) thus making the encryption very secure.
### 2. Shuffling and then Substitution (Diffusion then Confusion method)
Here the code first shuffles the pixels of an image using random numbers (one for every pixel) generated using one of the PRNG and then it performs the above described substitution method with another set of keys. Thus this encryption approach is very secure.## Connecting chaos with fractals
The code also aims to connect chaos with fractals which is inspired from [here](https://github.com/jonnyhyman/Chaos)## Final reports
### 1. Report for encryption using Lorenz system of differential equations
The report can be found [here](https://github.com/Saransh-cpp/Chaotic-Encryption/blob/master/Reports/ODE%20Report.pdf).
### 2. Report for encryption using logistic map and then connecting chaos with fractals
The report can be found [here](https://github.com/Saransh-cpp/Chaotic-Encryption/blob/master/Reports/Calc%20Project.pdf).