GB2403633A - Data transfer wherein the data transmitted between clients is stored in volatile memory only at the clients - Google Patents

Data transfer wherein the data transmitted between clients is stored in volatile memory only at the clients Download PDF

Info

Publication number
GB2403633A
GB2403633A GB0315569A GB0315569A GB2403633A GB 2403633 A GB2403633 A GB 2403633A GB 0315569 A GB0315569 A GB 0315569A GB 0315569 A GB0315569 A GB 0315569A GB 2403633 A GB2403633 A GB 2403633A
Authority
GB
Grant status
Application
Patent type
Prior art keywords
data
computer
transfer
client
transferred
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
GB0315569A
Other versions
GB2403633B (en )
GB0315569D0 (en )
Inventor
Anthony George Farrell Roberts
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
* DATASMITH Ltd
DATASMITH Ltd
Original Assignee
Datasmith Ltd
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

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/606Protecting data by securing the transmission between two devices or processes
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2143Clearing memory, e.g. to prevent the data from being stolen

Abstract

A data transfer method and system are described. The system allows data to be transferred between users at client computers (2) in a confidential and unrecordable way. The data transferred is not held in any form of permanent storage at either client computer (2), rather it is stored in volatile memory for temporary display only.

Description

Improvements in and Relating to Data Transfer

Field of the Invention

The present invention relates to methods for data transfer, to data transfer systems, to server computers configured to operate in a data transfer system, to client computers configured to operate in a data transfer system, to computer programs comprising instructions arranged to carry out a method of data transfer, and to data carriers including a computer program comprising instructions arranged to carry out a method of data transfer.

Background to the Invention

In the field of networks and data transfer, a number of techniques can be used in an attempt to prevent data transmissions from being intercepted and the data contained in the transmission being made available to the public. One such technique is encryption, however, after encrypted data has been transferred across a network and converted to a readily understandable form for display and storage it becomes vulnerable to security breaches. For example, after data which has been encrypted for secure transmission has been decrypted the sender can not control the subsequent storage or use of the data. For example the data may be accidentally transferred over an insecure link or posted for downloading on a publicly available site. Furthermore, if the data is maintained in non volatile, persistent storage such as on a hard disk, the device on which the data is stored may be subjected to an attempt to gain unauthorized access, which if successful could lead to unauthorized reproduction and publication of the data.

It is an aim of preferred embodiments of the present invention to enable data to be transferred securely, and to reduce the likelihood of transferred data from being subsequently leaked. Further aims and advantages of the present invention will become apparent from the

description below.

Summary of the Invention

In a first aspect, the present invention provides a data transfer method, the method comprising the steps of (a) establishing a data transfer link between a first computer and a second computer; (b) inputting data at the first computer; and (c) transferring data input at the first computer to the second computer; wherein in steps (b) and (c) the input data is maintained at the first computer in volatile memory only.

Suitably, the data transfer method further comprises the step of (d) inputting data at the second computer; and (e) transferring data input at the second computer to the first computer. Suitably, in steps (d) and (e) the input! data is maintained at the second computer in volatile memory only.

Suitably, the data transferred in step (c) is maintained t at the second computer in volatile memory only. Suitably, the data transferred in step (e) is maintained at the first computer in volatile memory only. ; Suitably, the data transfer link established in step (a) comprises a direct link.

Suitably, the data transfer link established in step (a) I is provided over a network. Preferably, the data transfer link established in step (a) is provided over the internet.

Suitably, the step (a) is enabled by a server computer.

lo Suitably, the first and second computers comprise client computers.

Suitably, the data transferred comprises characters from the ASCII character set. Suitably, the data transferred in each transfer comprises between 1 and 80 characters.

Preferably, the data transferred in each transfer comprises between 1 and 40 characters. More preferably, the data transferred in each transfer comprises between 1 and 20 characters. Most preferably, the data transferred in each transfer comprises a single character.

Suitably, the data transfer is initiated by the input of data and does not require additional send information to be provided before the data is sent.

Suitably, the data input in step (b) is displayed at the first computer in a first array. Suitably, the data input in step (d) is displayed at the second computer in a first array.

