Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current...

82
Efficient Data Structures for Tamper-Evident Logging Scott A. Crosby Dan S. Wallach Rice University

Transcript of Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current...

Page 1: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Efficient Data Structures for Tamper-Evident Logging

Scott A. Crosby

Dan S. Wallach Rice University

Page 2: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Everyone has logs

Page 3: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Tamper evident solutions

•  Current commercial solutions –  ‘Write only’ hardware appliances

– Security depends on correct operation

•  Would like cryptographic techniques – Logger proves correct behavior

– Existing approaches too slow

Page 4: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Our solution

•  History tree – Logarithmic for all operations

– Benchmarks at >1,750 events/sec

– Benchmarks at >8,000 audits/sec

•  In addition – Propose new threat model

– Demonstrate the importance of auditing

Page 5: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Threat model

•  Forward integrity –  Events prior to Byzantine failure are tamper-evident

•  Don’t know when logger becomes evil

–  Clients are trusted

•  Strong insider attacks –  Malicious administrator

•  Evil logger

–  Clients may be mostly evil •  Only trusted during insertion protocol

Page 6: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Limitations and Assumptions

•  Limitations – Detect misbehaviour, not prevent it

– Cannot prevent ‘junk’ from being logged

•  Assumptions – Privacy is outside our scope

•  Data may encrypted

– Crypto is secure

Page 7: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

System design

•  Logger –  Stores events –  Never trusted

•  Clients –  Little storage –  Create events to be logged –  Trusted only at time of event creation –  Sends commitments to auditors

•  Auditors –  Verify correct operation –  Little storage –  Trusted, at least one is honest

Client

Client

Client

Auditor

Auditor

Logger

Page 8: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

This talk

•  Discuss the necessity of auditing

•  Describe the history tree

•  Evaluation

•  Scaling the log

Page 9: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Tamper evident log

•  Events come in

•  Commitments go out – Each commits to the entire past

Logger

Cn-3

Cn-2

Cn-1

Xn-3

Xn-2

Xn-1

Page 10: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Hash chain log

•  Existing approach [Kelsey,Schneier] – Cn=H(Cn-1 || Xn)

– Logger signs Cn

Xn-5 Xn-4 Xn-3

Cn-3

Page 11: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Hash chain log

•  Existing approach [Kelsey,Schneier] – Cn=H(Cn-1 || Xn)

– Logger signs Cn

Xn-5 Xn-4 Xn-3 Xn-2

Cn-2

Page 12: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Hash chain log

•  Existing approach [Kelsey,Schneier] – Cn=H(Cn-1 || Xn)

– Logger signs Cn

Xn-5 Xn-4 Xn-3 Xn-2 Xn-1

Cn-1

Page 13: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Problem

•  We don’t trust the logger!

Cn

Cn-2 Cn-1

Logger returns a stream of commitments

Each corresponds to a log

Cn

Xn-4 Xn-3 Xn-2 Xn-1 Xn

Page 14: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Problem

•  We don’t trust the logger!

Cn

Cn-2 Cn-1

Xn Does really contain the just inserted

Do and really commit the same historical events?

?

Cn Xi Is the event at index i in log really ?

Cn

Xn-4 Xn-3 Xn-2 Xn-1 Xn

Page 15: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Problem

•  We don’t trust the logger! – Logger signs stream of log heads

– Each corresponds to some log

Cn-3

Cn-2 Cn-1

Xn-3 Does really contain the just inserted

Do and really commit the same historical events?

?

Cn Xi Is the event at index i in log really ?

Page 16: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Solution: Audit the logger

•  Only way to detect tampering – Check the returned commitments

•  For consistency

•  For correct event lookup

•  Previously – Auditing = looking historical events

•  Assumed to infrequent

•  Performance was ignored

Cn-2 Cn-1 Cn-3 Xn-3

Page 17: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Solution

•  Auditors check the returned commitments – For consistency

– For correct event lookup

•  Previously – Auditing = looking historical events

•  Assumed to infrequent

•  Performance was ignored

Cn-2 Cn-1 Cn-3 Xn-3

Page 18: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Auditing is a frequent operation

•  If the logger knows this commitment will not be audited for consistency with a later commitment.

X’n-3 Xn-2 Xn-1

C’n-1

