WO1999010859A2 - Steganographic encryption system for secure data - Google Patents

Steganographic encryption system for secure data Download PDF

Info

Publication number
WO1999010859A2
WO1999010859A2 PCT/US1998/017839 US9817839W WO9910859A2 WO 1999010859 A2 WO1999010859 A2 WO 1999010859A2 US 9817839 W US9817839 W US 9817839W WO 9910859 A2 WO9910859 A2 WO 9910859A2
Authority
WO
WIPO (PCT)
Prior art keywords
data block
data
bit
discrete unit
particular discrete
Prior art date
Application number
PCT/US1998/017839
Other languages
French (fr)
Other versions
WO1999010859A3 (en
Inventor
Steven M. Orrin
Original Assignee
Syndata Technologies, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US08/919,203 external-priority patent/US6011849A/en
Application filed by Syndata Technologies, Inc. filed Critical Syndata Technologies, Inc.
Priority to EP98953158A priority Critical patent/EP1033008A2/en
Priority to AU10604/99A priority patent/AU1060499A/en
Publication of WO1999010859A2 publication Critical patent/WO1999010859A2/en
Publication of WO1999010859A3 publication Critical patent/WO1999010859A3/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/16Obfuscation or hiding, e.g. involving white box
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/34Encoding or coding, e.g. Huffman coding or error correction

Definitions

  • the invention relates to digital data security technologies and communications and more particularly to a method and apparatus for securing data and permitting secure electronic communications relying on encryption and steganographic techniques.
  • OTP steganography
  • hardware steganography
  • Password protection is commonly used for access control but has inherent security level shortcomings when applied to data security.
  • Patent 4,405,829) and Diffie-Hellman U.S. Patent 4,200,770.
  • a repository capable of storing millions of public keys needs to be in place to facilitate Internet level global communications security.
  • OTP One Time Pad
  • Hardware encryption cards and boxes have been used for secure communications. Hardware encryption provides high level security and key management but is very costly. In addition, hardware encryption systems have not been compatible with other hardware systems, i.e. they lack interoperability. Hardware encryption is ideal for point to point communications or closed systems where cost is not a factor; they range from $ 1 ,000 - $25 ,000 in cost. Hardware encryption systems are typically not suitable for open or mass communication applications.
  • Steganography is a relatively new method for data security.
  • Steganography the art and science of hiding the existence of information, has in the past been primarily associated with invisible inks, messages sent via telephone line noise known as TranSec, and red cellophane such as that used in games to reveal information hidden in a red-blue block.
  • TranSec telephone line noise
  • red cellophane such as that used in games to reveal information hidden in a red-blue block.
  • Steganography has migrated to the computer in the form of hiding information in graphical images, sound files, or other media including text files such as Mimic functions.
  • Mimic functions convert plaintext letters into common everyday English words that are then put together to form pseudo-sentences. The resulting message resembles aMadlibTM.
  • This system features a data security method that combines the strength of encryption with the strength of steganography.
  • a software or hardware package may provide both a secure method of communications via electronic communications systems and a secure work environment for data.
  • the features and processes utilized in the invention deliver a cohesive standard by which data can be secured.
  • the invention features an easy to use interface that is cohesive with standard protocols and procedures within both the corporate and individual environments.
  • the interface combined with the high level of security and functionality lends mass market and global level appeal to the invention.
  • the system also includes provisions for recovering the encrypted and encoded information.
  • the data may be transmitted to another system, kept in the present system, stored on a media, or any combination of those choices. Because of the exposed nature of most communications methods, the greatest need for such security is usually for transmitted data.
  • Figure 1 shows a flow diagram of the encryption process.
  • Figure 2 shows a flow diagram of public key distribution.
  • Figure 3 shows a flow diagram of the process of combining encryption with steganography.
  • Figure 4 shows a flow diagram of the steganographic selection algorithm process for generation of the selection algorithm.
  • Figure 5 shows a flow diagram of the process of steganographically encoding data into a stream of data bits.
  • Figure 6 shows an illustration of the floating toolbar user interface.
  • Figure 7 shows a flow diagram of combining encryption and steganography for the purpose of secure backup to removable media, as may be used for storage of personal or administrator keys.
  • a system according to the invention may encrypt files and documents with a choice of multiple algorithms and methods.
  • One preferred embodiment may be designed with a modular open-ended architecture in an object-oriented scheme that allows the easy insertion of any encryption algorithm, including both single key and public key algorithms.
  • the invention may utilize the modular design with flags that alert the program to the encryption method used for simple decryption and easy upgrade to multiple encryption algorithms and methods.
  • Each algorithm is treated as a modular process that fits into the predefined call of the program.
  • the program calls provide for a key(s) and input/output of data, thereby allowing for any encryption algorithm to be plugged in once configured to meet the specifications of the program calls.
  • the preferred embodiment uses a two-step process: an encryption algorithm(s) creates the ciphertext, which is then steganographically secured. Both conventional single key encryption and hybrid public/single key encryption systems can be used here. Since multiple types of encoding are contained in the system, each type using potentially different types of keys, key management is also a major feature.
  • the flow charts of Figures 1 - 5 and 7 show the various processes involved in the system.
  • Figure 1 shows the basic encryption process.
  • step 2 the data is input into the system through any suitable method (file selection or from within an application via a floating toolbar button as illustrated in Figure 6), where key management is performed in step 3.
  • Key management can be the insertion of a key by the user, a selected key from a key list, or other key selection methodology including randomly generated keys.
  • the key(s) is then used by the encryption process of step 4 to encrypt the retrieved data.
  • the encryption method used is determined by a configuration performed by the user or by a preset default.
  • An encrypted message, or ciphertext is produced at step 5 as a result of this process. If only basic encryption is desired, the process can end here with the ciphertext being returned to either a file or back into the application the original data came from. However, for greater security and/or innocuous messaging the ciphertext can be subjected to further encoding techniques, as described later.
  • FIG 2 shows the basic key transfer process utilized by the invention when distributing keys for use in a public key encryption system.
  • public keys are selected from a list or database for transfer. Keys are digitally signed by the sender's signing key in step 8 and transferred in step 9 via electronic mail, a network system, or saved to a file for manual transfer.
  • the recipient system Upon receiving the transferred keys, the recipient system authenticates them using existing public keys, and the recipient's local database of keys is updated in step 10 with the transferred keys.
  • This process enables users to utilize public key encryption as described in Figure 1 for encryption of data and also for key authentication using a horizontal trust model.
  • FIG. 3 shows a two-step encoding process, with encryption followed by steganographic encoding.
  • Steps 12 through 14 correspond to steps 2 through 4 in Figure 1, which produce a ciphertext through standard encryption techniques as described earlier.
  • a steganographic selection algorithm (SSA) uses the ciphertext in abit-to-byte correspondence for selection of replaceable characters/bytes. The replacement produces the steganographically encoded result at step 17.
  • SSA steganographic selection algorithm
  • step 3 which uses an encryption key as both a key and as data to be encrypted.
  • a key is chosen in step 19, either randomly generated or chosen by the user, and repeatedly copied in step 20 until the result is the same size as the data stream or media which will be steganographically modified.
  • This result is then encrypted in step 21 with the same key to produce a selection ciphertext.
  • each bit of the selection ciphertext is then associated with a byte (or pixel, or other suitable unit) in the data stream.
  • the selected data stream bytes are those whose associated bit in the ciphertext is a logic '1' (or alternately, a logic '0').
  • every data stream byte has an associated bit in the selection ciphertext, but for greater security only every nth byte can have an associated bit. While this selection algorithm is described in the context of steganographic data encoding, it can also be used for any other selection applications in which the selected units are to remain secret.
  • FIG. 5 shows the details of the steganographic encoding process (step 16 of Figure 3).
  • the data to be encoded is brought in at step 25, and in step 26 each bit of this data is associated with a selected byte in the data stream or media to be modified.
  • the data stream or media can be a random number stream, multimedia file such as a graphic image or sound file, a text document, or some other form of data.
  • step 27 the media is brought in for association with the bits in step 26.
  • the selection algorithm developed in Figure 4 the least significant bit of each selected byte is replaced in step 28 by the corresponding data bit from step 26.
  • This newly modified data stream or media represents the encoded steg-stream of step 29 which produces the secured message shown in step 17 of Figure 3.
  • This process can also be described in mathematical terms.
  • the steganographic selection algorithm is a reproducible random selection process utilizing ciphertext as the selection operand, where:
  • the invention utilizes an encryption algorithm and resulting ciphertext to enable a selection of data.
  • the selection , f 0 (), is performed on the data, d, based on the bits from the resulting ciphertext, f x (k), where k is the encryption key and / x () is the process by which the key is used as both the encryption key and the plaintext, created by / r ().
  • / r () takes the encryption key, k, and copies it back to back such that the resulting plaintext is equivalent in size, n, to the target data, n d , to be selected from.
  • / c () uses the encryption key, k, to encrypt the plaintext resulting from / r (), or k n d .
  • the resulting ciphertext, (k n d ) k is then used in a bit-to-data comparison to facilitate selection of units where d is the target data to be selected from and x is the selecting bit from the ciphertext. Either a 1 or 0 can be used as the selecting bit.
  • d x is the resulting selected units from the data.
  • the steganographic encoding process can be described mathematically by the following:
  • PRNG pseudo random number generator
  • the invention performs a least significant bit conversion on the medium where the bits from the original data are then inserted into selected bytes of the medium at the least significant bit position.
  • the selection of bytes from the medium is performed by some selection process, such as an algorithm, character key, or other method.
  • a random stream generated by a PRNG can be used as the medium.
  • Data is encoded or hidden in the stream by converting the least significant bits from selected bytes of the medium into the bits from the original data, whether in plaintext or ciphertext form.
  • An example of an encoding is as follows: Object: Hide the word "it.”
  • bit sequence for the word "it” is: 01101001 01110100.
  • bit sequence for the word "it,” 01101001 01110100 is hidden in the selected byte sequences by least significant bit conversion:
  • the file to be 'stegged' i.e., the data stream in which the message will be hidden, is selectable by the user.
  • This file can be in many formats, but for effective security it should be the type of file that can be modified without such modification being obvious.
  • other preferred formats are: graphics (BMP, GIF, JPG, etc.), sound (WAV, RA, AIF, MIDI, etc.), and video (MPG, MOV, etc.).
  • these files might be usable for graphics, sound, or video in their modified form without noticeable performance degradation, thus further obscuring the fact that they contain encoded data.
  • the system also has a number of other features which give the user a range of selectable security functions :
  • Toolbar User Interface The system utilizes a floating toolbar that gives the user simple accessibility to security functions throughout the operating system environment.
  • Figure 6 shows an example of selections available from the toolbar.
  • Item 31 is the toolbar's handle which enables both the drag and docking of the toolbar in the environment and, by right mouse clicking on the handle, allows for the configuration of the toolbar and other setup options.
  • Items 32a and 32a are the toolbar's handle which enables both the drag and docking of the toolbar in the environment and, by right mouse clicking on the handle, allows for the configuration of the toolbar and other setup options.
  • Item 33 is the active window protection button.
  • Item 34 is the place holder for other features configurable for use on the toolbar with the default being the exit function.
  • Selective Text Encryption The system allows the user to highlight and select portions of the text, including paragraphs, sentences, even words, to be encrypted within a plaintext document. Delimiters are used so that a user decrypting the selected text does not have to identify its exact boundaries.
  • Digital Signatures The system provides Digital Signature capability to its users. Digital Signatures verify the origin and document integrity using one way hash functions and the Signing key belonging to the user. The system generates a hash sequence based on the contents of a document and then encrypts it with the Signing key. This sequence can be checked by the recipient to validate the sender and the contents of the document by decrypting the hash sequence using the verification key, packaged with the user's public key, and then comparing the hash of the document to the one contained in the Digital Signature. Digital Signatures can be used on both plaintext as well as ciphertext messages.
  • Partial Screen Blanking This provides a secure work environment by covering most of the active window with a graphic image.
  • the active window is protected up to approximately the last 3/4 inch of the window.
  • the graphic image acts like a window shade and can be manipulated using the mouse to cover more or less of the active window. This allows the user to continue entering data and have the rest of the document secured from view. This feature is especially useful when the screen is in an unsecured area, where "roving eyes" can be a problem.
  • Partial screen blanking toggles on and off via a button on the TUI and can also be set to require a key to be toggled off.
  • the invention utilizes a special key management system incorporating public and single key technologies with Digital signatures and certificate formats, combined with ease of use to allow easy integration of a public key communication system without the need for a fully implemented public key infrastructure.
  • the invention utilizes hybrid encryption. Data is encrypted using a Pseudo Random Number Generator (PRNG) generated session key to create the message ciphertext. The session key is then encrypted using either a recipient's public key (for transmission security), or a predetermined user local key (for storage security). A header is added to the message ciphertext containing the encrypted session key and other information necessary for decryption purposes.
  • PRNG Pseudo Random Number Generator
  • the other information contained in the header includes algorithm identifiers, file name, time and date information, sender name, and a digital signature if that option is selected.
  • the header is divided into protected areas and clear text areas where protected areas are also encrypted and clear text areas are the minimum information needed to decrypt the header and message ciphertext upon receipt without undermining the security of the system.
  • Public keys are transferred between corespondents via a key transfer utility included in the invention that facilitates a transparent Internet and/or network-based transfer of public key information.
  • the public keys are X.509 certificate formatted in compliance with the standards for compatibility with Certificate Authorities (CA's) and can also be digitally signed by the sender to provide a horizontal Web of Trust infrastructure.
  • CA's Certificate Authority
  • Transmitted public keys contain the public half of the public key pair, the verification key, sender username and e-mail address, and any authentication information available to the sender including previous senders' signatures and digital identifications provided by CA's. Public keys are maintained in a database where authentication information is also associated with each public key.
  • the user's secret information includes the user's private half of the public key pair, the user's signing key and the user's local encryption key. These are secured locally by the user.
  • the system allows the user to utilize encryption and steganographic capabilities to both secure data and allow for innocuous messaging.
  • a message or file is encrypted and steganography is used to encode the encrypted file into a graphic image, sound or movie file.
  • File compression - A file compression utility is provided for the encrypted file to reduce file sizes.
  • Secure Backup on Removable Media - This provides a method by which users can back up and store off-line on removable media important data such as personal decryption keys, Administrator keys, key pairs, or other highly confidential information and data. As shown in Figure 7, data is input into the system, encrypted, and then encoded onto the removable media.
  • Figure 7 illustrates this process using two floppy diskettes.
  • this process can be performed to multiple floppies and onto almost any removable media such as recordable CD-ROMs, Zip Disks, Back Up Tapes, etc. It can also be used with multiple locations of remote or local non-removable storage, although this might provide a lesser degree of security.
  • step 36 the data, which could consist of personal keys or Administrator public key pairs, is input into the system.
  • step 37 key management is performed to determine the encryption key(s) for the data, such as a public key for a system administrator and a randomly generated session key.
  • the data is then encrypted in step 38 using an encryption algorithm as in Figure 1 utilizing the keys from step 37.
  • the encrypted data is split into files corresponding to the number of removable media to be used.
  • This splitting function involves taking bytes from the encrypted data and placing them into separate files such that each byte is placed in a different file than its adjacent bytes. For example, if three files were to be created using the splitting process in step 39, and 'abcdefghijklmno' was the starting file to be stored, the resulting split files would be: 'adgjm', 'behkn', and 'cfilo'. This process eliminates unwanted exposure of partial ciphertexts in the event that the security of one or more of the split files is compromised.
  • each split file is written to selected sectors of its removable media.
  • the key produced in step 37 is used to choose the exact sector(s) on the removable media where the files are written.
  • the keys themselves can also be written to one or more of the removable media, such as the first one. Both file(s) and keys can be written without headers.
  • the removable media is written to by a pseudo-random number generator (step 43) to "fill" the remaining sectors of the media with random noise. This filling process writes the random data to all sectors of the removable media except those previously written to.
  • the removable media now contains the split files of the encrypted data masked into random noise. This process represents another form of steganography, since it entails the 'hiding' of sensitive data among other, non-sensitive data.
  • Retrieval of the hidden data can occur by effectively reversing the aforementioned process: Key management is first performed to retrieve the relevant key(s) from the media. Then each split file is retrieved using the proper key(s), the multiple split files are merged, and decryption is performed on the merged file. This is basically a reversal of steps 38-40.
  • Additional security can be provided through additional means, such as storing each of the backup media in a different location, physically securing the backup media, or keeping the key(s) separate from all the backup media.
  • additional means such as storing each of the backup media in a different location, physically securing the backup media, or keeping the key(s) separate from all the backup media.
  • Administrative Features The system provides the network administrator or security administrator with several features tuned to the corporate environment. The Administrator can block access of employees to certain features of the system, including secure deletion, steganography, etc. The Administrator is also given the capability to gain emergency access to files and E-mails generated by users on the network.
  • Every encryption method also includes a decryption capability.
  • the decryption is generally the equivalent of an encryption operation in reverse.
  • the system of this invention can decrypt any message encrypted by the aforementioned methods, using the decryption method appropriate for each type of encryption.
  • Multi-encrypted data is decrypted in the reverse order in which it was encrypted, using any decryption information available from the message itself.
  • the preferred embodiment uses software as a means to perform the described functions.
  • firmware or a combination of software and firmware, is also envisioned.
  • the preferred embodiment operates in the Windows environment due to the extremely broad market acceptance of the Windows operating system. But the invention will operate equally well in other environments, including single- or multi-user operating systems and single- or multi-processor systems.

Abstract

A data security system for digitized data that can use both encryption and steganographic techniques. Encrypted data (14) is steganographically encoded into a secondary data stream (16), the least significant bit of selected bytes of which are replaced with bits of the encrypted data. Byte selection (15) is performed via ciphertext created separately that uses an encryption key (13) as both key and data to be encrypted. The resulting secondary data stream (17) chosen such that it does not resemble any modification can be stored or transmitted. Decoding is accomplished by using the cypertext to find the selected bytes in the modified secondary data stream, extracting the least significant bits, and reassembling those bits into the original data. Data can be backed up by first encrypting it, then splitting it into multiple parts and storing each part on separate floppy disks in locations selected by separate encryption process which produces a selection ciphertext. The original data is restored by merging the data blocks from each floppy.

Description

ENCRYPTION SYSTEM FOR SECURE DATA
BACKGROUND OF THE INVENTION
1. Field of the Invention
The invention relates to digital data security technologies and communications and more particularly to a method and apparatus for securing data and permitting secure electronic communications relying on encryption and steganographic techniques.
2. Description of the Related Technology
Information and data transfer is growing at an alarming rate. The need for data security has also grown at an equal if not greater speed. The core problems that need to be addressed by any data security system are level of security, ease of use, integratability within the work environment, and mass/ global level usage. By contrast, electronic communications are inherently insecure and open. Confidential and proprietary information and data are transferred regularly through channels which are in need of a secure and user-friendly methodology to facilitate confidentiality. Presently there are two basic approaches to securing information: access control (such as password protection), and encryption (single key, dual key, One Time Pad
(OTP), steganography, and hardware). Each of these methods has its own advantages and disadvantages pertaining to implementation, design, level of security, interoperability, development, ease of use, and widespread adoption, use, and appeal.
Password protection is commonly used for access control but has inherent security level shortcomings when applied to data security.
Encryption has been implemented in five basic methodologies:
(a) Single key encryption - This uses an encryption algorithm along with an encryption key to encrypt and decrypt data. The same key is used in both encoding and decoding. The major shortcoming of single key technology is the transference of the key to the recipient. Most methodologies require a separate secure communication of the key to the recipient/decoder, via either fax, telephone or in person.
(b) Dual key encryption ~ Public key encryption solves this problem by utilizing different keys for encryption and decryption. The encryption-public key is given out insecurely to all potential encoders. The decryption-private key is kept by the recipient/decoder and not given out. Encryption is performed on data using the public key and only the private key can decode the data encrypted using its matching public half. Public key technology is primarily based on factorials of large prime numbers that facilitate the public and private key halves. There are presently several patents relating to public key technology, such as those held by RSA (U.S.
Patent 4,405,829) and Diffie-Hellman (U.S. Patent 4,200,770). Presently, there are three shortcomings to the public key system in a large network. First, a repository capable of storing millions of public keys needs to be in place to facilitate Internet level global communications security. Second, due to the nature of public keys, they require large streams of data, and a method of authentication needs to be in place to validate the authenticity of the public keys within the repository. Third is the present difficulty and lack of ease of use inherent in today's public key products.
(c) One Time Pad (OTP) is an encryption methodology that provides a high level of security for encrypted information. However, due to its reliance on truly random sequences for the initialization key and the inability of software to provide truly random numbers, OTP is not suitable for the mass market of end users and corporate users for secure communications.
(d) Hardware encryption cards and boxes have been used for secure communications. Hardware encryption provides high level security and key management but is very costly. In addition, hardware encryption systems have not been compatible with other hardware systems, i.e. they lack interoperability. Hardware encryption is ideal for point to point communications or closed systems where cost is not a factor; they range from $ 1 ,000 - $25 ,000 in cost. Hardware encryption systems are typically not suitable for open or mass communication applications.
(e) Steganography is a relatively new method for data security. Steganography, the art and science of hiding the existence of information, has in the past been primarily associated with invisible inks, messages sent via telephone line noise known as TranSec, and red cellophane such as that used in games to reveal information hidden in a red-blue block. Within the past two years, Steganography has migrated to the computer in the form of hiding information in graphical images, sound files, or other media including text files such as Mimic functions. Mimic functions convert plaintext letters into common everyday English words that are then put together to form pseudo-sentences. The resulting message resembles aMadlib™. When steganography is applied to graphic images, it encodes information in the code of a graphic file either in the pixel coding, high bits, or low bits of the coding. The former is useful for small messages but becomes apparent if large amounts of data are hidden. The latter two are more recent but are still in development stages as the encoding generates a noticeable deviation from the standard code of the graphics file. An example of a steganographic system is described by Cooperman et al. (U.S. patent 5 ,613 ,004), which is herein incorporated by reference in its entirety. All of these methods lose their security when the system is known and therefore should be used together with key based encryption for additional security.
SUMMARY OF THE INVENTION
This system features a data security method that combines the strength of encryption with the strength of steganography. According to the invention, a software or hardware package may provide both a secure method of communications via electronic communications systems and a secure work environment for data. The features and processes utilized in the invention deliver a cohesive standard by which data can be secured. Further the invention features an easy to use interface that is cohesive with standard protocols and procedures within both the corporate and individual environments. Finally, the interface combined with the high level of security and functionality lends mass market and global level appeal to the invention.
It is an object of the invention to provide an encryption and security program for a personal computer system such as those using the Windows environment. It is a further object to provide an easy to use interface, and an easy to integrate environment. It is a further object to provide for file and document encryption, including selective partial document encryption; combined encryption and steganography for super secure domestic and secure international communications; multiple overwrite for deleted files; Digital Signatures for providing sender verification and document integrity validation; active document blanking for roaming eyes protection in impersonal or hostile work environments; steganographic key management; key list transfers; file compression; a secure key list back-up facility; administrative features; and unique registration and distribution features. Of course, the system also includes provisions for recovering the encrypted and encoded information.
Once the data has been encrypted and/or steganographically encoded, it may be transmitted to another system, kept in the present system, stored on a media, or any combination of those choices. Because of the exposed nature of most communications methods, the greatest need for such security is usually for transmitted data.
BRIEF DESCRIPTION OF THE DRAWINGS
Figure 1 shows a flow diagram of the encryption process. Figure 2 shows a flow diagram of public key distribution.
Figure 3 shows a flow diagram of the process of combining encryption with steganography.
Figure 4 shows a flow diagram of the steganographic selection algorithm process for generation of the selection algorithm. Figure 5 shows a flow diagram of the process of steganographically encoding data into a stream of data bits.
Figure 6 shows an illustration of the floating toolbar user interface. Figure 7 shows a flow diagram of combining encryption and steganography for the purpose of secure backup to removable media, as may be used for storage of personal or administrator keys.
DETAILED DESCRIPTION OF THE INVENTION
A system according to the invention may encrypt files and documents with a choice of multiple algorithms and methods. One preferred embodiment may be designed with a modular open-ended architecture in an object-oriented scheme that allows the easy insertion of any encryption algorithm, including both single key and public key algorithms. The invention may utilize the modular design with flags that alert the program to the encryption method used for simple decryption and easy upgrade to multiple encryption algorithms and methods. Each algorithm is treated as a modular process that fits into the predefined call of the program. The program calls provide for a key(s) and input/output of data, thereby allowing for any encryption algorithm to be plugged in once configured to meet the specifications of the program calls.
The preferred embodiment uses a two-step process: an encryption algorithm(s) creates the ciphertext, which is then steganographically secured. Both conventional single key encryption and hybrid public/single key encryption systems can be used here. Since multiple types of encoding are contained in the system, each type using potentially different types of keys, key management is also a major feature. The flow charts of Figures 1 - 5 and 7 show the various processes involved in the system. Figure 1 shows the basic encryption process. In step 2 the data is input into the system through any suitable method (file selection or from within an application via a floating toolbar button as illustrated in Figure 6), where key management is performed in step 3. Key management can be the insertion of a key by the user, a selected key from a key list, or other key selection methodology including randomly generated keys. The key(s) is then used by the encryption process of step 4 to encrypt the retrieved data. The encryption method used is determined by a configuration performed by the user or by a preset default. An encrypted message, or ciphertext, is produced at step 5 as a result of this process. If only basic encryption is desired, the process can end here with the ciphertext being returned to either a file or back into the application the original data came from. However, for greater security and/or innocuous messaging the ciphertext can be subjected to further encoding techniques, as described later.
Figure 2 shows the basic key transfer process utilized by the invention when distributing keys for use in a public key encryption system. In step 7, public keys are selected from a list or database for transfer. Keys are digitally signed by the sender's signing key in step 8 and transferred in step 9 via electronic mail, a network system, or saved to a file for manual transfer. Upon receiving the transferred keys, the recipient system authenticates them using existing public keys, and the recipient's local database of keys is updated in step 10 with the transferred keys. This process enables users to utilize public key encryption as described in Figure 1 for encryption of data and also for key authentication using a horizontal trust model.
Figure 3 shows a two-step encoding process, with encryption followed by steganographic encoding. Steps 12 through 14 correspond to steps 2 through 4 in Figure 1, which produce a ciphertext through standard encryption techniques as described earlier. In step 15, a steganographic selection algorithm (SSA) uses the ciphertext in abit-to-byte correspondence for selection of replaceable characters/bytes. The replacement produces the steganographically encoded result at step 17. The details of this process are expanded in Figures 4 and 5. Figure 4 shows the details of the steganographic selection algorithm (step 15 of Figure
3), which uses an encryption key as both a key and as data to be encrypted. A key is chosen in step 19, either randomly generated or chosen by the user, and repeatedly copied in step 20 until the result is the same size as the data stream or media which will be steganographically modified. This result is then encrypted in step 21 with the same key to produce a selection ciphertext. In step 22, each bit of the selection ciphertext is then associated with a byte (or pixel, or other suitable unit) in the data stream. The selected data stream bytes are those whose associated bit in the ciphertext is a logic '1' (or alternately, a logic '0'). In a preferred embodiment, every data stream byte has an associated bit in the selection ciphertext, but for greater security only every nth byte can have an associated bit. While this selection algorithm is described in the context of steganographic data encoding, it can also be used for any other selection applications in which the selected units are to remain secret.
Figure 5 shows the details of the steganographic encoding process (step 16 of Figure 3). The data to be encoded is brought in at step 25, and in step 26 each bit of this data is associated with a selected byte in the data stream or media to be modified. The data stream or media can be a random number stream, multimedia file such as a graphic image or sound file, a text document, or some other form of data. In step 27 the media is brought in for association with the bits in step 26. Using the selection algorithm developed in Figure 4, the least significant bit of each selected byte is replaced in step 28 by the corresponding data bit from step 26. This newly modified data stream or media represents the encoded steg-stream of step 29 which produces the secured message shown in step 17 of Figure 3. This process can also be described in mathematical terms. The steganographic selection algorithm is a reproducible random selection process utilizing ciphertext as the selection operand, where:
k = any key d = any target data n = length in bytes of target data
Θ = S(X) S(χ) = A selection of x
/0(d,/x(k)) = d, Λ(k) =
/r(nd,k) = kn d : nk n = nd
& /c(k"d,k) = (knd)k : (kn d)k ≠ k"d
• /o( (kn d)k,d) = x
The invention utilizes an encryption algorithm and resulting ciphertext to enable a selection of data. The selection , f0(), is performed on the data, d, based on the bits from the resulting ciphertext, fx(k), where k is the encryption key and /x() is the process by which the key is used as both the encryption key and the plaintext, created by /r(). /r() takes the encryption key, k, and copies it back to back such that the resulting plaintext is equivalent in size, n, to the target data, nd, to be selected from. /c() uses the encryption key, k, to encrypt the plaintext resulting from /r(), or kn d. The resulting ciphertext, (kn d)k, is then used in a bit-to-data comparison to facilitate selection of units where d is the target data to be selected from and x is the selecting bit from the ciphertext. Either a 1 or 0 can be used as the selecting bit. dx is the resulting selected units from the data.
The steganographic encoding process can be described mathematically by the following:
m = any medium d = original data n = length in bits of original data /s() = a selection process ]() = a least significant bit conversion
/s2s(m, m'd) = m" 1
/s(m) = m'
Figure imgf000009_0001
This process of encoding data within other data can be facilitated by the use of:
(1) any medium, or data stream into which the original data will be encoded, such as that produced by a pseudo random number generator (PRNG);
(2) the selection process; (3) a key to feed the selection process; and
(4) the original data, to be encoded into the medium.
The invention performs a least significant bit conversion on the medium where the bits from the original data are then inserted into selected bytes of the medium at the least significant bit position. The selection of bytes from the medium is performed by some selection process, such as an algorithm, character key, or other method.
As an example, a random stream generated by a PRNG can be used as the medium. Data is encoded or hidden in the stream by converting the least significant bits from selected bytes of the medium into the bits from the original data, whether in plaintext or ciphertext form. An example of an encoding is as follows: Object: Hide the word "it."
The bit sequence for the word "it" is: 01101001 01110100.
The original PRNG stream:
aku245q9S53*%14hj2q356@$%d070c6*&56)(noiury24r0q34ikjh3982h' H*37Hqdhg(dg&h#daghhhaead43y3q8uQ#8y3d203emape3m'zd+w[2oh[2
Selection of the characters to be converted (underlined):
aku245a9S53'%14hi2q356@$%d070c6*&56)(nomry24r0q34ikjh3982h' Ϊ U37Hqdhg(dg&h#daghhhaead43y3q8uQ#8y3d203emape3m'zd+w[2oh[2 The bit sequences of the characters selected:
01100001 01110001 01101010 01100100 01101110 01101001 i h
01101001 01101000
H * q # 8 P
01001000 00101010 01110001 00100011 00111000 01110000 m [
01101101 01011011
The bit sequence for the word "it," 01101001 01110100, is hidden in the selected byte sequences by least significant bit conversion:
01100000 01110001 01101011 01100100 01101111 01101000 01101000 01101001
01001000 00101011 01110001 00100011 00110010 01110001 01101100 01011010
The characters represented by the new byte sequences are:
'qkdohhiH+q#8ql\
These characters are now placed back into the stream from whence they came, giving a new data stream (the replacement characters are underlined):
:ku245a9S53,o/ol4hk2q356@$%d070c6*&56)(oohury24r0q34hkjh3982i'
H±37Hqdhg(dg&h#daghhhaead43y3q8uQ#8y3d203emaae3rzd+w[2oh\2 The file to be 'stegged', i.e., the data stream in which the message will be hidden, is selectable by the user. This file can be in many formats, but for effective security it should be the type of file that can be modified without such modification being obvious. In addition to the PRNG file previously mentioned, other preferred formats are: graphics (BMP, GIF, JPG, etc.), sound (WAV, RA, AIF, MIDI, etc.), and video (MPG, MOV, etc.). Depending on the degree of modification, these files might be usable for graphics, sound, or video in their modified form without noticeable performance degradation, thus further obscuring the fact that they contain encoded data.
The system also has a number of other features which give the user a range of selectable security functions :
Toolbar User Interface (TUI) - The system utilizes a floating toolbar that gives the user simple accessibility to security functions throughout the operating system environment. Figure 6 shows an example of selections available from the toolbar. Item 31 is the toolbar's handle which enables both the drag and docking of the toolbar in the environment and, by right mouse clicking on the handle, allows for the configuration of the toolbar and other setup options. Items 32a and
32b are the encrypt and decrypt buttons which allow users to select both files and data from outside the application to be encrypted by the invention. Item 33 is the active window protection button. Item 34 is the place holder for other features configurable for use on the toolbar with the default being the exit function.
Selective Text Encryption - The system allows the user to highlight and select portions of the text, including paragraphs, sentences, even words, to be encrypted within a plaintext document. Delimiters are used so that a user decrypting the selected text does not have to identify its exact boundaries.
Secure Delete - In most computers, deleted files are still retrievable after deletion because only the file's index pointer information has been removed, whereas the file itself is still intact. The system provides a secure deletion facility that will overwrite a file first with a set such as all 0's and then with the set's compliment such as all l's, and then with one or more overwrites of random data before deleting the file. This protects the user from having files retrieved from the drive after deletion. This function is selectable by the user.
Digital Signatures - The system provides Digital Signature capability to its users. Digital Signatures verify the origin and document integrity using one way hash functions and the Signing key belonging to the user. The system generates a hash sequence based on the contents of a document and then encrypts it with the Signing key. This sequence can be checked by the recipient to validate the sender and the contents of the document by decrypting the hash sequence using the verification key, packaged with the user's public key, and then comparing the hash of the document to the one contained in the Digital Signature. Digital Signatures can be used on both plaintext as well as ciphertext messages.
Partial Screen Blanking - This provides a secure work environment by covering most of the active window with a graphic image. The active window is protected up to approximately the last 3/4 inch of the window. The graphic image acts like a window shade and can be manipulated using the mouse to cover more or less of the active window. This allows the user to continue entering data and have the rest of the document secured from view. This feature is especially useful when the screen is in an unsecured area, where "roving eyes" can be a problem. Partial screen blanking toggles on and off via a button on the TUI and can also be set to require a key to be toggled off.
Key Management - The invention utilizes a special key management system incorporating public and single key technologies with Digital signatures and certificate formats, combined with ease of use to allow easy integration of a public key communication system without the need for a fully implemented public key infrastructure. The invention utilizes hybrid encryption. Data is encrypted using a Pseudo Random Number Generator (PRNG) generated session key to create the message ciphertext. The session key is then encrypted using either a recipient's public key (for transmission security), or a predetermined user local key (for storage security). A header is added to the message ciphertext containing the encrypted session key and other information necessary for decryption purposes. The other information contained in the header includes algorithm identifiers, file name, time and date information, sender name, and a digital signature if that option is selected. The header is divided into protected areas and clear text areas where protected areas are also encrypted and clear text areas are the minimum information needed to decrypt the header and message ciphertext upon receipt without undermining the security of the system. Public keys are transferred between corespondents via a key transfer utility included in the invention that facilitates a transparent Internet and/or network-based transfer of public key information. The public keys are X.509 certificate formatted in compliance with the standards for compatibility with Certificate Authorities (CA's) and can also be digitally signed by the sender to provide a horizontal Web of Trust infrastructure. Transmitted public keys contain the public half of the public key pair, the verification key, sender username and e-mail address, and any authentication information available to the sender including previous senders' signatures and digital identifications provided by CA's. Public keys are maintained in a database where authentication information is also associated with each public key.
The user's secret information includes the user's private half of the public key pair, the user's signing key and the user's local encryption key. These are secured locally by the user.
The system allows the user to utilize encryption and steganographic capabilities to both secure data and allow for innocuous messaging. As described above, a message or file is encrypted and steganography is used to encode the encrypted file into a graphic image, sound or movie file.
File compression - A file compression utility is provided for the encrypted file to reduce file sizes.
Secure Backup on Removable Media - This provides a method by which users can back up and store off-line on removable media important data such as personal decryption keys, Administrator keys, key pairs, or other highly confidential information and data. As shown in Figure 7, data is input into the system, encrypted, and then encoded onto the removable media.
Figure 7 illustrates this process using two floppy diskettes. In a preferred embodiment, this process can be performed to multiple floppies and onto almost any removable media such as recordable CD-ROMs, Zip Disks, Back Up Tapes, etc. It can also be used with multiple locations of remote or local non-removable storage, although this might provide a lesser degree of security. In step 36 the data, which could consist of personal keys or Administrator public key pairs, is input into the system. In step 37 key management is performed to determine the encryption key(s) for the data, such as a public key for a system administrator and a randomly generated session key. The data is then encrypted in step 38 using an encryption algorithm as in Figure 1 utilizing the keys from step 37. At step 39 the encrypted data is split into files corresponding to the number of removable media to be used. This splitting function involves taking bytes from the encrypted data and placing them into separate files such that each byte is placed in a different file than its adjacent bytes. For example, if three files were to be created using the splitting process in step 39, and 'abcdefghijklmno' was the starting file to be stored, the resulting split files would be: 'adgjm', 'behkn', and 'cfilo'. This process eliminates unwanted exposure of partial ciphertexts in the event that the security of one or more of the split files is compromised. In step 40, each split file is written to selected sectors of its removable media. The key produced in step 37 is used to choose the exact sector(s) on the removable media where the files are written. The keys themselves can also be written to one or more of the removable media, such as the first one. Both file(s) and keys can be written without headers. In step 41 the removable media is written to by a pseudo-random number generator (step 43) to "fill" the remaining sectors of the media with random noise. This filling process writes the random data to all sectors of the removable media except those previously written to. The removable media now contains the split files of the encrypted data masked into random noise. This process represents another form of steganography, since it entails the 'hiding' of sensitive data among other, non-sensitive data.
Retrieval of the hidden data can occur by effectively reversing the aforementioned process: Key management is first performed to retrieve the relevant key(s) from the media. Then each split file is retrieved using the proper key(s), the multiple split files are merged, and decryption is performed on the merged file. This is basically a reversal of steps 38-40.
Additional security can be provided through additional means, such as storing each of the backup media in a different location, physically securing the backup media, or keeping the key(s) separate from all the backup media. Such variations are obvious and the invention does not depend on their use. Administrative Features - The system provides the network administrator or security administrator with several features tuned to the corporate environment. The Administrator can block access of employees to certain features of the system, including secure deletion, steganography, etc. The Administrator is also given the capability to gain emergency access to files and E-mails generated by users on the network.
Decryption - Obviously, every encryption method also includes a decryption capability. The decryption is generally the equivalent of an encryption operation in reverse. The system of this invention can decrypt any message encrypted by the aforementioned methods, using the decryption method appropriate for each type of encryption. Multi-encrypted data is decrypted in the reverse order in which it was encrypted, using any decryption information available from the message itself.
Various means of accomplishing the secure data features described herein are possible. Since most of the procedures involve the manipulation of digital data, the preferred embodiment uses software as a means to perform the described functions. The use of firmware, or a combination of software and firmware, is also envisioned. The preferred embodiment operates in the Windows environment due to the extremely broad market acceptance of the Windows operating system. But the invention will operate equally well in other environments, including single- or multi-user operating systems and single- or multi-processor systems.
The invention may be embodied in other specific forms without departing from the spirit of the invention or its essential characteristics. The present embodiments are to be considered as illustrative and not restrictive, the scope of the invention being indicated by the following claims rather than by the foregoing description. All changes which come within the meaning and the range of equivalency of the claims are intended to be embraced herein.

Claims

What is claimed is:
1. A method of providing data security for digital data by using steganographic techniques, comprising the steps of: providing a first data block comprising a plurality of data bits; providing a second data block comprising a plurality of discrete units, each of said discrete units comprising a plurality of bits; selecting a plurality of particular discrete units within the second data block, the number of said plurality of particular discrete units being at least as great as the number of data bits contained in the first data block; associating each data bit in the first data block with a corresponding selected particular discrete unit in the second data block; replacing a selected bit within each selected particular discrete unit with said selected particular discrete unit's associated data bit to form a corresponding new particular discrete unit; and replacing each selected particular discrete unit in the second data block with its corresponding new particular discrete unit to form a modified second data block.
2. The method of claim 1, wherein each discrete unit is a byte.
3. The method of claim 1, wherein said selected bit of each particular discrete unit is the least significant bit.
4. The method of claim 1 , wherein the second data block is generated by a pseudo-random number generator.
5. The method of claim 1, wherein the second data block is a file selected from a list comprising a graphics file, a sound file, or a video file.
6. The method of claim 1 , wherein the step of associating each data bit in the first data block with a corresponding selected particular discrete unit in the second data block is done in a sequential manner, comprising: a) associating the first data bit in the first data block with the selected particular discrete unit that occurs first in the second data block; b) associating the next data bit in the first data block with the selected particular discrete unit that occurs next in the second data block; and c) repeating step b) for each of the remaining data bits and selected particular discrete units.
7. The method of claim 1 , wherein the step of selecting a plurality of particular discrete units comprises: using an encryption algorithm to create a selection key comprising a series of binary bits; and associating each binary bit in the selection key with a corresponding discrete unit in the second data block.
8. The method of claim 7, wherein each discrete unit in the second data block that is associated with a logic T bit in the selection key is a selected particular discrete unit.
9. The method of claim 7, wherein each discrete unit in the second data block that is associated with a logic '0' bit in the selection key is a selected particular discrete unit.
10. The method of claim 1 , further comprising the steps of constructing a copy of the first data block from the modified second data block, said steps comprising: selecting each said new particular discrete unit in the modified second data block; extracting the selected bit from each selected new particular discrete unit; and combining the extracted data bits to form a copy of the first data block.
11. A system for providing data security for digital data by using steganographic techniques, comprising: a first data block comprising a plurality of data bits; a second data block comprising a plurality of discrete units, each of said discrete units comprising a plurality of bits; means for selecting a plurality of particular discrete units within the second data block, the number of said plurality of particular discrete units being at least as great as the number of data bits contained in the first data block; means for associating each data bit in the first data block with a corresponding selected particular discrete unit in the second data block; means for replacing a selected bit within each selected particular discrete unit with its associated data bit to form a corresponding new particular discrete unit; and means for replacing each selected particular discrete unit in the second data block with its corresponding new particular discrete unit to form a modified second data block.
12. The system of claim 11 , wherein each discrete unit is a byte.
13. The system of claim 11 , wherein said selected bit of each particular discrete unit is the least significant bit.
14. The system of claim 11, further comprising a pseudo-random number generator, the second data block being generated by said pseudo-random number generator.
15. The system of claim 11, wherein the second data block is a file selected from a list comprising a graphics file, a sound file, or a video file.
16. The system of claim 11 , wherein the means for associating each data bit in the first data block comprises: a) means for associating the first data bit in the first data block with the selected particular discrete unit that occurs first in the second data block; b) means for associating the next data bit in the first data block with the selected particular discrete unit that occurs next in the second data block; and c) means for repeating b) for each of the remaining data bits and discrete units.
17. The system of claim 11, wherein the means for selecting a plurality of particular discrete units comprises: an encryption algorithm; a selection key comprising a plurality of binary bits, said selection key having been created by the encryption algorithm; and means for associating each of the plurality of binary bits in the selection key with a corresponding discrete unit in the second data block.
18. The system of claim 17, wherein each selected particular discrete unit in the second data block is associated with a logic '1' bit in the selection key.
19. The system of claim 17, wherein each selected particular discrete unit in the second data block is associated with a logic '0' bit in the selection key.
20. The system of claim 11, further comprising: means for selecting each said new particular discrete unit in the modified second data block; means for extracting the selected bit from each selected new particular discrete unit; and means for combining the extracted data bits to form a copy of the first data block.
21. A method of providing data security for digital data by using both encryption and steganographic techniques, comprising the steps of: encrypting a selection of data to produce a first data block, said first data block comprising a plurality of data bits; determining the number of said data bits contained in the first data block; providing a second data block comprising a plurality of discrete units, each of said discrete units comprising a plurality of bits; selecting a plurality of particular discrete units within the second data block, the number of said plurality of particular discrete units being at least as great as the number of data bits contained in the first data block; associating each data bit in the first data block with a corresponding selected particular discrete unit in the second data block; replacing a selected bit within each selected particular discrete unit with said selected particular discrete unit's associated data bit to form a corresponding new particular discrete unit; and replacing each selected particular discrete unit in the second data block with its corresponding new particular discrete unit to form a modified second data block.
22. The method of claim 21 , wherein each discrete unit is a byte.
23. The method of claim 21 , wherein said selected bit of each particular discrete unit is the least significant bit.
24. The method of claim 21 , wherein the second data block is generated by a pseudo-random number generator.
25. The method of claim 21, wherein the second data block is a file selected from a list comprising a graphics file, a sound file, or a video file.
26. The method of claim 21, wherein the step of associating each data bit in the first data block with a corresponding selected particular discrete unit in the second data block is done in a sequential manner, comprising: a) associating the first data bit in the first data block with the selected particular discrete unit that occurs first in the second data block; b) associating the next data bit in the first data block with the selected particular discrete unit that occurs next in the second data block; and c) repeating step b) for each of the remaining data bits and selected particular discrete units.
27. The method of claim 21 , wherein the step of selecting a plurality of particular discrete units comprises: using an encryption algorithm to create a selection key comprising a series of binary bits; and associating each binary bit in the selection key with a corresponding discrete unit in the second data block.
28. The method of claim 27, wherein each discrete unit in the second data block that is associated with a logic '1' bit in the selection key is a selected particular discrete unit.
29. The method of claim 27, wherein each discrete unit in the second data block that is associated with a logic '0' bit in the selection key is a selected particular discrete unit.
30. The method of claim 21 , further comprising the steps of constructing a copy of the first data block from the modified second data block, said steps comprising: selecting each said new particular discrete unit in the modified second data block; extracting the selected bit from each selected new particular discrete unit; combining the extracted data bits to form a copy of the first data block; de╬▒ypting 1he copy of the first data block to form a copy of the selection of data.
31. A system for providing data security for digital data by using both encryption and steganographic techniques, comprising: a selection of data; a first data block, wherein said first data block is created by encrypting the selection of data, said first data block comprising a plurality of data bits; means for determining the number of data bits contained in the first data block; a second data block comprising a plurality of discrete units, each of said plurality of discrete units comprising a plurality of bits; means for selecting a plurality of particular discrete units within the second data block, the number of said plurality of particular discrete units being at least as great as the number of data bits contained in the first data block; means for associating each data bit in the first data block with a corresponding selected particular discrete unit in the second data block; means for replacing a selected bit within each selected particular discrete unit with its associated data bit to form a corresponding new particular discrete unit; and means for replacing each selected particular discrete unit in the second data block with its corresponding new particular discrete unit to form a modified second data block.
32. The system of claim 31 , wherein each discrete unit is a byte.
33. The system of claim 31 , wherein said selected bit of each particular discrete unit is the least significant bit.
34. The system of claim 31, further comprising a pseudo-random number generator, the second data block being generated by said pseudo-random number generator.
35. The system of claim 31, wherein the second data block is a file selected from a list comprising a graphics file, a sound file, or a video file.
36. The system of claim 31 , wherein the means for associating each data bit in the first data block comprises: a) means for associating the first data bit in the first data block with the selected particular discrete unit that occurs first in the second data block; b) means for associating the next data bit in the first data block with the selected particular discrete unit that occurs next in the second data block; and c) means for repeating b) for each of the remaining data bits and selected particular discrete units.
37. The system of claim 31 , wherein the means for selecting a plurality of particular discrete units comprises: an encryption algorithm; a selection key comprising a plurality of binary bits, said selection key having been created by the encryption algorithm; and means for associating each of the plurality of binary bits in the selection key with a corresponding discrete unit in the second data block.
38. The system of claim 37, wherein each selected particular discrete unit in the second data block is associated with a logic T bit in the selection key.
39. The system of claim 37, wherein each selected particular discrete unit in the second data block is associated with a logic '0' bit in the selection key.
40. The system of claim 31 , further comprising: means for selecting each said new particular discrete unit in the modified second data block; means for extracting the selected bit from each selected new particular discrete unit; means for combining the extracted data bits to form a copy of the first data block; and means for decrypting the copy of the first data block to form a copy of the selection of data.
41. A method of securely backing up data, comprising the steps of: providing a first data block, said first data block comprising a plurality of discrete units; providing a plurality of memory units; splitting said first data block into a plurality of split data blocks, the number of said split data blocks being equal to the number of said memory units, wherein each of said split data blocks contains a portion of the discrete units from the first data block; associating each of said split data blocks with a memory unit; encoding each of said split data blocks in its associated memory unit.
42. The method of claim 41, wherein the step of providing a first data block comprises encrypting a selection of data to produce said first data block.
43. The method of claim 41 , wherein the step of encoding comprises: for each split data block and associated memory unit, selecting a plurality of locations in said associated memory unit; associating each of said discrete units in said split data block with one of said plurality of locations; writing each of said discrete units in its associated location.
44. The method of claim 43, wherein the step of encoding further comprises writing data to other locations that are not associated with said discrete units.
45. The method of claim 44, wherein said plurality of locations are selected by a selection key.
46. The method of claim 44, wherein each of said discrete units is a byte.
47. The method of claim 44, wherein each of said memory units is a removable storage unit.
48. The method of claim 41 , further comprising the steps of restoring backed up data from said plurality of memory units, said steps comprising: retrieving said plurality of split data blocks from said plurality of associated memory units; merging said plurality of split data blocks to form a copy of said first data block.
49. A system for securely backing up data, said system comprising: a first data block comprising a plurality of discrete units; a plurality of memory units; means for splitting said first data block into a plurality of split data blocks, the number of said split data blocks being equal to the number of said memory units, wherein each of said split data blocks contains a portion of the discrete units from the first data block; means for associating each of said split data blocks with a memory unit; means for encoding each of said split data blocks in its associated memory unit.
50. The system of claim 49, further comprising a means for encrypting a selection of data to produce said first data block.
51. The system of claim 49, wherein the means for encoding comprises: means for selecting a plurality of locations in each of said associated memory units; means for associating each of said discrete units in said split data block with one of said plurality of locations; means for writing each of said discrete units in its associated location.
52. The system of claim 51, wherein the means for encoding further comprises means for writing data to other locations that are not associated with said discrete units.
53. The system of claim 52, further comprising a selection key adapted for selecting said plurality of locations.
54. The system of claim 52, wherein each of said discrete units is a byte.
55. The system of claim 52, wherein each of said memory units is a removable storage unit.
56. The system of claim 49, further comprising a means for restoring backed up data from said plurality of memory units, comprising: means for retrieving said plurality of split data blocks from said plurality of associated memory units; means for merging said plurality of split data blocks to form a copy of said first data block.
57. A method for selecting a plurality of discrete units with a secure selection key, said method comprising the steps of: providing an encryption key; copying said encryption key a plurality of times to form a data block; encrypting said data block with said encryption key to form a selection key, said selection key comprising a plurality of bits; providing a plurality of discrete units; associating each bit of said selection key with one of said plurality of discrete units; selecting only those discrete units whose associated bit has a particular logic state.
58. The method of claim 57, wherein the step of associating further comprises: associating each bit of said selection key with every nth discrete unit, where n is an integer.
59. The method of claim 57, wherein said particular logic state is a logic 'one'.
60. The method of claim 57, wherein said particular logic state is a logic 'zero'.
61. The method of claim 57, wherein said discrete unit is a data byte.
62. The method of claim 57, wherein the number of bits in said selection key equals the number of discrete units.
63. A system for selecting a plurality of discrete units with a secure selection key, said system comprising: an encryption key; means for copying said encryption key a plurality of times to form a data block; means for encrypting said data block with said encryption key to form a selection key, said selection key comprising a plurality of bits; a plurality of discrete units; means for associating each bit of said selection key with one of said plurality of discrete units; means for selecting only those discrete units whose associated bit has a particular logic state.
64. The system of claim 63, wherein the means for associating further comprises: means for associating each bit of said selection key with every nth discrete unit, where n is an integer.
65. The system of claim 63, wherein said particular logic state is a logic 'one'.
66. The system of claim 63, wherein said particular logic state is a logic 'zero'.
67. The system of claim 63, wherein said discrete unit is a data byte.
68. The system of claim 63, wherein the number of bits in said selection key equals the number of discrete units.
PCT/US1998/017839 1997-08-28 1998-08-28 Steganographic encryption system for secure data WO1999010859A2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP98953158A EP1033008A2 (en) 1997-08-28 1998-08-28 Encryption system for secure data
AU10604/99A AU1060499A (en) 1997-08-28 1998-08-28 Encryption system for secure data

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
US91919897A 1997-08-28 1997-08-28
US91936697A 1997-08-28 1997-08-28
US91921297A 1997-08-28 1997-08-28
US08/919,212 1997-08-28
US08/919,198 1997-08-28
US08/919,366 1997-08-28
US08/919,203 1997-08-28
US08/919,203 US6011849A (en) 1997-08-28 1997-08-28 Encryption-based selection system for steganography

