Mahmood Fathy

212 papers A* 1A 8B 2C 14Misc 11Journal 93Unranked 83
YearRankTypeTitle / Venue / Authors
2024 J jnl
Complex Intell. Syst.
Mir Gholamreza Mortazavi, Mirsaeid Hosseini Shirvani, Arash Dana, Mahmood Fathy
2024 J jnl
Int. J. Intell. Transp. Syst. Res.
Hamidreza Mahini, Mehrdad Asadi, Alireza Mahini, Amir Masoud Rahmani, Mahmood Fathy
2023 J jnl
CoRR
Seyed Mahdi Shariatzadeh, Mahmood Fathy, Reza Berangi, Mohammad Shahverdy
2023 J jnl
Microelectron. J.
Mina Rezaei-Zare, Mahmood Fathy, Afshin Rezaei-Zare
2023 J jnl
Expert Syst. J. Knowl. Eng.
Seyed Mahdi Shariatzadeh, Mahmood Fathy, Reza Berangi
2023 J jnl
Complex Intell. Syst.
Mir Gholamreza Mortazavi, Mirsaeid Hosseini Shirvani, Arash Dana, Mahmood Fathy
2022 J jnl
IEEE Trans. Intell. Transp. Syst.
Mehrdad Asadi, Mahmood Fathy, Hamidreza Mahini, Amir Masoud Rahmani
2022 J jnl
CoRR
Pooneh Safayenikoo, Arghavan Asad, Mahmood Fathy
2021 J jnl
CoRR
Hossein Ahmadvand, Fouzhan Foroutan, Mahmood Fathy
2021 J jnl
J. Big Data
Hossein Ahmadvand, Fouzhan Foroutan, Mahmood Fathy
2021 J jnl
IEEE Trans. Neural Networks Learn. Syst.
Mohammad Sabokrou, Mahmood Fathy, Guoying Zhao, Ehsan Adeli
2021 J jnl
Expert Syst. Appl.
Mohammad Sabokrou, Masoud PourReza, Xiaobai Li, Mahmood Fathy, Guoying Zhao
2021 J jnl
CoRR
Bahram Mohammadi, Mahmood Fathy, Mohammad Sabokrou
2021 J jnl
J. Supercomput.
Nayereh Zaghari, Mahmood Fathy, Seyed Mahdi Jameii, Mohammad Sabokrou, Mohammad Shahverdy
2021 J jnl
Multim. Tools Appl.
Mohammad M. Arzani, Mahmood Fathy, Ahmad Akbari Azirani, Ehsan Adeli
2021 J jnl
IEEE Trans. Cybern.
Mohammad M. Arzani, Mahmood Fathy, Ahmad Akbari Azirani, Ehsan Adeli
2021 J jnl
J. Supercomput.
Nayereh Zaghari, Mahmood Fathy, Seyed Mahdi Jameii, Mohammad Shahverdy
2020 conf
ECCV Workshops (1)
Reza Azad, Maryam Asadi-Aghbolaghi, Mahmood Fathy, Sergio Escalera
2020 J jnl
CoRR
Mohammad Sabokrou, Masoud PourReza, Xiaobai Li, Mahmood Fathy, Guoying Zhao
2020 J jnl
Expert Syst. Appl.
Mohammad Shahverdy, Mahmood Fathy, Reza Berangi, Mohammad Sabokrou
2020 J jnl
CoRR
Maryam Asadi-Aghbolaghi, Reza Azad, Mahmood Fathy, Sergio Escalera
2019 J jnl
J. Biomed. Informatics
Ahmad Malekian Borujeni, Mahmood Fathy, Nasser Mozayani
2019 J jnl
CoRR
Salman Onsori, Arghavan Asad, Kaamran Raahemifar, Mahmood Fathy
2019 J jnl
J. Circuits Syst. Comput.
Arghavan Asad, Mahdi Fazeli, Mohammad Reza Jahed-Motlagh, Mahmood Fathy, Farah Mohammadi
2019 conf
ICCV Workshops
Reza Azad, Maryam Asadi-Aghbolaghi, Mahmood Fathy, Sergio Escalera
2019 J jnl
CoRR
Reza Azad, Maryam Asadi-Aghbolaghi, Mahmood Fathy, Sergio Escalera
2019 conf
PRIME@MICCAI
Milad Ahmadi, Mohammad Sabokrou, Mahmood Fathy, Reza Berangi, Ehsan Adeli
2018 conf
ACCV (6)
Mohammad Sabokrou, Masoud PourReza, Mohsen Fayyaz, Rahim Entezari, Mahmood Fathy, Jürgen Gall, Ehsan Adeli
2018 J jnl
CoRR
Mohammad Sabokrou, Masoud PourReza, Mohsen Fayyaz, Rahim Entezari, Mahmood Fathy, Jürgen Gall, Ehsan Adeli
2018 A* conf
CVPR
Mohammad Sabokrou, Mohammad Khalooei, Mahmood Fathy, Ehsan Adeli
2018 J jnl
CoRR
Mohammad Sabokrou, Mohammad Khalooei, Mahmood Fathy, Ehsan Adeli
2018 J jnl
J. Supercomput.
Adnan Nasri, Mahmood Fathy, Ali Broumandnia
2018 J jnl
IEEE ACM Trans. Comput. Biol. Bioinform.
Nafiseh Sedaghat, Mahmood Fathy, Mohammad Hossein Modarressi, Ali Shojaie
2018 J jnl
Comput. Vis. Image Underst.
Mohammad Sabokrou, Mohsen Fayyaz, Mahmood Fathy, Zahra Moayed, Reinhard Klette
2018 J jnl
J. Supercomput.
Ali Kazemi Niari, Reza Berangi, Mahmood Fathy
2018 C conf
ISCAS
Pooneh Safayenikoo, Arghavan Asad, Mahmood Fathy, Farah Mohammadi
2018 J jnl
CoRR
Mohammad Hajizadeh Saffar, Mohsen Fayyaz, Mohammad Sabokrou, Mahmood Fathy
2018 conf
LASCAS
Aniseh Dorostkar, Arghavan Asad, Mahmood Fathy, Farah Mohammadi
2018 J jnl
CoRR
Mohammad Hajizadeh Saffar, Mohsen Fayyaz, Mohammad Sabokrou, Mahmood Fathy
2017 conf
CCECE
Pooneh Safayenikoo, Arghavan Asad, Mahmood Fathy, Farah Mohammadi
2017 J jnl
CoRR
Elaheh Sadredini, Reza Rahimi, Paniz Foroutan, Mahmood Fathy, Zainalabedin Navabi
2017 conf
ISQED
Pooneh Safayenikoo, Arghavan Asad, Mahmood Fathy, Farah Mohammadi
2017 J jnl
CoRR
Elaheh Sadredini, Mohammadreza Najafi, Mahmood Fathy, Zainalabedin Navabi
2017 J jnl
IEEE Trans. Image Process.
Mohammad Sabokrou, Mohsen Fayyaz, Mahmood Fathy, Reinhard Klette
2017 conf
ReCoSoC
Fatemeh Arezoomand, Arghavan Asad, Mahdi Fazeli, Mahmood Fathy, Farah Mohammadi
2017 conf
CCECE
Pooneh Safayenikoo, Arghavan Asad, Mahmood Fathy, Farah Mohammadi
2017 J jnl
Mach. Vis. Appl.
Mohammad Sabokrou, Mahmood Fathy, Zahra Moayed, Reinhard Klette
2017 C conf
DSD
Aniseh Dorostkar, Arghavan Asad, Mahmood Fathy, Farah Mohammadi
2017 J jnl
Microprocess. Microsystems
Arghavan Asad, Ozcan Ozturk, Mahmood Fathy, Mohammad Reza Jahed-Motlagh
2017 J jnl
J. Low Power Electron.
Arghavan Asad, Mahmood Fathy, Mohammad Reza Jahed-Motlagh, Kaamran Raahemifar
2017 conf
MCSoC
Fatemeh Arezoomand, Arghavan Asad, Mahdi Fazeli, Mahmood Fathy, Farah Mohammadi
2017 A conf
IROS
Mohammad M. Arzani, Mahmood Fathy, Hamid Aghajan, Ahmad Akbari Azirani, Kaamran Raahemifar, Ehsan Adeli
2017 J jnl
CoRR
Elaheh Sadredini, Mohammad Hashem Haghbayan, Mahmood Fathy, Zainalabedin Navabi
2016 J jnl
J. Supercomput.
Nik Mohammad Balouchzahi, Mahmood Fathy, Ahmad Akbari
2016 conf
EWDTS
Elaheh Sadredini, Reza Rahimi, Paniz Foroutan, Mahmood Fathy, Zainalabedin Navabi
2016 J jnl
CoRR
Mohammad Sabokrou, Mohsen Fayyaz, Mahmood Fathy, Reinhard Klette
2016 C conf
ISCAS
Salman Onsori, Arghavan Asad, Kaamran Raahemifar, Mahmood Fathy
2016 J jnl
CoRR
Mohsen Fayyaz, Mohammad Hajizadeh Saffar, Mohammad Sabokrou, Mahmood Fathy, Reinhard Klette
2016 conf
ACCV Workshops (1)
Mohsen Fayyaz, Mohammad Hajizadeh Saffar, Mohammad Sabokrou, Mahmood Fathy, Fay Huang, Reinhard Klette
2016 conf
NoCArc@MICRO
Pooneh Safayenikoo, Arghavan Asad, Kaamran Raahemifar, Mahmood Fathy
2015 J jnl
Wirel. Pers. Commun.
Morteza Romoozi, Mahmood Fathy, Hamideh Babaei
2015 J jnl
KSII Trans. Internet Inf. Syst.
Nik Mohammad Balouchzahi, Mahmood Fathy, Ahmad Akbari
2015 J jnl
CoRR
Mohsen Fayyaz, Masoud PourReza, Mohammad Hajizadeh Saffar, Mohammad Sabokrou, Mahmood Fathy
2015 J jnl
CoRR
Neda Abdollahi, Mohammad Jafari, Morteza Bayat, Ali Amiri, Mahmood Fathy
2015 conf
ReCoSoC
Sobhan Niknam, Arghavan Asad, Mahmood Fathy, Amir-Mohammad Rahmani
2015 C conf
DSD
Arghavan Asad, Ozcan Ozturk, Mahmood Fathy, Mohammad Reza Jahed-Motlagh
2015 J jnl
CoRR
Mohsen Fayyaz, Mohammad Hajizadeh Saffar, Mohammad Sabokrou, Mahmood Fathy
2015 conf
IGSC
Salman Onsori, Arghavan Asad, Özcan Özturk, Mahmood Fathy
2015 J jnl
IET Circuits Devices Syst.
Mohammad Taherifard, Mahmood Fathy
2015 conf
MCSoC
Ashkan Sadeghi, Kaamran Raahemifar, Mahmood Fathy, Arghavan Asad
2015 J jnl
Image Vis. Comput.
Ehsan Adeli-Mosabbeb, Mahmood Fathy
2015 J jnl
CoRR
Mohammad Sabokrou, Mahmood Fathy, Mojtaba Hosseini, Reinhard Klette
2015 conf
CVPR Workshops
Mohammad Sabokrou, Mahmood Fathy, Mojtaba Hosseini, Reinhard Klette
2014 J jnl
IEEE Trans. Intell. Transp. Syst.
Amir Hossein Ashtari, Mohd Jan Nordin, Mahmood Fathy
2014 J jnl
Intell. Data Anal.
Ehsan Adeli-Mosabbeb, Mahmood Fathy
2014 J jnl
Int. J. Data Min. Bioinform.
Reza Shamsaee, Mahmood Fathy, Ali Masoudi-Nejad
2014 J jnl
IET Image Process.
Mohammad Mehdi Farhangi, Mohsen Soryani, Mahmood Fathy
2014 J jnl
Perform. Evaluation
Hamideh Babaei, Mahmood Fathy, Morteza Romoozi
2014 conf
ACCV (5)
Ehsan Adeli-Mosabbeb, Ricardo Silveira Cabral, Fernando De la Torre, Mahmood Fathy
2014 J jnl
Wirel. Pers. Commun.
Morteza Romoozi, Mahmood Fathy, Reza Berangi
2014 J jnl
Peer-to-Peer Netw. Appl.
Hamideh Babaei, Mahmood Fathy, Reza Berangi, Morteza Romoozi
2013 conf
ICDSC
Ehsan Adeli-Mosabbeb, Kaamran Raahemifar, Mahmood Fathy
2013 J jnl
Sensors
Ehsan Adeli-Mosabbeb, Kaamran Raahemifar, Mahmood Fathy
2013 conf
ICDSC
Ehsan Adeli-Mosabbeb, Kaamran Raahemifar, Mahmood Fathy
2013 J jnl
J. Electronic Imaging
Mohammad Javad Fadaeieslam, Mohsen Soryani, Mahmood Fathy
2012 A conf
DATE
Sara Akbari, Ali Shafiee, Mahmood Fathy, Reza Berangi
2012 conf
ANT/MobiWIS
Mahmood Fathy, Kaamran Raahemifar, Hamideh Babaei, Morteza Romoozi, Reza Berangi
2012 conf
ACITY (2)
Mohammad Mehdi Farhangi, Mohsen Soryani, Mahmood Fathy
2012 conf
ANT/MobiWIS
Mahmood Fathy, Saeed Gholamalitabar Firouzjaee, Kaamran Raahemifar
2012 J jnl
J. Supercomput.
Maryam Barshan, Mahmood Fathy, Saleh Yousefi
2012 J jnl
J. Zhejiang Univ. Sci. C
Hossein Ghaffarian, Mohsen Soryani, Mahmood Fathy
2011 J jnl
CoRR
Alireza Amirshahi, Mahmood Fathy, Morteza Romoozi, Mohammad Assarian
2011 J jnl
Neural Process. Lett.
Arman Didandeh, Nima Mirbakhsh, Ali Amiri, Mahmood Fathy
2011 J jnl
J. Electronic Imaging
Mohammad Javad Fadaeieslam, Mohsen Soryani, Mahmood Fathy
2011 J jnl
Comput. Informatics
Ali Amiri, Mahmood Fathy
2010 J jnl
J. Digit. Content Technol. its Appl.
Masoomeh Zameni, Mahmood Fathy, Amin Sadri
2010 conf
EMS
Ladan Momeni, Arshin Rezazadeh, Mahmood Fathy
2010 J jnl
CoRR
Mohammad Javad Sayadi, Mahmood Fathy
2010 conf
ReConFig
Azad Fakhari, Mahmood Fathy
2010 B conf
WiMob
Sara Lakani, Hossein Ghaffarian, Mahmood Fathy, Bijan Raahemi
2010 J jnl
Comput. Electr. Eng.
Ouldooz Baghban Karimi, Mahmood Fathy
2010 J jnl
Wirel. Sens. Netw.
Ehsan Ahvar, Mahmood Fathy
2010 conf
AMT
Zeinab Zeinalpour-Tabrizi, Amir Farid Aminian-Modarres, Mahmood Fathy, Mohammad Reza Jahed-Motlagh
2010 J jnl
EURASIP J. Adv. Signal Process.
Ali Amiri, Mahmood Fathy
2010 J jnl
Wirel. Sens. Netw.
Roghayeh Soleimanzadeh, Bahareh J. Farahani, Mahmood Fathy
2010 Misc conf
ICDCN
Arshin Rezazadeh, Ladan Momeni, Mahmood Fathy
2010 conf
IPCV
Atusa Naseri, Ali Amiri, Mahmood Fathy
2009 conf
ICCSA (1)
Morteza Romoozi, Hamideh Babaei, Mahmood Fathy, Mojtaba Romoozi
2009 C conf
DSD
Amir Ehsani Zonouz, Mehrdad Seyrafi, Arghavan Asad, Mohsen Soryani, Mahmood Fathy, Reza Berangi
2009 conf
ICWN
Maryam Barshan, Mahmood Fathy, Saleh Yousefi
2009 conf
ICWN
Bahareh J. Farahani, Mahmood Fathy
2009 A conf
ESA
Marjan Morvarid, Mahmood Fathy, Reza Berangi
2009 conf
Asia International Conference on Modelling and Simulation
Arshin Rezazadeh, Mahmood Fathy, Amin Hassanzadeh
2009 conf
FGIT-FGCN
Zahra Zohoor Saadat, Saleh Yousefi, Mahmood Fathy
2009 J jnl
Simul. Model. Pract. Theory
Farshad Safaei, Ahmad Khonsari, Mahmood Fathy, Mohamed Ould-Khaoua
2009 conf
ICESS
Arshin Rezazadeh, Mahmood Fathy, Gholamali Rahnavard
2009 conf
IPCV
Ehsan Adeli-Mosabbeb, Houman Abbasian, Mahmood Fathy
2009 A conf
ESA
Arshin Rezazadeh, Mahmood Fathy
2009 A conf
ESA
Arshin Rezazadeh, Mahmood Fathy, Ladan Momeni, Amir-Massoud Bidgoli
2009 conf
ICWN
Fatemeh Naderizadeh, Mahmood Fathy
2009 conf
NEW2AN
Maryam Barshan, Mahmood Fathy, Saleh Yousefi
2009 conf
CICSyN
Mehdi Mohtashamzadeh, Mohsen Soryani, Mahmood Fathy
2009 conf
FGIT-FGCN
Mohammadreza Armaghan, Mahmood Fathy, Saleh Yousefi
2009 conf
ReConFig
Arghavan Asad, Amir Ehsani Zonouz, Mehrdad Seyrafi, Mohsen Soryani, Mahmood Fathy
2009 conf
ICWN
Mohammad Javad Sayadi, Mahmood Fathy
2009 J jnl
EURASIP J. Adv. Signal Process.
Mahmood Amintoosi, Mahmood Fathy, Nasser Mozayani
2009 conf
CSO (1)
Mahmood Amintoosi, Mahmood Fathy, Nasser Mozayani
2009 conf
FGIT-FGCN
Vahid Sadatpour, Mahmood Fathy, Saleh Yousefi, Amir Masoud Rahmani, Eun-suk Cho, Minkyu Choi
2009 conf
AINA Workshops
Maryam Barzegar, Nasser Mozayani, Mahmood Fathy
2009 conf
IC3
Arshin Rezazadeh, Mahmood Fathy
2009 A conf
ESA
Mahshid Sedghi, Mahmood Fathy
2009 conf
IPCV
Mahmood Amintoosi, Mahmood Fathy, Nasser Mozayani
2009 conf
IPCV
Ali Amiri, Mahmood Fathy
2009 conf
ICCSA (2)
Ali Amiri, Mahmood Fathy
2009 J jnl
EURASIP J. Adv. Signal Process.
Ali Amiri, Mahmood Fathy
2008 conf
IPCV
Ehsan Adeli-Mosabbeb, Mahmood Fathy
2008 conf
Asia International Conference on Modelling and Simulation
Mahmoud Hasanloo, Ali Amiri, Mahmood Fathy
2008 conf
ICWN
Mahmood Fathy, Robabeh Ghafouri, Reza Berangi
2008 C conf
AICCSA
Ehsan Shahrian, Hossein Karshenas, Mahmood Fathy
2008 Misc conf
CSICC
Ouldooz Baghban Karimi, Mahmood Fathy, Saleh Yousefi
2008 J jnl
EURASIP J. Adv. Signal Process.
Saeid Montazeri, Mahmood Fathy, Reza Berangi
2008 Misc conf
VLSI Design
Mahshid Sedghi, Elnaz Koopahi, Armin Alaghi, Mahmood Fathy, Zainalabedin Navabi
2008 J jnl
IEEE Trans. Veh. Technol.
Saleh Yousefi, Eitan Altman, Rachid El Azouzi, Mahmood Fathy
2008 C conf
APNOMS
Ouldooz Baghban Karimi, Saleh Yousefi, Mahmood Fathy, Mojtaba Mazoochi
2008 conf
ICDIM
Ouldooz Baghban Karimi, Saleh Yousefi, Mahmood Fathy, Mojtaba Mazoochi
2008 conf
IPCV
Hajar Emami, Mahmood Fathy
2008 C conf
AICCSA
Omid Abedi, Mahmood Fathy, Jamshid Taghiloo
2008 conf
IPCV
Hamid Parvin, Hosein Alizadeh, Mahmood Fathy, Behrouz Minaei-Bidgoli
2008 conf
ICCSA (2)
MohammadReza EffatParvar, Mehdi Effatparvar, Mahmood Fathy
2008 conf
ICWN
Shiva Safaripour Khanloo, Mahmood Fathy, Mohsen Soryani
2008 J jnl
Comput. Commun.
Saleh Yousefi, Eitan Altman, Rachid El Azouzi, Mahmood Fathy
2008 Misc conf
ICDCN
Farshad Safaei, Ahmad Khonsari, Mahmood Fathy, Mohamed Ould-Khaoua
2008 conf
ITNG
Mohsen Chegin, Mahmood Fathy
2008 conf
IPCV
Mahmood Fathy, Nasser Mozayani, Mahmood Amintoosi
2008 conf
ICWN
Hajar Barani, Mahmood Fathy
2008 J jnl
Microprocess. Microsystems
Farshad Safaei, Ahmad Khonsari, Mahmood Fathy, Mohamed Ould-Khaoua
2008 J jnl
J. Syst. Archit.
Farshad Safaei, Ahmad Khonsari, Mahmood Fathy, Mohamed Ould-Khaoua
2008 conf
EWDTS
Armin Alaghi, Mahshid Sedghi, Naghmeh Karimi, Mahmood Fathy, Zainalabedin Navabi
2008 conf
AINA Workshops
Ehsan Ahvar, Mahmood Fathy
2008 conf
IPCV
Mahdieh Poostchi, Hanieh Poostchi, Mahmood Fathy
2007 conf
ISVC (2)
Ehsan Adeli-Mosabbeb, Maryam Sadeghi, Mahmood Fathy
2007 conf
CDES
Fatemeh Mohamadian, Reza Berangi, Mahmood Fathy
2007 conf
ICCSA (3)
Ali Amiri, Mahmood Fathy, Mahmood Amintoosi, Hadi Sadoghi Yazdi
2007 conf
DEXA Workshops
Mohammadreza Keyvanpour, Shabnam Asbaghi, Mahmood Fathy
2007 conf
Artificial Intelligence and Pattern Recognition
Iman Masoomi Dezfuly, Mahmood Fathy
2007 J jnl
Res. Comput. Sci.
Hamed Shahbazi, Mahmood Fathy, Mohsen Soryani, Nasser Mozayani
2007 J jnl
J. Comput. Syst. Sci.
Farshad Safaei, Ahmad Khonsari, Mahmood Fathy, Mohamed Ould-Khaoua
2007 C conf
NPC
Farshad Safaei, Ahmad Khonsari, Mahmood Fathy, N. Talebanfard, Mohamed Ould-Khaoua
2007 C conf
CIT
Mohammad Javad Fadaeieslam, Behrouz Minaei-Bidgoli, Mahmood Fathy, Mohsen Soryani
2007 A conf
IPDPS
Farshad Safaei, Ahmad Khonsari, Mahmood Fathy, Amirhossein Shantia, Mohamed Ould-Khaoua
2007 conf
Asia-Pacific Computer Systems Architecture Conference
Farshad Safaei, Ahmad Khonsari, Mahmood Fathy, N. Talebanfard, Mohamed Ould-Khaoua
2007 conf
ICCSA (2)
Hamideh Babaei, Mahmood Fathy, Morteza Romoozi
2007 conf
ICCSA (3)
Farshad Safaei, Mahmood Fathy, Ahmad Khonsari, N. Talebanfard
2007 B conf
AINA
Farshad Safaei, Mahmood Fathy, Ahmad Khonsari, Mohamed Ould-Khaoua, Hosein Shafiei, S. Khosravipour
2007 conf
ECUMN
Saleh Yousefi, Saeed Bastani, Mahmood Fathy
2007 conf
SITIS
Arash Jalalian, Mahmood Fathy
2007 Misc conf
International Conference on Computational Science (4)
Farshad Safaei, Ahmad Khonsari, Mahmood Fathy, Mohamed Ould-Khaoua
2007 J jnl
J. Supercomput.
Farshad Safaei, Ahmad Khonsari, Mahmood Fathy, Mohamed Ould-Khaoua
2007 conf
ICASSP (1)
Mahmood Amintoosi, Farzam Farbiz, Mahmood Fathy, Morteza Analoui, Nasser Mozayani
2007 C conf
ISPA
Farshad Safaei, Mahmood Fathy, Ahmad Khonsari, Mohamed Ould-Khaoua
2007 J jnl
Eur. J. Oper. Res.
Mahmood Amintoosi, Hadi Sadoghi Yazdi, Mahmood Fathy, Reza Monsefi
2006 conf
ISCN
Shahram Mohrehkesh, Saeed Bastani, Ali Reza Shams Shafigh, Mahmood Fathy
2006 conf
ITSC
Maryam Sadeghi, Mahmood Fathy
2006 conf
ICOIN
Saeid Montazeri, Reza Berangi, Mahmood Fathy
2006 Misc conf
International Conference on Computational Science (1)
Farshad Safaei, Mahmood Fathy, Ahmad Khonsari, Mohamed Ould-Khaoua
2006 J jnl
Comput. Electr. Eng.
Farshid Farshadjam, Mehdi Dehghan, Mahmood Fathy, Majid Ahmadi
2006 conf
Wireless and Optical Communications
Hosein Sabaghian Bidgoli, Mahmood Fathy
2006 conf
ICPP Workshops
Farshad Safaei, Ahmad Khonsari, Mahmood Fathy, Mohamed Ould-Khaoua
2006 conf
ICN/ICONS/MCL
Ouldooz Baghban Karimi, Mahmood Fathy, Saleh Yousefi
2006 J jnl
Parallel Comput.
Mohammad Reza Hoseiny Farahabady, Farshad Safaei, Ahmad Khonsari, Mahmood Fathy
2006 C conf
AICCSA
Mohammad Reza Hoseiny Farahabady, Farshad Safaei, Ahmad Khonsari, Mahmood Fathy
2006 conf
PARELEC
Farshad Safaei, Ahmad Khonsari, Mahmood Fathy, Nasser Alzeidi, Mohamed Ould-Khaoua
2006 conf
ICCSA (5)
Farshad Safaei, Mahmood Fathy, Ahmad Khonsari, Mohamed Ould-Khaoua
2006 Misc conf
ICDCN
Shahram Mohrehkesh, Mahmood Fathy, Saleh Yousefi
2006 A conf
IPDPS
Farshad Safaei, Mostafa Rezazad, Ahmad Khonsari, Mahmood Fathy, Mohamed Ould-Khaoua, Nasser Alzeidi
2005 conf
ICPP Workshops
Farshad Safaei, Ahmad Khonsari, Mahmood Fathy, Mohamed Ould-Khaoua
2005 J jnl
EURASIP J. Adv. Signal Process.
Hadi Sadoghi Yazdi, Mojtaba Lotfizad, Ehsanollah Kabir, Mahmood Fathy
2005 C conf
Communication Systems and Applications
Elham Darmanaki Farahani, Mahmood Fathy
2005 C conf
NPC
Farshad Safaei, Ahmad Khonsari, Mahmood Fathy, Mohamed Ould-Khaoua
2004 conf
ICIAR (2)
Hadi Sadoghi Yazdi, Mahmood Fathy, Mojtaba Lotfizad
2003 Misc conf
IC-AI
M. Saniee, Mahmood Fathy, Amir Masoud Rahmani
2003 Misc conf
IC-AI
M. Saniee, Mahmood Fathy, Amir Masoud Rahmani
2002 conf
ITCC
Mohsen Sharifi, Mahmood Fathy, Maryam Tayefeh Mahmoudi
2002 Misc conf
IC-AI
Mahmood Fathy, R. Sahandi
2000 Misc conf
PDPTA
Ahmad Khonsari, S. Kabiri, Mahmood Fathy, Mohamed Ould-Khaoua
2000 J jnl
Real Time Imaging
Mohammed Yakoob Siyal, Mahmood Fathy, Mohammed Atiquzzaman
1999 J jnl
Pattern Recognit. Lett.
Mohammed Yakoob Siyal, Mahmood Fathy
1999 J jnl
Microprocess. Microsystems
Mohammed Yakoob Siyal, Mahmood Fathy
1999 J jnl
Real Time Imaging
Mohammed Yakoob Siyal, Mahmood Fathy
1997 J jnl
Pattern Recognit. Lett.
Mahmood Fathy, Mohammed Yakoob Siyal
1995 J jnl
Real Time Imaging
Mahmood Fathy, Mohammed Yakoob Siyal
1995 J jnl
Pattern Recognit. Lett.
Mahmood Fathy, Mohammed Yakoob Siyal
APK_FEATURES_PDD.md
← Index APK_FEATURES_PDD.md markdown
# APK Extractor — Product Design Document