Xn-6 Xn-4 Xn-3

Cn-3

Xn-5

Page 19: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Auditing is a frequent operation

•  Successfully tampered with a ‘tamper evident’ log

•  Auditing required in forward integrity threat model

X’n-3 Xn-2 Xn-1

C’n-1

Xn-6 Xn-4 Xn-3

Cn-3

Xn-5

Page 20: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Auditing is a frequent operation

•  Every commitment must have a non-zero probability of being audited

X’n-3 Xn-2 Xn-1

C’n-1

Xn-4 Xn-3

Cn-3

Xn-5 Xn-6

Page 21: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Forking the log

•  Rolls back the log and adds on different events –  Attack requires two commitments on different forks disagree on

the contents of one event. –  If system has historical integrity, audits must fail or be skipped

Xn-5 X’n-4 Xn-3 Xn-2 Xn-1

C’n-1

Xn-6 Xn-4 Xn-3

Cn-3

Xn-5

Page 22: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

New paradigm

•  Auditing cannot be avoided

•  Audits should occur –  On every event insertion –  Between commitments returned by logger

•  How to make inserts and audits cheap –  CPU –  Communications complexity –  Storage

Page 23: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Two kinds of audits

Ci Cn

•  Membership auditing – Verify proper insertion

– Lookup historical events

•  Incremental auditing – Prove consistency between two commitments

Cn Xi

Page 24: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Cn-3

Membership auditing a hash chain

•  Is ? Cn-3 Xn-5

Page 25: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Membership auditing a hash chain

•  Is

Xn-5 Xn-4 Xn-3

Cn-3

X’n-4 X’n-3 X’n-5 X’n-6

? Cn-3 Xn-5

P

Page 26: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Membership auditing a hash chain

•  Is

Xn-5 Xn-4 Xn-3

Cn-3

X’n-4 X’n-3 X’n-5 X’n-6

? Cn-3 Xn-5

Page 27: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Incremental auditing a hash chain

•  Are ? C’’n-5 C’n-1

Page 28: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Incremental auditing a hash chain

X’n-5 X’n-4 X’n-3 X’n-2 X’n-1

C’n-1

X’’n-6 X’’n-5

C’’n-5

Xn-4 Xn-3 Xn-2 Xn-1

X’n-6

Xn-5 Xn-6

P

Page 29: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Incremental auditing a hash chain

X’n-5 X’n-4 X’n-3 X’n-2 X’n-1

C’n-1

X’’n-6 X’’n-5

C’’n-5

Xn-4 Xn-3 Xn-2 Xn-1

X’n-6

Xn-5 Xn-6

Cn-5 P

Page 30: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Incremental auditing a hash chain

X’n-5 X’n-4 X’n-3 X’n-2 X’n-1

C’n-1

X’’n-6 X’’n-5

C’’n-5

Xn-4 Xn-3 Xn-2 Xn-1

Cn-1

X’n-6

Xn-5 Xn-6

P

Page 31: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Incremental auditing a hash chain

X’n-5 X’n-4 X’n-3 X’n-2 X’n-1

C’n-1

X’’n-6 X’’n-5

C’’n-5

Xn-4 Xn-3 Xn-2 Xn-1

X’n-6

Xn-5 Xn-6

Cn-5 Cn-1 P

Page 32: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Existing tamper evident log designs

•  Hash chain – Auditing is linear time

– Historical lookups •  Very inefficient

•  Skiplist history [Maniatis,Baker] – Auditing is still linear time

– O(log n) historical lookups

Page 33: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Our solution

•  History tree – O(log n) instead of O(n) for all operations

– Variety of useful features •  Write-once append-only storage format

•  Predicate queries + safe deletion

•  May probabilistically detect tampering –  Auditing random subset of events

– Not beneficial for skip-lists or hash chains

Page 34: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

History Tree

•  Merkle binary tree – Events stored on leaves

– Logarithmic path length •  Random access

– Permits reconstruction of past version and past commitments

Page 35: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

History Tree

X1

C2

X2

Page 36: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

History Tree

X1 X2 X3

C3

Page 37: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

History Tree

X1 X2 X3 X4

C4

Page 38: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

History Tree

X1 X2 X3 X4 X5

C5

Page 39: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

History Tree

X1 X2 X3 X4 X5 X6

