Apparatus and method for protecting message data
US-2015188708-A1 · Jul 2, 2015 · US
US9729325B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9729325-B2 |
| Application number | US-201514659082-A |
| Country | US |
| Kind code | B2 |
| Filing date | Mar 16, 2015 |
| Priority date | Sep 14, 2012 |
| Publication date | Aug 8, 2017 |
| Grant date | Aug 8, 2017 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Disclosed is a method for protecting message data. In the method, the message data is padded with padding bits generated based on a deterministic function performed on the message data. The padded message data is compressed to generate compressed data. A length of the compressed data is dependent on the padding bits. The compressed data is encrypted to generate encrypted message data.
Opening claim text (preview).
What is claimed is: 1. A method for protecting message data, comprising: compressing the message data to generate compressed data comprising a first number of data bytes; padding the compressed data to generate padded compressed data comprising a second number of data bytes, wherein the second number is a variable number and is equal to the first number plus a pad number, and the pad number has a value determined based on a keyed hash of the message data; and encrypting the padded compressed data to generate encrypted message data. 2. The method of claim 1 , wherein the keyed hash of the message data is performed using a Hashing for Message Authentication (HMAC) cryptographic hash function. 3. The method of claim 1 , wherein the keyed hash uses an obfuscation key derived using a key derivation function. 4. The method of claim 3 , wherein the obfuscation key is generated from an exchanged secret value. 5. The method of claim 3 , wherein the key derivation function uses an encryption key and an authentication key to generate the obfuscation key. 6. The method of claim 5 , wherein the encryption key and the authentication key are generated from an exchanged secret value and from a plurality of non-secret values. 7. The method of claim 1 , wherein the pad number comprises a number from 1 to 32. 8. The method of claim 1 , wherein the message data comprises a Transport Layer Security (TLS) protocol message. 9. The method of claim 1 , wherein the message data comprises a Secure Socket Layer (SSL) protocol message. 10. A remote station, comprising: means for compressing message data to generate compressed data comprising a first number of data bytes; means for padding the compressed data to generate padded compressed data comprising a second number of data bytes, wherein the second number is a variable number and is equal to the first number plus a pad number, and the pad number has a value determined based on a keyed hash of the message data; and means for encrypting the padded compressed data to generate encrypted message data. 11. The remote station of claim 10 , wherein the keyed hash of the message data is performed using a Hashing for Message Authentication (HMAC) cryptographic hash function. 12. The remote station of claim 10 , wherein the keyed hash uses an obfuscation key derived using a key derivation function. 13. The remote station of claim 12 , wherein the obfuscation key is generated from an exchanged secret value. 14. The remote station of claim 12 , wherein the key derivation function uses an encryption key and an authentication key to generate the obfuscation key. 15. The remote station of claim 14 , wherein the encryption key and the authentication key are generated from an exchanged secret value and from a plurality of non-secret values. 16. The remote station of claim 10 , wherein the pad number comprises a number from 1 to 32. 17. The remote station of claim 10 , wherein the message data comprises a Transport Layer Security (TLS) protocol message. 18. The remote station of claim 10 , wherein the message data comprises a Secure Socket Layer (SSL) protocol message. 19. A remote station, comprising: a processor, implemented as hardware, configured to: compress message data to generate compressed data comprising a first number of data bytes; pad the compressed data to generate padded compressed data comprising a second number of data bytes, wherein the second number is a variable number and is equal to the first number plus a pad number, and the pad number has a value determined based on a keyed hash of the message data; and encrypt the padded compressed data to generate encrypted message data. 20. The remote station of claim 19 , wherein the keyed hash of the message data is performed using a Hashing for Message Authentication (HMAC) cryptographic hash function. 21. The remote station of claim 19 , wherein the keyed hash uses an obfuscation key derived using a key derivation function. 22. The remote station of claim 21 , wherein the obfuscation key is generated from an exchanged secret value. 23. The remote station of claim 21 , wherein the key derivation function uses an encryption key and an authentication key to generate the obfuscation key. 24. The remote station of claim 23 , wherein the encryption key and the authentication key are generated from an exchanged secret value and from a plurality of non-secret values. 25. The remote station of claim 19 , wherein the pad number comprises a number from 1 to 32. 26. The remote station of claim 19 , wherein the message data comprises a Transport Layer Security (TLS) protocol message. 27. The remote station of claim 19 , wherein the message data comprises a Secure Socket Layer (SSL) protocol message. 28. A non-transitory computer-readable medium, comprising: code for causing a computer to compress message data to generate compressed data comprising a first number of data bytes; code for causing a computer to pad the compressed data to generate padded compressed data comprising a second number of data bytes, wherein the second number is a variable number and is equal to the first number plus a pad number, and the pad number has a value determined based on a keyed hash of the message data; and code for causing a computer to encrypt the padded compressed data to generate encrypted message data. 29. The non-transitory computer-readable medium of claim 28 , wherein the keyed hash of the message data is performed using a Hashing for Message Authentication (HMAC) cryptographic hash function. 30. The non-transitory computer-readable medium of claim 28 , wherein the keyed hash uses an obfuscation key derived using a key derivation function. 31. The non-transitory computer-readable medium of claim 30 , wherein the obfuscation key is generated from an exchanged secret value. 32. The non-transitory computer-readable medium of claim 30 , wherein the key derivation function uses an encryption key and an authentication key to generate the obfuscation key. 33. The non-transitory computer-readable medium of claim 32 , wherein the encryption key and the authentication key are generated from an exchanged secret value and from a plurality of non-secret values. 34. The non-transitory computer-readable medium of claim 28 , wherein the pad number comprises a number from 1 to 32. 35. The non-transitory computer-readable medium of claim 28 , wherein the message data comprises a Transport Layer Security (TLS) protocol message. 36. The non-transitory computer-readable medium of claim 28 , wherein the message data comprises a Secure Socket Layer (SSL) protocol message.
involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD · CPC title
Key scheduling, i.e. generating round keys or sub-keys for block encryption · CPC title
Protocols for data compression, e.g. ROHC · CPC title
involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC · CPC title
Obfuscation or hiding, e.g. involving white box · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.