974 research outputs found

    Detecting anomalous energy consumption in android applications

    Get PDF
    The use of powerful mobile devices, like smartphones, tablets and laptops, are changing the way programmers develop software. While in the past the primary goal to optimize software was the run time optimization, nowadays there is a growing awareness of the need to reduce energy consumption. This paper presents a technique and a tool to detect anomalous energy consumption in Android applications, and to relate it directly with the source code of the application. We propose a dynamically calibrated model for energy consumption for the Android ecosystem, and that supports different devices. The model is then used as an API to monitor the application execution: first, we instrument the application source code so that we can relate energy consumption to the application source code; second, we use a statistical approach, based on fault-localization techniques, to localize abnormal energy consumption in the source code

    Unsupervised Anomaly-based Malware Detection using Hardware Features

    Get PDF
    Recent works have shown promise in using microarchitectural execution patterns to detect malware programs. These detectors belong to a class of detectors known as signature-based detectors as they catch malware by comparing a program's execution pattern (signature) to execution patterns of known malware programs. In this work, we propose a new class of detectors - anomaly-based hardware malware detectors - that do not require signatures for malware detection, and thus can catch a wider range of malware including potentially novel ones. We use unsupervised machine learning to build profiles of normal program execution based on data from performance counters, and use these profiles to detect significant deviations in program behavior that occur as a result of malware exploitation. We show that real-world exploitation of popular programs such as IE and Adobe PDF Reader on a Windows/x86 platform can be detected with nearly perfect certainty. We also examine the limits and challenges in implementing this approach in face of a sophisticated adversary attempting to evade anomaly-based detection. The proposed detector is complementary to previously proposed signature-based detectors and can be used together to improve security.Comment: 1 page, Latex; added description for feature selection in Section 4, results unchange

    Smart Home Solutions Using Wi-Fi-based Hardware

    Get PDF
    Home automation technology has been increasingly important in our lives, since it offers numerous advantages, e.g., greater comfort, safety, security and energy efficiency. A smart home automation system usually includes a central computer with deployed home automation software and several distributed sensors and actuators. Wired connections between a central computer and sensor/actuator nodes are already well established, however, wireless solutions are an emerging trend. This work addresses smart home automation solutions that are based on wireless Wi-Fi network. Such solutions enable an upgrade of an existing house into a smart house without modifications of hardware installations. The article includes an overview of related works in this research field, and a case study of cost effective home automation solution that is based on open source home automation software and wireless, custom developed, Wi-Fi based hardware

    Experiments on Model-Based Software Energy Consumption Analysis Involving Sorting Algorithms

    Get PDF
    Although energy has become an important aspect in software development, little support exists for creating energy-efficient programs. One reason for that is the lack of abstractions and tools to enable the analysis of relevant properties involving energy consumption. This paper presents the results of some experiments involving the gathering, modelling, and analysis of energy-related information, in particular, the costs of executing certain parts of a software. We combine some existing free and open-source tools to carry out the experiments, extending one of them to handle energy information. Our experiments consider a comparison of energy consumption of Java implementations of the Bubble Sort, Insertion Sort and Selection Sort algorithms using different data structures. We show how to combine an energy measurement tool and a model analysis tool to carry such a comparison. Based on this support and on our experiments, we believe this is a first step to allow developers to start creating more energy-efficient software

    The evolution of energy requirements of smartphones based on user behaviour and implications of the COVID-19 era

    Get PDF
    Smartphones have evolved to become frequent companions to humans. The common problem shared by Android users of smartphones was, and continues to be, about saving their batteries and preventing the need to use any recharging tools. A significant number of studies have been performed in the general field of "saving energy in smartphones". During a state of global lockdown, the use of smartphone devices has skyrocketed, and many governments have implemented location-tracking applications for their citizens as means of ensuring that the imposed governmental restrictions are being adhered to. Since smartphones are battery-powered, the opportunity to conserve electricity and ensure that the handset does not have to be charged so much or that it does not die and impede location-tracking during this period of crisis is of vital significance, impacting not only the reliability of tracking, but also the usability of the mobile itself. While there are methods to reduce the batteryā€™s drain from mobile app use, they are not fully utilized by users. Simultaneously, the following the manuscript demonstrates the growing prevalence of mobile applications in daily lives, as well as the disproportionally increasing phone functionality, which results in the creation of a dependency towards smartphone use and the need of energy to recharge and operate theses smartphones
    • ā€¦
    corecore