1 / 12

Tamper Detection and Localization for Categorical Data Using Fragile Watermarks

Tamper Detection and Localization for Categorical Data Using Fragile Watermarks. What is Digital watermarking?. A digital watermark is technique of embedding an invisible signal directly into the data, thus providing a promising way to protect digital data from illicit copying and manipulation.

vivek
Download Presentation

Tamper Detection and Localization for Categorical Data Using Fragile Watermarks

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Tamper Detection and Localization for Categorical DataUsing Fragile Watermarks

  2. What is Digital watermarking? • A digital watermark is technique of embedding an invisible signal directly into the data, thus providing a promising way to protect digital data from illicit copying and manipulation.

  3. Why is it required? • It is used to detect data tampering and illicit copying of data. • It complements cryptography and steganography. • Cryptography- once the encrypted data is decrypted, the data is clear and no longer under protection. • Steganography :The problem is that it cannot extract the hidden data if the stego data undergo some distortions.

  4. Applications • Copy protection • Authentication • Tamper detection

  5. Classifications of Digital Watermarks • Fragile watermarks for tamper detection • Robust watermarks for ownership verification

  6. Difference between multimedia and Database Watermarking • Multimedia data are highly correlated, there is a lot of redundant information present in multimedia data. • Database relations contain large number of independent tuples and all tuples are equally important.

  7. Challenges • Embedding watermarks in database relations is a challenging problem because there is little redundancy present in a database relation.

  8. Watermark Embedding Algorithm • Algorithm 1 Watermark embedding • 1: For all k ∈ [1, g] qk = 0 • 2: for i = 1 to ω do • 3: hi = HASH(K, ri.A1, ri.A2, · · · , ri.Aγ) // row hash • 4: hpi = HASH(K, ri.P ) // primary key hash • 5: k = hpi mod g • 6: ri → Gk • 7: qk ++ • 8: end for • 9: for k = 1 to g do • 10: watermark embedding in Gk // See Algorithm 2 • 11: end for

  9. Watermark Embedding Algorithm(cont…) • Algorithm 2 Watermark embedding in Gk • sort tuples in Gk in ascendant order according to their primary • key hash // Virtual operation • H = HASH(K, h1, h2, · · · , hqk) • W = extractBits(H, qk/2) // See line 9 - 16 • for i = 1, i < qk, i = i + 2 do • if (W[i/2] == 1 and hi < hi+1) or (W[i/2] == 0 and hi > hi+1) then • switch the position of ri and ri+1 • end if • end for • extractBits(H, l) { 10: if length(H) ≥ l then • W = concatenation of first l selected bits from H • else • m = l - length(H) • W = concatenation of H and extractBits(H,m) • end if • return W }

  10. Example Figure 1: A table before and after watermark embedding WM={0,1}

  11. Watermark Detection • Algorithm 3 Watermark detection • 1: For all k ∈ [1, g] qk = 0 • 2: for i = 1 to ω do • 3: hi = HASH(K, ri.A1, ri.A2, · · · , ri.Aγ) // tuple hash • 4: hp • i = HASH(K, ri.P ) // primary key hash • 5: k = hp • i mod g • 6: ri → Gk • 7: qk ++ • 8: end for • 9: for k = 1 to g do • 10: watermark verification in Gk // See Algorithm 4 • 11: end for

  12. Watermark Detection • Algorithm 4 Watermark verification in Gk • 1: sort tuples in Gk in ascendant order according to their primary • key hash // Virtual operation • 2: H = HASH(K, h1, h2, · · · , hqk) // hi(i = 1, · · · qk) is the • tuple hash of ith tuple after ordering • 3: W = extractBits(H, qk/2) //See line 9-16 in Algorithm 2 • 4: for i = 1, i < qk, i = i + 2 do • 5: if hi ≤ hi+1 then • 6: W[i/2] = 0 • 7: else • 8: W[i/2] = 1 • 9: end if • 10: end for • 11: ifW == W then • 12: V = TRUE • 13: else • 14: V = FALSE • 15: end if

More Related