We have implemented Mystique in about 12K lines of Java code, and implemented or configured 10 types of AMTs. Mystique and AMTs are deployed as two separate services for public after the paper review.
Service of Mystique: For the consideration of security, we will release some certain functionalities of Mystique with restrictions. The authorized users can select certain features from our feature model, Mystique can generate a valid app in about 20 secs. The process of generation proceeds as follows:
Step 1: Users select features for sources
Step 2: User select features for sinks
Step 3: User select features for triggers. Since there are some sources depending on certain triggers, triggered will be automatically added.
Step 4: User select features for permission. Since other features may depend some permission features, permissions will be automatically added.
Step 5: Mystique will return users a compiled and signed app in around 20 secs.
Please watch the video below of a demo for Mystique.
Service of AMTs: We deploy a service to run 10 types of state-of-the-art AMTs. The authorized users can upload Android apps to the web service. And it takes about 10 min on average to get the detection result of all AMTs. We would not public the location of the service for the anonymous policy for paper review. Readers can watch a video below to see the process of usage of AMTs.