J. William Atwood

75 papers A* 2A 2B 19C 5Journal 26Unranked 21
YearRankTypeTitle / Venue / Authors
2025 conf
ANRW
Maryam Hatami, Sandra Céspedes, J. William Atwood
2023 B conf
CNSM
Solmaz Jaberi, J. William Atwood, Joey Paquet
2023 B conf
NOMS
Parsa Ghaderi, J. William Atwood, Lata Narayanan
2020 J jnl
Expert Syst. J. Knowl. Eng.
Yaser M. Khamayseh, Wail Mardini, J. William Atwood, Monther Aldwairi
2018 J jnl
IEEE Commun. Surv. Tutorials
Salekul Islam, Nasif Muslim, J. William Atwood
2018 conf
CCECE
Lin Chen, J. William Atwood
2018 conf
CCECE
Yiqi Huang, J. William Atwood
2016 conf
CCECE
Abonti Ferdous, J. William Atwood
2016 conf
CCECE
Nitin Prajapati, J. William Atwood
2016 J jnl
Comput. Networks
Bing Li, J. William Atwood
2015 J jnl
Comput. Networks
Revathi Bangalore Somanatha, J. William Atwood
2014 J jnl
IEICE Trans. Commun.
Younchan Jung, Marnel Peradilla, J. William Atwood
2013 conf
TrustCom/ISPA/IUCC
Younchan Jung, Marnel Peradilla, J. William Atwood
2011 J jnl
J. Comput.
Xueyong Zhu, Zhiyong Wu, J. William Atwood
2011 B conf
LCN
Ali Salem, J. William Atwood
2011 J jnl
IEICE Trans. Commun.
Younchan Jung, J. William Atwood
2010 J jnl
RFC
J. William Atwood, Salekul Islam, Maziar Siami
2010 J jnl
Telecommun. Syst.
Malek M. Barhoush, J. William Atwood
2010 J jnl
Comput. Networks
Salekul Islam, J. William Atwood
2009 J jnl
Comput. Networks
Salekul Islam, J. William Atwood
2008 conf
ICUIMC
J. William Atwood, J. W. Im, Younchan Jung
2008 J jnl
IEICE Trans. Commun.
Younchan Jung, J. William Atwood, Hans-Jürgen Zepernick
2008 B conf
LCN
Salekul Islam, J. William Atwood
2007 conf
CCNC
Salekul Islam, J. William Atwood
2007 conf
CCNC
Xueyong Zhu, J. William Atwood
2007 C conf
IDEAS
Xueyong Zhu, J. William Atwood
2007 B conf
LCN
J. William Atwood
2007 conf
Q2SWinet
Yan Cheng, J. William Atwood
2007 J jnl
Comput. Networks
Ritesh Mukherjee, J. William Atwood
2007 B conf
LCN
Salekul Islam, J. William Atwood
2006 conf
AICT/ICIW
Salekul Islam, J. William Atwood
2006 C conf
AICCSA
Omar Banimelhem, Anjali Agarwal, J. William Atwood
2006 conf
CCECE
Anil Kumar Venkataiahgari, J. William Atwood, Mourad Debbabi
2006 C conf
QSHINE
Yan Cheng, J. William Atwood
2006 conf
AICT/ICIW
Anshul Gupta, J. William Atwood
2006 conf
CEC/EEE
Anil Kumar Venkataiahgari, J. William Atwood, Mourad Debbabi
2006 conf
Security and Management
Anil Kumar Venkataiahgari, Mourad Debbabi, J. William Atwood
2006 B conf
LCN
Salekul Islam, J. William Atwood
2006 B conf
LCN
Yan Cheng, J. William Atwood
2005 conf
Systems Communications
Omar Banimelhem, Anjali Agarwal, J. William Atwood
2005 C conf
ISCC
Omar Banimelhem, J. William Atwood, Anjali Agarwal
2005 conf
Net-Con
Ritesh Mukherjee, J. William Atwood
2005 A conf
MSWiM
Israat Tanzeena Haque, Chadi Assi, J. William Atwood
2005 J jnl
IEEE Internet Comput.
Younchan Jung, J. William Atwood
2005 J jnl
IEICE Trans. Commun.
Younchan Jung, J. William Atwood
2004 J jnl
IEEE Netw.
J. William Atwood
2004 J jnl
Comput. Networks
Ligang Wang, Anjali Agarwal, J. William Atwood
2004 B conf
LCN
Salekul Islam, J. William Atwood
2003 B conf
LCN
Ahmed Gario, J. William Atwood
2003 B conf
LCN
Ritesh Mukherjee, J. William Atwood
2003 J jnl
Telecommun. Syst.
Ritesh Mukherjee, J. William Atwood
2003 conf
SDL Forum
Ligang Wang, J. William Atwood, Anjali Agarwal
2000 B conf
LCN
Ganesh Ramasivan, J. William Atwood
1999 B conf
LCN
J. William Atwood, Morteza Ghodrat, Dariusz Tasak
1996 J jnl
IEEE/ACM Trans. Netw.
Anjali Agarwal, J. William Atwood
1996 B conf
LCN
J. William Atwood, Octavian Catrina, John Fenton, W. Timothy Strayer
1995 B conf
LCN
J. William Atwood, Y. Zhang
1994 conf
HPN
J. William Atwood, Jean-Marc Jézéquel, Anindya Das, M'Hamed Nour
1993 B conf
LCN
J. William Atwood, Georges Chung Kam Chung
1991 J jnl
Softw. Pract. Exp.
J. William Atwood, Walter Prager
1990 B conf
LCN
Jason X. G. Chen, J. William Atwood
1990 C conf
FORTE
Y. T. Cheung, J. William Atwood
1989 A* conf
MICRO
K. Lall, J. William Atwood
1988 conf
Int. CMG Conference
G. Bozikian, J. William Atwood
1987 J jnl
IEEE Micro
Kin F. Li, Nikitas J. Dimopoulos, J. William Atwood
1987 B conf
ICPP
Nikitas J. Dimopoulos, Kin F. Li, Eric Chi-Wah Wong, R. V. Dantu, J. William Atwood
1984 J jnl
ACM SIGOPS Oper. Syst. Rev.
J. William Atwood
1983 J jnl
Int. J. Man Mach. Stud.
Thiruvengadam Radhakrishnan, J. William Atwood, Suban G. Krishnamoorthy
1982 J jnl
Perform. Evaluation
J. William Atwood, Alexander MacLeod, Keh-Chiang Yu
1982 B conf
ICPP
Bipin C. Desai, Clement Wing Hong Lam, J. William Atwood, Jaroslav Opatrny, Peter Grogono, S. Cabilio
1981 A conf
SIGCSE
J. William Atwood, Eric Regener
1976 J jnl
Computer
J. William Atwood
1974 A* ed.
SIGMETRICS
John H. Howard Jr., Philip J. Kiviat, James D. Connell, Stuart Trask, J. William Atwood
1973 J jnl
Computer
J. William Atwood
1972 conf
AFIPS Fall Joint Computing Conference (1)
Kenneth C. Sevcik, J. William Atwood, Marc S. Grushcow, Richard C. Holt, James J. Horning, Dennis Tsichritzis
docs/apk-feature-schema.md
← Index docs/apk-feature-schema.md markdown
# APK Feature Analysis — ClickHouse Schema