**Author:** Engineering Team
**Date:** 2026-02-21
**Status:** Draft
**Target:** redb ingestor pipeline

---

## 1. Overview

This document describes the design for adding APK (Android Package) static analysis to the redb ingestor pipeline. The APK extractor will follow the same architecture used by the existing PE, ELF, and Mach-O extractors: a format-specific base class (`APKExtractor`) with specialized sub-extractors for each analysis dimension.

### 1.1 Goals

- Extract comprehensive static metadata from Android APK files, comparable in depth to our PE/ELF/Mach-O analysis
- Follow the established extractor architecture (base class, sub-extractors, dataclasses, dual-export to Elasticsearch and ClickHouse)
- Enable clustering, hunting, and pivoting on APK-specific fields (permissions, certificates, DEX API usage, package names)
- Integrate with the existing format-agnostic extractors (BasicProperties, Hashes, DIE, CAPA, YARA, Strings, IOC)

### 1.2 Non-Goals

- Dynamic analysis / sandbox execution (out of scope)
- Full DEX decompilation to Java/smali (out of scope; may be a future extension)
- Deep analysis of embedded native `.so` libraries (inventory only; full ELF pipeline deferred)
- Recursive ingestion of APKs embedded inside other APKs (flag only; full recursive ingestion deferred)

