Domain-based encryption5245658Abstract A domain-based encryption system which uses identical domains known only to the parties involved in the communication. An encrypted message is sent between communicating parties which consists of a stream of coordinates which locate specific points in the domains. The located points comprise a symbol set that forms the plaintext message. Claims We claim: Description BACKGROUND OF THE INVENTION
______________________________________
5-8 & 1-4
1-4 & 5-8
5-8 & 9-12
9-12 &
5-8
1-4 & 9-12
9-12 &
1-4
______________________________________
Of course one could call out 8-5 instead of 5-8 etc. Thus, completely differing data streams can designate the same cells. While a single large multi-plane domain could serve as the basis for encryption, eventually a large sample of the data stream could be analyzed by an intruder and the structure of the domain defined. At this point the encryption might be broken. Changes in the domain keep an intruder from gathering a large, coherent sample of the data stream and are basic to domain-based encryption. As described earlier, an effective change might switch domains. Another change might alter the coordinate system. As envisioned, domain changes are governed by change protocols. These are a series of algorithms that define the aspects of the domains to be changed. The algorithms are constantly changed and influenced by the introduction of random factors so as to render domain changes unpredictable. Heretofore, the domains and systems have been very simple as an aid to understanding. The following is a description of the invention as presently envisioned to be practiced. All system users would receive a computer disk, (or chip), containing a large number of domains and a large collection of algorithms for change protocols. Unique to each disk is an "Identification Domain" and an identification number. Otherwise, all the disks are identical, thus, all users start with the same reference materials. When an individual signs on to the system, a file is started in a central computer containing the Identification Domain and identification number. This joint holding by the central computer and user allows the central computer to send information to the user in the form of a stream of coordinates. The user's identification number is placed in a directory so that other users can communicate with him. Initial communication between users starts with the exchange of set-up keys. These keys are used to modify the stock change protocols so that each user pair has a unique set of change protocols. FIG. VII illustrates an example of how this would work in practice. If A wishes to communicate with B, he or she begins by looking up B in the directory. A accesses the central computer via modem and identifies himself or herself and B using the respective identification numbers. The central computer looks up the files for A and B and sends a series of coordinates to A which will locate a set-up key, (479321), in A's unique Identification Domain, (X). The set-up key should have a random element, such as time of day, involved in its formulation so that it will be unpredictable. The central computer finds the same number, (479321), in B's Identification Domain, (Y), and sends out the attendant coordinates to B. In this manner, both parties are given the same set-up key, (479321), by the central computer although the coordinates given to each party have no relationship to those given the other party. Unless an intruder has access to A or B's Identification Domain, he will be unable to decrypt the communicating parties' set-up key. The set-up key, 479321, the number given to A and B, is used to provide an initial starting point for communications and to the change protocols. A and B now have a set of change protocols that are unique and identical. They are in a synchronous state. When A and B wish to communicate, their systems will refer to these unique change protocols and configure unique domains from the standard domain package. A and B can communicate without having to contact the central computer again because they start at the same place and have synchronous running changes of their change protocols. If A and C wish to communicate, they must go through the central computer to define their own pair of unique change protocols. As envisioned, the system will have provisions for the introduction of random keys by the communicating parties. The user-introduced (as opposed to central computer introduced) randomizing key would modify the change protocols and ultimately the domains, much as the set-up key does. As an example, the procedure would work like this. As A's computer is encrypting a message, it interrupts the process to generate a pseudo-random number. This number is the randomizing key. The key alters A's change protocols and is incorporated in the stream of coordinates sent to B. The key is preceded by a signal that alerts B's computer to the key along with start and stop signals. Because B's change protocols are altered by the randomizing key at the same point in the message as are A's protocols, A and B remain in synchrony although not in real time. B could decrypt the message weeks after it was sent, but his change algorithms will be in synchrony with those of A as long as he decrypts messages from A in the order that they are sent. User-introduced keys are secure because the data stream of coordinates is very small compared to the data contained in the domains. Because the data stream is a series of coordinates, an intruder cannot intercept a characteristic signal heralding a change. Thus an intruder has no way of knowing that the change protocols and domains have been reconfigured. An example of an initial domain that might be used by A and B is a three plane domain similar in structure and operation to those shown in FIGS. IV, V & VI. Instead of 4 cells, there are 128 cells per axis. The total number of cells in the domain is 128.times.128.times.128=2,097,152 cells. Scattered throughout the domain is a complete set of the 128 ASCI symbols plus several dozen duplicate and triplicate ASCII symbols, (for example, 2 dozen e's), along with several dozen blank or safe cells. This leaves the majority of cells empty. The ASCII cells and blank cells are the only legitimate cells in the data stream. If an intruder were to attempt to impersonate a legitimate correspondent, and mistakenly call out the coordinates of an illegitimate cell, the system might react by terminating the communication. As in a previous case, one could also use imaginary coordinates to confuse an intruder about the structure of the domain. Change protocols determine the timing and the nature of domain changes. A and B might begin communications by referring to the above domain but would simultaneously switch to another domain as determined by their change protocols. A constant, seemingly random, synchronous domain change will take place during all communications. The change protocols will switch domains, modify domains and modify the change protocols. All of this is done so that an intruder will be faced with an unpredictable, constantly changing set of domains. Because these are synchronous running changes, A and B need only refer to their last change protocols to begin a new series of communications. An embodiment of the invention finds application in specialized devices such as FAX machines. The FAX today is a major communication channel. FAX machines are open to intrusion in two main ways. Because FAXs are transmitted over telephone lines, a message can be stolen through electronic eavesdropping. Also, once a message reaches its destination, it may be read by an intruder who gains access to the recipient's FAX machine. Domain-based encryption would frustrate electronic eavesdropping, and machine access PIN codes in the recipient FAX's software would solve the problem of on-site intrusion. Domain-based encryption can be integrated with a FAX machine in the following manner. Each FAX machine would contain a domain-based encryption package consisting of encryption domains, change algorithms, an Identification Domain and a file containing the PIN codes and names of authorized users. The encryption domains and the change algorithms would be identical in all machines, but the Identification Domains would be unique to each device. As envisioned, one of the phone companies would serve as a central computer storing each Identification Domain as well as the respective legitimate PIN codes and names in a secure file together with the corresponding phone number. When party A wishes to send an encrypted FAX to party B, party A begins by entering his PIN code, then pushing the "Encryption" button on his machine and entering the name of the recipient. He then proceeds to send the FAX in the usual manner by dialing the FAX number of the recipient. Transparent to A, his FAX machine checks his PIN code for legitimacy, then dials the phone company. The FAX machine identifies itself and identifies the FAX recipient's file by means of the corresponding phone numbers. Then the FAX machine transmits the sender's PIN code in the form of coordinates that locate the code in the telephone company's identical copy of the sender's Identification Domain. The sender's FAX also transmits the recipient's name. The phone company accesses the sender and the recipient files, checks for the legitimacy of the sender's PIN code and the recipient's name, generates a pseudo-random number and downloads this number to the sender's FAX machine in the form of a data stream of coordinates. The sender's FAX uses the coordinates to locate the pseudo-random number in its Identification Domain. The pseudo-random number is used to provide the set-up key for the encryption process and to provide change instructions for an alteration of the Identification Domain. The Identification Domain can be changed in every communication so that an intruder cannot gather enough information to deduce a legitimate user's Identification Domain. The sender's FAX machine uses the set-up key to create a unique set of encryption domains and change algorithms from the standard configuration and encrypts the message using the altered domain package. The FAX downloads the encrypted message to the phone company which sends the message, the recipient's name, the sender's name, and the pseudo-random number to the recipient's FAX machine. The pseudo-random number is transmitted in the form of coordinates that locate this number in the recipient FAX machine's Identification Domain. The recipient FAX machine uses the pseudo-random number to synchronize its encryption domain and change algorithms with that of the sending machine, then uses this data to decrypt the incoming message. The recipient FAX machine stores the decrypted message in a file that can be accessed only by the PIN code designated by the name in the communication, then reconfigures its Identification Domain as instructed by the pseudo-random number. This interchange is transparent to the sender and the recipient of the FAX. Other than using PIN codes and entering the recipient's name, these individuals have taken no extraordinary action in the processing of an encrypted FAX. It can be seen from the above, that use of the PIN codes allows only legitimate users to send and receive encrypted FAXs. The use of the central computer, (the phone company), allows individuals who do not know each other to communicate while, at the same time, dispensing with the need to exchange secret keys. The recipient of a FAX can be sure of the identification of the sender because the use of Identification Domains ensures that the sender's FAX machine is legitimate. The implementation of PIN codes ensures that the phone company has screened the sender for legitimacy. An intruder could not use a different FAX machine with a stolen PIN code because the set-up coordinates would produce a message that the recipient's machine could not decrypt. An intruder could not pose as a legitimate user if he had access to a legitimate machine because he does not know a legitimate PIN code. Given access to the recipient's FAX machine, an intruder could not access the decrypted message because he does not know the correct PIN code. Additionally, the domain-based encryption process is not vulnerable to electronic eavesdropping. In order to assist in the understanding of the invention, the following example is provided as an illustration of a simplified version of a change protocol set and its operation. To make the example easier to follow, the domain set will consist of a single two axis domain. As shown by FIG. VIII, the domain has 1000 spaces on the X axis and 1000 spaces on the Y axis. In this example, the coordinates consist of a three digit number, 000-999 for the X axis and 000-999 for the Y axis. As a convention, the first three digits are the X coordinates. The symbol set used in this example contains the 26 letters of the alphabet, the numerals 0-9, punctuation marks, a symbol for spaces and instructions. A typical instruction would be an alert that a pseudo-random number is being sent. When placed in the domain, the symbol set contains multiple examples of all symbols. The number of examples of each symbol varies according to frequency of use. As an example, there would be many more "e's" than "z's". All together, the domain would contain a symbol set of 1000 examples. The change protocol set has three parts A, B and C. Each part has an instruction set and a set of algorithms. The instruction set acts through the algorithms to alter aspects of the domain and the change protocols themselves. In this example, part A is responsible for altering the change protocols. Part B is responsible for altering the coordinates of the domain and part C is used for dispersal of the symbol set. The set-up code acts through part A, which in turn acts on parts B and C to provide the initial domain configuration and symbol set dispersion. After the initial set-up, part A governs changes in the domain set until interrupted by a user generated randomizing key. The randomizing key has the same effect as a set-up key in that it alters part A through the introduction of a pseudo-random number. In this simple example, illustration IX shows the result of the initial set-up. The coordinates, (000-999), have been dispersed about the periphery of the domain in random order. Thus, the first coordinate on the X axis is shown as 487, the second shown as 025, etc. The X and Y axis are regarded as having separate 000-999 coordinate sets. The placement of the coordinates is governed by part B. As shown in the illustration, a smaller domain has been placed in the larger domain. This domain, which has 128 spaces on the X and Y axis, is the active domain. The coordinates for this domain are determined by the position of the small domain in relation to the large domain. Part C determines the dispersal of the symbol set throughout the active domain. The mechanism used in this initial placement is analogous to a "grab bag" in that the coordinates of the active domain are placed in a file then matched at random with various elements of the symbol set. The resultant collection of coordinates and symbols is placed in a file and serves as the working set. The file will have two sets of symbol/coordinate pairs. One set will be organized by symbol as an aid to encryption. The other will be organized by coordinate to aid decryption. In this example, the trigger for change will be based on the convention that a symbol/coordinate pair is not to be repeated. If the symbol set contains 15 "s's" and a 16th "s" is called for, the change protocols would be enacted to alter the domain configuration. To keep this example simple, part B would be able to alter coordinate set-up in four ways: 1. The first is a "grab bag" technique whereby the coordinates are placed in a file and selected at random. 2. The next technique is to change the configuration of the active domain. As shown by illustration X, a change in the shape of the active domain will alter the position of the active domain in relation to the larger domain, thus changing the coordinates of the active domain. 3. A third technique would be to play "musical chairs" with the coordinates governed by some random time interval. As shown by illustation XI, the coordinates must "wrap around" to allow the technique to work properly. 4. A final technique is to move the active domain within the larger domain. As shown by illustation XII, this has the effect of altering the coordinates of the active domain. In this example, group C uses two techniques for symbol dispersal: 1. The first uses the "grab bag" effect to match symbols and the active coordinates. 2. The second technique is through use of an offset. As an example, move the symbols up four cells and two cells to the left. This method would have to be used carefully to avoid placing symbols outside of the active domain. As envisioned, any change would consist of first altering the coordinates, then altering the placement of the symbol set. With these actions there will be no repetition of symbol/coordinate pairs. Because the coordinates are in random order to start with, there is no creating of a pattern that might inform an intruder of a change in domain configuration. While the foregoing embodiments of the invention have been disclosed in considerable detail for the purposes of illustration, it will be understood by those skilled in the art that many of these details may be varied without departing from the spirit and the scope of the invention as stated in the appended claims.
|
Same subclass Same class |
||||||||||
