Smali Code Sequence Analysis for Objective App Evaluation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing application evaluation techniques are subjective and lack objectivity, failing to accurately reflect the actual execution of applications due to reliance on permissions, user reviews, and simple machine learning methods that cannot identify the actual usage relationship of APIs.

Innovation Solution

A code sequence based intelligent key code identification method that extracts Smali code sequences by decompiling applications, vectorizes them to construct a training dataset, trains a deep learning model to generate a classifier, and uses Local Interpretable Model-Agnostic Explanation (LIME) to identify important Smali code sequences contributing to the application's classification.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If permission and description are used for application evaluation, then the evaluation process is simple to implement, but the evaluation result is subjective and lacks objectivity

Engineering Contradiction:
Improveease of evaluationVSAvoidevaluation objectivity
Core Design Contradiction:
Ease of operationVSMeasurement precision

Solution Approach 1:

The patent replaces subjective mechanical evaluation methods (permission checking and user review analysis) with an automated deep learning-based code sequence analysis system. The system extracts Smali code sequences from applications, vectorizes them, and uses trained deep learning models to objectively classify applications, eliminating the subjectivity inherent in manual permission and description evaluation.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The patent introduces Smali code sequences as an intermediary representation between the application binary and the evaluation model. By extracting and vectorizing the Smali code sequences, the system creates a bridge that enables objective analysis of actual code execution behavior, mediating between the raw application data and the evaluation criteria.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Device complexity

If simple machine learning methods are used for application classification, then the model is easy to train and deploy, but it cannot identify the actual usage relationship of APIs

Engineering Contradiction:
Improvemodel complexityVSAvoidAPI usage relationship identification
Core Design Contradiction:
Device complexityVSMeasurement precision

Solution Approach 1:

The patent changes the input parameters from simple permission arrays or high-level API calls to detailed Smali code sequences that capture low-level execution behavior. This parameter transformation enables the deep learning model to detect subtle usage patterns and relationships between APIs that simpler methods miss, while the vectorization process keeps the model manageable.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent segments the application code into individual Smali method sequences, each representing a discrete functional unit. This segmentation allows the deep learning model to process and analyze specific code segments independently, identifying usage relationships between different APIs and methods while maintaining overall system understanding.

Inventive Principle:
Principle #1Segmentation

3Device complexity

If applications are classified into only benign or malicious categories, then the classification is simple, but it fails to provide detailed and accurate application evaluation

Engineering Contradiction:
Improveclassification granularityVSAvoidevaluation accuracy
Core Design Contradiction:
Device complexityVSMeasurement precision

Solution Approach 1:

The patent segments the application evaluation into multiple fine-grained categories beyond simple benign/malicious dichotomy. By analyzing Smali code sequences at the method level and using deep learning models trained on detailed feature representations, the system can classify applications into specific functional categories and detect nuanced security issues, providing both granularity and accuracy.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent adds multiple dimensions to the classification problem by analyzing code sequences at different levels (method level, class level, package level) and using deep learning models that process multiple feature representations simultaneously. This dimensional expansion enables detailed classification that captures both security attributes and functional characteristics.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Data Source

PatentUS12287846B2Code sequence based intelligent key code identification method and recording medium and device for performing the same
Publication Date: 2025.04.29 FOUND OF SOONGSIL UNIV IND COOP
  • US12287846B2 patent drawing
  • US12287846B2 patent drawing
  • US12287846B2 patent drawing

AI summary

A code sequence based intelligent key code identification method includes extracting Smali code sequence by decompiling an application, vectorizing the extracted Smali code sequence to construct a training dataset, training a deep learning model with the vectorized Smali code sequence to generate a classifier, generating a category classification result using Smali code sequence of a target application as input of the classifier, and identifying and providing important Smali code sequence from which the classification result of the target application is derived. Accordingly, it is possible to objectively evaluate the application using Smali code sequence of the application being actually run.