---

## 2. Background

### 2.1 What Is an APK

An APK is a ZIP archive containing an Android application. Its internal structure:

| Path | Contents |
|------|----------|
| `AndroidManifest.xml` | Binary Android XML — package name, permissions, components, SDK versions, intent filters |
| `classes.dex` (+ `classes2.dex`, ...) | Dalvik bytecode — compiled Java/Kotlin code |
| `resources.arsc` | Compiled resource table (strings, dimensions, styles) |
| `res/` | Layouts, drawables, raw resources |
| `lib/<abi>/` | Native shared libraries (`.so`) per CPU architecture |
| `META-INF/` | JAR signing (v1 scheme), CERT.RSA/DSA certificates |
| `assets/` | Arbitrary files bundled by the developer |

### 2.2 Current State

The ingestor already detects APK files via Magika (`ingestor.py:1668`), but the handler is a no-op — it logs `"APK file detected"` and returns without running any extractors. All infrastructure for registration, dispatch, and export is already in place.

### 2.3 Industry Reference

This design was informed by analysis of existing platforms:

- **VirusTotal** — Extracts: hashes (MD5, SHA-1, SHA-256, SSDEEP, TLSH, Permhash), Android metadata (package name, SDK versions, main activity), certificate attributes, permissions with danger flags, full component lists (activities, services, receivers, providers), intent filters, and capability indicators ("performs reflection calls", "makes use of telephony related APIs")
- **Koodous** (https://docs.koodous.com/) — Powered by Androguard for static analysis. Extracts: package name, app name, activities, services, receivers, providers, permissions, intent filters, certificate (SHA-1, issuer, subject), hardcoded URLs, SDK versions. Supports YARA rules with an Androguard module for matching on all these fields
- **APKiD** (https://github.com/rednaga/APKiD) — "PEiD for Android". Signature-based identification of compilers, packers, obfuscators, protectors, anti-VM/debug/root techniques. Uses YARA rules on DEX/APK/ELF. Available under GPL or commercial perpetual license (https://github.com/rednaga/APKiD/blob/master/LICENSE.COMMERCIAL)
- **APKDetect** (https://www.apkdetect.com/) — Malware family identification (30+ families), configuration extraction, loader recognition, shared code detection

---

## 3. Architecture

### 3.1 Existing Extractor Pattern

All extractors in redb follow this hierarchy:

```
Extractor (abstract base — redb/extractors/extractor.py)
├── PEExtractor (redb/extractors/pe_extractor.py)
│   ├── PEFeaturesExtractor
│   ├── PEImportExtractor
│   ├── PESectionExtractor
│   └── ...
├── ELFExtractor (redb/extractors/elf_extractor.py)
│   ├── ELFFeaturesExtractor
│   ├── ELFImportExtractor
│   └── ...
├── MachOExtractor (redb/extractors/macho_extractor.py)
│   ├── MachOFeaturesExtractor
│   ├── MachOImportExtractor
│   └── ...
└── [Format-agnostic extractors]
    ├── BasicPropertiesExtractor
    ├── HashExtractor
    ├── DIEExtractor
    ├── CAPAExtractor
    ├── YaraExtractor
    └── StringsExtractor
```

Each concrete extractor implements:
- `tag()` — returns a `Tag` enum value identifying the extraction category
- `extract()` — performs the analysis, returns a dataclass instance or `None`
- `prepare_export_data(exporter_type)` — formats data for Elasticsearch or ClickHouse
- `get_clickhouse_table()` — returns the target ClickHouse table name

The format-specific base class (e.g., `PEExtractor`) handles:
- Accepting a pre-parsed object (e.g., `pe=`) to avoid redundant parsing
- Providing shared helper methods used by multiple sub-extractors
- Passing `precomputed_hashes` to the parent `Extractor.__init__()` when available

The ingestor dispatches extractors by filetype detected via Magika, running format-agnostic extractors (BasicProperties, Hashes, DIE, CAPA, YARA) followed by the format-specific list.

### 3.2 APK Extractor Architecture

```
Extractor
└── APKExtractor (NEW — redb/extractors/apk_extractor.py)
    ├── APKFeaturesExtractor      (redb/extractors/apk_extractors/apk_features.py)
    ├── APKManifestExtractor      (redb/extractors/apk_extractors/apk_manifest.py)
    ├── APKPermissionsExtractor   (redb/extractors/apk_extractors/apk_permissions.py)
    ├── APKSignatureExtractor     (redb/extractors/apk_extractors/apk_signature.py)
    ├── APKDexExtractor           (redb/extractors/apk_extractors/apk_dex.py)
    ├── APKResourceExtractor      (redb/extractors/apk_extractors/apk_resources.py)
    ├── APKNativeLibExtractor     (redb/extractors/apk_extractors/apk_native_libs.py)
    └── APKInconsistencyTestsExtractor (redb/extractors/apk_extractors/apk_inconsistency_tests.py)
```

The `APKExtractor` base class will:
- Accept an optional pre-parsed `androguard.core.apk.APK` object (`apk=`) to share across sub-extractors
- Parse the APK once in `__init__` if not provided
- Provide shared helpers: `_get_manifest()`, `_get_certificates()`, `_list_files()`, `_is_valid_apk()`

### 3.3 Ingestor Integration

In `ingestor.py:process_binary_file()`, the `elif filetype == "apk"` branch will be expanded to:

1. Parse the APK once using Androguard (`APK(filepath)`)
2. Run format-agnostic extractors (BasicProperties, Hashes, DIE, YARA) — same as PE/ELF/Mach-O
3. Run APK-specific extractors with the shared `apk` object
4. Run Strings + IOC extractors if applicable

---

## 4. Extractor Specifications

### 4.1 APKFeaturesExtractor

**Purpose:** Core APK metadata — the equivalent of `PEFeaturesExtractor` or `ELFFeaturesExtractor`.

**Extracted fields:**
- `package_name` — Android package identifier (e.g., `com.example.app`)
- `app_name` — Human-readable application name
- `version_code` — Internal integer version
- `version_name` — Display version string (e.g., `"1.2.3"`)
- `min_sdk_version` — Minimum Android API level
- `target_sdk_version` — Target Android API level
- `compile_sdk_version` — Compile SDK (if available)
- `main_activity` — Launcher activity class name
- `is_debuggable` — Whether `android:debuggable="true"`
- `allow_backup` — Whether `android:allowBackup="true"`
- `uses_cleartext_traffic` — Whether `android:usesCleartextTraffic="true"`
- `supported_abis` — List of ABIs from `lib/` directory (e.g., `["arm64-v8a", "armeabi-v7a"]`)
- `dex_count` — Number of DEX files
- `total_dex_size` — Combined DEX file size in bytes
- `total_file_count` — Total number of files in the APK archive
- `has_native_code` — Whether `lib/` contains `.so` files
- `has_assets` — Whether `assets/` directory is non-empty
- `uses_libraries` — Declared `<uses-library>` entries
- `earliest_content_modification` — Earliest timestamp from ZIP entry metadata
- `latest_content_modification` — Latest timestamp from ZIP entry metadata
- `contains_embedded_apk` — Whether the archive contains nested APK files (flag only)

**Tag:** `APK_FEATURES`
**ClickHouse table:** `redb_apk_features`

### 4.2 APKManifestExtractor

**Purpose:** Full AndroidManifest.xml component enumeration, mirroring what VirusTotal and Koodous display.

**Extracted fields:**
- `activities` — List of Activity class names with `exported` flag
- `services` — List of Service class names with `exported` flag
- `receivers` — List of BroadcastReceiver class names with `exported` flag
- `providers` — List of ContentProvider class names with `exported` flag
- `intent_filters_by_action` — Aggregated list of all intent filter actions
- `intent_filters_by_category` — Aggregated list of all intent filter categories
- `uses_features` — Declared hardware/software features (e.g., `android.hardware.camera`)
- `meta_data` — Key-value pairs from `<meta-data>` elements
- `manifest_xml` — Full decompiled AndroidManifest.xml as plain text

**Tag:** `APK_MANIFEST`
**ClickHouse table:** `redb_apk_manifest` (one row per APK for aggregated data), `redb_apk_components` (one row per component)

### 4.3 APKPermissionsExtractor

**Purpose:** Dedicated permission analysis with protection-level classification and permhash computation.

**Extracted fields:**
- `permissions` — List of requested permissions with protection level (`normal`, `dangerous`, `signature`, `signatureOrSystem`)
- `dangerous_permissions` — Filtered list of dangerous permissions only
- `dangerous_permission_count` — Count of dangerous permissions
- `custom_permissions` — Permissions defined by the app itself (`<permission>` declarations)
- `total_permission_count` — Total number of requested permissions
- `permhash` — SHA-256 of sorted permission list (Mandiant/Google permhash — https://github.com/google/permhash)

The `permhash` value will also be added to the `Hashes` dataclass in `redb/models/dataclasses.py` so it appears alongside `imphash`, `symhash`, etc. in the unified hash record.

**Tag:** `APK_PERMISSIONS`
**ClickHouse table:** `redb_apk_permissions` (one row per permission per APK)

### 4.4 APKSignatureExtractor

**Purpose:** Certificate and signing scheme analysis, analogous to `PESignatureExtractor` and `MachOSignatureExtractor`.

**Extracted fields:**
- `signature_scheme_versions` — Which signing schemes are present (v1 JAR, v2, v3, v4)
- `is_signed` — Whether the APK has a valid signature
- `number_of_certificates` — Certificate count in the chain
- `x509_certificates` — List of certificate details:
  - `subject` (Distinguished Name)
  - `issuer` (Distinguished Name)
  - `serial_number`
  - `valid_from` / `valid_to`
  - `thumbprint_sha1`
  - `thumbprint_sha256`
  - `algorithm`
  - `key_size`
  - `is_self_signed`
- `signer_subject` — Primary signer's subject DN (convenience field)
- `signer_issuer` — Primary signer's issuer DN

**Tag:** `APK_SIGNATURE`
**ClickHouse table:** `redb_apk_signature`

### 4.5 APKDexExtractor

**Purpose:** DEX file analysis — summarized with categorized API usage (not full method enumeration).

**Output structure (per DEX file):**

- `filename` — DEX filename (e.g., `classes.dex`)
- `sha256` — SHA-256 of the DEX file
- `class_count` — Total number of classes
- `method_count` — Total number of methods
- `string_count` — Total number of string constants
- `top_packages` — List of `{package, class_count}` for top-level Java packages
- `api_usage` — Categorized sensitive API calls:
  - `reflection` — `java.lang.reflect.*`, `Class.forName`, etc.
  - `crypto` — `javax.crypto.*`, `java.security.*`
  - `dynamic_loading` — `DexClassLoader`, `PathClassLoader`, `InMemoryDexClassLoader`
  - `telephony` — `TelephonyManager` methods
  - `sms` — `SmsManager`, `SmsReceiver`
  - `network` — `HttpURLConnection`, `OkHttp`, `Volley`, `Retrofit`
  - `native` — `System.loadLibrary`, `Runtime.exec`
  - `device_info` — `Build.*`, `Settings.Secure.ANDROID_ID`, IMEI/IMSI access
  - `file_io` — `FileOutputStream`, `SharedPreferences`, `SQLiteDatabase`
  - `ipc` — `ContentResolver`, `BroadcastReceiver`, `Binder`
- `obfuscation_indicators`:
  - `short_class_names_pct` — Percentage of classes with names <= 2 chars
  - `short_method_names_pct` — Percentage of methods with names <= 2 chars
  - `non_ascii_identifiers` — Count of identifiers with non-ASCII characters
  - `avg_class_name_length` — Average class name length

**Tag:** `APK_DEX`
**ClickHouse table:** `redb_apk_dex` (one row per DEX file), `redb_apk_dex_api_usage` (one row per API category per DEX)

### 4.6 APKResourceExtractor

**Purpose:** Inventory of embedded resources with filetype detection for suspicious content.

**Extracted fields:**
- `total_resource_count` — Total files in `res/` and `assets/`
- `total_resource_size` — Combined size
- `resource_inventory` — List of `{path, size, sha256, filetype_magika}` for each file
- `suspicious_files` — Files detected as ELF, PE, DEX, APK, ZIP, script, or other executable types
- `suspicious_file_count` — Count of suspicious files

**Tag:** `APK_RESOURCES`
**ClickHouse table:** `redb_apk_resources`

### 4.7 APKNativeLibExtractor

**Purpose:** Inventory of native `.so` libraries per ABI. No deep ELF analysis (inventory only).

**Extracted fields:**
- `native_lib_count` — Total `.so` file count
- `abis` — List of ABI directories present (e.g., `["arm64-v8a", "x86"]`)
- `native_libs` — List of `{abi, filename, size, sha256}` per `.so` file
- `known_packer_libs` — Any `.so` files matching known packer/protector library names (e.g., `libjiagu.so`, `libsecexe.so`, `libDexHelper.so`, `libprotectClass.so`)

**Tag:** `APK_NATIVE_LIBS`
**ClickHouse table:** `redb_apk_native_libs`

### 4.8 APKInconsistencyTestsExtractor

**Purpose:** Anomaly and anti-analysis detection, analogous to `PEInconsistencyTestsExtractor`.

**Extracted fields:**
- `test_zip_bomb` — Compression ratio exceeds threshold
- `test_zip_duplicate_entries` — ZIP contains duplicate filenames
- `test_zip_path_traversal` — ZIP entries with `../` path traversal
- `test_zip_suspicious_timestamps` — Timestamps in the future or at epoch (1980-01-01)
- `test_hidden_dex_files` — DEX files outside standard `classes*.dex` naming or in unexpected locations
- `test_manifest_component_mismatch` — Declared components that don't exist in DEX, or undeclared code
- `test_debuggable_release` — `android:debuggable="true"` combined with a release signature
- `test_emulator_detection_strings` — Presence of Build.FINGERPRINT/MANUFACTURER emulator check strings in DEX
- `test_debugger_detection` — Presence of `Debug.isDebuggerConnected()` calls
- `test_root_detection` — Presence of root detection patterns (su binary checks, Superuser.apk)

**Tag:** `APK_INCONSISTENCY_TESTS`
**ClickHouse table:** `redb_apk_inconsistency_tests`

---

## 5. New Dependencies

### 5.1 Required

| Library | Version | License | Purpose |
|---------|---------|---------|---------|
| **androguard** | >=4.1 | Apache 2.0 | Core APK parsing: binary XML manifest, DEX analysis, certificate extraction, permissions |
| **permhash** | latest | Apache 2.0 | Compute permhash (SHA-256 of sorted permissions) for APK clustering |

### 5.2 Already Available (no changes)

| Library | Current Version | Usage |
|---------|----------------|-------|
| `zipfile` (stdlib) | — | APK archive traversal, ZIP anomaly detection |
| `pyelftools` | 0.32 | Could be used for native .so analysis if scope expands |
| `lief` | 0.17.3 | Has `lief.DEX` module; complement to androguard for DEX class/method enumeration |
| `cryptography` | 43.0.3 | Certificate chain validation (used by PE/Mach-O signature extractors) |
| `Pillow` | 10.4.0 | Icon extraction if needed |
| `magika` | 1.0.1 | Filetype detection for embedded resources |

### 5.3 Future Consideration

| Library | License | Purpose | Notes |
|---------|---------|---------|-------|
| **APKiD** | GPL-3.0 or Commercial (perpetual, royalty-free) | Packer/protector/obfuscator identification | "PEiD for Android". Detects compilers (dx, dexlib, r8), packers (AppGuard, DingXiang, JiaguK), obfuscators (DexGuard, BlackObfuscator), protectors (DexProtector, DxShield), anti-VM/debug/root. Commercial license is perpetual and allows binary redistribution: https://github.com/rednaga/APKiD/blob/master/LICENSE.COMMERCIAL |
| **apksigtool** | MIT | APK Signature Scheme v2/v3/v4 verification | androguard handles v1 well; apksigtool provides more thorough v2+ support |
| **quark-engine** | GPL-3.0 | Behavioral analysis scoring | Similar to CAPA but for Android. Stretch goal |

---

## 6. Data Model Changes

### 6.1 New Dataclasses

Add to `redb/models/dataclasses.py`:
- `APKFeatures`
- `APKManifestComponent`
- `APKPermission`
- `APKCertificate`
- `APKCodeSigningInfo`
- `APKDexFile`
- `APKDexApiUsage`
- `APKResource`
- `APKNativeLib`
- `APKInconsistencyTests`

See Tech Annex for full field definitions.

### 6.2 Existing Dataclass Changes

**`Hashes` dataclass** — add:
```python
permhash: Optional[str] = None  # APK: SHA-256 of sorted permissions (Mandiant/Google)
```

### 6.3 Tag Enum Additions

Add to `redb/extractors/enum.py`:
```python
# APK
APK_FEATURES = "apk_features"
APK_MANIFEST = "apk_manifest"
APK_PERMISSIONS = "apk_permissions"
APK_SIGNATURE = "apk_signature"
APK_DEX = "apk_dex"
APK_RESOURCES = "apk_resources"
APK_NATIVE_LIBS = "apk_native_libs"
APK_INCONSISTENCY_TESTS = "apk_inconsistency_tests"
```

---

## 7. Implementation Phases

### Phase 1 — Core Extractors

1. `APKExtractor` base class + `APKFeaturesExtractor`
2. `APKManifestExtractor`
3. `APKPermissionsExtractor` (including permhash)
4. `APKSignatureExtractor`
5. `APKDexExtractor`
6. `APKResourceExtractor`
7. `APKNativeLibExtractor`
8. Ingestor integration (wire up dispatch in `process_binary_file()`)
9. Hashes dataclass update (add `permhash`)

### Phase 2 — Detection and Anomalies

10. `APKInconsistencyTestsExtractor`
11. Wire up existing format-agnostic extractors for APK (YARA, Strings, IOC)

### Phase 3 — Future (out of scope for this PDD)

- APKiD integration for packer/protector detection
- Deep native library analysis (run ELF pipeline on extracted `.so` files)
- Recursive APK ingestion
- androguard-yara module integration for YARA rules matching on APK metadata

---

## 8. Testing Strategy

- Unit tests per extractor using known APK samples (benign + malicious)
- Validate output against VirusTotal reports for the same samples (cross-reference fields)
- Edge cases: split APKs, obfuscated APKs, packed APKs, APKs with no native code, APKs with no DEX, corrupted APKs
- Integration test: full pipeline run (ingest APK, verify all extractors produce output, verify ClickHouse/ES export)