Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.

Dan S. Wallach

dblp:w/DanSWallach · also Daniel S. Wallach · DBLP profile ↗
← Back
53ranked-venue papers
4as first author
2since 2021 · last 2024
0000-0002-6059-925XORCID · verified

Domains — the database's venue-derived domains; a paper can count in several

Security and privacy · 28 · 1 first-author · 1 since 2021Computer networks · 8Software engineering, systems software and programming languages · 8 · 2 first-authorSystems, architecture and hardware · 5Human-computer interaction and ubiquitous computing · 3 · 1 first-authorArtificial intelligence and machine learning · 2 · 1 since 2021Graphics, computer vision, multimedia, augmented reality and games · 1 · 1 first-authorTheory of computation · 1Applied, interdisciplinary, general and emerging computing · 1

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Network and information security
26 papers
Network security · 23% Cryptographic protocols and secure computation · 19% Authentication and access control · 18%
Human-computer interaction and pervasive computing
4 papers
Usability and user experience research · 73% Interaction techniques and input · 12% Ubiquitous computing and smart environments · 8%
Computer networks
5 papers
Wireless networking · 52% Wireless sensing and localization · 42% Internet architecture and protocols · 7%
Software engineering, system software, and programming languages
7 papers
Runtime systems and virtual machines · 39% Operating systems · 28% Programming languages and type systems · 16%

Topics — the 30 heaviest of 90, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Cryptographic protocols and secure computation › electronic voting
verifiable voting
0.822024
ElectionGuard: a Cryptographic Toolkit to Enable Verifiable Elections · USENIX Security Symposium 2024
VoteBox: A Tamper-evident, Verifiable Electronic Voting System · USENIX Security Symposium 2008
Web and mobile security › mobile security
android security
0.722019
Total Recall: Persistence of Passwords in Android · NDSS 2019
Removing Secrets from Android's TLS · NDSS 2018
Usability and user experience research
security usability
0.412019
On the Usability of HTTPS Deployment · CHI 2019
Network security
HTTPS deployment
0.412019
On the Usability of HTTPS Deployment · CHI 2019
Cryptographic primitives and cryptanalysis
homomorphic encryption
0.212024
ElectionGuard: a Cryptographic Toolkit to Enable Verifiable Elections · USENIX Security Symposium 2024
Wireless networking
mobile ad hoc networks
0.212015
The Mason Test: A Defense Against Sybil Attacks in Wireless Networks Without Trusted Authorities · IEEE Trans. Mob. Comput. 2015
Network security › attack resilience › attack mitigation
sybil attack defense
0.212015
The Mason Test: A Defense Against Sybil Attacks in Wireless Networks Without Trusted Authorities · IEEE Trans. Mob. Comput. 2015
Authentication and access control › identity management
federated identity
0.212014
Hardening Persona - Improving Federated Web Login · NDSS 2014
Privacy and data protection
anonymization
0.212013
The Velocity of Censorship: High-Fidelity Detection of Microblog Post Deletions · USENIX Security Symposium 2013
Network security › traffic analysis
censorship detection
0.212013
The Velocity of Censorship: High-Fidelity Detection of Microblog Post Deletions · USENIX Security Symposium 2013
Network security
traffic analysis
0.212013
The Velocity of Censorship: High-Fidelity Detection of Microblog Post Deletions · USENIX Security Symposium 2013
Web and mobile security
mobile security
0.112012
AdSplit: Separating Smartphone Advertising from Applications · USENIX Security Symposium 2012
Authentication and access control › multi-factor authentication
two-factor authentication
0.112012
Strengthening user authentication through opportunistic cryptographic identity assertions · CCS 2012
Authentication and access control
user authentication
0.112012
Strengthening user authentication through opportunistic cryptographic identity assertions · CCS 2012
Web and mobile security
web authentication
0.112012
Origin-Bound Certificates: A Fresh Approach to Strong Client Authentication for the Web · USENIX Security Symposium 2012
Wireless sensing and localization
indoor localization
0.132004
On the feasibility of using wireless ethernet for indoor localization · IEEE Trans. Robotics 2004
Practical robust localization over large-scale 802.11 wireless networks · MobiCom 2004
Robotics-based location sensing using wireless ethernet · MobiCom 2002
Digital forensics and information hiding
data provenance
0.112011
QUIRE: Lightweight Provenance for Smart Phone Operating Systems · USENIX Security Symposium 2011
Systems and software security › operating system security
mobile OS security
0.112011
QUIRE: Lightweight Provenance for Smart Phone Operating Systems · USENIX Security Symposium 2011
Systems and software security
operating system security
0.112011
QUIRE: Lightweight Provenance for Smart Phone Operating Systems · USENIX Security Symposium 2011
Authentication and access control
certificate management
0.112019
On the Usability of HTTPS Deployment · CHI 2019
Authentication and access control › password security
password management
0.112019
Total Recall: Persistence of Passwords in Android · NDSS 2019
Cryptographic protocols and secure computation
key management
0.112018
Removing Secrets from Android's TLS · NDSS 2018
Operating systems
resource management
0.122005
Iterative Adaptation for Mobile Clients Using Existing APIs · IEEE Trans. Parallel Distributed Syst. 2005
Garbage Collector Memory Accounting in Language-Based Systems · S&P 2003
Systems and software security › secure logging
tamper-evident logging
0.112009
Efficient Data Structures For Tamper-Evident Logging · USENIX Security Symposium 2009
Cryptographic protocols and secure computation
electronic voting
0.112008
VoteBox: A Tamper-evident, Verifiable Electronic Voting System · USENIX Security Symposium 2008
Runtime systems and virtual machines
garbage collection
0.122003
Run-time support for distributed sharing in safe languages · ACM Trans. Comput. Syst. 2003
Garbage Collector Memory Accounting in Language-Based Systems · S&P 2003
Network security › secure communication › secure communication protocol
TLS
0.122006
Performance analysis of TLS Web servers · ACM Trans. Comput. Syst. 2006
Performance Analysis of TLS Web Servers · NDSS 2002
Authentication and access control › user authentication
challenge-response authentication
0.112015
The Mason Test: A Defense Against Sybil Attacks in Wireless Networks Without Trusted Authorities · IEEE Trans. Mob. Comput. 2015
Network security
anonymity networks
0.112006
Eclipse Attacks on Overlay Networks: Threats and Defenses · INFOCOM 2006
Blockchain and cryptocurrency security › blockchain network security
eclipse attack
0.112006
Eclipse Attacks on Overlay Networks: Threats and Defenses · INFOCOM 2006

