551 |
Deep Learning for Android Application Ransomware DetectionUnknown Date (has links)
Smartphones and mobile tablets are rapidly growing, and very important nowadays. The most popular mobile operating system since 2012 has been Android. Android is an open source platform that allows developers to take full advantage of both the operating system and the applications itself. However, due to the open source community of an Android platform, some Android developers took advantage of this and created countless malicious applications such as Trojan, Malware, and Ransomware. All which are currently hidden in a large number of benign apps in official Android markets, such as Google PlayStore, and Amazon. Ransomware is a malware that once infected the victim’s device. It will encrypt files, unlock device system, and display a popup message which asks the victim to pay ransom in order to unlock their device or system which may include medical devices that connect through the internet. In this research, we propose to combine permission and API calls, then use Deep Learning techniques to detect ransomware apps from the Android market. Permissions setting and API calls are extracted from each app file by using a python library called AndroGuard. We are using Permissions and API call features to characterize each application, which can identify which application has potential to be ransomware or is benign. We implement our Android Ransomware Detection framework based on Keras, which uses MLP with back-propagation and a supervised algorithm. We used our method with experiments based on real-world applications with over 2000 benign applications and 1000 ransomware applications. The dataset came from ARGUS’s lab [1] which validated algorithm performance and selected the best architecture for the multi-layer perceptron (MLP) by trained our dataset with 6 various of MLP structures. Our experiments and validations show that the MLPs have over 3 hidden layers with medium sized of neurons achieved good results on both accuracy and AUC score of 98%. The worst score is approximately 45% to 60% and are from MLPs that have 2 hidden layers with large number of neurons. / Includes bibliography. / Thesis (M.S.)--Florida Atlantic University, 2018. / FAU Electronic Theses and Dissertations Collection
|
552 |
Android Architecture Comparison: MVP vs. VIPERHumeniuk, Vladyslav January 2019 (has links)
Android application development has been of interest since the first Android smartphone was released. Applications are constantly getting more complex as well as smartphone hardware is getting better. New ways of developing Android applications are developed with time. There is Model View Presenter architecture that is the most used for android applications now and new View InteractorPresenter Entity Router architecture that is becoming more popular. But there is no empirical data to compare these architectures to understand what architecture will fit better for developing new applications. This thesis aims to compare the MVP and the VIPER android architectures using a few important metrics like maintainability, modifiability, testability, and performance. Results will answer what architecture is better for developing different types of projects. VIPERarchitecture showed better performance results and maintenance metrics comparison shows that both architectures have advantages and disadvantages.
|
553 |
Evaluación de usabilidad en dos aplicaciones de realidad aumentada para dispositivos móviles con sistema operativo AndroidPalomino Ruiz, Ivonne Isabel, Wong Ortecho, Guillermo Víctor 05 June 2013 (has links)
El presente proyecto de fin de carrera tiene como fin el llevar a cabo la
evaluación de usabilidad de dos aplicaciones de realidad aumentada
llamadas Layar y Wikitude, que funcionan sobre dispositivos móviles con el
sistema operativo Android. A partir de los resultados, se determina si estas
aplicaciones son lo suficientemente intuitivas tanto para usuarios
familiarizados con el uso de móviles, como para personas ajenas a estos.
En el primer capítulo se describe detalladamente el problema a solucionar, así
como la solución planteada; es decir, la ejecución de evaluaciones heurísticas
a las aplicaciones seleccionadas. Del mismo modo, se detallan los conceptos
relacionados a las evaluaciones a realizar, entre los que se encuentran la
usabilidad y la realidad aumentada.
A continuación, en el segundo capítulo, se realiza el diseño de las
evaluaciones, describiendo la selección de las aplicaciones, las condiciones
necesarias para las pruebas y los usuarios que la realizarán. De la misma
manera, se establecen las fases que componen cada evaluación, así como
los formatos a utilizar durante la ejecución de cada una.
Luego de diseñar las evaluaciones, se procede a realizar la ejecución de las
mismas, por lo que en el tercer capítulo se describe de qué manera se
llevaron a cabo las fases de las evaluaciones, resaltando los acontecimientos
que pudiesen afectar la confiablidad de los resultados.
Los resultados de las evaluaciones se obtuvieron a partir de la recopilación y
análisis de la información plasmada por los usuarios en los formatos
utilizados. Por esta razón, en el cuarto capítulo se presentan algunos de estos
formatos, y se describen los resultados obtenidos a partir del análisis de
estas.
Finalmente, en el quinto capítulo se presentan las conclusiones del proyecto. / Tesis
|
554 |
Diseño e implementación de una plataforma interactiva móvil orientada al aprendizaje en temas de físicaKu Lam, Christian Alexander 10 July 2014 (has links)
En la presente tesis se realiza el diseño y la implementación de un aplicativo móvil en
Android cuyo propósito es el de motivar a los alumnos en la etapa escolar, edad en la
que los jóvenes pierden fácilmente el interés por los temas académicos. Para lograr esto,
la aplicación utiliza temáticas del curso de física para ser aplicadas en un innovador
juego educativo, de esta forma el estudiante podrá complementar lo visto en clase con
las dinámicas propias del juego. El entorno de trabajo a utilizar es Unity3D, equipado
con un potente motor de física para la simulación de comportamientos reales en un
entorno virtual. Adicionalmente, se emplean distintos programas y librerías para reforzar
la aplicación móvil y resulte en un producto llamativo para el público.
El trabajo realizado se encuentra estructurado de la siguiente manera:
En el capítulo 1 se introduce el tema, la problemática que afronta nuestra sociedad en la
actualidad y las tendencias en torno a la tecnología. Adicionalmente, se plantean los
objetivos del proyecto.
En el capítulo 2 se enfoca el marco teórico de las tecnologías involucradas en la
culminación del juego: información sobre los distintos sistemas operativos,
generalidades de la variedad de entornos de desarrollo para juegos y aplicaciones
orientadas al diseño.
En el capítulo 3 se realiza el análisis y la comparación de las alternativas presentadas,
justificando la selección. Además, se incluye el diseño de la aplicación; temáticas y
mecánicas a usar.
En el capítulo 4 se detalla el proceso de implementación del juego, se trata de explicar
la aventura de crear un juego desde el punto de vista del desarrollador. / Tesis
|
555 |
Ambiente móvel para otimização de desktop semânticoSesterheim, Guilherme Callegaro 11 March 2013 (has links)
Submitted by Maicon Juliano Schmidt (maicons) on 2015-07-07T14:06:44Z
No. of bitstreams: 1
Guilherme Callegaro Sesterheim.pdf: 2426478 bytes, checksum: a117a25708449aeacc29b10c7a0e280b (MD5) / Made available in DSpace on 2015-07-07T14:06:44Z (GMT). No. of bitstreams: 1
Guilherme Callegaro Sesterheim.pdf: 2426478 bytes, checksum: a117a25708449aeacc29b10c7a0e280b (MD5)
Previous issue date: 2013-01-31 / Nenhuma / Este trabalho foi desenvolvido com o objetivo de melhorar a experiência do usuário com o desktop de dispositivos que usam sistema operacional Android através de identificação de contextos de uso. Os contextos de uso foram identificados através de registros de uso de aplicativos durante utilização dos mesmos. Para tanto, diferentes técnicas foram estudadas, tanto para entender a localização do dispositivo, como também para identificar e analisar diversos trabalhos relacionados de diferentes áreas. Para entender a localização do dispositivo, diferentes hardwares e as maneiras de interagir com os mesmos foram estudadas. Hardwares de Bluetooth, Wireless, GPS, NFC, Infravermelho e acelerômetro foram estudados e sua interação foi testada para obter informações e então armazená-las. Trabalhos da área também foram estudados, tendo desde dispositivos criados com o propósito de identificar localização, até alterações no comportamento de aplicações que estamos acostumados a usar com o propósito de deixa-las mais específicas. Como resultado deste trabalho, um protótipo funcional foi criado com o propósito de melhorar a experiência do usuário com o desktop de seu smartphone. Uma maneira inteligente de arranjar e destacar os ícones do desktop, e também de alertar o usuário sobre recomendações de aplicativos baseadas em histórico de uso, foi feita para ajuda-lo com suas tarefas usuais. / This work was developed aiming to improve the user experience in mobile devices’ desktop that uses Android operational system using context identification. The use contexts were identified through application use registers created during their utilization. For that, different techniques were used, such as to understand the device’s localization, and also to identify the related works in different problems found in different areas. To understand the device’s localization, different hardwares and the ways to interact with them were studied. Bluetooth, Wireless, GPS, NFC, Infrared and accelerometer hardware were searched and their interaction were tested to obtain and to store their information. Works related to the area were studied, finding since entire devices created specifically to identify the localization, and other ones created to change the application’s behavior we are used to use with the purpose of making it more specific. As result of this work, a functional prototype was created to enhance the user experience with his smartphone’s desktop. A more intelligent way to rearrange and to detach the desktop icons, and also to alert the user about the recommendation, was made to help him with his usual tasks.
|
556 |
Uma abordagem de teste para aplicativos android utilizando os cenários do behavior driven development / A test approach for Android apps using the behavior driven development scenariosAlbiero, Fernando Weber January 2017 (has links)
Os aplicativos móveis, desenvolvidos originalmente para a área do entretenimento, hoje estão presentes nos mais diversos domínios, sendo comuns inclusive em áreas de alto valor agregado, como: varejista, logística, bancária, médica, entre outras. Portanto, a qualidade e correção dos aplicativos móveis tornam-se obrigatórios e as atividades de teste essenciais. Porém a qualidade das aplicações móveis nem sempre é satisfatória. Isso ocorre devido ao fato dessas aplicações sofrerem com a pressão do mercado e passarem por um processo muito rápido de desenvolvimento, onde geralmente a fase de testes é negligenciada ou realizada de forma superficial, pela própria equipe de desenvolvimento, comprometendo assim a qualidade da aplicação. Este trabalho propõe uma abordagem baseada no Behavior Driven Development para ajudar na definição de testes de sistema para aplicativos nativos do Android. A abordagem proposta utiliza os arquivos de leiaute da aplicação para extrair informações sobre os componentes da interface e sobre os eventos esperados pelo sistema. A partir dessas informações, é possível verificar a cobertura dos cenários existentes em relação aos eventos disponíveis na interface com o usuário. Além disso, é possível identificar elementos do leiaute que não são exercitados pelos cenários existentes. A abordagem proposta é implementada por uma ferramenta chamada Android Behavior Testing Tool que, por meio da interpretação dos cenários do Behavior Driven Development, fornece uma visão geral do fluxo comportamental da aplicação ao testador (visão hoje não disponível), proporcionando assim uma noção de fácil compreensão sobre a cobertura dos testes em relação aos elementos da interface do aplicativo. Desta forma, o testador pode julgar a integridade dos casos de teste disponíveis em relação às funcionalidades implementadas e, se necessário, implementar novos testes. A ferramenta também faz uso dos arquivos de leiaute do aplicativo para identificar os componentes da interface que não foram testados e gera, neste caso, modelos de cenários no formato do BDD, automatizando assim a tarefa de escrita dos mesmos. A abordagem proposta foi utilizada em quatro aplicativos Android e se mostrou útil, uma vez que, em três estudos de caso foram detectados bugs oriundos de inconsistências lógicas nos cenários ou elementos não exercitados pelos cenários. / Mobile applications, originally developed for entertainment, nowadays are present in a wide range of domains, being common even in areas of high value such as retailer, logistics, banking, and medical, among others. However, the quality and correctness of mobile applications become mandatory and testing activities are essential. However, the quality of mobile applications is not always good enough. This is because these applications suffer from market pressure and pass through a very rapid development process where the testing phase usually is neglected or superficially performed by the development team itself, thus compromising the quality of the application. This work proposes an approach based on Behavior Driven Development to help to define system tests for native Android applications. The proposed approach uses the application's layout files to extract information about the interface components and the events expected by the system. From this information, it is possible to check out the coverage of existing test scenarios against events available in the user interface. In addition, it is possible to identify unexercised usage scenarios from the existing test scenarios. The proposed approach is implemented by a tool called Android Behavior Testing Tool which, through the interpretation of the BDD usage scenarios, provides to the tester an overview of the behavioral flow of the application (otherwise unavailable), thus providing a notion of easy understanding of test coverage in relation to the application interface elements. In this way, the tester can judge the integrity of the available test cases in relation to the functionalities implemented and, if necessary, implement new tests. The tool also makes use of the application's layout files to identify untested interface components and in this case generates test scenario models in the BDD format, thus automating the writing task of the scenarios. The proposed approach was used in four Android applications and proved to be useful, since in three case studies bugs were detected. Detected bugs originated from logical inconsistencies in the test scenarios or elements that were not exercised by the scenarios.
|
557 |
Webbaserad eller plattformsspecifik tidrapporteringsapplikation / Web based or platform specific time reporting applicationLaurell, David January 2012 (has links)
Denna rapport tar upp för och nackdelar med att göra en webbaserad mobilapplikationgentemot en plattformsspecifik applikation för ett tidrapporteringssystem. Tre prototyperutvecklades för det existerande tidrapporteringssystemet XLTime hos Nlight Solutions.Prototyperna gjordes mot Android, Iphone och webbläsaren för dessa två plattformar.Efter att prototyperna iterativt gått igenom olika funktioner från en givenkravspecifikation går rapporten sedan in på att utvärdera hur funktionaliteten skiljer sigmellan de webbaserade och de plattformsspecifika applikationerna. Här kunde man se attswipe-funktionalitet betedde sig konstigt för vissa webbläsare, och att implementationenav input-element av datumtyp skiljer sig i webbläsaren. Felsökning och uppdatering avapplikationer var dock mycket snabbare för den webbaserade prototypen.Efter att funktionaliteten utvärderats startades användartest med 6 olika användare. Defick utföra ett antal uppgifter på varje prototyp och här kunde man se att olika problemuppstod. T ex fick användarna också problem med swipe-funktionaliteten. Näranvändarna fick välja plattform tyckte de mest om den webbaserade applikationen,eftersom de tyckte den var mest tydlig och lättare att förstå. Detta p.g.a. att den användetext på knappar istället för ikoner som de inte förstod.I slutsatsen av rapporten tas det upp att det är möjligt att skapa webbaseradetidrapporteringsapplikationer om man undviker att använda mycket animationer och inteanvänder element som inte stöds av alla webbläsare. / Program: Systemarkitekturutbildningen
|
558 |
Mobilutveckling / Mobile developmentJeppsson, Andreas, Snygg, Johan January 2012 (has links)
Det finns flera olika tillvägagångssätt för att göra det möjligt att skapa program som kan exekveras på flera olika plattformar. Detta tillvägagångssätt för utveckling mot flera plattformar, kallas plattformsoberoende utveckling. En av teknikerna för plattformsoberoende utveckling, bygger på att de specifika plattformarna har tillgång till en virtuell maskin som programmet kompileras mot. Den virtuella maskinen översätter sedan koden till plattformens specifika maskinkod. Denna teknik används bland annat av plattformsoberoende språk som Java och .NET-familjen. Andra tekniker som exempelvis förprocessering (eng. Preprocessing), möjliggör plattformsoberoende genom att programmets källkod kompileras olika beroende på vilken plattform som programmet ska exekveras på.Studien hade för avseende att utreda problemen med plattformsoberoende utveckling mellan de mobila plattformarna Android, iOS och Windows Phone 7. Utredningen visade att det vid studiens utförande, inte fanns något ramverk eller annan teknik som till fullo hade stöd för att skapa ett högpresterande mobilspel för målplattformarna. Genom användandet av Mono for Android och XNA skapades ett plattformsoberoende spel för plattformarna med utvecklingsspråket C#. Plattformsoberoendet kunde uppnås tack vare Mono Runtime som är en implementation av Common Language Runtime för Android och iOS. Common Language Runtime är .NET’s plattformsoberoende teknik och är en virtuell maskin.Mobilspelet skapades för att påvisa att utveckling av plattformsoberoende funktionalitet för 2D- och 3D-grafik, användarinmatning och hantering av media, är möjligt. Spelprototypens funktionalitet togs fram genom att undersöka populära mobilspel, ute på marknaden idag. För plattformsoberoende grafik användes en spelmotor vid namn Axiom, för användarinmatningen samt hanteringen av media utvecklades egna lösningar. Med spelet visade studien att det är möjligt att skapa plattformsoberoende, högpresterande spel för plattformarna Android och Windows Phone 7. Att lösningen fungerar även för iOS bevisades bara teoretiskt då Axiom vid studiens tidpunkt inte hade fullt stöd för utveckling till plattformen. Teknikerna som lösningen utnyttjade var en virtuell maskin för varje plattform samt förprocessering som såg till att vissa delar av källkoden kompilerades specifikt för de olika plattformarna.Lösningen som studien presenterar är inte en fullskaligt plattformsoberoende lösning då källkoden innehåller vissa plattformsspecifika delar. Dock har lösningen visat att mycket av koden är plattformsoberoende mellan plattformarna. Det är främst implementationen av användarinmatningen och hanteringen av media som innehåller plattformsspecifik kod. Därför med dessa redan implementerade är det möjligt att nästan helt och hållet skapa ett plattformsoberoende, högpresterande spel för målplattformarna. / Program: Systemarkitekturutbildningen
|
559 |
Uma solução integrada para a melhoria da segurança de dispositivos móveis baseada na plataforma androidCAVALCANTI, Klever Regis Pires 19 August 2016 (has links)
Submitted by Mario BC (mario@bc.ufrpe.br) on 2017-02-08T12:40:57Z
No. of bitstreams: 1
Klever Regis Pires Cavalcanti.pdf: 1314062 bytes, checksum: 34026ddab2d63df64fe70cedadde679e (MD5) / Made available in DSpace on 2017-02-08T12:40:57Z (GMT). No. of bitstreams: 1
Klever Regis Pires Cavalcanti.pdf: 1314062 bytes, checksum: 34026ddab2d63df64fe70cedadde679e (MD5)
Previous issue date: 2016-08-19 / Every day, mobile devices are already part of the lives of users, mainly to check emails, access social networks, make payments, access bank accounts or surf the Internet, and also by the need to be connected 24 hours a day. In addition, the number of viruses and attacks by malicious people to mobile devices grows every day, mainly due to behavioral actions of users who do not properly configure the mobile device, leaving it vulnerable. Actions such as to: do not put password on your home screen, do not encrypt the memory card, do not use an antivirus, do not download unofficial applications and others are examples of risky user configuration. Therefore, in order to support the user in the properly configuration of your mobile device, this work aims to propose a strategy to minimize security risks on mobile devices. This strategy is focused on the development of a solution called MSC Mobile Security Check, which aims to help the user in search of risky settings in the mobile device in security terms, and is based on 16 pre-configured items related to common misconfigurations. These 16 items were chosen based on scientific research, security articles and books related to security issues arising from risky configuration by the high-level user. This solution was implemented based on the Android operating system and is available on its associated virtual store. The evaluation of the proposed solution has shown that even with users with high level of security knowledge on mobile devices, it is common to find several configuration risks, and the proposed solution works directly for the presentation of these risks and subsequent notification to the high-level user. After that, the user is able to take corrective measures to reduce these security risks of the mobile device. / Atualmente, os dispositivos móveis já fazem parte da vida dos usuários, principalmente para verificar e-mails, acessar as redes sociais, fazer pagamentos, acessar contas bancárias ou navegar na Internet, e também pela necessidade de estarem conectadas 24 horas por dia. Adicionalmente, o número de vírus e ataques por pessoas mal intencionadas aos dispositivos móveis cresce a cada dia, fruto principalmente de ações comportamentais dos usuários que não configuram corretamente o dispositivo móvel, deixando-o vulnerável. Ações como: não colocar senha na tela inicial, não criptografar o cartão de memória, não utilizar um antivírus, baixar aplicativos não oficiais e outros são exemplos da má configuração do usuário. Portanto, com o intuito de auxiliar o usuário a configurar corretamente o seu dispositivo móvel, este trabalho objetiva a elaboração de uma estratégia para a minimização de riscos de segurança em dispositivos móveis. A estratégia consiste no desenvolvimento de uma solução denominada MSC- Mobile Security Check, que tem como objetivo ajudar o usuário na busca de más configurações do dispositivo móvel em termos de segurança com base em 16 itens pré-configurados em relação à má configuração. Esses 16 itens foram escolhidos tendo como base pesquisas científicas, artigos e cartilhas de segurança relacionadas com problemas de segurança advindos de má configuração por parte do usuário final. Esta solução foi implementada baseada no sistema operacional Android e está disponível na loja virtual deste ambiente. A avaliação da solução proposta mostrou que, mesmo com usuários com bom nível de conhecimento de segurança em dispositivos móveis, é comum a existência de diversas vulnerabilidades de configuração, e a solução proposta atua diretamente para o levantamento dessas brechas e posterior divulgação ao usuário final. Desta forma, o usuário está apto a tomar medidas corretivas para diminuir os riscos de segurança associados ao uso do dispositivo móvel.
|
560 |
Remote Method Invocation for Android Platform / Remote Method Invocation for Android PlatformMagic, Ľuboš January 2012 (has links)
The thesis inquires the potential of a remote method invocation in the context of the Android mobile devices. The primary goal of the thesis is to investigate execution of security-critical parts of application code on smart cards (a prominent example of a smart card is the SIM card). Further, the thesis discusses issues of implementation of the remote method invocation in general, covering also its other frequent forms (such as execution on a remote server). A part of the thesis is a real world case study, which demonstrates the results of the thesis.
|
Page generated in 0.0281 seconds