Neha Singh

68 papers B 1C 1Misc 1Journal 45Unranked 19
YearRankTypeTitle / Venue / Authors
2026 J jnl
Virtual Real.
Debasish Nath, Neha Singh, Onika Banduni, Megha Saini, Nand Kumar, M. V. Padma Srivastava, Amit Mehndiratta
2026 J jnl
IEEE Access
Samriddh Kumar Singh, Shobhit Mittra, Neha Singh, Shilpi Birla
2026 J jnl
IEEE Internet Things J.
Neha Singh, Mainak Adhikari
2025 J jnl
IEEE Trans. Netw. Sci. Eng.
Neha Singh, Mainak Adhikari
2025 J jnl
CoRR
Sandeep Reddy, Kabir Khan, Rohit Patil, Ananya Chakraborty, Faizan A. Khan, Swati Kulkarni, Arjun Verma, Neha Singh
2025 J jnl
IEEE Trans. Comput. Soc. Syst.
Jatin Deep Singh, Neha Singh, Mainak Adhikari, Amit Kumar Singh
2025 Misc conf
COMSNETS
Suja A. Alex, Neha Singh, Mainak Adhikari
2025 J jnl
IEEE Trans. Parallel Distributed Syst.
Neha Singh, Mainak Adhikari
2025 J jnl
J. Netw. Comput. Appl.
Neha Singh, Mainak Adhikari
2025 J jnl
Ad Hoc Networks
Neha Singh, Mainak Adhikari
2025 J jnl
Multim. Tools Appl.
Neha Singh, Ashish Kumar Bhandari
2025 conf
NCC
Neha Singh, Nitin Bhatia
2025 J jnl
Multim. Tools Appl.
Neha Singh, Ashish Kumar Bhandari
2025 J jnl
Inf. Fusion
Neha Singh, Mainak Adhikari
2025 conf
OFC
Qingzhong Deng, Jeroen De Coster, Rafal Magdziak, Ahmed H. El-Saeed, Alaa Elshazly, Mehmet Oktay, Chiara Marchese, Guy Lepage, Javad Rahimi Vaskasi, Sadhishkumar Balakrishnan, Neha Singh, Dieter Bode, Marko Ersek Filipcic, Maumita Chakrabarti, Dimitrios Velenis, Peter Verheyen, Philippe Absil, Filippo Ferraro, Yoojin Ban, Joris Van Campenhout
2025 J jnl
IEEE Trans. Hum. Mach. Syst.
Debasish Nath, Neha Singh, Onika Banduni, Aprajita Parial, M. V. Padma Srivastava, Venugopalan Y. Vishnu, Amit Mehndiratta
2024 conf
OFC
Qingzhong Deng, Ahmed H. El-Saeed, Alaa Elshazly, Guy Lepage, Chiara Marchese, Hakim Kobbi, Rafal Magdziak, Jeroen De Coster, Neha Singh, Marko Ersek Filipcic, Kristof Croes, Dimitrios Velenis, Maumita Chakrabarti, Peter De Heyn, Peter Verheyen, Philippe Absil, Filippo Ferraro, Yoojin Ban, Joris Van Campenhout
2024 conf
AIES (1)
Zachary Arnold, Daniel S. Schiff, Kaylyn Jackson Schiff, Brian Love, Jennifer Melot, Neha Singh, Lindsay Jenkins, Ashley Lin, Konstantin Pilz, Ogadinma Enweareazu, Tyler Girard
2024 J jnl
IEEE Trans. Consumer Electron.
Rupali Patole, Neha Singh, Mainak Adhikari, Amit Kumar Singh
2024 J jnl
IEEE Trans. Consumer Electron.
Neha Singh, Jatin Rupchandani, Mainak Adhikari
2024 J jnl
Int. J. Syst. Assur. Eng. Manag.
Neha Singh, Umesh Chandra Jaiswal
2023 conf
ANTS
Neha Singh, Tanmay Tripathi, Mainak Adhikari
2023 conf
MLSP
Neha Singh, Saurabh Khanna
2023 conf
CCGridW
Vikas Singh, Neha Singh, Mainak Adhikari
2023 J jnl
Multim. Tools Appl.
Neha Singh, Ashish Kumar Bhandari
2023 conf
ICCCNT
Neha Singh, Umesh Chandra Jaiswal, Jyoti Srivastava
2023 J jnl
Appl. Comput. Syst.
Neha Singh, Umesh Chandra Jaiswal
2022 J jnl
Concurr. Comput. Pract. Exp.
Gajendra K. Vishwakarma, Neha Singh, Neelesh Kumar
2022 J jnl
Int. J. Softw. Sci. Comput. Intell.
Neha Singh, Umesh Chandra Jaiswal
2022 J jnl
Int. J. Bioinform. Res. Appl.
Neha Singh, Srishti Shreya, Farhat Afza, Padmini Bisoyi, Arun K. Kashyap, Kundan K. Chaubey, Buddhi Prakash Jain
2022 J jnl
Multim. Tools Appl.
Ritesh Maurya, Neha Singh, Tanu Jindal, Vinay Kumar Pathak, Malay Kishore Dutta
2022 J jnl
Commun. Stat. Simul. Comput.
Neha Singh, Gajendra K. Vishwakarma, Jong Min Kim
2022 J jnl
Circuits Syst. Signal Process.
Neha Singh, Ashish Kumar Bhandari
2022 J jnl
IEEE Trans. Consumer Electron.
Neha Singh, Ashish Kumar Bhandari
2022 J jnl
Neural Comput. Appl.
Ashish Kumar Bhandari, Neha Singh, Anurag Singh
2021 J jnl
Multim. Tools Appl.
Mukteshwar Kumar, Ashish Kumar Bhandari, Neha Singh, Arunangshu Ghosh
2021 conf
CSCI
Neha Singh, Palak Patel, Soma Datta
2021 J jnl
J. Comput. Appl. Math.
Gajendra K. Vishwakarma, Neha Singh
2021 conf
FICTA (1)
Neha Singh, Onkareshwar Prasad, T. Sujithra
2021 J jnl
Multim. Tools Appl.
Neha Singh, Ashish Kumar Bhandari, Immadisetty Vinod Kumar
2021 J jnl
IEEE Trans. Instrum. Meas.
Neha Singh, Ashish Kumar Bhandari
2020 J jnl
Int. J. Comput. Intell. Appl.
Neha Singh, Deepali Virmani, Xiao-Zhi Gao
2020 ch.
Blockchain Technologies, Applications and Cryptocurrencies
Sam Goundar, Zaahid Shah, Neha Singh, Goel Lal, Anil Singh
2020 J jnl
Biomed. Signal Process. Control.
Anushikha Singh, Neha Singh, Tanu Jindal, Alfredo Rosado Muñoz, Malay Kishore Dutta
2020 J jnl
Wirel. Pers. Commun.
Neha Singh, Krishna Chandra Roy
2020 J jnl
Int. J. Intell. Inf. Database Syst.
Neha Singh, Sandeep Joshi, Shilpi Birla
2020 J jnl
J. Digit. Imaging
Ramin Javan, Aditya Rao, Bryan S. Jeun, Aalap Herur-Raman, Neha Singh, Parisa Heidari
2020 J jnl
IET Image Process.
Neha Singh, Ashish Kumar Bhandari
2020 J jnl
Appl. Soft Comput.
Ashish Kumar Bhandari, Neha Singh, Immadisetty Vinod Kumar
2020 J jnl
Medical Biol. Eng. Comput.
Ritesh Maurya, Neha Singh, Tanu Jindal, Vinay Kumar Pathak, Malay Kishore Dutta
2020 conf
ICCCS
Shilpi Birla, Neeraj Kumar Shukla, Neha Singh, M. Ram Kumar Raja
2020 J jnl
Circuits Syst. Signal Process.
Neha Singh, Ashish Kumar Bhandari, Anurag Singh
2019 J jnl
Multim. Tools Appl.
Ashish Kumar Bhandari, Neha Singh, Swapnil Shubham
2019 J jnl
J. Comput. Des. Eng.
Neha Singh, Tathagata Ray, Chandu Parimi, Srivastava Kuchibhotla
2019 B conf
RO-MAN
Neha Singh, Puneesh Deora, Pyari Mohan Pradhan
2018 conf
SocProS (1)
Neha Singh, B. K. Tripathy
2017 J jnl
Photonic Netw. Commun.
Chanderkanta, Neha Singh, Santosh Kumar
2017 J jnl
Int. J. Syst. Assur. Eng. Manag.
Neha Singh, Kirti Tyagi
2016 conf
ICIIS
Neha Singh, Kr. Goodwill, Machavaram V. Kartikeyan
2016 conf
WIR
Neha Singh, Saurabh Singh, Naveen Kumar, Rakesh Kumar
2015 J jnl
ACM SIGSOFT Softw. Eng. Notes
Neha Singh, Kirti Tyagi
2015 conf
IBICA
Veenu Bhasin, Punam Bedi, Neha Singh, Charu Aggarwal
2015 conf
ITCH
Ted Alexander, Neha Singh, Shahrin Huda, Mohamed Alarakhia
2014 conf
AMT
Vidhi Khanduja, Shampa Chakraverty, Om Prakash Verma, Neha Singh
2014 conf
ICACCI
Neha Baranwal, Neha Singh, Gora Chand Nandi
2014 conf
IHCI
Akash Harlalka, Pradeep PJ, Kushagra Sinha, Neha Singh
2013 J jnl
Internet High. Educ.
Teshia Roby, Susan Ashe, Neha Singh, Curtis Clark
2006 C conf
ENTER
Clark Hu, Pradeep Racherla, Neha Singh
docs/apk-code-schema.md
← Index docs/apk-code-schema.md markdown
# APK Code Analysis — ClickHouse Schema

