a web project by Zoltán Szegedy-Maszák
Although the primary objective of this publication is to introduce the Cryptogram project, a web project dealing with cryptography and virtual reality, I will first discuss my theoretical approach to the digital phenomena from the viewpoint of a visual artist and hence outline a context from which to consider this single piece of work as a result of my continuous interdisciplinary research.
In my view, the digital world is a kind of ideally sterile laboratory. As a visual artist, my observations are mostly focused on images, the digital pictures and renderings that are displayed by analog devices such as monitors, printers, projectors etc. The physical capabilities of these display-devices - maximum resolution, Color depth - determine the possible quality of the spectacle, but the concept of digital resolution and Color depth makes the ideal computer lab universal.
Digital images are assembled from pixels, with each pixel's color described by a number. By using 24 binary digits to store each digital pixel's Color, we can deal with "true color images". With all the pixels having one of the 16.7 million colors, which is far beyond the number of colors distinguishable to the human eye, and since the possible number of pixels is virtually infinite, the digital spectacle can be as perfect a one as we try to make it - we can render all the possible sights perceptible by the human eye. For this reason the digital laboratory seems to be an ideal place to study visual information - we can either start to experiment without considering the meanings of the phrases "sight" and "image", the differences and relations between them, or draw-up questions to understand them in this sterile world governed by formal logic.
But unfortunately the phrase "virtually infinite" is practically absurd in the digital world as even to save a number in digital memory cells, we have to know its possible size to find out how many memory cells are needed to store it. Digital images are stored in form of a chain of numbers, for this reason the term "infinite" is similarly meaningless in the context of digital images. Despite the universality of digital imaging, the maximum number of images which can be displayed on a particular digital resolution is finite: for example, a "gray scale monitor", with each pixel having one of the 256 possible gray levels and with a resolution of 640x480 pixels, can display different images up to 256 on the 307200th power. An overwhelming number of variations, but nevertheless, finite.
Most of the variations will picture meaningless noise, but among them there must be pictured all the possible spectacles which have ever been seen, from the Mona Lisa to the cover page of tomorrow's newspapers, and all the possible variations of all the existing scenes, pictured from all the possible viewpoints illuminated by all the possible hues - rendered on that small resolution, in gray scale, of course. The number of the possible variations can be increased by using a better monitor, but it remains finite, meaning that the better display will produce new visions, but in many cases it will just picture a better quality reproduction of the same sight. In my view this insufficiency makes the computer the adequate experiment-chamber to form the most exciting question about images; namely what is the difference between meaningless noise and meaningful image? My aim is to approach the answer in my artistic activities by refining this question.
The other important deficiency from the viewpoint of experiments is that any knowledge we can obtain about any type of digital existence is delivered to us as representations (avatars) generated by mostly analog devices: monitors, speakers etc. Anyone using the computer has to choose a strategy to deal with these inconveniences - let me outline my one.
Working with digital computers I can consider the various traditional media (image, music, cinema, text, two/three/four/etc. dimensional objects) as different forms of interpretation - since digital data is interchangeable between analog devices. In this sense representation equates interpretation and vice versa.
For example there are two basic types of digital images:
In the latter case, the data can have a meaning both in the form of a program (a meaningful source-code), and in the form of the resulting graph (a meaningful image). In the digital lab we have the freedom to choose our observational milk-glasses, to choose the representation of the data. As we know from the real world, choosing the wrong milk-glass or avatar will not necessarily lead to misconception, but often, on the contrary, to a new conception.
By changing its form of representation, data can be misinterpreted: we are able to study the properties of the various avatars (misinterpretations) in the same system, governed by the same rules. The usefulness of digital misinterpretation is well-known; to mention just one example, consider the graphs of chaotic data structures called fractals: the misinterpretation makes possible the interaction between humans and data, to distinguish it from meaningless noise. The digital world is much richer in its possibilities for misinterpretation than the physical as in the "real" world we can consider a calligraphic manuscript as a picture in which we can capture a new point of thinking, but we can't multiply it by another image in order to look towards a new existence - this can be easily done in the digital world, by considering the numbers of the linear data-line as digits of a huge number interpreted on the screen by an image-avatar. During this multiplication we can treat the images as numbers (multiplier and multiplicand), and observe the result (product of multiplication) in the form of an image appearing on the screen. In the digital lab the attributes of an existence are easily separable from its representation.
For me, the method of digital misinterpretation is a frequently used tool to provide interactivity for the "users" of the artwork - interactivity both in the sense of an interface to offer a means for the interaction, and in the sense of interpretation, which helps one to obtain a kind of understanding of my point, in order to awake creative activities. Although the Cryptogram project is not intended to show results of experiments with free and creative misinterpretation, as it also deals with a kind of misinterpretation system. Precisely because digital data structures are "compatible with one another" - images can be converted to sound, and vice versa using exact formal logic - why not create an encryption system which "converts" text into virtual sculptures and back?
The basic principle is quite simple: only a three dimensional object is necessary for the key of the encryption. The points of its surface can be ordered to the character-codes used by computers to store text in digital form: this way any character (the letters of the text) can be substituted by the one spatial point(vertex) belonging to it. The letters are stored as coordinates of the vertices, and by connecting them with triangular faces, I can store the order of the letters in the resulting sculpture (the Cryptogram of the text). The text can then be decoded from its Cryptogram the opposite way: the decoding program looks for the vertices on the surface of the key-object to find the characters, then it re-assembles the text according to the order of the faces of the Cryptogram.
Figure 1: each character is linked to one spatial point on the surface of the key-object
Figure 2: the faces of the Cryptogram are tightened on the points substituting the letters according to the order of the characters of the encrypted text
Before describing the Cryptogram in detail, I must point out that it isn't a finished and proudly presented art-piece, but an ongoing project: after the first interactive installation exhibited in 1996, it became a web-project, and still later it was shown in the form of a networked-installation, and with another version in the works. The main reason for the continuous development is the very nature of Internet related art where in the rapidly changing world of software and hardware, no one can afford to "forget" a piece by thinking that it is ever ready. On the one hand any web-page which is intended as a "living corner of the Net", frequently visited by many surfers has to be changed often in order to maintain the interest of the visitors by providing something "new". On the other hand, technical development of the Internet constantly forces the net artist to be in a state of flux, testing new software in this extensively changing environment where new developments and software can lead to very surprising results with good, old data: new browsers can render it in an absolutely different way, (i.e.. new programs are not compatible with the old standards etc.). A great number of web-projects are "destroyed" by technical development, especially those that are experimental and which use "cutting edge technology" - the special, rarely used features of the software, experimental inventions of software engineers suitable for artistic inventions - available before it becomes standard: these pages are rendered error messages when viewed by upgraded browsers. With Cryptogram I began to use VRML just before it became a standard. To date, the project has been renewed more than six times. In order to avoid the boredom of technical development, I tried to make use of the exhibitions at which it was shown by always testing something new in the exhibited networked-installation, which was later "built into the web-version". In this way the project still holds enough interest for me, offering an inspiring a training-ground with each forthcoming show.
Figure 3: the sculpture of the word "Cryptogram", encrypted using the keyfile modelled after Leonardoís sketches for the Sforsa-statue
The first version of the Cryptogram was shown at the Butterfly Effect exhibition in the Current Coordinates section. The installation made it possible for the visitors to type into the three dimensional space, creating one common Cryptogram as a kind of encrypted guest book, which was accessible through a simple virtual reality system. The encryption was made using one common key object: a draft model of a rearing horse built after Leonardo's sketches for his huge, "Cavallo" which was never realized. The choice was both symbolic and practical: my aim was to emphasize the immateriality of the Cryptograms in contrast to the uncast and destroyed clay colossus of Leonardo, as well as fulfill the need for an organic figure to provide a more mysterious spectacle, independent of the text the visitors would type in. (I am still using this key-object as the background image on the web site, and for the on-line demo.)
Visitors had access to four terminals where they could add their own parts to the Cryptogram by typing text into the system, or read decoded parts of the developing sculpture. Not surprisingly, most of them were more interested in the more popular aspects of Virtual Reality (VR). However, visitors did make use of the terminals and the developing Cryptogram - in all the shades of gray, rendered in very low resolution against the unbounded black space as a silent monument to all kinds of important or simply chat-like, meaningless words - contained merely messages in my eyes. This was one important reason to develop a web-version of the project immediately after the opening of the Butterfly Effect exhibition.
Equally important was that at that time (1996 January) the discourse around cryptography/privacy/free-speech/censorship were the hottest topics in the context of the growing Internet-community. That was the time when hackers demonstratively cracked the security system of the Netscape browser, and the same time when Philip Zimmermann (author of PGP - Pretty Good Privacy: the most popular encrypting-system used in e-mail) was under investigation by the US government for alleged violation of export regulations for cryptographic products by publishing PGP. I was amazed by the beautiful ideas of the encryption-systems like PGP, RSA, PGPfone, and Nautilus, and by the enthusiastic hackers who sometimes endured serious threats to their livelihood and freedom, as well as very real legal expenses for the sake of the right to electronic privacy. Besides that, the Internet version of the Cryptogram system was a clear artistic response to these topics. As I examined the "multimedia encryption systems" (for example Nautilus, a program that enables users to engage in secured voice conversations between multimedia PCs) I immediately recognized that the Cryptogram system facilitates something which is missing from other cryptographic methods: namely that the evidence of communication is hidden as the avatar of the encoded message changed from text to a virtual sculpture.
When I began work on the Internet-version, I had to change my artistic attitude. The aim of the installation exhibited at the Butterfly Effect was to enable the visitors to create something: the piece intended to be a real interactive work that provided more for the viewer than browsing over a prefabricated hypermedia piece. In the web-version I aimed at publishing a "communication system for virtual communities" by providing "only" a demonstration, technical information, and downloadable software I tried to leave it to the viewers' imagination to create their own "Cryptograms". In other words I tried to suggest to realize the "artwork" through using it for practical purposes. As I prepared my first Web-piece, this approach seemed the only creative usage of the Internet as a new medium as instead of a fancy multimedia web- page I wanted to make my point by spreading it as an idea built into a useful program.
Figure 4: the download page of the web-version (January 1998)
To create the web version of Cryptogram, I needed to rewrite the codes to store the three dimensional objects in a standard file format understandable by the popular browsers: this was the VRML 1.0 specification, emerging at that time on the Internet. This standard promised to spread the Cryptogram system as a poetic, artistic alternative to encrypt e-mail messages.
The new web version of the Cryptogram project became a relatively complex misinterpretation system based on the concept of the conventional file formats (interpretation systems) which are the cornerstones of digital multimedia. The new Cryptogram is a full-featured encryption system with which the sender can encode an ASCII text file into a virtual sculpture to transmit it through the net in enciphered form, and the recipient can decode the sculpture back to the original text. The new encryption system uses the same principals to convert text to virtual sculptures, except for the creation of VRML 1.0 files, which can be explored using any kind of VRML-browser. The web-site contains instructions to use the Cryptogram system, and downloadable applications to provide comfort for everyday use. The most popular part of the website is the demonstration which allows visitors to try the Cryptogram system by typing in a message, which is then encoded into a virtual sculpture (practically, a VRML 1.0 file), which can be explored, and decoded back to its original form by touching or clicking the object. The Cryptograms created by the users of the demo are stored in a "public mailbox", that anybody can explore and decode them - after a couple of month this place became a popular message-board, containing many beautiful sculptures modeled on mostly chat-like texts.
To practically use the Cryptogram-system, users have to create their own key-objects: this can be done by the downloadable JAVA application, which contains a "key-file creator module" besides a simple text editor and encrypting-decrypting commands. The key-file is needed by both the enciphering and deciphering process, so the key-files has to be shared by the participants of the communication. This is similar to the other (one-key based) encryption systems, with the important exeption that Cryptogram is not intended to be a "point to point" method used by pairs of individuals: the aim of Cryptogram is to induce individuals to form communities. The necessity of the one common key-file can be very comfortable for smaller or bigger internet-communities: by using the same key-idol they can exchange messages which are understandable for all the members of the conspiracy, and hidden and meaningless for anybody else.
Figure 6: a Cryptogram in a VRML browser
Communicating through "Cryptograms" has not only the advantage of encryption: besides cryptography (the art of cryptic symbolization) it facilitates steganography (the art of hidden communication): exchanging messages in form of virtual sculptures encrypts the fact of exchanging messages - for unsuspecting outsiders the sculptures might seem some kind of artworks carrying aesthetic values rather than practical information.
Last but not least, the initiated Cryptogram fans could acquire the skill, after some practice, to understand the most common encrypted messages in the form of "sculptures" without decrypting them. This way the community would possess its own virtual world which develops a paradoxical situation, namely that in a progressive, typographic culture, a close connection is established between the elements of a language and the indicated (virtual) objects, similarly to the language of pre-typographic communication.
Zoltán Szegedy-Maszák January 1998.
Revised by Diana McCarty
Being a digital existence means to exist in the form of data (linear sequence of numbers). Being digital means being immaterial. What we see on a computer display, hear from loudspeakers, read on a printout are representations, different avatars of the same "medium", the medium of binary digits. Using the computer as a digital laboratory has the advantage of an ideally sterile experiment chamber, but also has the disadvantage that no human being can enter to it - no human senses can interact directly with the data.
The term "avatar" originally comes from Hindustani, meaning an incarnation in human form, an enbodyment (as of a concept or philosophy) usually in a person. Today the word is frequently used in the context of Virtual Reality meaning the virtual body of a human being in the virtual world. By mutual agreement - in this context - the term was invented by Neal Stephenson in his famous novel "Snow Crash", but it has been used in the same sense before the publication of the novel for a number of years as part of a virtual reality system – running on a small Commodore-64 computer, today used as a game-platform – called Habitat. As any user of a virtual world has to be shown to the other participants (observers) in a visual form, I want to point out by using the phrase that any data has to be represented the same way to the observer like other people in the 3D world. The difference is that users of a 3d virtual worlds can choose their "bodies": in the case of digital experiments we have to choose the observed objects "body".
Virtual Reality Modeling Language. VRML, similarly to HTML (Hypertext Markup Language, the file format used by web-pages) is a text file format. While HTML is used to describe two dimensional, graphic information, VRML is a language to describe three dimensional virtual worlds. When I use the term "describe", it refers to these "languages" as interpreted by "browser applications": practically browsing the web means to use a program (Netscape, Microsoft Internet Explorer, Mosaic, etc. Programs "understanding" HTML) which downloads and interprets data available on the net, displays it on the user's screen, and responds to his/her actions. There are some kinds of special data types what these browsers cannot handle alone: VRML is one of them, but not the only one. Most of the browsers provide the possibility to use other programs to handle these files, called "plug-in modules". To explore VRML content a VRML browser needed which can act as a "stand alone application" (a program which runs independently from the HTML-browser) or a "plug-in module" (which runs inside the HTML-browser).
The history of VRML began at the first international conference on the World Wide Web in May of 1994, where virtual reality for the Web was presented. After a democratic discourse on a public mailing list one year later, the VRML 1.0 standard (based on Silicon Graphics' Open Inventor file format) was accepted by the small community of VRML fans, and on January 29, 1996 a clarified version (VRML 1.0c, the standard accepted by all the browser-writers) was issued. In this first incarnation VRML was purely a static 3D scene description language. The Cryptogram system uses this format to encrypt messages to date, since the extensions of VRML 2.0 would not make too much sense for encryption. The VRML 2.0 specification - issued in 1997 - introduced animation, programmable behavior, and much more sophisticated provisions for user interaction. The next specification will include some ways to stream the multimedia data, and more importantly the possibility to create worlds where the user is not alone any more. In these multi-user worlds the visitors can choose their avatars and interact with each other.
The first interactive installation titled Cryptogram was shown at The Butterfly Effect show (Budapest, Mûcsarnok, 1996, http://www.c3.hu/butterfly/), the first web-version of the piece was exhibited on the Internet.galaxis 96 (Budapest Gallery, Budapest http://www.inf.bme.hu/internet.galaxis/) and on the "Exploration Network" show (Center for Culture and Communication Budapest 1996). The downloadable JAVA-based version was developed for the Beyond Art exhibition (Jenseits von Kunst Ludwig Museum - C3 Center for Culture and Communication Budapest 1996 / Neue Galerie am Landesmuseum Joanneum Graz 1997), and the last renewed version was presented on "The Code" exhibition and discussion by Gusztáv Hámos, Miklós Peternák and Zoltán Szegedy-Maszák (Goethe Institute Budapest 1997).
The Butterfly Effect - The Coordinates of the Moment Before Discovery
A series of international Events organized by the Soros Center for Contemporary Arts, curated by Suzanne Meszoly and Miklós Peternák - Palace of Art Budapest, 1996. The exhibition was divided into two parts - "Media Relics" and "Current Coordinates" – showing contemporary media art in the context of media history.
Around 1487 Lodovico Sforza(the lord of Milano) charged Leonardo da Vinci with a commission to create his father's monument. Leonardo completed the firing of the clay model of the huge, seven meters high equestrian statue of Federico Sforza in 1491. Before he could start the molding, the bronze needed for the statue was given to Ercole d'Este who manufactured cannons of it in consideration of the invasion of the French troops, leaded by VIII. Charles. The clay model was perhaps destroyed during the second French invasion in 1499 by the French archers. Ercole, the prince of Ferrara tried to get the remaining ruins of the Cavallo from the French governor of Milano in 1501, but his request was rejected. Later, between 1509 and 1512 Leonardo was working on a much smaller equestrian statue for Marshal Trivulzio, governor of the victorious French troops. According to his sketches, perhaps Leonardo tried the same ideas in the plans of both statues. There is a small sculpture in the Hungarian Museum of Fine Arts Budapest, which perhaps Leonardo's study, made in his last years in the household of Francis I. Besides the sketches of Leonardo I used the photo documentation of this sculpture to create the key file for the Butterfly Effect. The figure of the rider was manufactured separately from the horse, thus to "sculpt" the figure of the horse without the riding figure was easy and - from my point of view - adequate.
To create a key file I needed a very simple 3D model containing 256 vertices. First I created a draft model according to the sketches by Leonardo and then wrote a program which continuously removed the less characteristic vertices from the object until it contained the right number of vertices. (At that time I had to write the program myself, today thanks to VRML and God there are many utilities available for this purpose.)
Visitors can find encoder/decoder and key-file creator programs in the download area. All the software are available both in source and executable format. There are two versions of the "Cryptogram-package": a command-line driven toolbox written in C, and a JAVA application with graphical user interface. The command line driven software can be found in executable format for some UNIX and Microsoft operating systems, the JAVA application is platform-independent. All the software is written by myself together with my friend and co-author Márton Fernezelyi.
The demonstration is based on a CGI-application which reads the text which has to be encrypted from a HTML FORM placed on the demo website, and encodes it into a VRML file using the key object I created after Leonardo's Cavallo. If the user types in a message and a title for it, then clicks to the "SEND" button, the CGI-application encodes the message into a VRML file, which can be explored using a VRML browser. The text can be decoded by touching(clicking) the object in the virtual reality: this way users can try the system without reading the descriptions.
The "public mailbox" is a directory on the server containing all the VRML-files created by users of the demo. Instead of a web-site, visitors of the mailbox will find a simple directory-listing, showing the VRML-files. By clicking on one, the sculpture can be explored in the virtual reality. Since all the Cryptograms in this directory are encoded using the Cavallo key object, the original messages can be decoded by touching (clicking) on the objects in the virtual reality. This is the most popular part of the Cryptogram-sites, some people regularly live messages to each other in form of coded Cryptograms.
The downloadable JAVA application is an easy to use encryption-software, much more popular than the command-line driven tools. The goal of using the JAVA language was the graphical interface, and of course that the application is platform independent.
JAVA is a programming language invented by Sun Microsystems. Originally the language intended to be a common language for all "intelligent electronic products": from microwawe owens to network computers. The language is similar to C++, easy to learn and very extensible, that's why it became popular so rapidly. The main advantage of the language that it can produce platform-independent code, which is a very important feature in the context of the Web, where a lot of people lots of kind of computers in the same network. The disadvantage of JAVA that the applications are relatively much slower than the ones compiled with traditional development tools, because JAVA applications are "half-interpreted" during their runtime in order to provide the independence of the various soft/hardware platforms.