C6

Page 40: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

History Tree

X1 X2 X3 X4 X5 X7 X6

C7

Page 41: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

History Tree

X1 X2 X3 X4 X5 X7 X6

Page 42: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Incremental auditing

Page 43: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Auditor

X1 X2 X3

C3 C3

Page 44: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Auditor

X1 X2 X3 X4

C4

C3

Page 45: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Auditor

X1 X2 X3 X4 X5

C5

C3

Page 46: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Auditor

X1 X2 X3 X4 X5 X6

C6

C3

Page 47: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Auditor

X1 X2 X3 X4 X5 X7 X6

C7

C3

C7

Page 48: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Incremental proof

X1 X2 X3 X4 X5 X7 X6

Auditor

C3

C7

C7 C3

C7

C3

Page 49: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Incremental proof

•  P is consistent with •  P is consistent with •  Therefore and are consistent.

X1 X2 X3 X4 X5 X7 X6

C7

C3

C7 C3

Auditor

C3

C7 C7

C3

C7 C3

Page 50: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Auditor

Incremental proof

•  P is consistent with •  P is consistent with •  Therefore and are consistent.

X1 X2 X3 X4 X5 X7 X6

C7

C3

C7 C3

C3

C7 C7

C3

C7 C3

Page 51: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Auditor

Incremental proof

•  P is consistent with •  P is consistent with •  Therefore and are consistent.

X1 X2 X3 X4 X5 X7 X6

C3

C7 C7

C3

C7

C3

C7 C3

C7 C3

Page 52: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Incremental proof

•  P is consistent with •  P is consistent with •  Therefore and are consistent.

X1 X2 X3 X4 X5 X7 X6

Auditor

C3

C7 C7

C3

C7

C3

C7 C3

C7 C3

Page 53: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Pruned subtrees

X1 X2 X3 X4 X5 X7 X6

•  Although not sent to auditor – Fixed by hashes above them –  , fix the same (unknown) events C7 C3

Auditor

C3

C7 C7

C3

Page 54: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Membership proof that

X1 X2 X3 X4 X5 X7 X6

C’’7

•  Verify that has the same contents as P

•  Read out event

C’’7

X3

C’’7 X3

Page 55: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Merkle aggregation

Page 56: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Merkle aggregation

•  Annotate events with attributes

$1 $8 $3 $2 $5 $2 $2

Page 57: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Aggregate them up the tree

•  Max()

$1

$8

$8

$8

$8 $3

$3

$2 $5

$5

$5

$4

$4

$2

Included in hashes and checked during audits

Page 58: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Querying the tree

•  Max()

$1

$8

$8

$8

$8 $3

$3

$2 $5

$5

$5

$4

$4

$2

Find all transactions over $6

Page 59: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Safe deletion

•  Max()

$1

$8

$8

$8

$8 $3

$3

$2 $5

$5

$5

$4

$4

$2

Authorized to delete all transactions under $4

$3 $2 $3 $2 $3

Page 60: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Merkle aggregation is flexible

•  Many ways to map events to attributes – Arbitrary computable function

•  Many attributes – Timestamps, dollar values, flags, tags

•  Many aggregation strategies +, *, min(), max(), ranges, and/or, Bloom filters

Page 61: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Generic aggregation

•  (,,) –  : Type of attributes on each node in history

–  : Aggregation function

–  : Maps an event to its attributes

•  For any predicate P, as long as: – P(x) OR P(y) IMPLIES P(xy)

– Then: •  Can query for events matching P

•  Can safe-delete events not matching P

Page 62: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Evaluating the history tree

•  Big-O performance

•  Syslog implementation

Page 63: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Big-O performance

Cj Ci Cj Xi Insert

History tree O(log n) O(log n) O(log n)

Hash chain O(j-i) O(j-i) O(1)

Skip-list history

[Maniatis,Baker]

O(j-i)

or O(n)

O(log n) or O(n)

O(1)

Page 64: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Skiplist history [Maniatis,Baker]

•  Hash chain with extra links –  Extra links cannot be trusted without auditing

•  Checking them –  Best case: only events since last audit

–  Worst case: examining the whole history

–  If extra links are valid •  Using them for historical lookups

–  O(log n) time and space

Page 65: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Syslog implementation

