As hardware support for improved endhost security
becomes ubiquitous, it is important to consider how
network security and performance can benefit from these
improvements. If endhosts (or at least portions of each endhost)
can be trusted, then network infrastructure no longer needs
to arduously and imprecisely reconstruct data already known
by the endhosts. Through the design of a general-purpose
architecture we call Assayer, we explore the issues in providing
trusted host-based data, including the balance between useful
information and user privacy, and the tradeoffs between
security and efficiency. We also evaluate the usefulness of such
information in three case studies.
To gain insight into the performance we could expect from
such a system, we implement and evaluate a basic Assayer
prototype. Our prototype requires fewer than 1,000 lines of
code on the endhost. Endhosts can annotate their outbound
traffic in a few microseconds, and these annotations can be
checked efficiently; even packet-level annotations on a gigabit
link can be checked with a loss in throughput of only 3.7-18.3%