WebTOP is a three-dimensional, interactive computer graphics system developed at Mississippi State University to help students learn about waves and optics. It has been used to help teach undergraduate introductory physics and upper-level optics classes. Currently, it is comprised of sixteen modules spanning eight different subject areas. The subject areas are waves, geometrical optics, reflection and refraction, polarization, interference, diffraction, lasers, and scattering. WebTOP simulations have the following characteristics. First, they are three dimensional, i.e., they have navigation controls that allow the user to rotate the scene, pan, or zoom, in order to view it from any desired orientation. Secondly, they are interactive. The user can change the parameters either by typing in the desired values into the appropriate text entry box, or by using the mouse cursor to move the appropriate widget in the scene. Thirdly, the simulations are animated, for those phenomena for which animation is appropriate. Furthermore, the simulations include VCR-type controls that allow the user to record his/her interactions with the simulation for later retrieval, viewing, and editing. Finally, these modules run inside a web browser. They can be run from our website, http://webtop.msstate.edu, or they can be downloaded from this website and run on the user’s local machine. This paper provides an overview of WebTOP and a description of each of the modules. ©2003 Optical Society of America OCIS codes: (000.2060) Education; (000.2690) General physics
This paper presents SpanDex, a set of extensions to Android's Dalvik virtual machine that ensures apps do not leak users' passwords. The primary technical challenge addressed by SpanDex is precise, sound, and efficient handling of implicit information flows (e.g., information transferred by a program's control flow). SpanDex handles implicit flows by borrowing techniques from symbolic execution to precisely quantify the amount of information a process' control flow reveals about a secret. To apply these techniques at runtime without sacrificing performance, SpanDex runs untrusted code in a data-flow sensitive sandbox, which limits the mix of operations that an app can perform on sensitive data. Experiments with a SpanDex prototype using 50 popular Android apps and an analysis of a large list of leaked passwords predicts that for 90% of users, an attacker would need over 80 login attempts to guess their password. Today the same attacker would need only one attempt for all users.
Today's smartphone operating systems frequently fail to provide users with adequate control over and visibility into how third-party applications use their privacy-sensitive data. We address these shortcomings with TaintDroid, an efficient, systemwide dynamic taint tracking and analysis system capable of simultaneously tracking multiple sources of sensitive data. TaintDroid provides real-time analysis by leveraging Android's virtualized execution environment. Using TaintDroid to monitor the behavior of 30 popular third-party Android applications, we found 68 instances of misappropriation of users' location and device identification information across 20 applications. Monitoring sensitive data with TaintDroid provides informed use of third-party applications for phone users and valuable input for smartphone security service firms seeking to identify misbehaving applications.
Today's smartphone operating systems frequently fail to provide users with adequate control over and visibility into how third-party applications use their private data. We address these shortcomings with TaintDroid, an efficient, system-wide dynamic taint tracking and analysis system capable of simultaneously tracking multiple sources of sensitive data. TaintDroid provides realtime analysis by leveraging Android's virtualized execution environment. TaintDroid incurs only 14% performance overhead on a CPU-bound micro-benchmark and imposes negligible overhead on interactive third-party applications. Using TaintDroid to monitor the behavior of 30 popular third-party Android applications, we found 68 instances of potential misuse of users' private information across 20 applications. Monitoring sensitive data with TaintDroid provides informed use of third-party applications for phone users and valuable input for smartphone security service firms seeking to identify misbehaving applications.
Work on delay tolerant networks (DTN) and peer-to-peer replication systems has made rapid advances with the similar goal of permitting reliable message delivery in challenged communication environments. Techniques developed for both types of systems also bear some similarity. Both exploit opportunistic connectivity to route messages and updates to their desired destinations while making minimal assumptions about end-to-end connectivity. However, they also have some unique characteristics. DTNs have recently incorporated forwarding algorithms that make use of historical information on past encounters between participants and predictions of future connectivity. Modern replication systems utilize protocols with low overheads that guarantee eventual consistency and at-most-once delivery while supporting content-based filters. In this paper, we show how a DTN-like messaging system can be readily built as a simple application on top of a peer-to-peer replication platform. To reduce delivery delays while retaining the desirable replication guarantees, we then extend the replication substrate to permit pluggable DTN routing protocols. We describe the implementation of four representative DTN schemes as replication policies and evaluate these extensions with emulations driven by traces of e-mail messaging and vehicular mobility. We conclude that DTNs and replication systems can benefit substantially from a cross-fertilization of ideas.
We present the first in-depth analysis of the performance of attempting concurrent AP connections from highly mobile clients. Previous solutions for concurrent Wi-Fi are limited to stationary wireless clients and do not take into account a myriad of mobile factors. Through an analytical model, optimization framework, and numerous outdoor experiments, we show that connection duration, AP response times, channel scheduling, available and offered bandwidth, node speed, and dhcp joins all affect performance. Building on these results, we design, implement, and evaluate a system, Spider, that establishes and maintains concurrent connections to 802.11 APs in a mobile environment. The system uses multi-AP selection, channel-based scheduling, and opportunistic scanning to maximize throughput while mitigating the overhead of association and dhcp. While Spider can manage multiple channels, we empirically demonstrate that it achieves maximum throughput when using multiple APs on a single channel. Our evaluation shows that Spider provides a 400% improvement in throughput and 54% improvement in connectivity over stock Wi-Fi implementations.
As more services have come to rely on sensor data such as audio and photos collected by mobile phone users, verifying the authenticity of this data has become critical for service correctness. At the same time, clients require the flexibility to tradeoff the fidelity of the data they contribute for resource efficiency or privacy. This paper describes YouProve, a partnership between a mobile device's trusted hardware and software that allows untrusted client applications to directly control the fidelity of data they upload and services to verify that the meaning of source data is preserved. The key to our approach is trusted analysis of derived data, which generates statements comparing the content of a derived data item to its source. Experiments with a prototype implementation for Android demonstrate that YouProve is feasible. Our photo analyzer is over 99% accurate at identifying regions changed only through meaning-preserving modifications such as cropping, compression, and scaling. Our audio analyzer is similarly accurate at detecting which sub-clips of a source audio clip are present in a derived version, even in the face of compression, normalization, splicing, and other modifications. Finally, performance and power costs are reasonable, with analyzers having little noticeable effect on interactive applications and CPU-intensive analysis completing asynchronously in under 70 seconds for 5-minute audio clips and under 30 seconds for 5-megapixel photos.
We investigate attempting concurrent connections to multiple Wi-Fi access points (APs) from highly mobile clients. Previous multi-AP solutions are limited to stationary wireless clients and do not take into account a myriad of mobile factors. We show that connection duration, AP response times, channel scheduling, available and offered bandwidth, node speed, and dhcp joins all affect performance. Building on these results, we present a system, Spider, that establishes and maintains concurrent connections to 802.11 APs in a mobile environment. While Spider can manage multiple channels, we demonstrate that it achieves maximum throughput when using multiple APs on a single channel.
Smartphones and "app" markets are raising concerns about how third-party applications may misuse or improperly handle users' privacy-sensitive data. Fortunately, unlike in the PC world, we have a unique opportunity to improve the security of mobile applications thanks to the centralized nature of app distribution through popular app markets. Thorough validation of apps applied as part of the app market admission process has the potential to significantly enhance mobile device security. In this paper, we propose AppInspector, an automated security validation system that analyzes apps and generates reports of potential security and privacy violations. We describe our vision for making smartphone apps more secure through automated validation and outline key challenges such as detecting and analyzing security and privacy violations, ensuring thorough test coverage, and scaling to large numbers of apps.
We investigate attempting concurrent connections to multiple Wi-Fi access points (APs) from highly mobile clients. Previous multi-AP solutions are limited to stationary wireless clients and do not take into account a myriad of mobile factors. We show that connection duration, AP response times, channel scheduling, available and offered bandwidth, node speed, and dhcp joins all affect performance. Building on these results, we present a system, Spider, that establishes and maintains concurrent connections to 802.11 APs in a mobile environment. While Spider can manage multiple channels, we demonstrate that it achieves maximum throughput when using multiple APs on a single channel.
Smartphones have revolutionized mobile computing, but have created concerns that many third-party mobile applications do not properly handle users’ privacy-sensitiv e data. In this paper, we propose AppInspector, an automated privacy validation system that analyzes apps and generates reports of potential privacy risks. A key insight is that distinguishing acceptable disclosures from privac y violations often requires analyzing the context in which data is transmitted. Just knowing that sensitive data has left a device is insufficient. We describe our vision for making smartphone apps more secure through automated testing and outline key challenges such as detecting and analyzing privacy violations, ensuring thorough test coverage, and scaling to large numbers of apps.
Researchers investigating mobile and wireless systems can run experiments on many testbeds, but no existing option supports experimentation “in the wild“ without sacrificing features such as access to low-level wireless state and efficient scheduling of co-local guests. To fill this void, we present a new architecture for mobile testbeds called CrowdLab. CrowdLab allows researchers to run guest virtual machines on volunteer mobile nodes and ensures efficient use of testbed resources through a new dual-mode networking abstraction and a weakly-consistent, replicated state store called a site directory. We have implemented two CrowdLab prototypes, one for x86 laptops and one for ARM-based Nokia N810 Internet Tablets, and evaluated them using power measurements, micro-benchmarks, and trace-driven emulation. Our evaluation demonstrates that handheld users can contribute 2.5 hours per day to CrowdLab and still have over 12.5 hours of idle time remaining. In addition, emulated mobility-trace replays show that CrowdLab's fault-tolerance mechanisms allow experiments to run uninterrupted, even in the face of high churn rates.
Achieving ubiquitous connectivity or high aggregate throughput using a series of Wi-Fi access points can cause serious performance problems for highly mobile clients. While data transfer using a single access point at a time is insufficient for supporting delay-and throughputsensitive applications, leveraging concurrent data transfers through multiple access points offers a plausible alternative. To this end, we design, implement, and evaluate a system that establishes and maintains concurrent connections to 802.11 APs in a mobile environment. We demonstrate that existing multi-AP solutions do not perform well in mobile settings due to limitations imposed by the association and dhcp processes and propose an alternative design. We have implemented and evaluated our system on a vehicular testbed. Our results show that our system provides manifold improvements in throughput and connectivity over stock WiFi implementations. We compare our results against measurements of real user needs in mobile settings in terms of application use and desired session length.
Commodity mobile devices have been utilized as sensor nodes in a variety of domains, including citizen journalism, mobile social services, and domestic eldercare. In each of these domains, data integrity and device-owners' privacy are first-class concerns, but current approaches to secure sensing fail to balance these properties. External signing infrastructure cannot attest to the values generated by a device's sensing hardware, while trusted sensing hardware does not allow users to securely reduce the fidelity of readings in order to preserve their privacy. In this paper we examine the challenges posed by the potentially conflicting goals of data integrity and user privacy and propose a trustworthy mobile sensing platform which leverages inexpensive commodity Trusted Platform Module (TPM) hardware.
Programmable consumer devices have placed computation within arm's reach at all times and in all places. Unfortunately, researchers interested in investigating this phenomenon often struggle with the expense, inconvenience, and limited scale of existing experimental platforms. In this paper, we introduce a new experimental platform for mobile and pervasive computing based on JellyNets, an abstraction for exposing experiments to arbitrary mobile social contexts.
Several domains of networking such as Delay Tolerant Networks (DTNs), Mobile Ad hoc Networks (MANETs), and Peer-to-Peer (P2P) networks have the common goal of transporting messages to their intended destinations. These networking domains share many requirements and employ routing protocols that are often composed of similar mechanisms. In this paper, we explore the synergy between message routing and data replication and propose the use of topology-independent weakly consistent partial replication systems as a messaging substrate for the above networking domains. These replication systems provide the key properties of eventual consistency, disruption tolerance, and at-most-once delivery, which translate into guaranteed delivery, failure resilience, and bandwidth efficiency—three much desired and repeatedly implemented aspects of message routing. We outline an implementation of a messaging system on top of a replication platform with content-based filtering and show that our design is general enough to implement many different routing policies employed in DTNs, MANETs, and P2P networks.
Reference monitors rely on correct access-control policies to prevent confidential data from leaking. Unfortunately, sensitive data is increasingly stored on personal machines operated by users who are either unwilling or unqualified to properly protect their sensitive files. This often leads to misconfigured applications and damaging leaks. In this paper, we describe RedFlag, a system designed to unobtrusively identify and protect sensitive files on personal machines. Our main insight is that personal machines often receive sensitive data from servers over encrypted network connections. Using this heuristic allows RedFlag to help prevent large classes of leaks, without requiring user-defined policies or changes to existing server-side and client-side applications.