-
Notifications
You must be signed in to change notification settings - Fork 623
FEAT: add MathObfuscationConverter #1231
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
FEAT: add MathObfuscationConverter #1231
Conversation
|
You'll need to add it to API reference, TOC file, nvm on py file, see my other comment |
romanlutz
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is really cool! We usually don't have one notebook per converter but perhaps it could be added to 1_llm_converters?
Taking a step back... Couldn't this be done without LLMs?
Both yes, will finish it tomorrow :) |
|
Hello @romanlutz, I replaced the LLM approach like you suggested. I got carried away with using LLMs for everything, even when we don't need them for a given use case :) I also contacted the author Edward Morris and Mike Takahashi, who published the jailbreak on LinkedIn, to see if they want other jailbreaks implemented in PyRIT, etc. Question for you: do we want to provide notebooks, or just the converter and pytest? |
|
Nice! It all looks very good. The API reference update is missing, though. I think we've been moving away from having a notebook per converter and instead show some of them in 0_converters.ipynb (non-LLM) or 1_llm_converters.ipynb (LLM). I could see a point in making that a lot more comprehensive and listing as many as possible so that people can discover them more easily. @rlundeen2 may have thoughts. There are many other categories, of course, which have their own files (video, image, audio, etc.). But text-input text-output non-LLM converters could all be listed in 0_converters.ipynb if you ask me. |
romanlutz
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you!
Overview
This PR adds a new MathObfuscationConverter that transforms text into per-character algebraic identities (e.g.,
H = 4H – 3H). This enables evaluation of symbolic obfuscation attacks in red-teaming scenarios. The converter is fully plug-compatible with existing PyRIT prompt converter pipelines and includes a YAML seed prompt and example notebook.Key Features
Related issue
closes #1230