All tables follow the `ReplacingMergeTree()` pattern (no version column — latest
insert wins on deduplication).

**Companion schema:** `docs/apk-code-schema.md` (code-analysis tables)

---

## Table overview

| # | Table | Engine | Key |
|---|-------|--------|-----|
| 1 | `redb_apk_features` | ReplacingMergeTree | `sha256` |
| 2 | `redb_apk_components` | ReplacingMergeTree | `(sha256, component_type, class_name)` |
| 3 | `redb_apk_manifest` | ReplacingMergeTree | `sha256` |
| 4 | `redb_apk_permissions` | ReplacingMergeTree | `(sha256, permission_name)` |
| 5 | `redb_apk_signature` | ReplacingMergeTree | `sha256` |
| 6 | `redb_apk_certificates` | ReplacingMergeTree | `(sha256, certificate_thumbprint)` |
| 7 | `redb_apk_dex` | ReplacingMergeTree | `(sha256, dex_sha256)` |
| 8 | `redb_apk_dex_api_usage` | ReplacingMergeTree | `(sha256, dex_sha256, api_category)` |
| 9 | `redb_apk_resources` | ReplacingMergeTree | `(sha256, resource_path)` |
| 10 | `redb_apk_native_libs` | ReplacingMergeTree | `(sha256, lib_abi, lib_filename)` |
| 11 | `redb_apk_inconsistency_tests` | ReplacingMergeTree | `sha256` |

