UNMASQUE Hidden Query Extractor

Database Systems Lab
Indian Institute of Science

[About] [Download] [Publications] [Team] [Contact]

Welcome to the UNMASQUE software developed at the Database Systems Lab, Indian Institute of Science. UNMASQUE is an easy-to-use graphical tool for non-invasively and efficiently extracting SQL queries that are hidden in black-box executables. It is written entirely in Python 3, and has been successfully tested on the PostgreSQL and Microsoft SQL Server platforms.

The problem of unmasking SQL queries hidden within database applications has a variety of use-cases ranging from resurrecting legacy code to lightweight query rewriting. To address this problem, we have developed UNMASQUE, an extraction algorithm that is capable of identifying a substantive class of hidden SPJGHAOL queries. A special feature of our design is that the extraction is non-invasive with respect to the application code, examining only the results obtained from its executions on databases derived with a combination of data mutation and data generation techniques. Further, potent optimizations, such as database size reduction to a few rows, are incorporated to minimize the extraction overheads. A detailed evaluation over benchmark databases demonstrates that UNMASQUE is capable of correctly and efficiently extracting complex hidden queries.

Opaque Query Extraction: Technical Report 2021-02 pdf

Hidden Query Extraction: Technical Report 2020-01 pdf

Concepts Video (SIGMOD 2021)

Demo Video (VLDB 2020)

Shedding Light on Opaque Application Queries     (5 minute Video)     (20 minute Video)
Kapil Khurana, Jayant Haritsa
Proc. of ACM SIGMOD Intl. Conf. on Management of Data, Xi'an, China, June 2021

UNMASQUE: A Hidden SQL Query Extractor (demo)     (Demo Video)
Kapil Khurana, Jayant Haritsa
Proc. of 46th Intl. Conf. on Very Large Data Bases (VLDB), Tokyo, Japan, September 2020
published as
PVLDB Journal, 13(12), August 2020, pgs. 2809-2812

Email: haritsa [AT] iisc [dot] ac [dot] in

Primary Contributors (in chronological order of participation)