Suitably, the data transmitted in step (c) is displayed at the second computer in a second array. Suitably, the data transmitted in step (e) is displayed at the first computer in a second array.

Suitably, the data displayed on the first and second computers is displayed in first-in first-out arrays.

Suitably, the data displayed in each array scrolls from a first end of the array to a second end of the array as data is added to the array. Suitably, the data displayed in each array scrolls from the right end of the array to lo the left end of the array as data is added to the array.

Suitably, the arrays provide space for displaying 60 to characters. Preferably, the arrays provide space for displaying 75 to 85 characters.

Suitably, the arrays each provide space for the same number of characters.

In a second aspect, the present invention provides a data transfer system comprising a server computer and first and second computers coupled to a network, the server being arranged to enable a data transfer link to be established between the first computer and the second computer over the network such that input data at the first computer is transferred to the second computer, and wherein the first computer is arranged such that the input data is maintained in volatile memory only.

Suitably, the server is arranged to enable a data transfer link to be established between the second computer and the first computer over the network such that input data at the second computer is transferred to the first computer.

Suitably, the second computer is arranged such that the input data is maintained in volatile memory only.

Suitably, data transferred from the first computer to the second computer is maintained at the second computer in volatile memory only. Suitably, data transferred from the second computer to the first computer is maintained at the first computer in volatile memory only.

Suitably, the data transfer link comprises a direct link.

Suitably, the data transfer link is provided over a network. Preferably, the data transfer link is provided over the internet.

Suitably, the first and second computers comprise client computers.

Suitably, the data transferred comprises characters from the ASCII character set. Suitably, the data transferred in each transfer comprises between 1 and 80 characters.

Preferably, the data transferred in each transfer comprises between 1 and 40 characters. More preferably, the data transferred in each transfer comprises between 1 and 20 characters. Most preferably, the data transferred in each transfer comprises a single character.

Suitably, the data transfer is initiated by the input of data and does not require additional send information to be provided before the data is sent.

Suitably, the data input at the first computer is displayed at the first computer in a first array.

Suitably, the data input at the second computer is displayed at the second computer in a first array.

Suitably, the data transmitted to the second computer is displayed at the second computer in a second array.

Suitably, the data transmitted to the first computer is displayed at the first computer in a second array.

Suitably, the data displayed on the first and second computers is displayed in first-in first-out arrays.

Suitably, the data displayed in the arrays scrolls from right to left as data is added to the arrays. Suitably, the arrays provide space for displaying 60 to 100 characters. Preferably, the arrays provide space for displaying 75 to 85 characters.

Suitably, the arrays each provide space for the same number of characters.

In a third aspect, the present invention provides a server computer configured to operate the data transfer method of the first aspect of the invention, or configured to operate in the data transfer system of the second aspect of the invention.

In a fourth aspect, the present invention provides a client configured to operate the data transfer method of the first aspect of the invention, or configured to operate in the data transfer system of the second aspect of the invention.

In a fifth aspect, the present invention provides a computer program comprising instructions arranged to carry out a method of data transfer according to the first aspect of the invention, In a sixth aspect, the present invention provides a data carrier including a computer program comprising instructions arranged to carry out the method of the first aspect of the invention.

For a better understanding of the invention, and to show how embodiments of the same may be carried into effect, reference will now be made, by way of example, to the lo accompanying diagrammatic drawings in which:

Brief Description of the Drawings

Figure 1 shows a block diagram illustrating a data transfer system according to a first embodiment of the present invention; Figure 2 shows first and second arrays suitable for displaying data transferred and received respectively; and Figures 3A and 3B show a flow chart illustrating steps in a method according to a second embodiment of the present invention.

Detailed Description of Preferred Embodiments