All tables follow the `ReplacingMergeTree(analysis_date)` pattern from
`docs/new-code-binja-schema.md`, except `code_apk_analysis_errors` which
uses `MergeTree()`.

**Companion PDD:** `APK_CODE_ANALYSIS_PDD-Tech_Annex.md` §7

---

## Table overview

| # | Table | Analog (Binja) | Engine | Key |
|---|-------|----------------|--------|-----|
| 1 | `code_apk_decompiled_methods_content` | `code_binja_decompiled_functions_content` | ReplacingMergeTree | `decompiled_method_hash` |
| 2 | `code_apk_decompiled_methods_references` | `code_binja_decompiled_functions_references` | ReplacingMergeTree | `(sha256, decompiled_method_hash)` |
| 3 | `code_apk_smali_methods_content` | `code_binja_disassembled_functions_content` | ReplacingMergeTree | `smali_method_hash` |
| 4 | `code_apk_smali_methods_references` | `code_binja_disassembled_functions_references` | ReplacingMergeTree | `(sha256, smali_method_hash)` |
| 5 | `code_apk_method_similarity_metrics` | `code_binja_function_similarity_metrics` | ReplacingMergeTree | `smali_method_hash` |
| 6 | `code_apk_cfg_methods` | `code_binja_cfg_functions` | ReplacingMergeTree | `smali_method_hash` |
| 7 | `code_binja_strings_raw` *(shared)* | — | Null (→ MV) | — |
| 8 | `code_apk_analysis_errors` | `function_analysis_errors_binja` | MergeTree | `(sha256, error_location, error_hash)` |

