Rabins Fingerprinting - PowerPoint PPT Presentation

1 / 13
About This Presentation
Title:

Rabins Fingerprinting

Description:

... Toward Automated, Distributed Worm Signature Detection, Proceedings of ... [4] L. Fan, P. Cao, J. Almeida and A. Broder, Summary Cache: A Scalable Wide-Area ... – PowerPoint PPT presentation

Number of Views:482
Avg rating:3.0/5.0
Slides: 14
Provided by: pub97
Category:

less

Transcript and Presenter's Notes

Title: Rabins Fingerprinting


1
Rabins Fingerprinting
  • Presenter Tong Zhou

2
Fingerprinting
  • What is k-bit fingerprinting scheme?
  • Function set
  • where O is the set of all possible objects
  • So that , With high
    probability, we have
  • Note fingerprinting may have false alarms, i.e.,

while
3
Rabins Fingerprinting
  • Given string
  • A k-bit Rabin fingerprint is computed as
    follows
  • Let
  • Choose irreducible polynomial P(t)
  • Compute Rabins fingerprint f(A)

4
Example of Rabins Fingerprinting
  • Given bit string A101010, compute 4-bit Rabins
    fingerprint, choose p11111

1 0 1 0 1 0
1 1 1 1 1
1 0 1 0 1
1 1 1 1 1
1 0 1 0
5
Properties of Rabins Fingerprinting
  • For bit object string, the only operation needed
    is shift and xor
  • Linear computation time
  • Not secure this is NOT a one-way hash!

6
Application Examples
  • String matching can we find string y1y2ym in
    the string x1x2xn?

Straightforward Solution
x1 x2 x3 x4 x5 x6 x7 x8 xn
Time Complexity O(mn)
X
y1 y2 y3 y4 ym
7
Application Examples
  • String matching can we find string y1y2ym in
    the string x1x2xn?

Rabins Fingerprinting
f (y1 y2 y3 y4 ym)
Note Time complexity of computing f(x2x3xm1)
from f(x1x2xm) is O(1)
f(x1x2xm)
f(x2x3xm1)
Time complexity O(mn)
8
Application Examples
  • String matching can be used in
  • Detecting worms 2 3
  • Web cache 4
  • Large file finding 5

9
Application Examples
  • Fingerprinting DAGs

Goal Give the vertices derived in the same way
from the same source the same tag. e.g., vertices
B C should have the same tag.
10
Application Examples
  • Fingerprinting DAGs
  • Choose k-degree polynomial P(t) and random
    permutation T
  • Tag(source) T(f(source) )
  • For a vertex vi, assume it has n predecessors p1,
    , pn, Tag(vi)T(f(Tag(p1)Tag(pn)) )

11
Application Examples
  • Fingerprinting DAGs

0010
Example Choose S100000, P 11111 to generate a
4-bit fingerprint, T 3241
12
Application Examples
  • Fingerprinting DAG is used to
  • Identify derived objects
  • I guess it can also be used to fingerprint
    database structure

13
References
  • 1 A. Z. Broder. Some applications of Rabin's
    fingerprinting method. In Sequences II Methods
    in Communications, Security, and Computer
    Science, pages 143152. Springer-Verlag, 1993.
  • 2 H. Kim and B. Karp, Autograph Toward
    Automated, Distributed Worm Signature Detection,
    Proceedings of the 13th Usenix Security
    Symposium, Aug. 2004.
  • 3 S. Singh, C. Estan, G. Varghese and S.
    Savage, Automated Worm Fingerprinting, OSDI, 2004
  • 4 L. Fan, P. Cao, J. Almeida and A. Broder,
    Summary Cache A Scalable Wide-Area Web Cache
    Sharing Protocol, IEEE/ACM Transactions on
    Networking, vol. 8, No. 3, 2000
  • 5 U. Manber, Finding Similar Files in a Large
    File System. Proceedings of the USENIX Winter
    Technical Conf., 1994.
Write a Comment
User Comments (0)
About PowerShow.com