Figure 1 shows a block diagram illustrating a data transfer system 100 according to a first embodiment of the present invention. The data transfer system 100 of Figure 1 includes a server computer 1 and client computers 2A-2D coupled to one another over a public network 3 such as the interned. The client computers 2A-2D each comprise a processor 4, an output device in the form of a screen 5, and an input device in the form of a keyboard 6. The data transfer system 100 can be used on occasions when data is to be transferred between users at the client computers 2 in a confidential, unrecordable way. For example, the users at the client computers 2A and 2B may want to have a sensitive business discussion without leaving a trace of their interaction. Furthermore, for a business discussion or other transfer of confidential information the parties involved may want to communicate in a way that inhibits lo unauthorized reproduction and publication of the data transferred between them even after data has left the computer from which it originates and been transferred to the recipient.

As an illustration of the types of situation in which the data transfer system 100 may be of use, the operation of the data transfer system 100 will now be described in relation to the provision of on-line counselling services.

Such services should be conducted in confidence to enable a user to build up trust the counsellor and to prevent any abuse of the information provided to the counsellor by the user, and vice versa.

The server computer 1 operates in an administrative capacity, establishing connections between client computers 2. In this example the counsellor is located at client computer 2A, and the user receiving counselling is located at client computer 2B. The client computer 2A has a fixed Internet Protocol (IP) address that is known to the server computer 1.

When the counsellor is ready to offer his/her services, they contact the server computer 1 to inform it of this fact. Thereafter, the server computer 1 can receive and act on requests for access to a counsellor from a user located at a client computer, e.g. client computer 2B.

In response to a request for access to a counsellor from a user located at the client computer 2B the server computer 1 delivers a program to the client computer 2B.

The program delivered contains instructions that allow the client computer to communicate directly with the known IP address of the counsellor's computer 2A. This program can be delivered in a number of ways, typically within a web page using a browser based processing engine such as Java or flash. The program delivered may also contain a token unique to the conversation to be established, however if security is more relaxed for the transfer of particular data then the token can be omitted, or a default token used.

When run on the client computer 2B, the program delivered by the server 1 to the client computer 2B establishes a connection over the network 3 directly to the IP address of the counsellor's computer 2A and passes the token to the counsellor's computer 2A. For additional security the token can be encrypted before transmission.

Once the connection between the client computer 2B and the counsellor's computer 2A has been established and the token passed from the client computer 2B to the counsellor's computer 2A, data input to the client computer 2B can only be received under the control of the program, and is transferred directly to the IP address of the counsellor's computer with the token provided by the server 1. Typically this data comprises a single byte of information corresponding to a singe character entered on the keyboard of the client computer 2B. The token can be encrypted before transmission, as can the data to be transferred.

In addition to being transferred to the counsellor's computer 2A, the data from the client computer 2B is displayed in an array on the screen of the client computer as will be described in more detail below with reference to Figure 2. The data transferred is not held in any form of permanent storage at the client computer 2B, rather it is stored temporarily in volatile memory while displayed I in the array on screen, and can not be otherwise cached, saved or copied. Unlike persistent storage such as magnetic or optical disks, the volatile memory does not persist once the computer has been switched off. The data I is stored temporarily for display only, and cannot be addressed by users of the data transfer system.

In normal usage the data persists on screen for only a minute or less.

On receipt of the transmitted data the counsellor's computer 2A validates the token received with the data against that received when the conversation was initiated, and displays the data in an on screen array which duplicates that which is presented on the screen of the client computer 2B.

The data transfer system is arranged to accept input and transfer characters from the ASCII character set, and once the programs for controlling the system are running any characters from this set input are received and transmitted according as described. If desired, non ASCII character encoding schemes could be used. Character sets for cursive scripts can also be used, and in this instance each character of data transmitted may comprise more than one byte, and may signify a word rather than a letter.

Under control of the program the data transfer is initiated by the input of data and does not require additional send information to be provided before the data lo is sent, i.e. any characters input when the program is running will be automatically transferred without the user actively having to take further action such as to press the return key. This means that any typographical errors or other errors in communication are transmitted in the form they are input, so that errors are shared just as in face to face conversation.

The reverse link between the computer 2A of the counsellor and the client computer 2B can mirror the forward link described above to provide a twoway link.

When running the program provided by the server computer 1 the computers 2A and 2B both feature two arrays on screen.