---

## Table 1: `code_apk_decompiled_methods_content`

**Analog:** `code_binja_decompiled_functions_content`

```sql
CREATE TABLE IF NOT EXISTS code_apk_decompiled_methods_content (
    decompiled_method_hash FixedString(64),          -- SHA-256 of normalized Java source
    decompiled_method String CODEC(ZSTD(3)),          -- Full Java method source
    decompiled_method_type Enum8('USER'=1, 'LIBRARY'=2, 'UNKNOWN'=5) DEFAULT 'UNKNOWN',
    decompiled_has_string_encryption UInt8 DEFAULT 0,
    decompiled_has_reflection_calls UInt8 DEFAULT 0,
    decompiled_excessive_goto_count UInt8 DEFAULT 0,
    analysis_date DateTime64(3, 'UTC'),

    INDEX idx_method_content_token lower(decompiled_method) TYPE tokenbf_v1(32768, 3, 0) GRANULARITY 1
) ENGINE = ReplacingMergeTree(analysis_date)
ORDER BY decompiled_method_hash;
```

## Table 2: `code_apk_decompiled_methods_references`

**Analog:** `code_binja_decompiled_functions_references`

```sql
CREATE TABLE IF NOT EXISTS code_apk_decompiled_methods_references (
    sha256 FixedString(64),
    decompiled_method_hash FixedString(64),
    smali_method_hash Nullable(FixedString(64)),
    decompiled_class_name LowCardinality(String),
    decompiled_method_name LowCardinality(String),
    decompiled_method_signature String,               -- Dalvik descriptor: (Landroid/os/Bundle;)V
    decompiled_method_prototype String,               -- Java-style: void onCreate(Bundle)
    functions_caller Array(String),
    functions_call Array(String),
    analysis_date DateTime64(3, 'UTC'),

    INDEX idx_decompiled_class_name decompiled_class_name TYPE tokenbf_v1(32768, 3, 0) GRANULARITY 1,
    INDEX idx_decompiled_method_name decompiled_method_name TYPE tokenbf_v1(32768, 3, 0) GRANULARITY 1,
    INDEX idx_functions_caller functions_caller TYPE tokenbf_v1(32768, 3, 0) GRANULARITY 1,
    INDEX idx_functions_call functions_call TYPE tokenbf_v1(32768, 3, 0) GRANULARITY 1
) ENGINE = ReplacingMergeTree(analysis_date)
ORDER BY (sha256, decompiled_method_hash);
```

