Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Option to obfuscate mosaics to avoid retrieving redacted text from mosaics #3289

Open
AlexFolland opened this issue Aug 3, 2023 · 11 comments · May be fixed by #3368
Open

Option to obfuscate mosaics to avoid retrieving redacted text from mosaics #3289

AlexFolland opened this issue Aug 3, 2023 · 11 comments · May be fixed by #3368
Assignees
Labels
Enhancement Feature requests and code enhancements Hacktoberfest

Comments

@AlexFolland
Copy link

AlexFolland commented Aug 3, 2023

Feature Description

Considering that Unredacter can currently retrieve redacted text from mosaics, I propose a feature which obfuscates mosaics to allow using the mosaic tool without Unredacter being able to retrieve it.

How to obfuscate the mosaic is an implementation detail, but I have a couple of suggestions for what to do:

  • Change the colors of the mosaic pixels to a random nearby color for each color channel within a percentage range, like 20% of the total range of colors.
    • For example, if one of the mosaic pixels is RGB (144, 144, 144), it could be randomly changed to RGB (153, 134, 146).
      • Applying this randomization to each large mosaic pixel would throw off Unredacter's guessing.
  • Split the mosaic into sections and randomly mirror, flip, and shuffle the sections.
@AlexFolland AlexFolland added the Enhancement Feature requests and code enhancements label Aug 3, 2023
@kurayami07734
Copy link

I would like to work on this

Also wouldn't it be better to black out the redacted portions?

@AlexFolland
Copy link
Author

AlexFolland commented Oct 5, 2023

I would like to work on this

Thank you! I'm excited.

Also wouldn't it be better to black out the redacted portions?

It wouldn't look as close to the original image as an obfuscated mosaic. Overwriting the text with a solid color would make the screenshot look less cool or even make its context more difficult to understand than using an obfuscated mosaic. People are used to the look of mosaic redaction.

Also, new users who don't know about Unredacter and similar tools don't know that they shouldn't use mosaic redacting right now if they want to hide their text.

@mmahmoudian
Copy link
Member

I agree, blacking out is already possible with the rectangle tool. This proposal is to shuffle the pixels so that they are not "depixelified" (I don't think that is a real word but it is fun 😊)

Anyways, @kurayami07734 shall I assign it to you?

@AlexFolland
Copy link
Author

This proposal is to shuffle the pixels so that they are not "depixelified" (I don't think that is a real word but it is fun 😊)

That's part of my suggestion. The other part is to randomize the colors a bit, and I think that would be valuable as well, and easier to implement.

That being said, how to implement the obfuscation is not for me to say. My proposal is just that there is mosaic obfuscation available.

@mmahmoudian
Copy link
Member

@AlexFolland
Either approach would help, but I guess shuffling would have a greater impact. I'm no security researcher, so this is my gut feeling 🤓

@kurayami07734 what do you think? What is your design choice?

@kurayami07734
Copy link

I try will both and see which is better

@kurayami07734
Copy link

I agree, blacking out is already possible with the rectangle tool. This proposal is to shuffle the pixels so that they are not "depixelified" (I don't think that is a real word but it is fun 😊)

Anyways, @kurayami07734 shall I assign it to you?

Yeah sure

@AlexFolland
Copy link
Author

I try will both and see which is better

Why choose one or the other instead of both? I was thinking they would work together, and if you're implementing both, I see no reason to turn one off.

@kurayami07734
Copy link

I'm new to qt, I require some assistance

How would I, manipulate the selected section?

@mmahmoudian
Copy link
Member

mmahmoudian commented Oct 6, 2023

@kurayami07734 I'm not a Qt dev, perhaps seasoned devs (tagged below) can point you to the right direction.

@veracioux @panpuchkov @Martin-Eckleben

@Martin-Eckleben
Copy link
Collaborator

Hi everyone 👋

@kurayami07734 Sorry but out of the box I have no good knowledge about it either.
I´d have to research myself.
My best guess is there surely is some kind of Image Buffer / Data Array that you can manipulate.
Find the code which does the mosaic / blur / pixelation first and play around with it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Enhancement Feature requests and code enhancements Hacktoberfest
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants