Software plagiarism in Android markets (app repackaging)
is raising serious concerns about the health of the Android
ecosystem. Existing app repackaging detection techniques
fall short in detection efficiency and in resilience to circumventing
attacks; this allows repackaged apps to be widely
propagated and causes extensive damages before being detected.
To overcome these difficulties and instantly thwart
app repackaging threats, we devise a new dynamic software
watermarking technique - Droidmarking - for Android apps
that combines the efforts of all stakeholders and achieves the
following three goals: (1) copyright ownership assertion for
developers, (2) real-time app repackaging detection on user
devices, and (3) resilience to evading attacks. Distinct from
existing watermarking techniques, the watermarks in Droidmarking
are non-stealthy, which means that watermark locations
are not intentionally concealed, yet still are impervious
to evading attacks. This property effectively enables normal
users to recover and verify watermark copyright information
without requiring a confidential watermark recognizer.
Droidmarking is based on a primitive called self-decrypting
code (SDC). Our evaluations show that Droidmarking is
a feasible and robust technique to effectively impede app