## Table 3: `code_apk_smali_methods_content`

**Analog:** `code_binja_disassembled_functions_content`

```sql
CREATE TABLE IF NOT EXISTS code_apk_smali_methods_content (
    smali_method_hash FixedString(64),                -- SHA-256 of normalized smali body
    smali_method String CODEC(ZSTD(3)),               -- Full smali method body
    smali_method_type Enum8('USER'=1, 'LIBRARY'=2, 'UNKNOWN'=5) DEFAULT 'UNKNOWN',
    smali_instructions_count UInt32,
    smali_register_count UInt16,
    smali_has_string_encryption UInt8 DEFAULT 0,
    smali_has_reflection_calls UInt8 DEFAULT 0,
    smali_excessive_goto_count UInt8 DEFAULT 0,
    smali_flattened_score Float64 DEFAULT 0.0,       -- Control flow flattening score (0.01.0)
    smali_mba_score Float64 DEFAULT 0.0,             -- Mixed boolean-arithmetic score (0.01.0)
    analysis_date DateTime64(3, 'UTC'),

    INDEX idx_smali_ngram smali_method TYPE ngrambf_v1(3, 32768, 3, 0) GRANULARITY 1,
    INDEX idx_smali_method_type smali_method_type TYPE set(3) GRANULARITY 1,
    INDEX idx_smali_instr_count smali_instructions_count TYPE minmax GRANULARITY 4,
    INDEX idx_smali_reg_count smali_register_count TYPE minmax GRANULARITY 4,
    INDEX idx_smali_flattened smali_flattened_score TYPE minmax GRANULARITY 4,
    INDEX idx_smali_mba smali_mba_score TYPE minmax GRANULARITY 4
) ENGINE = ReplacingMergeTree(analysis_date)
ORDER BY smali_method_hash;
```

## Table 4: `code_apk_smali_methods_references`

**Analog:** `code_binja_disassembled_functions_references`

```sql
CREATE TABLE IF NOT EXISTS code_apk_smali_methods_references (
    sha256 FixedString(64),
    smali_method_hash FixedString(64),
    decompiled_method_hash Nullable(FixedString(64)),
    smali_class_name LowCardinality(String),
    smali_method_name LowCardinality(String),
    smali_method_signature String,
    analysis_date DateTime64(3, 'UTC'),

    INDEX idx_smali_class_name smali_class_name TYPE tokenbf_v1(32768, 3, 0) GRANULARITY 1,
    INDEX idx_smali_method_name smali_method_name TYPE tokenbf_v1(32768, 3, 0) GRANULARITY 1
) ENGINE = ReplacingMergeTree(analysis_date)
ORDER BY (sha256, smali_method_hash);
```

## Table 5: `code_apk_method_similarity_metrics`

**Analog:** `code_binja_function_similarity_metrics`

Content-based fuzzy matching table. Structural/CFG scalars (block_count, edge_count, etc.)
are in `code_apk_cfg_methods` (Table 6) — this table holds only fuzzy hashes and MinHash.

```sql
CREATE TABLE IF NOT EXISTS code_apk_method_similarity_metrics (
    smali_method_hash FixedString(64),
    -- Raw smali fuzzy hashes (analog: ssdeep_disassembly / tlsh_disassembly)
    ssdeep_smali Nullable(String),
    tlsh_smali Nullable(FixedString(72)),
    -- Semantically normalized smali fuzzy hashes (analog: ssdeep_llil / tlsh_llil)
    ssdeep_smali_normalized Nullable(String),
    tlsh_smali_normalized Nullable(FixedString(72)),
    minhash Array(UInt8),
    analysis_date DateTime64(3, 'UTC'),

    INDEX idx_ssdeep ssdeep_smali TYPE bloom_filter GRANULARITY 1,
    INDEX idx_tlsh tlsh_smali TYPE bloom_filter GRANULARITY 1,
    INDEX idx_ssdeep_norm ssdeep_smali_normalized TYPE bloom_filter GRANULARITY 1,
    INDEX idx_tlsh_norm tlsh_smali_normalized TYPE bloom_filter GRANULARITY 1
) ENGINE = ReplacingMergeTree(analysis_date)
ORDER BY smali_method_hash;
```

## Table 6: `code_apk_cfg_methods`