The first array displays the data entered for transmission by the local user, and the second array displays the data transferred from a remote user. Referring now to Figure 2 there is shown a first array 21 suitable for displaying data 23 entered for transmission by a local user, and a second array 22 suitable for displaying data transferred from a remote user 24. Data is added to the first and second arrays 21,22 as it is entered, and appears typically one character at a time from the right hand end of the array. As data is entered by either the local or remote user it displayed in arrays at both the computers 2A, 2B. For ease of use, the first and second arrays 21,22 displayed may be synchronized so that data input by e.g. the counsellor at the computer 2A appears in the first array 21 on the screen of the computer 2A; appears in the second array 22 on the screen of the computer 2B; and causes a spacing character to be added to the right hand end of the second array 22 on the screen of the computer 2A and to the right hand end of the first array 21 on the lo computer 2B. Similarly, data input at the computer 2B is displayed on the local first array 21 and the remote second array 22, and spacing characters are added to the local second array 22 and the remote first array 21. The spacing characters may be blank spaces.

When both users are typing simultaneously, the spacing characters need not be added to the arrays respective arrays, rather the data can be added to the arrays simultaneously. In this situation characters appear in parallel steams.

When the oldest data in an array reaches the left hand end of the array it is no longer displayed, and is lost. In this way the arrays act as first-in first-out buffers.

For languages that are read right to left, the end of the arrays at which characters appear and direction of character scrolling can be reversed. Similarly, for languages that are read top to bottom or bottom to top a substantially vertical arrangement of arrays can be used, with characters scrolling up or down as appropriate.

The length of the arrays 21,22 can be varied to suit the user's requirements, with a long array able to include more data than a short array. For British English the data array can conveniently comprise approximately eighty characters in length, which roughly equates to the duration of normal short term memory in face to face conversation.

In some instances, the length of the arrays 21,22 can be different, e.g. to allow a full record of the outgoing data to be viewed by a local user.

As an alternative to the substantially symmetrical data transfer system described above, the system can be modified to accommodate low connection speeds at which there is insufficient time for a transfer to be completed before the next data input. Typically, data input can occur at more than one character per second. For example, in the on-line counselling system example above, the client computer 2B may be connected to the network 3 via a modem, or other relatively slow connection. In this instance the data to be transferred from the counsellor's computer 2A is stored in a small buffer within the volatile memory of the computer 2A.

Periodically, the computer 2B requests the contents of the buffer, which are then transmitted and the buffer cleared.

The read request may require validation of the token before the request can be serviced. If this is the case the token is transferred along with the read request.

Typically, the read request is transmitted several times a second, with the buffer content added to the second array at the client computer 2B when the data is received.

Similarly, if the connection of the counsellor's computer 2A to the network 3 is slow, the buffering technique described can be used for the incoming data.

In the case of character by character transmission, or buffered transmission the information which passes over the network 3 comprises packets including: suitable internet headers; the character or group of characters being transferred; and optionally the token for the session as established by the server. The packets may be formatted according to any suitable protocol, e.g. XML, and can be encrypted for additional security.

Although the data transfer system has been described in connection with an on-line counselling setting, it can be used advantageously for business discussions or other interactions in which confidentiality is important.

Furthermore, the system can readily be extended to accommodate three or more parties wishing to transfer data as described, with each subsequent participant joining the earlier parties and data transfer taking place between the computers 2 of each of the parties. In this situation for ease of administration one computer, e.g. the counsellor's computer in the example application can take the lead and control the session. The client computers can only take part in a session administered by the counsellor computer that has been allocated to them by the server.

When any party wishes to end their participation in a data transfer session they can close the web browser in which the program is running. To accommodate temporary or accidental communication losses the communication can be restarted if the window is re-opened within a short period of time. The length of this period can be specified in information provided by the server when enabling the conversation.

Suitably, the operator of the server 1 is provided with a number of administrative and other controls to facilitate the running of the data transfer system 100. For example, the server 1 can organise booking of data transfer sessions between particular clients, and payment for access to the data transfer system if desired. In situations where users of the client computers 2 active in the data transfer system are to be charged for access to the system, the identification of the users and/or client computers 2 can take place at the point when the server 1 delivers the program to a client 2. The server 1 can further impose time restrictions on a data transfer session.

Other data types may be transferred along with text, for example single or bidirectional video, voice over IP or telephone, or mouse whiteboard or sandtray functionality.

Figure 3 shows a detailed flow diagram illustrating example steps carried out in a method for transferring data in an on line counselling system as described above.

Column 300 represents the actions carried out at the client computer 2B, column 320 represents the actions carried out at the server computer 1, column 340 represents the actions carried out at the counsellor's computer 2A and columns 360 and 380 represent data transfers taking place over the network 3.

Before commencement of the on line counselling session a number of preparatory actions take place. In step 301 a client requests a counselling session, and this request is transferred as an anonymous http transfer at step 361. On receiving this request the server reviews counsellor availability at step 321 and assigns a date and time for the counselling session at step 322. The proposed date and time is transmitted to the client at step 362 to be accepted or rejected at step 302. If accepted the client produces identification verification at step 303 which is transmitted to the server in step 363. Once the identification verification is received, the server books the session at step 323.

Before the appointed time of a pre-booked session, the counsellor initiates the session at step 341 and transmits identification verification to the server at step 381.

The server then logs the counsellor in at step 327, and initiates the counsellor program at step 324. The counsellor program is transmitted to the counsellor at step 382 and run by the counsellor at step 342.

At the appointed time the client logs on at step 304 and sends identification verification to the server at step 364. The server checks that the client has a session due at step 325. If the client has a session due the server initiates the client program at step 326 and transmits it to the client at step 365. The client runs the client program at step 305. The client and counsellor programs can be delivered within a web page to a browser, window capable of receiving and executing programs.

The client program attempts to connect to the counsellor at step 306, and transmits a request directly to the counsellor at step 370. The counsellor receives this request and validates the client identity at step 343.

This validation can be by means of a token, as discussed above.

At step 307 the client program creates a buffer in the volatile memory of the client computer to allow data to be received both locally and from the counsellor. Similarly, at step 345 the counsellor program creates a buffer in the volatile memory of the counsellor computer to allow data to be received both locally and from the client. The counsellor program can at this point advise the client that there are other clients involved in the data transfer, allowing the clients to create additional buffers for the other clients.

Steps 346, 371 and 308 correspond to the optional initiation, transmission and reception of voice, image or other data streams from the counsellor to the client.

Similarly, steps 309, 372 and 347 correspond to the optional initiation, transmission and reception of voice, image or other data streams from the client to the counsellor, as described above.

At steps 310 and 348, the client and counsellor respectively input data by typing.

The client initiates a synchronization function at step 311 before transfer of the input data, the data being transferred from the client to the counsellor at step 373.

At step the counsellor verifies the client data, and steps 312 and 350 the client and counsellor displays are updated by modifying the arrays presented at the screens of their i respective computers.

Following the update of the displays, synchronization is checked at steps 313 and 351, and a request is made at step 374 by the client for an update of the data in the counsellor's buffer. The counsellor's buffer is encrypted at step 352, and the data is transferred at step 375.

Once received at the client, the data from the counsellor is decrypted and the client buffer updated at step 314.

The steps following 310 and 348 are repeated until the end of the session. The end of the session can take place a predetermined time after the start of the session by controls built into the counsellor and/or the client program. Alternatively, if either the counsellor or the client wish to terminate the session they can close the browser window in which the data transfer program is running.

Thus a data transfer system and method have been described that offer an alternative approach to secure data transfer. Also described are the server and client computers for use in the system, and a program comprising instructions arranged to carry out the data transfer method as described above is also envisaged. Such a program can conveniently be provided on a data carrier.

The term data carrier includes magnetic and optical disk, tapes, solid state memory devices and also transient electrical or other carrier signals.

The data transfer system and method enables data to be transferred directly between client computers without being stored on intermediate servers. Furthermore, once the program for carrying out the method is launched the received and transmitted data are only held in volatile storage, and are held in such a way as to prevent the easy movement of the data to non-volatile storage. This has the advantage that data transferred can not be easily reproduced and subsequently distributed.

Attention is directed to all papers and documents which are filed concurrently with or previous to this specification in connection with this application and which are open to public inspection with this specification, and the contents of all such papers and documents are incorporated herein by reference.

All of the features disclosed in this specification (including any accompanying claims, abstract and drawings), and/or all of the steps of any method or process so disclosed, may be combined in any combination, except combinations where at least some of such features and/or steps are mutually exclusive.

Each feature disclosed in this specification (including any accompanying claims, abstract and drawings) may be replaced by alternative features serving the same, equivalent or similar purpose, unless expressly stated otherwise. Thus, unless expressly stated otherwise, each feature disclosedis one example only of a generic series of equivalent or similar features.

The invention is not restricted to the details of the foregoing embodiment(s). The invention extends to any novel one, or any novel combination, of the features

disclosed in this specification (including any

accompanying claims, abstract and drawings), or to any novel one, or any novel combination, of the steps of any method or process so disclosed.

Claims (57)

1. A data transfer method, the method comprising the steps of (a) establishing a data transfer link between a first computer and a second computer; (b) inputting data at the first computer; and (c) transferring data input at the first computer to the second computer; wherein in steps (b) and (c) the input data is maintained at the first computer in volatile memory only.
2. The data transfer method of claim 1, further comprising the steps of (d) inputting data at the second computer; and (e) transferring data input at the second computer to the first computer.
3. The data transfer method of claim 2, wherein in steps (d) and (e) the input data is maintained at the second computer in volatile memory only.
4. The data transfer method of claim 2 or 3 the data transferred in step (e) is maintained at the first computer in volatile memory only.
5. The data transfer method of any one of claims 1 to 4, wherein the data transferred in step (c) is maintained at the second computer in volatile memory only.
6. The data transfer method of any one of claims 1 to 5, wherein the data transfer link established in step (a) comprises a direct link.
7. The data transfer method of any one of claims 1 to 6, wherein the data transfer link established in step (a) is provided over a network.
8. The data transfer method of claim 7, wherein the data transfer link established in step (a) is provided over the internet.
9. The data transfer method of any one of claims 1 to 8, lo wherein the step (a) is enabled by a server computer.
10. The data transfer method of any one of claims 1 to 9, wherein the first and second computers comprise client computers.
11. The data transfer method of any one of claims 1 to 10, wherein the data transferred comprises characters from the ASCII character set.
12. The data transfer method of claim 11, wherein the data transferred in each transfer comprises between 1 and 80 characters.
13. The data transfer method of claim 12, wherein the data transferred in each transfer comprises between 1 and 40 characters.
14. The data transfer method of claim 13, wherein the data transferred in each transfer comprises between 1 and 20 characters.
15. The data transfer method of claim 14, wherein the data transferred in each transfer comprises a single character.
16. The data transfer method of any one of claims 1 to 15, wherein the data transfer is initiated by the input of data and does not require additional send information to be provided before the data is sent.
17. The data transfer method of any one of claims 1 to 16, wherein the data input in step (b) is displayed at the first computer in a first array.
18. The data transfer method of any preceding claim as dependent on claim 2, wherein the data transferred in step (e) is displayed at the first computer in a second array
19. The data transfer method of any preceding claim, wherein the data transferred in step (c) is displayed at the second computer in a second array.
20. The data transfer method of any preceding claim as dependent on claim 2, wherein the data input in step (d) I is displayed at the second computer in a first array.
21. The data transfer method of claim 17 or 18, wherein the data displayed on the first computer is displayed in first-in first-out arrays.
22. The data transfer method of claim 19 or 20, wherein the data displayed on the second computer is displayed in first-in first-out arrays.
23. The data transfer method of claim 21 or 22, wherein the data displayed in each array scrolls from a first end of the array to a second end of the array as data is added to the array. 3
24. The data transfer method of claim 23, wherein the data displayed in each array scrolls from the right end of the array to the left end of the array as data is added to the array.
25. The data transfer method of any one of claims 17 to lo 24, wherein the arrays provide space for displaying 60 to characters.
26. The data transfer method of claim 25, wherein the arrays provide space for displaying 75 to 85 characters. 15]
27. The data transfer method of any one of claims 17 to 26, wherein the arrays each provide space for the same number of characters.
28. A data transfer system comprising a server computer and first and second computers coupled to a network, the server being arranged to enable a data transfer link to be established between the first computer and the second computer over the network such that input data at the first computer is transferred to the second computer, and wherein the first computer is arranged such that the input data is maintained in volatile memory only.
29. The data transfer system of claim 28, wherein the server is arranged to enable a data transfer link to be established between the second computer and the first computer over the network such that input data at the second computer is transferred to the first computer.
30. The data transfer system of claim 29, wherein the second computer is arranged such that the input data is 3 maintained in volatile memory only.
31. The data transfer system of claims 29 or 30, wherein data transferred from the second computer to the first computer is maintained at the first computer in volatile memory only.
32. The data transfer system of any one of claims 28 to 31, wherein data transferred from the first computer to ' the second computer is maintained at the second computer - in volatile memory only. '
33. The data transfer system of any one of claims 28 to] 32, wherein the data transfer link comprises a direct link.
34. The data transfer system of any one of claims 28 to 33, wherein the data transfer link is provided over a network.
35. The data transfer system of any one of claims 28 to 34, wherein the data transfer link is provided over the interned.
36. The data transfer system of any one of claims 28 to 35, wherein the first and second computers comprise client computers.
37. The data transfer system of any one of claims 28 to 36, wherein the data transferred comprises characters from the ASCII character set.
38. The data transfer system of any one of claims 28 to 2 37, wherein the data transferred in each transfer comprises between 1 and 80 characters.
39. The data transfer system of claim 38, wherein the data transferred in each transfer comprises between 1 and 40 characters.
40. The data transfer system of claim 39, wherein the data transferred in each transfer comprises between 1 and 20 characters.
41. The data transfer system of claim 40, wherein the data transferred in each transfer comprises a single character.
42. The data transfer system of any one of claims 28 to 41, wherein the data transfer is initiated by the input of data and does not require additional send information to be provided before the data is sent.
43. The data transfer system of any one of claims 28 to 42, wherein the data input at the first computer is displayed at the first computer in a first array.
44. The data transfer system of any one of claims 30 to 43 as dependent on claim 29, wherein the data transferred to the first computer is displayed at the first computer in a second array.
45. The data transfer system of any one of claims 28 to 44, wherein the data transferred to the second computer is displayed at the second computer in a second array.
46. The data transfer system of any one of claims 28 to 45 as dependent on claim 29, wherein the data input at the second computer is displayed at the second computer in a first array.
47. The data transfer system of claim 43 or 44, wherein the data displayed on the first computer is displayed in first-in first-out arrays.
48. The data transfer system of claim 45 or 46, wherein the data displayed on the second computer is displayed in first-in first-out arrays.
49. The data transfer system of claim 47 or 48, wherein the data displayed in the arrays scrolls from right to left as data is added to the arrays.
50. The data transfer system of any one of claims 43 to 49, wherein the arrays provide space for displaying 60 to characters.
51. The data transfer system of claim 50, wherein the arrays provide space for displaying 75 to 85 characters.
52. The data transfer system of any one of claims 43 to 51, wherein the arrays each provide space for the same number of characters.
53. A server computer configured to operate the data transfer method of any one of claims 1 to 27, or configured to operate in the data transfer system of any one of claims 28 to 52.
54. A client configured to operate the data transfer method of any one of claims 1 to 27, or configured to operate in the data transfer system of any one of claims 28 to 52.
55. A computer program comprising instructions arranged to carry out the method of data transfer of any one of claims 1 to 27.
56. A data carrier including a computer program comprising instructions arranged to carry out the method of data transfer of any one of claims 1 to 27.
57. A data transfer method, a data transfer system, a server computer, a client, a computer program or a data carrier, each of which substantially as herein described.
GB0315569A 2003-07-03 2003-07-03 Improvements in and relating to data transfer Expired - Fee Related GB2403633B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
GB0315569A GB2403633B (en) 2003-07-03 2003-07-03 Improvements in and relating to data transfer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB0315569A GB2403633B (en) 2003-07-03 2003-07-03 Improvements in and relating to data transfer

