US9270456B1ActiveUtility

System and methodology for decrypting encrypted media

75
Assignee: GOOGLE INCPriority: Feb 16, 2012Filed: Jun 19, 2014Granted: Feb 23, 2016
Est. expiryFeb 16, 2032(~5.6 yrs left)· nominal 20-yr term from priority
H04L 9/088H04L 9/0637H04L 9/0819H04L 63/062H04L 63/0457
75
PatentIndex Score
3
Cited by
20
References
20
Claims

Abstract

A system and method for decrypting encrypted media that have changing initialization vectors and keys is disclosed. As encrypted media is received and played back, the encrypted frames can be monitored (e.g., checked) to detect whether or not initialization vectors are prepended to them. If a prepended initialization vector is detected, the prepended initialization vector is used to facilitate the decryption of the encrypted frame. If no prepended initialization vector is detected, a new initialization vector is generated by using a last portion of bytes of the preceding encrypted frame and the new initialization vector is used to facilitate the decryption of the encrypted frame. A signal byte can be included to signal whether the frame is encrypted or not, whether an initialization vector is included, and other information about the encrypted frame.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A system comprising:
 a memory that has stored thereon computer executable components; and 
 a processor that executes the following computer executable components stored in the memory:
 a frame monitoring component that monitors a frame to determine if a signal byte is prepended to the frame, wherein bits in the signal byte indicate information about the frame comprising information about whether the frame is encrypted and information about whether an initialization vector follows the signal byte; 
 a generation component that generates the initialization vector in response to the signal byte indicating that there is an encrypted frame and no initialization vector following the signal byte; and 
 a decryption component that uses the initialization vector to decrypt the encrypted frame. 
 
 
     
     
       2. The system of  claim 1 , wherein size of the initialization vector is sixteen bytes. 
     
     
       3. The system of  claim 1 , wherein the generation component appends a last byte of a preceding encrypted frame one or more times to an end of a portion of data to form the initialization vector. 
     
     
       4. The system of  claim 3 , wherein the portion of data is a size of the previous frame and, if the size of the preceding encrypted frame is smaller than the predetermined size, the generation component appends a last byte of the preceding encrypted frame one or more times to an end of the portion of data to form the initialization vector having a predetermined size. 
     
     
       5. The system of  claim 1 , wherein bits in the signal byte indicate that an additional signal byte follows the signal byte and that key data follows the signal byte. 
     
     
       6. The system of  claim 5 , wherein the key data is used to obtain a new key from a key server. 
     
     
       7. The system of  claim 1 , wherein the frame monitoring component determines if the encrypted frame is an intra frame or an inter frame. 
     
     
       8. The system of  claim 7 , wherein the frame monitoring component determines that the initialization vector is prepended to the encrypted frame in response to determining that the encrypted frame is an intra frame. 
     
     
       9. The system of  claim 7 , wherein the frame monitoring component determines that the encrypted frame is an intra frame or an inter frame based on bits in the signal byte. 
     
     
       10. The system of  claim 7 , wherein the generation component generates the initialization vector from the portion of data from the previous encrypted frame in response to the frame monitoring component determining that the encrypted frame is an inter frame. 
     
     
       11. The system of  claim 1 , wherein the frame monitoring component monitors signal bytes of a series of frames to detect an initialization vector in response to receiving information that one of the series of frames is encrypted. 
     
     
       12. A method comprising:
 employing a processor that facilitates execution of computer executable instructions stored on a non-transitory computer readable medium to implement operations, comprising:
 monitoring a frame to determine if a signal byte is attached to the frame, wherein bits in the signal byte provide information about the frame, wherein the information about the frame comprises information about whether the frame is encrypted and information about whether an initialization vector is prepended to the framed; 
 generating the initialization vector in response to the signal byte indicating that the frame is an encrypted frame and that the initialization vector is not prepended to the frame; and 
 decrypting the encrypted frame with the initialization vector. 
 
 
     
     
       13. The method of  claim 12 , appending a last byte of a preceding encrypted frame one or more times to an end of a portion of data to form the initialization vector. 
     
     
       14. The method of  claim 12 , analyzing the signal byte to identify data that is prepended to the encrypted frame. 
     
     
       15. The method of  claim 12 , obtaining a key from a key server using key data in response to identifying that key data is prepended to the signal byte. 
     
     
       16. The method of  claim 12 , further comprising: determining whether the encrypted frame is an intra frame or an inter frame based on bits in the signal byte. 
     
     
       17. The method of  claim 12 , monitoring signal bytes of a series of frames to detect an initialization vector in response to receiving information that one of the series of frames is encrypted. 
     
     
       18. The method of  claim 12 , further comprising: determining whether the encrypted frame is an intra frame or an inter frame. 
     
     
       19. The method of  claim 18 , further comprising: monitoring for the initialization vector prepended to the encrypted frame in response to determining that the encrypted frame is an intra frame. 
     
     
       20. A non-transitory computer readable storage medium comprising computer-executable instructions, that in response to execution, cause a computing system to perform operations, comprising:
 monitoring a frame to determine if a signal byte is prepended to the frame, wherein bits in the signal byte provide information about the frame, wherein the information about the frame comprises information about whether the frame is encrypted and information about whether an initialization vector is prepended to the framed; 
 generating the initialization vector in response to the signal byte indicating that the frame is an encrypted frame and that the initialization vector is not prepended to the frame; and 
 decrypting the encrypted frame with the initialization vector.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.