Publications (2)

Publication Number Publication Date
WO1999010859A2 true WO1999010859A2 (en) 1999-03-04
WO1999010859A3 WO1999010859A3 (en) 1999-06-17

Family

ID=27506002

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1998/017839 WO1999010859A2 (en) 1997-08-28 1998-08-28 Steganographic encryption system for secure data

Country Status (3)

Country Link
EP (1) EP1033008A2 (en)
AU (1) AU1060499A (en)
WO (1) WO1999010859A2 (en)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU781797B2 (en) * 2000-03-17 2005-06-16 International Business Machines Corporation Stream continuity enforcement
WO2005078987A1 (en) * 2004-02-10 2005-08-25 Stegostik Limited Data storage
WO2006130991A1 (en) * 2005-06-10 2006-12-14 Davies Traverse A Method of and system for encryption and authentication
EP1779582A1 (en) * 2004-07-21 2007-05-02 Beachhead Solutions, Inc. A system and method for lost data destruction of electronic data stored on portable electronic devices
CN102063595A (en) * 2005-02-07 2011-05-18 微软公司 Method and system for obfuscating data structures by deterministic natural data substitution
US8185735B2 (en) 2004-07-21 2012-05-22 Beachead Solutions, Inc. System and method for lost data destruction of electronic data stored on portable electronic devices
CN102724041A (en) * 2012-06-07 2012-10-10 北京航空航天大学 Steganography-based key transmission and key updating method
WO2015157699A1 (en) * 2014-04-10 2015-10-15 Atomized Cloud Technologies LLC Method and system for securing data
US9449159B2 (en) 2004-07-21 2016-09-20 Beachhead Solutions, Inc. System and method for lost data destruction of electronic data stored on a portable electronic device which communicates with servers that are inside of and outside of a firewall
RU2618379C1 (en) * 2016-03-28 2017-05-03 Федеральное государственное бюджетное образовательное учреждение высшего образования "Поволжский государственный университет телекоммуникаций и информатики" (ФГБОУ ВО ПГУТИ) Method of steganographic additional information implementation to samples of digital sound signals
WO2023170454A1 (en) * 2022-03-08 2023-09-14 01 Communique Laboratory Inc. Systems and methods for hiding private cryptographic keys in multimedia files

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5613004A (en) * 1995-06-07 1997-03-18 The Dice Company Steganographic method and device
US5737417A (en) * 1995-04-24 1998-04-07 Technicolor Videocassette, Inc. Videotape anti-copying encryption scheme
US5745569A (en) * 1996-01-17 1998-04-28 The Dice Company Method for stega-cipher protection of computer code
US5748783A (en) * 1995-05-08 1998-05-05 Digimarc Corporation Method and apparatus for robust information coding
US5778074A (en) * 1995-06-29 1998-07-07 Teledyne Industries, Inc. Methods for generating variable S-boxes from arbitrary keys of arbitrary length including methods which allow rapid key changes
US5802174A (en) * 1995-06-30 1998-09-01 Sony Corporation Data recording medium
US5832523A (en) * 1995-08-30 1998-11-03 Kabushiki Kaisha Toshiba Archiving device and data file server using data file recorded in division over recording media
US5838796A (en) * 1996-01-11 1998-11-17 Teledyne Industries, Inc. Statistically optimized bit permutations in interated block substitution systems
US5850522A (en) * 1995-02-03 1998-12-15 Dex Information Systems, Inc. System for physical storage architecture providing simultaneous access to common file by storing update data in update partitions and merging desired updates into common partition
US5860090A (en) * 1995-10-20 1999-01-12 Informix Software, Inc. Append-only storage in a disk array using striping and parity caching
US5875477A (en) * 1995-12-22 1999-02-23 Intel Corporation Method and apparatus for error management in a solid state disk drive using primary and secondary logical sector numbers

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5850522A (en) * 1995-02-03 1998-12-15 Dex Information Systems, Inc. System for physical storage architecture providing simultaneous access to common file by storing update data in update partitions and merging desired updates into common partition
US5737417A (en) * 1995-04-24 1998-04-07 Technicolor Videocassette, Inc. Videotape anti-copying encryption scheme
US5748783A (en) * 1995-05-08 1998-05-05 Digimarc Corporation Method and apparatus for robust information coding
US5613004A (en) * 1995-06-07 1997-03-18 The Dice Company Steganographic method and device
US5778074A (en) * 1995-06-29 1998-07-07 Teledyne Industries, Inc. Methods for generating variable S-boxes from arbitrary keys of arbitrary length including methods which allow rapid key changes
US5802174A (en) * 1995-06-30 1998-09-01 Sony Corporation Data recording medium
US5832523A (en) * 1995-08-30 1998-11-03 Kabushiki Kaisha Toshiba Archiving device and data file server using data file recorded in division over recording media
US5860090A (en) * 1995-10-20 1999-01-12 Informix Software, Inc. Append-only storage in a disk array using striping and parity caching
US5875477A (en) * 1995-12-22 1999-02-23 Intel Corporation Method and apparatus for error management in a solid state disk drive using primary and secondary logical sector numbers
US5838796A (en) * 1996-01-11 1998-11-17 Teledyne Industries, Inc. Statistically optimized bit permutations in interated block substitution systems
US5745569A (en) * 1996-01-17 1998-04-28 The Dice Company Method for stega-cipher protection of computer code

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
SZEPANSKI W., "A Signal Theoretic Method for Creation Forgery-Proof Documents for Automatic Verification", CARNAHAN CONFERENCE ON CRIME COUNTERMEASURES, May 1979, pp. 101-109. *
WAYNER P., Digital Copyright Protection, ACADEMIC PRESS, June 1996, pages 122-126. *

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU781797B2 (en) * 2000-03-17 2005-06-16 International Business Machines Corporation Stream continuity enforcement
US7584198B2 (en) 2004-02-10 2009-09-01 Stegostik Limited Data storage
WO2005078987A1 (en) * 2004-02-10 2005-08-25 Stegostik Limited Data storage
US9449159B2 (en) 2004-07-21 2016-09-20 Beachhead Solutions, Inc. System and method for lost data destruction of electronic data stored on a portable electronic device which communicates with servers that are inside of and outside of a firewall
US8185735B2 (en) 2004-07-21 2012-05-22 Beachead Solutions, Inc. System and method for lost data destruction of electronic data stored on portable electronic devices
EP1779582A4 (en) * 2004-07-21 2010-10-06 Beachhead Solutions Inc A system and method for lost data destruction of electronic data stored on portable electronic devices
EP1779582A1 (en) * 2004-07-21 2007-05-02 Beachhead Solutions, Inc. A system and method for lost data destruction of electronic data stored on portable electronic devices
CN102063595B (en) * 2005-02-07 2016-12-21 微软技术许可有限责任公司 The method and system replacing upset data structure of being determined by property natural data
CN102063595A (en) * 2005-02-07 2011-05-18 微软公司 Method and system for obfuscating data structures by deterministic natural data substitution
US8775792B2 (en) 2005-06-10 2014-07-08 Strue, Inc. Method of and system for encryption and authentication
WO2006130991A1 (en) * 2005-06-10 2006-12-14 Davies Traverse A Method of and system for encryption and authentication
CN102724041A (en) * 2012-06-07 2012-10-10 北京航空航天大学 Steganography-based key transmission and key updating method
WO2015157699A1 (en) * 2014-04-10 2015-10-15 Atomized Cloud Technologies LLC Method and system for securing data
US9292700B2 (en) 2014-04-10 2016-03-22 Atomizer Group, Llc Method and system for securing data
US9842217B2 (en) 2014-04-10 2017-12-12 Atomizer Group, Llc Method and system for securing data
RU2618379C1 (en) * 2016-03-28 2017-05-03 Федеральное государственное бюджетное образовательное учреждение высшего образования "Поволжский государственный университет телекоммуникаций и информатики" (ФГБОУ ВО ПГУТИ) Method of steganographic additional information implementation to samples of digital sound signals
WO2023170454A1 (en) * 2022-03-08 2023-09-14 01 Communique Laboratory Inc. Systems and methods for hiding private cryptographic keys in multimedia files