Publications (3)

Publication Number Publication Date
GB0315569D0 GB0315569D0 (en) 2003-08-13
GB2403633A true true GB2403633A (en) 2005-01-05
GB2403633B GB2403633B (en) 2006-01-04

Family

ID=27741506

Family Applications (1)

Application Number Title Priority Date Filing Date
GB0315569A Expired - Fee Related GB2403633B (en) 2003-07-03 2003-07-03 Improvements in and relating to data transfer

Country Status (1)

Country Link
GB (1) GB2403633B (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2378800A1 (en) * 2008-12-23 2011-10-19 Tiburcio Fernando Troyano Secure communication system
US9188971B2 (en) * 2005-03-30 2015-11-17 Omron Corporation Programmable terminal system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6026502A (en) * 1997-01-27 2000-02-15 Wakayama; Hironori Method and mechanism for preventing from invading of computer virus and/or hacker
WO2004062215A2 (en) * 2002-12-16 2004-07-22 Gemini Mobile Technologies, Inc. Stateless message routing

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6026502A (en) * 1997-01-27 2000-02-15 Wakayama; Hironori Method and mechanism for preventing from invading of computer virus and/or hacker
WO2004062215A2 (en) * 2002-12-16 2004-07-22 Gemini Mobile Technologies, Inc. Stateless message routing

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9188971B2 (en) * 2005-03-30 2015-11-17 Omron Corporation Programmable terminal system
EP2378800A1 (en) * 2008-12-23 2011-10-19 Tiburcio Fernando Troyano Secure communication system

Also Published As

Publication number Publication date Type
GB2403633B (en) 2006-01-04 grant
GB0315569D0 (en) 2003-08-13 grant

Similar Documents

Publication Publication Date Title
US6230205B1 (en) Method and apparatus for managing delivery of multimedia content in a communications system
US6904521B1 (en) Non-repudiation of e-mail messages
US6732269B1 (en) Methods, systems and computer program products for enhanced security identity utilizing an SSL proxy
US7165175B1 (en) Apparatus, system and method for selectively encrypting different portions of data sent over a network
US6615349B1 (en) System and method for manipulating a computer file and/or program
US6993596B2 (en) System and method for user enrollment in an e-community
US6128645A (en) Hyper and client domain servers
US5884035A (en) Dynamic distributed group registry apparatus and method for collaboration and selective sharing of information
US6851053B1 (en) Multiparty conference authentication
US5867665A (en) Domain communications server
US20100088364A1 (en) Social networking architecture in which profile data hosting is provided by the profile owner
US20010027474A1 (en) Method for clientless real time messaging between internet users, receipt of pushed content and transacting of secure e-commerce on the same web page
US6850985B1 (en) Security and support for flexible conferencing topologies spanning proxies, firewalls and gateways
US7490169B1 (en) Providing a presentation on a network having a plurality of synchronized media types
US20020071540A1 (en) Application service provider configuration and method for a conferencing environment
US7412533B1 (en) Providing a presentation on a network having a plurality of synchronized media types
US20080034409A1 (en) System and Method for Distributing Information in a Network Environment
US6836795B2 (en) Mapping connections and protocol-specific resource identifiers
US7143177B1 (en) Providing a presentation on a network having a plurality of synchronized media types
US20070283167A1 (en) Secure streaming container
US7068680B1 (en) Communication service architectures for netcentric computing systems
US6990578B1 (en) Method and apparatus for encrypting electronic messages composed using abbreviated address books
US6151675A (en) Method and apparatus for effecting secure document format conversion
US7757074B2 (en) System and method for establishing a virtual private network
US20110023096A1 (en) Token-based control of permitted sub-sessions for online collaborative computing sessions

Legal Events

Date Code Title Description
PCNP Patent ceased through non-payment of renewal fee

Effective date: 20110703