Code Monkey home page Code Monkey logo

repair_jpeg's Introduction

Golang

https://golang.org/dl/

WARNING

Before using this tool, please save your pictures first. I don't want to be held responsible for any accident...

Recover JPEG

When you have a JPEG pictures that is corrupted because the begining of the file is lost (corrupted, encrypted...), this tool can help!

It works by extracting the valid data (from 0xFFDA Start Of Scan) from the corrupted file and append it to the valid headers (initial data) of another valid file (model).

You'll have to provide models pictures files taken with the same camera with different resolutions, orientations and quality settings.

How to use

Create a folder OK asside the executable and fill it with the model files. Name them carefully because the model name is appended to the recovered picture (ex.*.jpg).

Then, just drag the corrupted file on the executable. It will try to reconstruct jpeg files with all the models provided. There will be many invalid files asside the corrupted picture, but hopefully there will be one valid file.

How it works

(I'm absolutly not a specialist, so excuse me if some information is wrong or inaccurate)

The essential part of a JPEG picture is what comes after the 0xFFDA (Start Of Scan) marker. Fortunatly this is the last (and biggest part) or a file, so when the begining of a file is corrupted, the SOS is always here!

What does this tool is extract the SOS data of a corrupted picture, append it the the other parts of a valid file, and tries to parse the result as a new JPEG file.

Why I did this tool

I'm a victim of a ransomware attack! All my personal pics were gone!

But when I saw that only the first 150kb of each file is encrypted, I was sure there will be a mean to recover my pictures, and indeed there was!

This is why, when no SOS marker is found in the encrypted file, this tool extracts all but the first 150kb and tries to rebuild a valid SOS marker block. In this case, you will be prompted to enter a value for 'padding'; this will be amount of 0x00 bytes prepended to the recovered data.

repair_jpeg's People

Contributors

4dvn avatar matwachich avatar

Stargazers

 avatar

Watchers

 avatar

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.