---

## Table 1: `redb_apk_features`

Core metadata — one row per APK.

```sql
CREATE TABLE IF NOT EXISTS redb_apk_features (
    sha256              FixedString(64),
    package_name        Nullable(String),
    app_name            Nullable(String),
    version_code        Nullable(UInt32),
    version_name        Nullable(String),
    min_sdk_version     Nullable(UInt16),
    target_sdk_version  Nullable(UInt16),
    compile_sdk_version Nullable(UInt16),
    main_activity       Nullable(String),
    is_debuggable       UInt8,
    allow_backup        UInt8,
    uses_cleartext_traffic UInt8,
    supported_abis      Array(String),
    dex_count           UInt16,
    total_dex_size      UInt64,
    total_file_count    UInt32,
    has_native_code     UInt8,
    has_assets          UInt8,
    uses_libraries      Array(String),
    earliest_content_modification Nullable(String),
    latest_content_modification   Nullable(String),
    contains_embedded_apk UInt8,
    analysis_date       DateTime64(3, 'UTC')
) ENGINE = ReplacingMergeTree()
ORDER BY sha256;
```

## Table 2: `redb_apk_components`

Manifest components — one row per component.

```sql
CREATE TABLE IF NOT EXISTS redb_apk_components (
    sha256              FixedString(64),
    component_type      LowCardinality(String),   -- 'activity', 'service', 'receiver', 'provider'
    class_name          String,
    is_exported         UInt8,
    intent_actions      Array(String),
    intent_categories   Array(String),
    analysis_date       DateTime64(3, 'UTC')
) ENGINE = ReplacingMergeTree()
ORDER BY (sha256, component_type, class_name);
```

## Table 3: `redb_apk_manifest`

Manifest summary — one row per APK.

```sql
CREATE TABLE IF NOT EXISTS redb_apk_manifest (
    sha256              FixedString(64),
    activity_count      UInt16,
    service_count       UInt16,
    receiver_count      UInt16,
    provider_count      UInt16,
    intent_filters_by_action   Array(String),
    intent_filters_by_category Array(String),
    uses_features       Array(String),
    manifest_xml        Nullable(String),
    analysis_date       DateTime64(3, 'UTC')
) ENGINE = ReplacingMergeTree()
ORDER BY sha256;
```

## Table 4: `redb_apk_permissions`

Permissions — one row per permission per APK.

```sql
CREATE TABLE IF NOT EXISTS redb_apk_permissions (
    sha256              FixedString(64),
    permission_name     String,
    protection_level    LowCardinality(String),
    is_custom           UInt8,
    analysis_date       DateTime64(3, 'UTC')
) ENGINE = ReplacingMergeTree()
ORDER BY (sha256, permission_name);
```

## Table 5: `redb_apk_signature`

Signing info — one row per APK. The `apk_signer_*` fields identify the actual
signer certificate using V3→V2→V1 priority (V2/V3: `certificates[0]` per spec;
V1: `SignerInfo.issuerAndSerialNumber` matching). Prefixed with `apk_` to
distinguish from PE/Mach-O signer fields in cross-format queries.

```sql
CREATE TABLE IF NOT EXISTS redb_apk_signature (
    sha256              FixedString(64),
    is_signed           UInt8,
    signature_scheme_versions Array(UInt8),
    number_of_certificates UInt8,
    apk_signer_subject  Nullable(String),
    apk_signer_issuer   Nullable(String),
    analysis_date       DateTime64(3, 'UTC')
) ENGINE = ReplacingMergeTree()
ORDER BY sha256;
```

## Table 6: `redb_apk_certificates`