**Analog:** `code_binja_cfg_functions` (see `db_migration/cfg_functions_ddl.sql`)

Structural and topological features computed from smali CFG. All fields mirror
the Binja table with APK-appropriate naming.

```sql
CREATE TABLE IF NOT EXISTS code_apk_cfg_methods (
    -- Identity
    smali_method_hash FixedString(64),

    -- Tier 0: Exact structural match
    cfg_topology_hash FixedString(16),

    -- Tier 1: Structural pre-filtering
    block_count UInt16,
    edge_count UInt16,
    cfg_instructions_count UInt32,            -- Dalvik instruction count (analog: llil_total_operations)
    call_count UInt16,
    cyclomatic_complexity UInt16,
    loop_count UInt16,
    max_depth UInt16,
    max_fan_out UInt16,
    md_index_topdown UInt64,
    md_index_bottomup UInt64,
    prime_product_smali UInt64,              -- Dalvik semantic primes (analog: prime_product_llil)

    -- Tier 2: Fuzzy matching
    cfg_feature_tlsh Nullable(FixedString(72)),
    wl_minhash Array(UInt8),

    -- Embedding-ready storage
    bb_features Array(Array(UInt16)),        -- ACFG block feature vectors
    cfg_adjacency Array(UInt32),             -- Packed (src << 16 | tgt)

    analysis_date DateTime64(3, 'UTC'),

    -- Indexes
    INDEX idx_topology cfg_topology_hash TYPE bloom_filter GRANULARITY 1,
    INDEX idx_complexity cyclomatic_complexity TYPE minmax GRANULARITY 4,
    INDEX idx_block_count block_count TYPE minmax GRANULARITY 4,
    INDEX idx_edge_count edge_count TYPE minmax GRANULARITY 4,
    INDEX idx_call_count call_count TYPE minmax GRANULARITY 4,
    INDEX idx_cfg_instr_count cfg_instructions_count TYPE minmax GRANULARITY 4,
    INDEX idx_loop_count loop_count TYPE minmax GRANULARITY 4,
    INDEX idx_max_depth max_depth TYPE minmax GRANULARITY 4,
    INDEX idx_max_fan_out max_fan_out TYPE minmax GRANULARITY 4,
    INDEX idx_md_topdown md_index_topdown TYPE minmax GRANULARITY 4,
    INDEX idx_md_bottomup md_index_bottomup TYPE minmax GRANULARITY 4,
    INDEX idx_prime prime_product_smali TYPE bloom_filter GRANULARITY 1,
    INDEX idx_cfg_tlsh cfg_feature_tlsh TYPE bloom_filter GRANULARITY 1
) ENGINE = ReplacingMergeTree(analysis_date)
ORDER BY smali_method_hash;
```

**Column mapping (APK → Binja):**

| APK column | Binja column | Notes |
|------------|-------------|-------|
| `smali_method_hash` | `disassembled_function_hash` | Both SHA-256 of normalized code |
| `cfg_instructions_count` | `llil_total_operations` | Dalvik instructions vs LLIL operations |
| `prime_product_smali` | `prime_product_llil` | Same prime algorithm, Dalvik semantic categories |
| All others | Same name | Identical algorithms from shared `cfg_features.py` |

## Table 7: `code_binja_strings_raw` (shared)

APK strings are inserted into the existing `code_binja_strings_raw` Null-engine table,
which feeds materialized views (`code_binja_strings_by_binary`, `mv_string_popularity_public`).
This enables cross-format string correlation between PE/ELF/Mach-O/APK samples.

No new table creation needed — see `docs/new-code-binja-schema.md` for the existing DDL.

## Table 8: `code_apk_analysis_errors`

**Analog:** `function_analysis_errors_binja`

```sql
CREATE TABLE IF NOT EXISTS code_apk_analysis_errors (
    sha256 FixedString(64),
    class_name Nullable(String) CODEC(ZSTD(3)),
    method_name Nullable(String) CODEC(ZSTD(3)),
    error_location LowCardinality(String) CODEC(ZSTD(3)),   -- 'jadx', 'apktool', 'androguard', 'analysis'
    error_message Nullable(String) CODEC(ZSTD(3)),
    error_type Nullable(String) CODEC(ZSTD(3)),
    error_hash FixedString(32),                               -- MD5 for dedup
    status Enum8('new' = 1, 'investigating' = 2, 'fixed' = 3, 'wontfix' = 4) DEFAULT 'new',
    analysis_date DateTime64(3, 'UTC')
) ENGINE = MergeTree()
ORDER BY (sha256, error_location, error_hash);
```