Also Published As

Publication number Publication date
EP1033008A2 (en) 2000-09-06
AU1060499A (en) 1999-03-16
WO1999010859A3 (en) 1999-06-17

Similar Documents

Publication Publication Date Title
US6011849A (en) Encryption-based selection system for steganography
US7738660B2 (en) Cryptographic key split binding process and apparatus
US7676040B2 (en) Changing encryption key of encrypted data
US6549623B1 (en) Cryptographic key split combiner
CN108667595B (en) Compression encryption method for big data file
EP1279249B1 (en) One-time-pad encryption with central key service and keyable characters
JP3229148B2 (en) Encryption method and system
US6021203A (en) Coercion resistant one-time-pad cryptosystem that facilitates transmission of messages having different levels of security
US7212632B2 (en) Cryptographic key split combiner
EP0983541B1 (en) Method and apparatus for signing and sealing objects
KR970067054A (en) How to Create and Distribute Password Envelopes
WO1998036520A1 (en) Cryptographic key split combiner
EP1033008A2 (en) Encryption system for secure data
EP0843439B1 (en) Data encryption technique
JPH11215117A (en) Method and device for key encoding and recovery
Ergashev et al. CRITICOGRAPHIC METHODS OF INFORMATION PROTECTION
JPH10271107A (en) Method and device for data ciphering
JPH10271104A (en) Ciphering method and decipherinc method
JPH08107506A (en) Communication equipment
AU753951B2 (en) Voice and data encryption method using a cryptographic key split combiner
Adebayo et al. Data Privacy System Using Steganography and Cryptography
GB2446200A (en) Encryption system for peer-to-peer networks which relies on hash based self-encryption and mapping
Patle et al. Image steganography
KR20020025343A (en) Apparatus and Method for encryption and decryption of file using base key and one-time key
Chua et al. Audio Steganography with Embedded Text

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AL AM AT AU AZ BA BB BG BR BY CA CH CN CU CZ DE DK EE ES FI GB GE GH GM HR HU ID IL IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT UA UG UZ VN YU ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): GH GM KE LS MW SD SZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application
AK Designated states

Kind code of ref document: A3

Designated state(s): AL AM AT AU AZ BA BB BG BR BY CA CH CN CU CZ DE DK EE ES FI GB GE GH GM HR HU ID IL IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT UA UG UZ VN YU ZW

AL Designated countries for regional patents

Kind code of ref document: A3

Designated state(s): GH GM KE LS MW SD SZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

NENP Non-entry into the national phase in:

Ref country code: KR

WWE Wipo information: entry into national phase

Ref document number: 1998953158

Country of ref document: EP

REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

WWP Wipo information: published in national office

Ref document number: 1998953158

Country of ref document: EP

NENP Non-entry into the national phase in:

Ref country code: CA

WWW Wipo information: withdrawn in national office

Ref document number: 1998953158

Country of ref document: EP