Project_Proposal_version1

advertisement
Master’s Project Proposal
Ensuring data integrity with tamper evident encryption of integers using keyed Hash Message
Authentication Code
Brad Baker
September 28, 2009
Approved by:
________________________________________________________________
Advisor: Dr. Edward Chow
Date
________________________________________________________________
Committee Member: Dr. Jugal Kalita
Date
________________________________________________________________
Committee Member: Dr. Terrance Boult
Date
1. Abstract
This project will design and implement improvements to a Hash Message Authentication Code (HMAC)
based encryption scheme presented in [1] “How to Construct a New Encryption Scheme Supporting Range
Queries on Encrypted Database” presented by Dong Hyeok Lee, You Jin Song, Sung Min Lee, Taek Yong Nam
and Jong Su Jang at the IEEE 2007 International Conference on Convergence Information Technology. The result
will be a symmetric encryption scheme based on the HMAC operation using the SHA-1 hash algorithm which
will have the ability to detect unauthorized updates to stored ciphertext data. In addition to tamper detection,
efficiency improvements will be included in the encryption algorithm.
This improved encryption scheme will be designed to process positive integer values and will decompose
these values into buckets using modular arithmetic. The buckets will be encrypted using the HMAC-SHA1
function. The secret key will be expanded for each plaintext value using a specific transformation process. Data
will be processed through block encryption and decryption, with the goal of implementing the scheme in a
database system. Unauthorized changes to ciphertext values will be detected. The hash output of the HMAC
function will serve as both the ciphertext and digest. Figure 1 shows the concept of the encryption algorithm.
Figure 1 - Concept of the proposed project algorithm
This paper is organized as follows: the background and motivation for the project are discussed in section
two, the concepts for algorithm improvements are discussed in section three, and specific project details are
discussed in section four.
2. Introduction and background
This project relies on existing work including the Hash Message Authentication Code (HMAC) ([3], [8])
and a HMAC based encryption algorithm [1]. This section summarizes concepts from existing work that
motivates this project.
2.1 General introduction
Confidentiality and integrity of data are important and continuing goals in computing, particularly in
database processing and communications. The amount and importance of sensitive data that computers store,
process and transmit over networks is constantly increasing, as are the consequences of data breaches.
Confidentiality ensures that sensitive data is not revealed to unauthorized individuals, and integrity ensures that
sensitive data is not corrupted or updated by unauthorized individuals. Cryptography provides several processes to
support confidentiality and integrity, including symmetric and asymmetric key algorithms for confidentiality and
digest or signature algorithms for integrity. Generally, encryption algorithms such as AES or RSA provide strong
confidentiality but don’t provide integrity and hash digest algorithms such as SHA or Whirlpool provide integrity
without confidentiality. Traditional methods to obtain both confidentiality and integrity include combining
encryption and digest algorithms, for example encrypting the plaintext data and computing a digest against the
ciphertext.
The recent emergence of embedded multimedia applications such as mobile, TV, video-messaging, and
telemedicine have increased the impact of multimedia and its security on our personal lives. With the advent and
consequent vast growth of the Internet, intellectual property has become vulnerable to a number of threats that
range from information retrieval to destruction of the intellectual property. Hence one has found the extensive
need to secure such intellectual property. Intellectual property in the form of multimedia data files has been under
constant threat over the years. Given the fact that often files (including multimedia) would need to be
communicated through possibly insecure channels where an imposter or an intruder may cause extensive damage
to such intellectual property. It has become the need of the hour that methods are devised to ensure secure
communication of such file.
2.2 Summary of Multimedia Encryption
Multimedia encryption involves changing the multimedia data stream itself to ensure secure transmission
of video data between client and server (or two nodes). It can be accomplished by means of standard symmetric
key cryptography where multimedia bit stream is treated as a binary sequence and the whole data can be
encrypted using conventional cryptosystem such as AES or DES.
In general, when the application requirements are not dynamic (not a real-time streaming) we can treat bit
stream as a regular binary data stream and use the conventional encryption techniques. Encrypting the entire
multimedia stream using standard encryption methods is referred to as the naive algorithm. There are many
practical constraints in case of multimedia which make such a scheme not practical in real-life scenario.
Communication encryption of multimedia content is a problem beyond the application of established encryption
algorithms, such as DES or AES, to its binary sequence. This is primarily due to the way multimedia is used
commercially. Unlike data encryption, where we want to encrypt a complete bit stream, mobile multimedia
encryption introduces several challenges. For example, the content providers want to ensure real-time streaming
of videos.
2.1 Flexibility to perform selective encryption:
In the frequency domain, it is easier to identify what parts of the data are critical for security purpose.
This allows providing different levels of security and transparency.
Encryption can be performed on just audio/video frames, when performance of the takes a major role.
Thus selecting the part of the file, like just audio or just video, needs to be encrypted only the frames respective to
the selection, are encrypted. This improves the performance of the encryption system, when we consider a large
stream of video. Encryption can be performed on complete video stream, which encrypts both audio and video
frames.
3. Algorithm
This project will encrypt only the selected frames in multimedia, render the file playable. Each selected
frames are encrypted separately.
Multimedia
Analyze to find out
frames to be encrypted
Selected
Encrypt frames
frames
Remaining frames
Encrypted
multimedia
Transmit
Network
Transmit
Multimedia
Unencrypted
Analyze as to which frames
to be decrypted
frames
Frames to be decrypted
Decrypt frame
Decrypted frames
3.1 High-level description of algorithm used to encrypt frames
1. Initial Round:
a. Divide the stream in frames to 16 bytes of sub-frames, consider it as a 4x4 matrix. Each sub-frames
are encrypted separately.
2. Rounds:
a. Operate on the part of matrix: Divide the matrix as 2x2 matrix (each cell will be containing 2x2
matrix in it). Perform Xor operation on 1st part of the matrix with its next one.
b. Operate with Key: Perform Xor operation on the 4x4 matrix with key of 16 bytes (considering the
key as 4x4 matrix for the operation)
c. Shift cells: shift the divided matrix cell values clockwise.
3. Final Round:
a. Append the encrypted sub-frames.
4. Project plan
The ultimate goal of this project is to define improvements to the HMAC encryption algorithm,
implement and test those improvements. The end result will be a working tamper detection encryption algorithm.
Additional goals include building the process into an add-on for a DBMS such as Postgresql, so the process can
be easily used in a database environment.
4.1 Schedule
This project is to be completed by the end of term, fall 2009.
The following is a proposed schedule for the project:
August 28, 2009
Completed final project proposal
September 1, 2009
Begin project work
October 1, 2009
Approved project proposal
November 1, 2009
Completed project work and draft of report
November 6, 2009
Completed final project report
Before Nov 24, 2009 Completed project defense
December 19, 2009
End of fall 2009 term
4.2 Deliverables
There are several deliverables as goals for this project. These are presented in the order of highest to
lowest priority. In the situation of technical problems, lower priority deliverables may not be realized.
 High priority – critical:
