250 likes | 615 Views
A Watermarking Scheme for Categorical Relational Databases. Chair Professor Chin-Chen Chang National Tsing Hua University National Chung Cheng University Feng Chia University http://msn.iecs.fcu.edu.tw/~ccc. Relation: Grade Report. Watermarking. Secret key K. Watermark W. Watermark W.
E N D
A Watermarking Scheme for Categorical Relational Databases Chair Professor Chin-Chen Chang National Tsing Hua University National Chung Cheng University Feng Chia University http://msn.iecs.fcu.edu.tw/~ccc
Watermarking Secret key K Watermark W Watermark W Watermarked Relational Database RW Watermarking Relational Database R Secret key K Watermark insertion Public channel Watermark W Watermarked Relational Database RW Detection Relational Database R Watermark detection
Purposes of Watermarking • Ownership Assertion • Fingerprinting • Fraud and Tamper Detection
Watermarking Requirements • Capacity • Usability • Robustness • Security • Blindness • Incremental watermarking • Public system
Different Types of Attacks • Benign update • Value modification attack: bit attack, rounding attack, transformation • Subnet attack: deleting/ updating • Superset attack: new tuples/attributes are added
Collusion attack • False claim of ownership • Subset reverse order attack • Brute force attack: guessing
Watermarking techniques for relational database • Watermarking based on numerical data type attributes – Distortion (DNDT) • Watermarking based on numerical data type attributes – Distortion Free (DFNDT) • Watermarking based on non-numeric multi-word attributes • Watermarking based on tuple or attribute insertion • Watermarking based on categorical data type attributes – Distortion (DCDT) • Watermarking based on categorical data type attributes – Distortion Free (DFCDT)
A1 A2 A3 A4 PK1 011001100 110000100 100011100 110000101 PK2 101000111 010101111 111010110 100110011 PK3 110001110 100010101 000010001 101010000 Watermarked relational database Rw 1. Example for DNDT This tuple is selected A1 A2 A3 A4 PK1 011001100 110000100 100011100 110000101 PK2 101000111 010101111 111010110 100110011 PK3 110001110 100010101 000010101 101010000 Relational database R HIT(PK3) = 1 • ATT(PK3) = 3 We modify the 3rd bit of the 3rd attribute by b BIT(PK3) = 3 b = 0 R. Agrawal and J. Kiernan, “Watermarking relational databases,”Proc. 28th Int’l Conf. on Very Large Databases, pp. 155-166, 2002.
2. Example for DFNDT 1 This tuple is selected Relational database R The integer portion = 94 Assume Aj = 94.101 The fractional portionf =101 HIT(PK2) = 1 ATT(PK2) = 3 diff = f - F(r.P) = 101 – 28 = 73 b = 1 new_diff = diff * 2 + b= 73*2+1= 147 New fractional portionf’ =new_diff + F(r.P) = 147 + 28 = 175 Aj’ = 94.175 M. E. Farfoura, S. J. Horng, J. L. Lai, R. S. Run, R. J. Chen, and M. K. Khan, “A blind reversible method for watermarking relational databases based on a time-stamping,” Expert Systems with Applications, Vol. 39, pp. 3185-3196, 2012.
2. Example for DFNDT 2 (1/2) Tuple selection S Assume that selected attribute: ATT(PK1) = 2 ATT(PK8) = 1 ATT(PK13) = 4 ATT(PK17) = 1 ATT(PK23) = 3 ATT(PK30) = 3 Get two last digits to generate a sequence Seq = 52, 52, 54, 55, 55, 56 Mid = 54 Diff_Seq [i] =Seq [i] - mid Diff_Seq = -2, -2, 0, 1, 1, 2 C. C. Chang, T. S. Nguyen, C. C. Lin, “A Blind Reversible Robust Watermarking Scheme for Relational Databases,” The Scientific World Journal, 2013
2. Example for DFNDT 2 (2/2) Diff _Seq= -2, -2, 0, 1, 1, 2 PP1 PP2 Watermark b = 1 0 1 0 ZP1 ZP2 PP1 PP2 Histogram after shifting Diff _Seq= -2, -2, 0, 1, 1, 3
2. Example for DFNDT 2 (2/2) Diff _Seq= -2, -2, 0, 1, 1, 3 Watermark b = 1 0 1 0 PP1 PP2 Hide ‘1’ in – 2 – 2 – b = – 2 – 1 = – 3 Hide ‘0’ in – 2 – 2 – b = – 2 – 0 = – 2 Hide ‘1’ in 1 1 + b = 1 + 1 = 2 Histogram after shifting Hide ‘0’ in 1 1 + b = 1 + 0 = 1 So, Diff _Seqbecomes-3, -2, 0, 2, 1, 3 Histogram after embedding watermark
3. Watermarking based on non-numeric multi-word attributes m bits • For example: • Watermark = 010 101 100… Convert to decimal value d = 2 5 4 Relational Database R Embedding by creating a double space after d words of the attribute Watermarked relational Database RW A. Al-Haj and A. Odeh, “Robust and blind watermarking of relational database systems,” Journal of Computer Science, Vol. 4, No. 12, pp. 1024-1029, 2008.
4. Watermarking based on tuple/attribute insertion Flight scheduling database R • Generate candidate key for Flight number. • (for example F127 ) 2. For Departure attribute, compute v = 1. Then, take fake value from the set F = Razan. 3. For Arrival attribute, compute v = 1. Then, take fake value from the set F = Keroona. The set F of fake values 4. For Day attribute, compute v = 0. Take frequency value from this attribute is Mo. … Vahab Pournaghshband, “A new watermarking approach for relational data,” The 46th ACM Southeast Conference Auburn, AL, USA, pp. 127-131.
4. Watermarking based on tuple/attribute insertion Watermarked flight scheduling database R’ The set of fake tuplesQ To detect watermark, both watermarked flight scheduling database R’, and set Q are required for comparison
5. Example for DCDT Relational Database R Values of Attribute A and nA = 4 HIT(PK4) = 1 b = 1 Index_ATT(M) = 2 Embed “1” into index 2, (10)2 Using LSB substitution method on (10)2, we have (11)2 Watermarked relational Database RW Index 3 R. Sion, “Proving ownership over categorical data,” In Proceedings of the 20th IEEE International Conference on Data Engineering ICDE, pp. 584-596, 2004.
6. Example for DFCDT This tuple is selected Relational database R Assume HIT(PK2) = 1 ATT(PK2) = 3 Index(M) = 2 OriginalSet1
6. Example for DFCDT Randomly generate two reference sets RS0 and RS1 RS0 RS1 Index(M) = 2 ATT_Value = RS1(index) = RS1(2) = x Assume b = 1 So we use RS1 Watermarked relational database R’
Comparative Analysis of Various Watermarking Techniques Table 1: Comparisons of distortion-based watermarking
Comparative Analysis of Various Watermarking Techniques Table 2: Comparisons of distortion-free watermarking
Future work • Virtual primary key • Hybrid watermarking (categorical, textual and numerical attributes) • Database trends