1 / 58

A video authentication scheme for H.264/AVC Main profile

A video authentication scheme for H.264/AVC Main profile. Nandakishore Ramaswamy Multimedia Processing Lab July 9 th , 2004. Agenda. Objectives Introduction Previous work Encoder/Decoder description Simulation Results Conclusion and Future work References. Objectives.

muncel
Download Presentation

A video authentication scheme for H.264/AVC Main profile

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. A video authentication scheme for H.264/AVC Main profile Nandakishore Ramaswamy Multimedia Processing Lab July 9th, 2004.

  2. Agenda • Objectives • Introduction • Previous work • Encoder/Decoder description • Simulation Results • Conclusion and Future work • References

  3. Objectives • Verify the integrity of the video bitstream compressed by H.264/AVC Main Profile • Identify the originator (sender) of the video

  4. Introduction • Multimedia authentication: - Verify the integrity of the multimedia signal a) Hard authentication: -Allows no alteration of the pixel values. b) Soft authentication: -Accepts manipulations of the pixel values which preserve the semantic structure of the multimedia signal. Typically, cryptographic techniques are used for authentication and verification.

  5. Digital Signature Vs Encryption • Digital Signature Alice wants to sign and send a message to Bob Alice Digital Signature Encryption algorithm Original Message Alice’s private key Bob Messages match Encryption algorithm Yes = Signature Verified No= Signature Verification failed Received Digital Signature Alice’s public key Received Message

  6. Digital Signature Vs Encryption (contd.) • Encryption Alice wants to encrypt and send a message to Bob Alice Cipher message Encryption algorithm Original Message Bob’s public key Bob Encryption algorithm Original Message Received cipher message Bob’s private key

  7. Introduction (contd.) • A generic video authentication process [1]

  8. Introduction (contd.) • A generic video verification process [1]

  9. Digital Signature Standard • Digital signature standard (DSS) a) Developed by NIST b) Consists of two parts - Secure Hash Algorithm (SHA) - Digital Signature Algorithm (DSA)

  10. (DSA and SHA)’s relationship Signature Generation Signature Verification Received Message Original Message Secure Hash Algorithm Secure Hash Algorithm 160 bits Message Digest Message Digest 160 bits DSA Verify Operation DSA Sign operation Public Key 320 bits 320 bits Private Key Signature Yes = Signature Verified No= Signature Verification failed Source:- Federal Information Processing Standards Publications –180 http://www.itl.nist.gov/fipspubs/fip180-1.htm

  11. Rivest Shamir and Adleman (RSA) Encryption Let m = Input Message e = Encrypted message n = Common parameter pr = Private Key pb = Public Key • Encryption e = mpr * mod(n) • Decryption m = epb * mod(n)

  12. Previous Work • Digital signature generation using block means [2] Division into 8x8 blocks Block mean computation Quantization Encryption Sender’s secret key Original Image Digital Signature

  13. Previous Work (contd.) • Digital signature verification using block means [2] Division into 8x8 blocks Extract Block means before inverse quantization Block means match No Decryption Received Image Image NOT Authentic Yes Received signature Sender’s public key Image Authentic

  14. Previous Work (contd.) • Digital signature in JPEG-2000 [3] Every code-block of the compressed image is hashed using Secure Hash Algorithm and appended at the end of the bitstream. 160 bit digest Encrypt using RSA JPEG-2000 code-block Compute hash using SHA Sender’s public key Append to bitstream • For verification, received image’s code-blocks are hashed and matched with decrypted hash.

  15. Encoder/Decoder description A video authentication scheme for H.264/AVC Main profile

  16. Encoder • Luma values only • Features taken in transform domain • Intra and Inter MB’s • Signature for every coded video sequence

  17. Encoder (contd.) • Intra 4x4 and Inter MB (0,3) (0,3) (0,0) 4X4 integer DCT (0,0) T Q (3,0) (3,0) (3,3) (3,3) Original residual block Transformed and quantized block Feature data

  18. Encoder (contd.) • Intra 16x16 MB Transformed 16x16 MB 4X4 Hadamard transform T Q 4X4 integer DCT T Original 16x16 MB residual Quantized Hadamard coefficients Q Feature data

  19. Encoder (contd.) • Collect all feature data of a MB for every picture. • Insert picture number after a picture is coded • Repeat process until end of sequence

  20. Encoder (contd.) • Signature generation for a coded video sequence H Generate signature D=DSA(H) Feature data Hash (SHA) D Sender’s private key Append as SEI to video bitstream Encryption E= RSA(D) E Receiver’s public key

  21. Encoder (contd.) • Multiple signature generation a) Video = 1 or more video sequences b) Generate signature for every video sequence c) Append every signature as SEI in the corresponding video sequence

  22. Decoder (contd.) • Luma values only • Features taken in transform domain • Signature verification for every coded video sequence

  23. Decoder (contd.) • Intra 4x4 and Inter MB’s (0,0) (0,3) Feature data (3,0) (3,3) 4x4 block of transform coefficients before inverse quantization

  24. Decoder (contd.) • Intra 16x16 MB 15 AC coefficients Transformed 16x16 MB before inverse quantization Hadamard coefficients before inverse quantization Feature data

  25. Decoder (contd.) • Collect all feature data of a MB for every picture. • Insert picture number after a picture is decoded • Repeat process until end of sequence

  26. Decoder (contd.) • Signature verification for a coded video sequence Feature data H’ Hash (SHA) Verify signature D’’ = DSV(H’,D’) Sender’s public key D’’ D’ D’’=D’ E’ Received video and signature Video Authenticated Decryption D’=RSA-1(E’) Yes No Receiver’s private key Video NOT Authenticated

  27. Decoder (contd.) • Tampering frames = Signature failure • Sender forgery = Signature failure • Cannot point out the reason of signature failure • If tampered, cannot point out location of tampering • Modify encoder to accommodate these issues

  28. Revised Encoder • Compute hash of every picture in the coded video sequence. • Signature failure = Match decoder hash • Inter and Intra for hash computation • Transform domain values only • Luma frames • Authentication data = Signature + Hash

  29. Hash computation • Intra 4x4 and Inter MB (0,3) (0,3) (0,0) 4X4 integer DCT (0,0) T Q (3,0) (3,0) (3,3) (3,3) Original residual block Transformed and quantized block Feature data

  30. Hash computation (contd.) • Intra 16x16 MB Transformed 16x16 MB 4X4 Hadamard transform T Q 4X4 integer DCT T Original 16x16 MB residual Quantized Hadamard coefficients Q Feature data

  31. Hash computation (contd.) • Hash generation for a picture PH Feature data for a picture Hash PH = SHA(data) Encryption EH= RSA(PH) EH Receiver’s public key Append as SEI to video bitstream Repeat process for every picture in the coded video sequence

  32. Tampered locations and sender forgery Signature Failure Receiver’s private key Decrypt hashes Compute Hash for every picture All Hashes match? Signature failure due to sender forgery Signature failure due to tampering. (Identify tampered locations) No Yes

  33. Decoder Hash Computation • Intra 4x4 and Inter MB: - DC and AC coefficients of every 4x4 block before inverse quantization (0,3) (0,0) Feature data (3,0) (3,3) 4x4 block of transform coefficients before inverse quantization

  34. Decoder Hash Computation (contd.) • Intra 16x16 MB 15 AC coefficients Transformed 16x16 MB before inverse quantization Hadamard coefficients before inverse quantization Feature data

  35. Simulation Results A video authentication scheme for H.264/AVC Main profile

  36. DSA common parameters • Private Key 932308816105877193346324924405238358561797363453 • Public Key 49250364518976760201935612031242625664970300784488999206628913898684885553279548885211476769179063848086265981390552828860770995411616739007429069330033064008697384549473384637876060915808531747270579608164016570165925297909070695052210446426918824013612814674507994466578915575028597282519755964472561590380

  37. Results for one coded video sequence • Common Parameters Total frames encoded = 59 Total coefficients = 12501 Encoder signature r = 258230994199886379618680381531392644375747268307 s = 553921005467375065529673563440116158716908054793 • Without tampering or forgery Decoder Signature v = 258230994199886379618680381531392644375747268307 Since r = v, signature is verified.

  38. Results for one coded video sequence (contd.) • Frame tampering Frame 0 = I frame = tampered Location = 1st Intra 16x16 block, DC coefficient at (0,0) after Hadamard transform and quantization Original value = 5 Modified value = 15 Decoder signature v = 363510879679629003962752313295967888200812862057 But r = 258230994199886379618680381531392644375747268307 Since, r is not equal to v, Signature is NOT verified.

  39. Results for one coded video sequence (contd.) • Hash of all pictures in the video sequence are compared. Picture 0 Encoder Hash = 244521134779192871239422005322433514569730613982 Decoder Hash =564856327811211747778209339112070483726931840033 Hashes are NOT equal. Tampered location = Picture 0

  40. Results for one coded video sequence (contd.) • Detecting malicious activity Private key used to sign video = Imposter’s Public key used to verify = Legal user’s Original Private Key = 932308816105877193346324924405238358561797363453 Imposter’s private key = 13230881610587719334632492440523835856179736345

  41. Results for one coded video sequence (contd.) • Encoder signature r = 258230994199886379618680381531392644375747268307 s = 659115584368708655163218960845447884312706027895 • Decoder signature v = 757611328353143787983558147251463660400321700712 Since r is NOT equal to v,signature is NOT verified. • Encoder hashes = Decoder hashes Thus, signature failure due to malicious activity.

  42. Results for one coded video sequence (contd.) • Robustness to quantization Sequence is encoded with QP 29 Encoder signature r = 258230994199886379618680381531392644375747268307 s = 553921005467375065529673563440116158716908054793

  43. Results for one coded video sequence (contd.) • Sequence is re-encoded with QP 35 Decoder signature v = 450045542578458967124875488958087354781835818707 Since r is NOT equal to v, Video is NOT authenticated.

  44. Results for one coded video sequence (contd.) • Frame reordering attack Original Re-ordered

  45. Results for one coded video sequence (contd.) • DC Attack : - Block mean kept the same but values modified. T Q Original Block Transformed Block Quantized Block T Q Modified Block Transformed Block Quantized Block

  46. Results for one coded video sequence (contd.) • When using only DC coefficient Encoder Signature (Original Block) Decoder Signature (Modified Block) Video is authenticated (Signatures match) even though the block has changed!

  47. Results for one coded video sequence (contd.) • When using DC and AC coefficients Encoder Signature (Original Block) Decoder Signature (Modified Block) Video is NOT authenticated. Robust to DC attack!

  48. Results for one coded video sequence (contd.) • Encoder signature r = 258230994199886379618680381531392644375747268307 s = 553921005467375065529673563440116158716908054793 • Decoder signature v = 796457292123352592426447215935643118188436156788 Since r is NOT equal to v,signature is NOT verified.

  49. Results for multiple coded video sequence (contd.) • Total number of frames encoded = 59 • Total number of video sequences = 6 • Total number of signatures = 6 Encoder Signature 1 Total number of coefficients = 4334 r = 258230994199886379618680381531392644375747268307 s = 602843151256385963511141755924782867386260766615

  50. Results for multiple coded video sequence (contd.) Encoder Signature 2 Total number of coefficients = 3724 r = 258230994199886379618680381531392644375747268307 s = 909298954038809272308410772111508639025580732794 Encoder Signature 3 Total number of coefficients = 3896 r = 258230994199886379618680381531392644375747268307 s = 37131761566210379177239004151768998162822235640 Encoder Signature 4 Total number of coefficients = 4561 r = 258230994199886379618680381531392644375747268307 s = 219871236647467187087134837911922129305756281586

More Related