Home Up




Cryptographic Memory

by Roy D. Follendore III

Copyright (c) 2005 by Roy D. Follendore III


Note: This engineering article was originally submitted to Dr. Jeremy Allnutt within the Graduate  TCOM program at George Mason University.  Roy D. Follendore III is an Adjunct Professor of TCOM-548 and TCOM-556.  He teaches courses involving creative asymmetric thinking about the design, implementation and philosophy of Telecommunications Security and Cryptography. 

December 3, 2005

For better or worse, and no matter how much some may wish it otherwise, all technological philosophies, including cryptography, exist within the prospects of open systems. When the philosophy of a system is closed, it becomes, rigid, incapable of change, and therefore is incapable of being used to meet new challenges. The problem of facing new onrushing challenges happens to be one thing that engineering will continue to have within this epoch and because of this, change will necessary for evolution of technologies within open systems. This includes notions about cryptography. 

Over the past decade I have been teaching through the products of my work and as a Professor that cryptography and cryptographic functions can be used for many purposes other than security. The expectation of security is often ultimately dependent and limited on the factors of technical and organizational performance that cryptography provides. At this time I would like to offer a basic engineering function as an example of a cryptographic process that can and should be used within computer science and robotics.  This particular example is essentially a redefinition and 'reuse' of a basic cryptographic function as fundamental memory process.

Background of an Example Problem

Traditionally within computer science technologies a memory device (or memory core) is represented by the location of the space in which data occupies. In many cases the purpose of storing that data as memory is associate it with specific actions which should take place. To accomplish this process through indirect location references requires complex subsystems involving search and retrieval processes. The event that is is expected is usually mapped to a memory location and the action to be performed is stored in another memory location. When an event arrives it is compared with all of the stored potential events and through an associated vector reference the location of the appropriate stored  response can be found.     

Memory is the electronic holding place for instructions and data that your computer's microprocessor can reach quickly. Within cryptography it is well understood that it is possible to encrypt one text of a specific length with another text of the same length and recover either by using the other by the same process. One of the texts is usually, though not necessarily a random 'pad.'( There are many papers published on this process.  See: http://en.wikipedia.org/wiki/One-time_pad )  What is not generally recognized is the memory potential that exists as the symbolic representation remains within both cipher texts. From a formal communications perspective, encrypted information is both a storage process as well as a potential means of obscuration.

The Logic of One-Time Pad As Memory

For those engineers with a logical bent, let us assume that a series of complex events within an environment and is detected, which we shall define as E.  E is detected, stored as digital stimuli and analyzed such that an appropriate response (R) is then created for that event so that the total event and response pair can be called (E,R).  Next let us assume the special case that when the E and R are compared within a computer they happen to have the same length, such that the bit size of E equals R. It is then possible to XOR cryptographically permute E with R as represented by the notation R(E), so that both E and R are symbolically represented within the permutation. ( XOR works best because it is very fast and simple but it is possible to use other more complex and 'potentially' more secure two way permutation functions. The choice of the permutation function depends on the engineering objectives.) In any case, when E is detected and becomes known, it is then immediately possible to recover R, and it is also equally possible to recover E when R is known. Of course the opposite is also true so that E can be recovered when R is known. 

Advantages of Cryptographic Memory

The immediate advantage of this process is speed rather than obscuration.  It becomes very easy to embed and change the relationship of the R(E) as objects. It is possible to 'decrypt' at extreme speeds. Another advantage is storage space while another advantage is that the stimuli/response remains together. Since the encrypted pair R(E) remain paired the space that is required to contain R(E) is one half R+E.  In other words, R(E)=(R+E)/2.  It is also possible to know in advance if E will fully decrypt to R, in case E1 does not equal E2. Judicious use of labeling and pseudo random cryptographic padding allow this process to be used in extremely flexible ways. There are different ways to accomplish this for different effects and very different examples of how cryptographic memory may be accomplished may be found within the sub processes of my various Patents.

The Future of Cryptographic Memory

I fully expect that cryptographic memory technologies will be used in future secure systems as these techniques become known. The practical applications within artificial intelligence (AI), remote sensors, robotics and object oriented applications, messaging systems and embedded systems maintenance are enormous. The data stored within is process can be rules, commands, and scripts, as well as data.

Implications of this Concept

This is but one example of the potential of redefining cryptographic concepts and it represents a change in the fundamental philosophy of cryptography as security. I believe that the implications for how this expansion of cryptographic philosophy can and will transform our understanding as well as our methodologies for defining inherent security boundaries. Perhaps more importantly, as a society, when we are able to realign our thinking and engineering language so that we are able to see and communicate the notion of cryptography as more than risk and security we shall begin to see and learn from the remarkable references to be found within the structures of nature. Through different philosophical views of technologies we are able to change our language and therefore our options.





Copyright (c) 2001-2007 RDFollendoreIII All Rights Reserved