Methods — techniques the papers use, named apart from their topics

within-subjects study · 0.8end-to-end verifiable voting · 0.8cryptographic toolkit · 0.8between-subjects study · 0.8signalprint · 0.4challenge-response · 0.4RSSI observation · 0.4empirical measurement · 0.4program analysis · 0.3machine learning · 0.2progressive update propagation · 0.1adaptation-aware editing · 0.1iterative adaptation · 0.1API-based control · 0.1handle-based implementation · 0.1comparative usability study · 0.1access detection · 0.1profiling · 0.1
YearPublicationVenuePosition
2024 ElectionGuard: a Cryptographic Toolkit to Enable Verifiable Elections
Josh Benaloh, Michael Naehrig, Olivier Pereira, Dan S. Wallach
USENIX Security Symposium4
2021 Machine Learning for Measuring and Analyzing Online Social Communications
abstract
In this paper, we propose a framework for application of a novel machine learning-based system for analyzing online social communications.As a example, we are targeting anti-Semitic graphical memes posted to social media.We presented very promising preliminary results on a Facebook dataset that consists of a total of 10000 labeled memes.We can conclude that machine learning will soon be able to successfully analyze and monitor complex social communications.
Chris Bronk, Amaury Lendasse, Peggy Lindner, Dan S. Wallach, Barbara Hammer
ESANN4
2020 Scaling Up Anonymous Communication with Efficient Nanopayment Channels
abstract
Abstract Tor, the most widely used and well-studied traffic anonymization network in the world, suffers from limitations in its network diversity and performance. We propose to mitigate both problems simultaneously through the introduction of a premium bandwidth market between clients and relays. To this end, we present moneTor: incentivizing nodes to join and support Tor by giving them anonymous payments from Tor users. Our approach uses efficient cryptographic nanopayments delivered alongside regular Tor traffic. Our approach also gives a degree of centralized control, allowing Tor’s managers to shape the economy created by these payments. In this paper, we present a novel payment algorithm as well as a data-driven simulation and evaluation of its costs and benefits. The results show that moneTor is both feasible and flexible, offering upwards of 100% improvements in differentiated bandwidth for paying users with near-optimal throughput and latency overheads.
Thien-Nam Dinh, Florentin Rochet, Olivier Pereira, Dan S. Wallach
Proc. Priv. Enhancing Technol.4
2019 On the Usability of HTTPS Deployment
abstract
HTTPS and TLS are the backbone of Internet security, however setting up web servers to run these protocols is a notoriously difficult process. In this paper, we perform two live subjects usability studies on the deployment of HTTPS in a real-world setting. Study 1 is a within subjects comparison between traditional HTTPS configuration (purchasing a certificate and installing it on a server) and Let's Encrypt, which automates much of the process. Study 2 is a between subjects study looking at the same two systems, examining why users encounter usability issues. Overall we confirm past results that HTTPS is difficult to deploy, and we find some evidence that suggests Let's Encrypt is an easier, more efficient method for deploying HTTPS.
Matthew Bernhard, Jonathan Sharman, Claudia Ziegler Acemyan, Philip T. Kortum, Dan S. Wallach, J. Alex Halderman
CHI5
2019 Total Recall: Persistence of Passwords in Android
Ang Chen 0001, Dan S. Wallach
NDSS3
2018 An Historical Analysis of the SEAndroid Policy Evolution
abstract
Android adopted SELinux's mandatory access control (MAC) mechanisms in 2013. Since then, billions of Android devices have benefited from mandatory access control security policies. These policies are expressed in a variety of rules, maintained by Google and extended by Android OEMs. Over the years, the rules have grown to be quite complex, making it challenging to properly understand or configure these policies.
Bumjin Im, Ang Chen 0001, Dan S. Wallach
ACSAC3
2018 Removing Secrets from Android's TLS
Dan S. Wallach
NDSS2
2017 Verification of STAR-Vote and Evaluation of FDR and ProVerif
Murat Moran, Dan S. Wallach
IFM2
2015 Performance and Energy Consumption Analysis of a Delay-Tolerant Network for Censorship-Resistant Communication
abstract
Delay Tolerant Networks (DTNs) composed of commodity mobile devices have the potential to support communication applications resistant to blocking and censorship, as well as certain types of surveillance. We analyze the performance and energy consumption of such a network, and consider the impact of random and targeted denial-of-service and censorship attacks. To gather wireless connectivity traces for a DTN composed of human-carried commodity smartphones, we implemented and deployed a prototype DTN-based micro-blogging application, called 1am, in a college town. We analyzed the system during a time period with 111 users. Although the study provided detailed enough connectivity traces to enable analysis, message posting was too infrequent to draw strong conclusions based on user-initiated messages, alone. We therefore simulated more frequent message initiations and used measured connectivity traces to analyze message propagation. Using a flooding protocol, we found that with an adoption rate of 0.2% of a college town's student and faculty population, the median one-week delivery rate is 85% and the median delivery delay is 13 hours. We also found that the network delivery rate and delay are robust to denial-of service and censorship attacks eliminating more than half of the participants. Using a measurement-based energy model, we also found that the DTN system would use less than 10.0% of a typical smartphone's battery energy per day in a network of 2,500 users.
David R. Bild, David Adrian, Gulshan Singh, Robert P. Dick, Dan S. Wallach, Z. Morley Mao
MobiHoc6
2015 Accountable wiretapping - or - I know they can hear you now
abstract
Abstract In many democratic countries, Communications Assistance for Law Enforcement Act (CALEA) wiretaps are used by law enforcement agencies to perform investigations and gather evidence for legal procedures. However, existing CALEA wiretap implementations are often engineered with the assumption that wiretap operators are trustworthy and wiretap targets do not attempt to evade the wiretap. Although it may be possible to construct more robust wiretap architectures by reengineering significant portions of the telecommunications infrastructure, such efforts are prohibitively costly. This paper instead proposes a lightweight accountable wiretapping system for enabling secure audits of existing CALEA wiretapping systems. Our proposed system maintains a tamper-evident encrypted log over wiretap events, enforces access controls over wiretap records, and enables privacy-preserving aggregate queries and compliance checks. We demonstrate using campus-wide telephone trace data from a large university that our approach provides efficient auditing functionalities while incurring only modest overhead. Based on publicly available wiretap reporting statistics, we conservatively estimate that our architecture can support tamper-evident logging for all of the United States’ ongoing CALEA wiretaps using three commodity PCs.
Adam Bates 0001, Kevin R. B. Butler, Micah Sherr, Clay Shields, Patrick Traynor, Dan S. Wallach
J. Comput. Secur.6
2015 The Mason Test: A Defense Against Sybil Attacks in Wireless Networks Without Trusted Authorities
abstract
Wireless networks are vulnerable to Sybil attacks, in which a malicious node poses as many identities in order to gain disproportionate influence. Many defenses based on spatial variability of wireless channels exist, but depend either on detailed, multi-tap channel estimation-something not exposed on commodity 802.11 devices-or valid RSSI observations from multiple trusted sources, e.g., corporate access points-something not directly available in ad hoc and delay-tolerant networks with potentially malicious neighbors. We extend these techniques to be practical for wireless ad hoc networks of commodity 802.11 devices. Specifically, we propose two efficient methods for separating the valid RSSI observations of behaving nodes from those falsified by malicious participants. Further, we note that prior signalprint methods are easily defeated by mobile attackers and develop an appropriate challenge-response defense. Finally, we present the Mason test, the first implementation of these techniques for ad hoc and delay-tolerant networks of commodity 802.11 devices. We illustrate its performance in several real-world scenarios.
David R. Bild, Robert P. Dick, Z. Morley Mao, Dan S. Wallach
IEEE Trans. Mob. Comput.5
2015 Aggregate Characterization of User Behavior in Twitter and Analysis of the Retweet Graph
abstract
Most previous analysis of Twitter user behavior has focused on individual information cascades and the social followers graph, in which the nodes for two users are connected if one follows the other. We instead study aggregate user behavior and the retweet graph with a focus on quantitative descriptions. We find that the lifetime tweet distribution is a type-II discrete Weibull stemming from a power law hazard function, that the tweet rate distribution, although asymptotically power law, exhibits a lognormal cutoff over finite sample intervals, and that the inter-tweet interval distribution is a power law with exponential cutoff. The retweet graph is small-world and scale-free, like the social graph, but less disassortative and has much stronger clustering. These differences are consistent with it better capturing the real-world social relationships of and trust between users than the social graph. Beyond just understanding and modeling human communication patterns and social networks, applications for alternative, decentralized microblogging systems---both predicting real-word performance and detecting spam---are discussed.
David R. Bild, Robert P. Dick, Z. Morley Mao, Dan S. Wallach
ACM Trans. Internet Techn.5
2014 Hardening Persona - Improving Federated Web Login
Michael Dietz, Dan S. Wallach
NDSS2
2013 The Velocity of Censorship: High-Fidelity Detection of Microblog Post Deletions
David Phipps, Adam Pridgen, Jedidiah R. Crandall, Dan S. Wallach
USENIX Security Symposium5
2012 Strengthening user authentication through opportunistic cryptographic identity assertions
abstract
User authentication systems are at an impasse. The most ubiquitous method -- the password -- has numerous problems, including susceptibility to unintentional exposure via phishing and cross-site password reuse. Second-factor authentication schemes have the potential to increase security but face usability and deployability challenges. For example, conventional second-factor schemes change the user authentication experience. Furthermore, while more secure than passwords, second-factor schemes still fail to provide sufficient protection against (single-use) phishing attacks.
Alexei Czeskis, Michael Dietz, Tadayoshi Kohno, Dan S. Wallach, Dirk Balfanz
CCS4
2012 Accountable Wiretapping -or- I know they can hear you now
Adam Bates 0001, Kevin R. B. Butler, Micah Sherr, Clay Shields, Patrick Traynor, Dan S. Wallach
NDSS6
2012 Origin-Bound Certificates: A Fresh Approach to Strong Client Authentication for the Web
Michael Dietz, Alexei Czeskis, Dirk Balfanz, Dan S. Wallach
USENIX Security Symposium4
2012 AdSplit: Separating Smartphone Advertising from Applications
Shashi Shekhar 0001, Michael Dietz, Dan S. Wallach
USENIX Security Symposium3
2011 QUIRE: Lightweight Provenance for Smart Phone Operating Systems
Michael Dietz, Shashi Shekhar 0001, Yuliy Pisetsky, Anhei Shu, Dan S. Wallach
USENIX Security Symposium5
2011 Authenticated Dictionaries: Real-World Costs and Trade-Offs
abstract
Authenticated dictionaries are a widely discussed paradigm to enable verifiable integrity for data storage on untrusted servers, such as today’s widely used “cloud computing” resources, allowing a server to provide a “proof,” typically in the form of a slice through a cryptographic data structure, that the results of any given query are the correct answer, including that the absence of a query result is correct. Persistent authenticated dictionaries (PADs) further allow queries against older versions of the structure. This research presents implementations of a variety of different PAD algorithms, some based on Merkle tree-style data structures and others based on individually signed “tuple” statements (with and without RSA accumulators). We present system throughput benchmarks, indicating costs in terms of time, storage, and bandwidth as well as considering how much money would be required given standard cloud computing costs. We conclude that Merkle tree PADs are preferable in cases with frequent updates, while tuple-based PADs are preferable with higher query rates. For Merkle tree PADs, red-black trees outperform treaps and skiplists. Applying Sarnak-Tarjan’s versioned node strategy, with a cache of old hashes at every node, to red-black trees yields the fastest Merkle tree PAD implementation, notably using half the memory of the more commonly used mutation-free path copying strategy. For tuple PADs, although we designed and implemented an algorithm using RSA accumulators that offers constant update size, constant storage per update, constant proof size, and sublinear computation per update, we found that RSA accumulators are so expensive that they are never worthwhile. We find that other optimizations in the literature for tuple PADs are more cost-effective.
Scott A. Crosby, Dan S. Wallach
ACM Trans. Inf. Syst. Secur.2
2009 Super-Efficient Aggregating History-Independent Persistent Authenticated Dictionaries
Scott A. Crosby, Dan S. Wallach
ESORICS2
2009 Efficient Data Structures For Tamper-Evident Logging
Scott A. Crosby, Dan S. Wallach
USENIX Security Symposium2
2009 Opportunities and Limits of Remote Timing Attacks
abstract
Many algorithms can take a variable amount of time to complete depending on the data being processed. These timing differences can sometimes disclose confidential information. Indeed, researchers have been able to reconstruct an RSA private key purely by querying an SSL Web server and timing the results. Our work analyzes the limits of attacks based on accurately measuring network response times and jitter over a local network and across the Internet. We present the design of filters to significantly reduce the effects of jitter, allowing an attacker to measure events with 15-100 μ s accuracy across the Internet, and as good as 100ns over a local network. Notably, security-related algorithms on Web servers and other network servers need to be carefully engineered to avoid timing channel leaks at the accuracy demonstrated in this article.
Scott A. Crosby, Dan S. Wallach, Rudolf H. Riedi
ACM Trans. Inf. Syst. Secur.2
2008 Electronic voting machines versus traditional methods: improved preference, similar performance
abstract
In the 2006 U.S. election, it was estimated that over 66 million people would be voting on direct recording electronic (DRE) systems in 34% of the nation's counties [8]. Although these computer-based voting systems have been widely adopted, they have not been empirically proven to be more usable than their predecessors. The series of studies reported here compares usability data from a DRE with those from more traditional voting technologies (paper ballots, punch cards, and lever machines). Results indicate that there were little differences between the DRE and these older methods in efficiency or effectiveness. However, in terms of user satisfaction, the DRE was significantly better than the older methods. Paper ballots also perform well, but participants were much more satisfied with their experiences voting on the DRE. The disconnect between subjective and objective usability has potential policy ramifications.
Sarah P. Everett, Kristen K. Greene, Michael D. Byrne, Dan S. Wallach, Kyle Derr, Daniel Sandler, Ted Torous
CHI4
2008 VoteBox: A Tamper-evident, Verifiable Electronic Voting System
Daniel Sandler, Kyle Derr, Dan S. Wallach
USENIX Security Symposium3
2006 Eclipse Attacks on Overlay Networks: Threats and Defenses
abstract
Abstract — Overlay networks are widely used to deploy functionality at edge nodes without changing network routers. Each node in an overlay network maintains connections with a number of peers, forming a graph upon which a distributed application or service is implemented. In an “Eclipse ” attack, a set of malicious, colluding overlay nodes arranges for a correct node to peer only with members of the coalition. If successful, the attacker can mediate most or all communication to and from the victim. Furthermore, by supplying biased neighbor information during normal overlay maintenance, a modest number of malicious nodes can eclipse a large number of correct victim nodes. This paper studies the impact of Eclipse attacks on structured overlays and shows the limitations of known defenses. We then present the design, implementation, and evaluation of a new defense, in which nodes anonymously audit each other’s connectivity. The key observation is that a node that mounts an Eclipse attack must have a higher than average node degree. We show that enforcing a node degree limit by auditing is an effective defense against Eclipse attacks. Furthermore, unlike most existing defenses, our defense leaves flexibility in the selection of neighboring nodes, thus permitting important overlay optimizations like proximity neighbor selection (PNS). I.
Atul Singh, Tsuen-Wan Ngan, Peter Druschel, Dan S. Wallach
INFOCOM4
2006 Performance analysis of TLS Web servers
abstract
TLS is the protocol of choice for securing today's e-commerce and online transactions but adding TLS to a Web server imposes a significant overhead relative to an insecure Web server on the same platform. We perform a comprehensive study of the performance costs of TLS. Our methodology is to profile TLS Web servers with trace-driven workloads, replace individual components inside TLS with no-ops, and measure the observed increase in server throughput. We estimate the relative costs of each TLS processing stage, identifying the areas for which future optimizations would be worthwhile. Our results show that while the RSA operations represent the largest performance cost in TLS Web servers, they do not solely account for TLS overhead. RSA accelerators are effective for e-commerce site workloads since they experience low TLS session reuse. Accelerators appear to be less effective for sites where all the requests are handled by a TLS server because they have a higher session reuse rate. In this case, investing in a faster CPU might provide a greater boost in performance. Our experiments show that having a second CPU is at least as useful as an RSA accelerator. Our results seem to suggest that, as CPUs become faster, the cryptographic costs of TLS will become dwarfed by the CPU costs of the nonsecurity aspects of a Web server. Optimizations aimed at general purpose Web servers should continue to be a focus of research and would benefit secure Web servers as well.
Cristian Coarfa, Peter Druschel, Dan S. Wallach
ACM Trans. Comput. Syst.3
2005 Scrivener: Providing Incentives in Cooperative Content Distribution Systems
Animesh Nandi, Tsuen-Wan Ngan, Atul Singh, Peter Druschel, Dan S. Wallach
Middleware5
2005 Iterative Adaptation for Mobile Clients Using Existing APIs
abstract
Iterative adaptation is a novel approach to adaptation for resource-limited mobile and wireless environments that supports powerful application-specific adaptations without requiring modifications to the application's source code. Common productivity applications, such as browsers, word processors, and presentation tools, export APIs that allow external applications to control their operation. The novel premise in iterative adaptation is that these APIs are sufficient to support a wide range of adaptation policies for applications running on resource-limited devices. In addition to allowing adaptation without having to change the application's source code, this approach has a unique combination of advantages. First, it supports centralized management of resources across multiple applications. Second, it makes it possible to modify application behavior after the application has been deployed. This paper evaluates the extent to which existing APIs can be used for the purposes of adapting document-based applications to run on bandwidth-limited devices. In particular, we implement a large number of bandwidth adaptations for applications from the Microsoft Office and the OpenOffice productivity suites and for Internet Explorer. Although we find limitations in their APIs, we are able to implement many adaptation policies without much complexity and with good performance. Moreover, iterative adaptation achieves performance similar to an approach that implements adaptation by modifying the application, while requiring only a fraction of the coding effort.
Eyal de Lara, Yogesh Chopra, Nilesh Vaghela, Dan S. Wallach, Willy Zwaenepoel
IEEE Trans. Parallel Distributed Syst.5
2005 Robotics-Based Location Sensing Using Wireless Ethernet
Andrew M. Ladd, Kostas E. Bekris, Algis Rudys, Lydia E. Kavraki, Dan S. Wallach
Wirel. Networks5
2004 Practical robust localization over large-scale 802.11 wireless networks
abstract
We demonstrate a system built using probabilistic techniques that allows for remarkably accurate localization across our entire office building using nothing more than the built-in signal intensity meter supplied by standard 802.11 cards. While prior systems have required significant investments of human labor to build a detailed signal map, we can train our system by spending less than one minute per office or region, walking around with a laptop and recording the observed signal intensities of our building's unmodified base stations. We actually collected over two minutes of data per office or region, about 28 man-hours of effort. Using less than half of this data to train the localizer, we can localize a user to the precise, correct location in over 95% of our attempts, across the entire building. Even in the most pathological cases, we almost never localize a user any more distant than to the neighboring office. A user can obtain this level of accuracy with only two or three signal intensity measurements, allowing for a high frame rate of localization results. Furthermore, with a brief calibration period, our system can be adapted to work with previously unknown user hardware. We present results demonstrating the robustness of our system against a variety of untrained time-varying phenomena, including the presence or absence of people in the building across the day. Our system is sufficiently robust to enable a variety of location-aware applications without requiring special-purpose hardware or complicated training and calibration procedures.
Andreas Haeberlen, Eliot Flannery, Andrew M. Ladd, Algis Rudys, Dan S. Wallach, Lydia E. Kavraki
MobiCom5
2004 Analysis of an Electronic Voting System
abstract
With significant U.S. federal funds now available to replace outdated punch-card and mechanical voting systems, municipalities and states throughout the U.S. are adopting paperless electronic voting systems from a number of different vendors. We present a security analysis of the source code to one such machine used in a significant share of the market. Our analysis shows that this voting system is far below even the most minimal security standards applicable in other contexts. We identify several problems including unauthorized privilege escalation, incorrect use of cryptography, vulnerabilities to network threats, and poor software development processes. We show that voters, without any insider privileges, can cast unlimited votes without being detected by any mechanisms within the voting terminal software. Furthermore, we show that even the most serious of our outsider attacks could have been discovered and executed without access to the source code. In the face of such attacks, the usual worries about insider threats are not the only concerns; outsiders can do the damage. That said, we demonstrate that the insider threat is also quite considerable, showing that not only can an insider, such as a poll worker, modify the votes, but that insiders can also violate voter privacy and match votes with the voters who cast them. We conclude that this voting system is unsuitable for use in a general election. Any paperless electronic voting system might suffer similar flaws, despite any certification it could have otherwise received. We suggest that the best solutions are voting systems having a voter-verifiable audit trail, where a computerized voting system might print a paper ballot that can be read and verified by the voter.
Tadayoshi Kohno, Adam Stubblefield, Aviel D. Rubin, Dan S. Wallach
S&P4
2004 On the feasibility of using wireless ethernet for indoor localization
abstract
IEEE 802.11b wireless Ethernet is becoming the standard for indoor wireless communication. This paper proposes the use of measured signal strength of Ethernet packets as a sensor for a localization system. We demonstrate that off-the-shelf hardware can accurately be used for location sensing and real-time tracking by applying a Bayesian localization framework.
Andrew M. Ladd, Kostas E. Bekris, Algis Rudys, Dan S. Wallach, Lydia E. Kavraki
IEEE Trans. Robotics4
2003 POST: A Secure, Resilient, Cooperative Messaging System
Alan Mislove, Ansley Post, Charles Reis, Paul Willmann, Peter Druschel, Dan S. Wallach, Xavier Bonnaire, Pierre Sens 0001, Jean-Michel Busca, Luciana Arantes
HotOS6
2003 Collaboration and Multimedia Authoring on Mobile Devices
abstract
This paper introduces adaptation-aware editing and progressive update propagation, two novel mechanisms that enable authoring multimedia content and collaborative work on mobile devices. Adaptation-aware editing enables editing content that was adapted to reduce download time to the mobile device. Progressive update propagation reduces the time for propagating content generated at the mobile device by transmitting either a fraction of the modifications or transcoded versions thereof.With application-aware editing and progressive update propagation, an object present at a mobile device is characterized not only by a particular version, as in conventional replication, but also by a particular fidelity. We demonstrate that replication models can be extended to account for fidelity independently of the mechanisms used for concurrency control and consistency maintenance. As a result, the two techniques described in this paper can easily be added to any replication protocol, whether optimistic or pessimistic.We report on our experience implementing adaptation-aware editing and progressive update propagation. Experiments with two multimedia applications, an email reader and a presentation software package, show that both mechanisms can be added with modest programming effort and achieve substantial reductions in upload and download latencies.
Eyal de Lara, Dan S. Wallach, Willy Zwaenepoel
MobiSys3
2003 Garbage Collector Memory Accounting in Language-Based Systems
abstract
Language run-time systems are often called upon to safely execute mutually distrustful tasks within the same run-time, protecting them from other tasks' bugs or otherwise hostile behavior Well-studied access controls exist in systems such as Java to prevent unauthorized reading or writing of data, but techniques to measure and control resource usage are less prevalent. In particular, most language run-time systems include no facility to account for and regulate heap memory usage on a per-task basis. This oversight can be exploited by a misbehaving task, which might allocate and hold live enough memory to cause a denial-of-service attack, crashing or slowing down other tasks. In addition, tasks can legitimately share references to the same objects, and traditional approaches that charge memory to its allocator fail to properly account for this sharing. We present a method for modifying the garbage collector, already present in most modern language run-time systems, to measure the amount of live memory reachable from each task as it performs its regular duties. Our system naturally distinguishes memory shared across tasks from memory reachable from only a single task without requiring incompatible changes to the semantics of the programming language. Our prototype implementation imposes negligible performance overheads in a variety of benchmarks, yet provides enough information for the expression of rich policies to express the limits on a task's memory usage.
David W. Price, Algis Rudys, Dan S. Wallach
S&P3
2003 Denial of Service via Algorithmic Complexity Attacks
Scott A. Crosby, Dan S. Wallach
USENIX Security Symposium2
2003 Run-time support for distributed sharing in safe languages
abstract
We present a new run-time system that supports object sharing in a distributed system. The key insight in this system is that a handle-based implementation of such a system enables efficient and transparent sharing of data with both fine- and coarse-grained access patterns. In addition, it supports efficient execution of garbage-collected programs. In contrast, conventional distributed shared memory (DSM) systems are limited to providing only one granularity with good performance, and have experienced difficulty in efficiently supporting garbage collection. A safe language, in which no pointer arithmetic is allowed, can transparently be compiled into a handle-based system and constitutes its preferred mode of use. A programmer can also directly use a handle-based programming model that avoids pointer arithmetic on the handles, and achieve the same performance but without the programming benefits of a safe programming language. This new run-time system, DOSA (Distributed Object Sharing Architecture), provides a shared object space abstraction rather than a shared address space abstraction. The key to its efficiency is the observation that a handle-based distributed implementation permits VM-based access and modification detection without suffering false sharing for fine-grained access patterns. We compare DOSA to TreadMarks, a conventional DSM system that is efficient at handling coarse-grained sharing. The performance of fine-grained applications and garbage-collected applications is considerably better than in TreadMarks, and the performance of coarse-grained applications is nearly as good as in TreadMarks. Inasmuch as the performance of such applications is already good in TreadMarks, we consider this an acceptable performance penalty.
Y. Charlie Hu, Weimin Yu, Alan L. Cox, Dan S. Wallach, Willy Zwaenepoel
ACM Trans. Comput. Syst.4
2002 Transactional Rollback for Language-Based Systems
abstract
Language run-time systems are routinely used to host potentially buggy or malicious codelets-software modules, agents, applets, etc.-in a secure environment. A number of techniques exist for managing access control to system services and even for terminating codelets once they have been determined to be misbehaving. However because codelets can be terminated anywhere in their execution, a codelet's internal state might become inconsistent; restarting the codelet could result in unexpected behavior. Any state the codelet shares with other codelets may likewise become inconsistent, destabilizing those codelets as well. To address these problems, we have designed a mechanism, strictly using code-to-code transformations, which provides transactional rollback support for codelets. Each instance of a codelet is run in its own transaction, and standard (ACID) transactional semantics apply. All changes made by the codelet are automatically rolled back when the corresponding transaction aborts. We discuss a transactional rollback implementation for Java, and present its performance.
Algis Rudys, Dan S. Wallach
DSN2
2002 Using wireless Ethernet for localization
abstract
IEEE 802.11b wireless Ethernet is rapidly becoming the standard for in-building and short-range wireless communication. Many mobile devices such as mobile robots, laptops and PDAs already use this protocol for wireless communication. Many wireless Ethernet cards measure the signal strength of incoming packets. This paper investigates the feasibility of implementing a localization system using this sensor. Using a Bayesian localization framework, we show experiments demonstrating that off-the-shelf wireless hardware can accurately be used for location sensing and tracking with about one meter precision in a wireless-enabled office building.
Andrew M. Ladd, Kostas E. Bekris, Guillaume Marceau, Algis Rudys, Dan S. Wallach, Lydia E. Kavraki
IROS5
2002 Robotics-based location sensing using wireless ethernet
abstract
A key subproblem in the construction of location-aware systems is the determination of the position of a mobile device. This paper describes the design, implementation and analysis of a system for determining position inside a building from measured RF signal strengths of packets on an IEEE 802.11b wireless Ethernet network. Previous approaches to location awareness with RF signals have been severely hampered by non-linearity, noise and complex correlations due to multi-path effects, interference and absorption. The design of our system begins with the observation that determining position from complex, noisy and non-linear signals is a well-studied problem in the field of robotics. Using only off-the-shelf hardware, we achieve robust position estimation to within a meter in our experimental context and after adequate training of our system. We can also coarsely determine our orientation and can track our position as we move. By applying recent advances in probabilistic inference of position and sensor fusion from noisy signals, we show that the RF emissions from base stations as measured by off-the-shelf wireless Ethernet cards are sufficiently rich in information to permit a mobile device to reliably track its location.
Andrew M. Ladd, Kostas E. Bekris, Algis Rudys, Lydia E. Kavraki, Dan S. Wallach, Guillaume Marceau
MobiCom5
2002 Performance Analysis of TLS Web Servers
Cristian Coarfa, Peter Druschel, Dan S. Wallach
NDSS3
2002 Secure Routing for Structured Peer-to-Peer Overlay Networks
Miguel Castro 0001, Peter Druschel, Ayalvadi J. Ganesh, Antony I. T. Rowstron, Dan S. Wallach
OSDI5
2002 Termination in language-based systems
abstract
Language run-time systems are increasingly being embedded in systems to support run-time extensibility via mobile code. Such systems raise a number of concerns when the code running in such systems is potentially buggy or untrusted. Although sophisticated access controls have been designed for mobile code and are shipping as part of commercial systems such as Java, there is no support for terminating mobile code short of terminating the entire language run-time. This article presents a concept called "soft termination" that can be applied to virtually any mobile code system. Soft termination allows mobile code threads to be safely terminated while preserving the stability of the language run-time. In addition, function bodies can be permanently disabled, thwarting attacks predicated on system threads eventually calling untrusted functions. Soft termination guarantees termination by breaking any potential infinite loops in mobile code. We present a formal design for soft termination and an implementation of it for Java, built using Java bytecode rewriting, which demonstrates reasonable performance (3 to 25% slowdowns onbenchmarks).
Algis Rudys, Dan S. Wallach
ACM Trans. Inf. Syst. Secur.2
2001 Architectures for Adaption Systems
abstract
Modern systems need support for adaptation, typically responding to changes in system resources such as available network bandwidth. If an adaptation system is implemented strictly at the system layer, data adaptations can be added within the network or file system. This makes the adaptation system portable across applications, but sacrifices opportunities to change an application's behavior. It's not possible, for example, to first return a low-quality version of an image and later upgrade it should excess network capacity be available. On the flip side, the adaptation logic could be built into each and every application, with the system providing information to the applications in order to help them adapt their behavior. This becomes impractical because many applications will never be written to perform adaptation, and an application writer may not be able to foresee all possible adaptations that may be desirable. We argue that adaptation systems should be centralized, where they can make global observations about system usage and resource availability. We further argue that applications should not be written to perform adaptation. Instead, applications should support an interface where the adaptation system can dynamically modify an application's behavior as it runs.
Eyal de Lara, Dan S. Wallach, Willy Zwaenepoel
HotOS2
2001 Reducing the Energy Usage of Office Applications
Jason Flinn, Eyal de Lara, Mahadev Satyanarayanan, Dan S. Wallach, Willy Zwaenepoel
Middleware4
2001 Termination in Language-based Systems
Algis Rudys, John Clements, Dan S. Wallach
NDSS3
2001 Reading Between the Lines: Lessons from the SDMI Challenge
Scott Craver, Min Wu 0001, Bede Liu, Adam Stubblefield, Ben Swartzlander, Dan S. Wallach, Drew Dean, Edward W. Felten
USENIX Security Symposium6
2000 SAFKASI: a security mechanism for language-based systems
abstract
In order to run untrusted code in the same process as trusted code, there must be a mechanism to allow dangerous calls to determine if their caller is authorized to exercise the privilege of using the dangerous routine. Java systems have adopted a technique called stack inspection to address this concern. But its original definition, in terms of searching stack frames, had an unclear relationship to the actual achievement of security, overconstrained the implementation of a Java system, limited many desirable optimizations such as method inlining and tail recursion, and generally interfered with interprocedural optimization. We present a new semantics for stack inspection based on a belief logic and its implementation using the calculus of security-passing style which addresses the concerns of traditional stack inspection. With security-passing style, we can efficiently represent the security context for any method activation, and we can build a new implementation strictly by rewriting the Java bytecodes before they are loaded by the system. No changes to the JVM or bytecode semantics are necessary. With a combination of static analysis and runtime optimizations, our prototype implementation showes reasonable performance (although traditional stack inspection is still faster), and is easier to consider for languages beyond Java. We call our system SAFKASI (the Security Architecture Formerly Known as Stack Inspection).
Dan S. Wallach, Andrew W. Appel, Edward W. Felten
ACM Trans. Softw. Eng. Methodol.1
1998 Understanding Java Stack Inspection
abstract
Current implementations of Java make security decisions by searching the runtime call stack. These systems have attractive security properties, but they have been criticized as being dependent on specific artifacts of the Java implementation. The paper models the stack inspection algorithm in terms of a well understood logic for access control and demonstrates how stack inspection is a useful tool for expressing and managing complex trust relationships. We show that an access control decision based on stack inspection corresponds to the construction of a proof in the logic, and we present an efficient decision procedure for generating these proofs. By examining the decision procedure, we demonstrate that many statements in the logic are equivalent and can thus be expressed in a simpler form. We show that there are a finite number of such statements, allowing us to represent the security state of the system as a pushdown automaton. We also show that this automaton may be embedded in Java by rewriting all Java classes to pass an additional argument when a procedure is invoked. We call this security passing style and describe its benefits over previous stack inspection systems. Finally, we show how the logic allows us to describe a straightforward design for extending stack inspection across remote procedure calls.
Dan S. Wallach, Edward W. Felten
S&P1
1997 Extensible Security Architecture for Java
abstract
Mobile code technologies such as Java, JavaScript, and ActiveX generally limit all programs to a single security policy. However, software-based protection can allow for more flexible security models, with potentially significant performance improvements over traditional hardware-based solutions. We describe and analyze three implementation strategies for interposing flexible security policies in software-based security systems. Implementations exist for all three strategies: several vendors have adapted capabilities to Java, Netscape Communicator extended Java's stack introspection, and we built a typehiding system as an add-on to Microsoft Internet Explorer. 1 Introduction The growth of the World Wide Web has enabled the Internet to reach new levels of popularity and ease of use. We are now seeing the arrival of HTML-enabled mail and news-reading tools, heralding the complete acceptance of Web documents as a medium of exchange. As Web applications have blossomed, developers have bee...
Dan S. Wallach, Dirk Balfanz, Drew Dean, Edward W. Felten
SOSP1
1996 Java Security: From HotJava to Netscape and Beyond
abstract
The introduction of Java applets has taken the World Wide Web by storm. Information servers can customize the presentation of their content with server-supplied code which executes inside the Web browser. We examine the Java language and both the HotJava and Netscape browsers which support it, and find a significant number of flaws which compromise their security. These flaws arise for several reasons, including implementation errors, unintended interactions between browser features, differences between the Java language and bytecode semantics, and weaknesses in the design of the language and the bytecode format. On a deeper level, these flaws arise because of weaknesses in the design methodology used in creating Java and the browsers. In addition to the flaws, we discuss the underlying tension between the openness desired by Web application writers and the security needs of their users, and we suggest how both might be accommodated.
Drew Dean, Edward W. Felten, Dan S. Wallach
S&P3
1994 Accelerated MPEG compression of dynamic polygonal scenes
abstract
This paper describes a methodology for using the matrix-vector multiply and scan conversion hardware present in many graphics workstations to rapidly approximate the optical flow in a scene. The optical flow is a 2-dimensional vector field describing the on-screen motion of each pixel. An application of the optical flow to MPEG compression is described which results in improved compression with minimal overhead.
Dan S. Wallach, Sharma Kunapalli, Michael F. Cohen
SIGGRAPH1