o Project report, including:
 A complete discussion of the project and results
o Improved encryption/decryption algorithm, including:
 The ability to detect tampering with ciphertext.
 Efficiency improvements.
 Central concepts of bucket based processing and key transformation.
o Implementation of the improved algorithm for flat file processing, including:
 A program to encrypt and decrypt plaintext and ciphertext values stored in normal text
files
o

Analysis of improved algorithm, including:
 Quantification of the strength of tamper protection
 Quantification of the strength of encryption
 Possibly comparison to AES encryption with block chaining mode or similar
o Testing of improved algorithm and implementation, including:
 Efficiency testing and tamper detection testing.
 Thorough testing to validate the results.
o Implementation of the improved algorithm as a DBMS add-on, including:
 A program to encrypt and decrypt plaintext and ciphertext values stored in database
tables.
Medium priority – goals:
o Improved algorithm to handle additional challenges, pending feasibility
 This can include processing negative numbers, some real numbers, or other
improvements that might become apparent
4.3 References
Preliminary references relating to research done for this project proposal are listed below.
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
Dong Hyeok Lee; You Jin Song; Sung Min Lee; Taek Yong Nam; Jong Su Jang, "How to Construct a New
Encryption Scheme Supporting Range Queries on Encrypted Database," Convergence Information
Technology, 2007. International Conference on , vol., no., pp.1402-1407, 21-23 Nov. 2007
URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=4420452&isnumber=4420217
Brad Baker, "Analysis of an HMAC Based Database Encryption Scheme," UCCS Summer 2009 Independent
study July. 2009
URL: http://cs.uccs.edu/~gsc/pub/master/bbaker/doc/final_paper_bbaker_cs592.doc
Wikipedia, July 2009. HMAC reference material. URI= http://en.wikipedia.org/wiki/Hmac
Forouzan, Behrouz A. 2008. Cryptography and Network Security. McGraw Hill higher Education. ISBN 9780-07-287022-0
Gopalan Sivathanu, Charles P. Wright, and Erez Zadok, " Ensuring Data Integrity in Storage: Techniques and
Applications," Workshop On Storage Security And Survivability - Proceedings of the 2005 ACM workshop on
Storage security and survivability. 2005
URL: http://doi.acm.org/10.1145/1103780.1103784
Elbaz, R.; Torres, L.; Sassatelli, G.; Guillemin, P.; Bardouillet, M., "PE-ICE: Parallelized Encryption and
Integrity Checking Engine," Design and Diagnostics of Electronic Circuits and systems, 2006 IEEE , vol.,
no., pp.141-142, 0-0 0
URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=1649595&isnumber=34591
Gene Itkis, " Cryptographic Tamper Evidence," Conference on Computer and Communications Security Proceedings of the 10th ACM conference on Computer and communications security table of contents. 2003
URL: http://doi.acm.org/10.1145/948109.948156
NIST, August 2009. FIPS Pub 198 HMAC specification. URI=
http://csrc.nist.gov/publications/fips/fips198/fips-198a.pdf
Download