Certificate details — one row per certificate per APK. The
`certificate_source_scheme` column tracks which signing scheme(s) the
certificate was found in (`'v1'`, `'v2'`, `'v3'`, or `'v1,v2'` when the same
certificate appears across multiple schemes).

```sql
CREATE TABLE IF NOT EXISTS redb_apk_certificates (
    sha256                    FixedString(64),
    certificate_subject       String,
    certificate_issuer        String,
    certificate_serial_number String,
    certificate_valid_from    DateTime64(3, 'UTC'),
    certificate_valid_to      DateTime64(3, 'UTC'),
    certificate_thumbprint    FixedString(40),
    certificate_algorithm     LowCardinality(String),
    key_size                  Nullable(UInt16),
    is_self_signed            UInt8,
    certificate_source_scheme LowCardinality(String),
    analysis_date             DateTime64(3, 'UTC')
) ENGINE = ReplacingMergeTree()
ORDER BY (sha256, certificate_thumbprint);
```

## Table 7: `redb_apk_dex`

DEX file analysis — one row per DEX file.

```sql
CREATE TABLE IF NOT EXISTS redb_apk_dex (
    sha256              FixedString(64),
    dex_sha256          FixedString(64),
    dex_filename        String,
    dex_tlsh            Nullable(String),
    dex_class_count     UInt32,
    dex_method_count    UInt32,
    dex_string_count    UInt32,
    dex_top_packages    String,                    -- JSON
    dex_obfuscation_indicators String,             -- JSON
    analysis_date       DateTime64(3, 'UTC')
) ENGINE = ReplacingMergeTree()
ORDER BY (sha256, dex_sha256);
```

## Table 8: `redb_apk_dex_api_usage`

DEX API usage — one row per category per DEX.

```sql
CREATE TABLE IF NOT EXISTS redb_apk_dex_api_usage (
    sha256              FixedString(64),
    dex_sha256          FixedString(64),
    api_category        LowCardinality(String),
    api_calls           Array(String),
    analysis_date       DateTime64(3, 'UTC')
) ENGINE = ReplacingMergeTree()
ORDER BY (sha256, dex_sha256, api_category);
```

## Table 9: `redb_apk_resources`

Resource inventory — one row per resource.

```sql
CREATE TABLE IF NOT EXISTS redb_apk_resources (
    sha256              FixedString(64),
    resource_path       String,
    resource_size       UInt64,
    resource_sha256     FixedString(64),
    resource_magika     LowCardinality(String),
    resource_entropy             Float32,
    is_suspicious       UInt8,
    analysis_date       DateTime64(3, 'UTC')
) ENGINE = ReplacingMergeTree()
ORDER BY (sha256, resource_path);
```

## Table 10: `redb_apk_native_libs`

Native libraries — one row per `.so` file.

```sql
CREATE TABLE IF NOT EXISTS redb_apk_native_libs (
    sha256              FixedString(64),
    lib_abi             LowCardinality(String),
    lib_filename        String,
    lib_size            UInt64,
    lib_sha256          FixedString(64),
    lib_is_known_packer UInt8,
    analysis_date       DateTime64(3, 'UTC')
) ENGINE = ReplacingMergeTree()
ORDER BY (sha256, lib_abi, lib_filename);
```

## Table 11: `redb_apk_inconsistency_tests`

Inconsistency tests — one row per APK.

```sql
CREATE TABLE IF NOT EXISTS redb_apk_inconsistency_tests (
    sha256              FixedString(64),
    test_zip_bomb                    Nullable(UInt8),
    test_zip_duplicate_entries       Nullable(UInt8),
    test_zip_path_traversal          Nullable(UInt8),
    test_zip_suspicious_timestamps   Nullable(UInt8),
    test_hidden_dex_files            Nullable(UInt8),
    test_manifest_component_mismatch Nullable(UInt8),
    test_debuggable_release          Nullable(UInt8),
    test_emulator_detection_strings  Nullable(UInt8),
    test_debugger_detection          Nullable(UInt8),
    test_root_detection              Nullable(UInt8),
    analysis_date       DateTime64(3, 'UTC')
) ENGINE = ReplacingMergeTree()
ORDER BY sha256;
```