Partial Image Encryption encrypts the huffman encoded high frequency coefficients in a jpg image file. The encryption is done in-place so the project can eventually be ported to a Windows kernel filter driver. Just encrypting the high level frequency coefficients serves to blur the image, but almost in an artistic way. The image contents are fully recognizable, but the details are pixelated or blurred. The general purpose of this program would be for securing images on the disk or in the cloud, available for searching but full resolution requiring a key to then access.

The high frequency coefficients are actually Huffman encoded. As such enough of them have to be spliced together in memory until a block is then available, encrypted, and then piece meal copied back in place.

Huffman encoding in jpg images uses control codes. The encryption can coincidentally produce a control code. Thus those are repeatedly encrypted until no control code, skipping preexisting control code runs.

Project Samples

Project Activity

See All Activity >

Categories

Graphic Design

License

GNU Library or Lesser General Public License version 3.0 (LGPLv3)

Follow Partial Image Encryption

Partial Image Encryption Web Site

Other Useful Business Software
Grafana: The open and composable observability platform Icon
Grafana: The open and composable observability platform

Faster answers, predictable costs, and no lock-in built by the team helping to make observability accessible to anyone.

Grafana is the open source analytics & monitoring solution for every database.
Learn More
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of Partial Image Encryption!

Additional Project Details

Operating Systems

Windows

Intended Audience

Developers, Security Professionals

User Interface

Command-line

Programming Language

C++

Related Categories

C++ Graphic Design Software

Registered

2018-06-24