•  We ran 80-bit security level –  1024 bit DSA signatures

–  160 bit SHA-1 Hash

•  We recommend 112-bit security level –  224 bit ECDSA signatures

•  66% faster

–  SHA-224 (Truncated SHA-256) •  33% slower

•  [NIST SP800-57 Part 1, Recommendations for Key Magament – Part 1: General (Revised 2007)]

Page 66: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Syslog implementation

•  Syslog – Trace from Rice CS departmental servers

– 4M events, 11 hosts over 4 days, 5 attributes per event •  Repeated 20 times to create 80M event trace

Page 67: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Syslog implementation

•  Implementation –  Hybrid C++ and Python

–  Single threaded

–  MMAP-based append-only write-once storage for log

–  1024-bit DSA signatures and 160-bit SHA-1 hashes

•  Machine –  Dual-core 2007 desktop machine

–  4gb RAM

Page 68: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Performance

•  Insert performance: 1,750 events/sec –  2.4% : Parse –  2.6% : Insert –  11.8% : Get commitment –  83.3% : Sign commitment

•  Auditing performance –  With locality (last 5M events)

•  10,000-18,000 incremental proofs/sec •  8,600 membership proofs/sec

–  Without locality •  30 membership proofs/sec

–  < 4,000 byte self-contained proof size •  Compression reduces performance and proof size by 50%

Page 69: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Improving performance

•  Increasing audit throughput above – 8,000 audits/sec

•  Increasing insert throughput above – 1,750 inserts/sec

Page 70: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Increasing audit throughput

•  Audits require read-only access to the log – Trivially offloaded to additional cores

•  For infinite scalability – May replicate the log server

•  Master assigns event indexes

•  Slaves build history tree locally

Page 71: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Increasing insert throughput

•  Public key signatures are slow – 83% of runtime

•  Three easy optimization – Sign only some commitments

– Use faster signatures

– Offload to other hosts •  Increase throughput to 10k events/sec

Page 72: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

More concurrency with replication

•  Processing pipeline: –  Inserting into history tree

•  O(1). Serialization point •  Fundamental limit

– Must be done on each replica –  38,000 events/sec using only one core

– Commitment or proofs generation •  O(log n).

– Signing commitments •  O(1), but expensive. Concurrently on other hosts

Page 73: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Storing on secondary storage

•  Nodes are frozen (no longer ever change) –  In post-order traversal

•  Static order

–  Map into an array

1

3

7

2 4

6

5 8

10

11 9

X1 X2 X3 X4 X5 X7 X6

Page 74: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Partial proofs

•  Can re-use node hashes from prior audits –  (eg, incremental proof from C3 to C4 )

X1 X2 X3 X4 X5 X7 X6

C’’7 C’4

Page 75: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Conclusion

•  New paradigm –  Importance of frequent auditing

•  History tree – Efficient auditing

– Efficient predicate queries and safe deletion

– Scalable

•  Proofs of tamper-evidence will be in my PhD Thesis

Page 76: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Questions

?

Page 77: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Historical integrity

X’n-4 X’n-5

C’n-4

Page 78: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Historical integrity

X’n-4 X’n-5

C’n-4

Page 79: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

X’n-5 X’n-4

C’n-4

Xn-5 Xn-4 Xn-3 Xn-2 Xn-1

Cn-1

Historical integrity

Page 80: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Historical integrity

X’n-4

Xn-4

X’n-5

C’n-4

Xn-5 Xn-3 Xn-2 Xn-1

Cn-1

Page 81: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Defining historically integrity

•  A logging system is tamper-evident when: –  If there is a verified incremental proof between

commitments Cj and Ck (j<k), then for all i<j and all verifiable membership proofs that event i in log Cj is Xi and event i in log Ck is X’i, we must have Xi=X’i.

X’n-5 X’n-4 X’n-3

C’n-3

Xn-5 Xn-4 Xn-3 Xn-2 Xn-1

Cn-1

Page 82: Efficient Data Structures for Tamper-Evident Logging...Tamper evident solutions • Current commercial solutions – ‘Write only’ hardware appliances – Security depends on correct

Safe deletion

•  Unimportant events may be deleted –  When auditor requests deleted event

•  Logger supplies proof that ancestor was not important

X1

R

X2 X3 X4 X5 X7 X6