WO2007136489A2 - Protocol conversion in a network firewall - Google Patents

Protocol conversion in a network firewall Download PDF

Info

Publication number
WO2007136489A2
WO2007136489A2 PCT/US2007/009668 US2007009668W WO2007136489A2 WO 2007136489 A2 WO2007136489 A2 WO 2007136489A2 US 2007009668 W US2007009668 W US 2007009668W WO 2007136489 A2 WO2007136489 A2 WO 2007136489A2
Authority
WO
WIPO (PCT)
Prior art keywords
data
application
format
protocol standard
compatible
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.)
Ceased
Application number
PCT/US2007/009668
Other languages
French (fr)
Other versions
WO2007136489A3 (en
Inventor
Richard M. Balza
Kevin Y. Ung
Steven L. Arnold
Thomas E. Donofrio
Michael J. Murphy
Brett Hartman
Samuel C. Kwok
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.)
Boeing Co
Original Assignee
Boeing Co
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
Application filed by Boeing Co filed Critical Boeing Co
Publication of WO2007136489A2 publication Critical patent/WO2007136489A2/en
Publication of WO2007136489A3 publication Critical patent/WO2007136489A3/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00—Network architectures or network communication protocols for network security
    • H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/105—Multiple levels of security

Definitions

  • One such technological approach is to provide and manage protected enclaves (or security enclaves).
  • a community-of- interest is established in which users having a need-to-know run applications within a network that is protected by predetermined security measures.
  • the users may be co-located but need not be co-located.
  • the applications may include, without limitation, electronic mail (Email), instant messaging (IM), file transfer, and the like.
  • the security measures may be directed to protect content that includes national security information (such as confidential, secret, top secret, and the like); financial information; business information; personal information; and the like.
  • a secure network server acts as a gateway to route and filter data exchanged between the protected enclave and the outside world, or between a first protected enclave operating at a first security level and a second protected enclave operating at a second security level that is different (either higher or lower) than the first security level.
  • the guard server may filter sensitive information from the data originated by an application in the protected enclave.
  • the guard server in order for the guard server to filter the data, the guard server must understand how to parse the data. Therefore, both the guard server and the application must be cognizant of format of the data originated by the application.
  • the guard server can filter the data and pass on the data, if appropriate.
  • a file transfer application in a protected enclave may transfer files using an FTP protocol in its application layer.
  • the guard server application may also include the FTP protocol in its application layer.
  • the guard server understands how to parse the data mat the application wants to send out of the protected enclave. Therefore, the guard server filters the information and can route the data accordingly.
  • the guard server will send the data to a suitable "data dump" and may generate an event for a security event log.
  • an application in a protected enclave may send a web page using an HTTP protocol in its application layer.
  • the guard server application may not include the HTTP protocol in its application layer.
  • the guard server does not understand how to parse the data that the application wants to send out of the protected enclave. Therefore, the guard server cannot filter the information and cannot route the data accordingly. Instead, the guard server will send the data to a suitable "data dump" and may generate an event for a security event log.
  • the filtering described above is performed by the guard server.
  • the guard server In order for the guard server to recognize a data format that was previously unrecognizable, the guard server would have to be reprogrammed to recognize the desired data format. Alternately, all of the machines running applications in the protected application would have to be reprogrammed to recognize all data formats that are recognized by the guard server. Either approach is extremely time-and-labor intensive and, therefore, is cost prohibitive.
  • guard servers As a result, the design of currently known guard servers is tightly coupled to the applications executed in the protected enclaves. This tight coupling can reduce flexibility of design of the guard server and of the applications; can reduce re-use of software; can increase "lock-in” and dependence on certain vendors; and can increase integration cost.
  • a guard server it would be desirable for a guard server to be able to recognize data formats of applications executed in the protected enclaves without reprogramming the guard server to recognize a previously unrecognizable data format and without reprogramming all machines running applications in a protected enclave to recognize all data formats that are recognized by the guard server.
  • Exemplary embodiments provide computer executable methods, computer program products, and systems for exchanging data.
  • data is received on behalf of a first application using a first protocol standard.
  • the data has a format compatible with the first protocol standard.
  • a determination is made whether the format of the data is compatible with a second protocol standard.
  • the format of the data is automatically transformed to a format that is compatible with the second protocol standard.
  • the data is transmitted to a second application service using the second protocol standard.
  • the data may be received from the second application using the second protocol standard.
  • the data has a format compatible with the second protocol standard.
  • a determination is made whether the format of the data is compatible with a third protocol standard.
  • the format of the data is automatically transformed to a format that is compatible with the third protocol standard.
  • the data is transmitted on behalf of a third application using the third protocol standard.
  • the first application may be provided within a first protected enclave
  • the second application may include a security gateway service
  • the third application may provided within a second protected enclave.
  • the first protocol standard may define a first security level and the : t thhiirrdd n prroottooccooll s sttaannddaarrdd m maavy d deeffiinnee a a s seeccoonndd s seeccuurriittvy l leevveell..
  • FIGURE 1 is a flow chart of an exemplary method of exchanging data
  • FIGURE 2 is a software block diagram of exemplary software processing blocks that implement the method of FIGURE 1 ;
  • FIGURE 3 is a software block diagram showing non-limiting details of the processing blocks of FIGURE 2.
  • FIGURE 3 is a block diagram of an exemplary host environment that implements the method of FIGURE 1.
  • a block 14 data is received on behalf of a first application in a first protected enclave using a first protocol standard.
  • the data has a format compatible with the first protocol standard, and the first protocol standard may define a first security level.
  • a determination is made whether the format of the data is compatible with a second protocol standard.
  • the format of the data is automatically transformed to a format that is compatible with the second protocol standard.
  • the data is transmitted to a second application service, such as a security gateway service, using the second protocol standard.
  • the data may be received from the second application in a second protected enclave using the second protocol standard.
  • the data has a format compatible with the second protocol standard.
  • a determination is made whether the format of the data is compatible with a third protocol standard.
  • the third protocol standard may define a second security level.
  • the format of the data is automatically transformed to a format that is compatible with the third protocol standard.
  • the data is transmitted on behalf of a third application using the third protocol standard. Details of exemplary embodiments will now be set forth below. Exemplary Method
  • an exemplary method 10 starts at a block 12. At the block
  • the protected enclave is a community-of-interest in which users having a need-to-know run applications within a network that is protected by predetermined security measures.
  • the users may be co-located but need not be co-located.
  • the applications may include, without limitation, electronic mail (Email), instant messaging (IM), File transfer, and the like.
  • the information exchanged within the protected enclave may include without limitation national security information, business information, financial information, personal information, health care information, and the like.
  • the data received on behalf of the application at the block 16 has a format compatible with the first protocol standard.
  • the data can be transferred in one of two modes: ASCII mode; and binary mode.
  • ASCII mode individual letters, numbers, and characters are transferred using their ASCII character codes.
  • the data is saved in a text file in an appropriate format.
  • Li binary mode the data is sent bit for bit.
  • die data is stored by die receiving machine in its own format.
  • the protocol standard sometimes referred to as a protocol stack, defines the data format and is die set of protocols for layers of interconnection, such as those set forth in die Open Systems Interconnection (OSI) model.
  • die term protocol standard refers to the protocols implemented in software in the layers including and above the transport layer — that is, the transport layer and the application layer. While a protocol stack may also be considered to include the session layer and the presentation layer, in practice die transport layer, die session layer, the presentation layer and the application layer typically are combined into die transport layer and the application layer.
  • the term protocol standard refers to die transport layer and the application layer as used in practice — that is, that combines die transport layer, the session layer, the presentation layer and the application layer. By way of further explanation, such usage also means tiiat the term protocol standard does not refer to the physical layer, the data link layer, or the network layer (or the layer sometimes referred to as "layer 2.5").
  • die protocol standards are set forth in Table 1 for exemplary applications on behalf of which data can be received (or transmitted, such as at die block 28). TABLE l
  • the first protocol standard may define a first security level.
  • the transport and application layers may support encryption of the data.
  • security labeling may be put in messages at the application layer.
  • the second protocol standard is a protocol stack for a second application.
  • the second application is a guard service, such as that for a secure network server between a protected enclave and the outside world or between two protected enclaves.
  • An exemplary protocol standard for a guard service generally includes TCP for use at the transport layer. Also, some guard protocol standards may require security labeling at the application layer and/or the transport layer.
  • the determination of compatibility at the decision block 16 may be made by determining whether the first application is a type of application that uses a data format that is predetermined to be expected by the guard service.
  • a transformation routine may be selected from a library of transformation routines and performed as desired for a particular application.
  • the library of transformation routines may include a generic transformation function, such as an XSLT transformation engine or the like.
  • the library of transformation routines may also include routines that have been customized for desired applications.
  • the first application in the protected enclave may be a web browser that is sending a web page.
  • the protocol standard for the web page uses TCP at the transport layer and HTTP at the application layer.
  • the data is transferred in ASCII mode.
  • the second application is a guard service that can filter messages (because its application layer uses an SMTP protocol). But, in this scenario, the guard service does not include an HTTP protocol in its application layer.
  • the guard service of the second application can understand how to parse information in an Email message but cannot understand how to parse information in a web page.
  • the data format of the web page (in which the application layer uses an HTTP protocol) is transformed to a known format and known protocol that is compatible with the guard service's protocol standard (in which the application layer uses an SMTP protocol).
  • a determination may be made at the block 16 that an application layer protocol is intermixed with the data received on behalf of the application. In such a case, at the block 18 the intermixed application layer protocol is automatically removed from the data.
  • a determination may be made whether information content of the data is appropriate for sharing outside the protected enclave.
  • the filtering and determination may be effected by keyword matching and comparison against predetermined keywords, or by other text classification or data mining routines, if desired.
  • filtering of the data is possible because either the format of the data received on behalf of the application at the block 14 is compatible with the second protocol standard or was transformed at the block 18 to a known format and known protocol that is compatible with the second protocol standard.
  • the data that was received on behalf of the application at the block 14 advantageously is now compatible with the second protocol standard.
  • this compatibility represents an advantage over currently known guard services that cannot understand how to parse the data and instead send the data to a suitable "data dump" and merely generate an event for an event log.
  • content When content is determined to be inappropriate, an event is generated and sent to an audit log 22 for later analysis, as desired.
  • content may be determined to be inappropriate when the data contains text that includes predetermined content that is not cleared for access outside the protected enclave.
  • the data is shared outside the protected enclave.
  • determination is made whether the format of the data is compatible with a third protocol standard.
  • the third protocol standard is a protocol stack for a third application. Details of the protocol standard and data format for the third application are the same as those for the first application discussed above and, as a result, need not be repeated.
  • the third application in the second protected enclave may be, but need not be, the same application as the first application in the first protected enclave. Alternately, the third application in the second protected enclave may be a different application from the first application in the first protected enclave.
  • the determination at the block 24 suitably is made in the same manner as the determination at the block 16.
  • a block 26 the format of the data is automatically transformed to a format that is compatible with the third protocol standard.
  • the transformation at the block 26 suitably is made in the same manner as the transformation at the block 18.
  • a block 28 After the format of the data has been transformed at the block 26 or, alternately, when the format of the data is compatible with the third protocol standard, at a block 28 the data is transmitted on behalf of the third application.
  • the method 10 ends at a block 30.
  • exemplary software implements processes of the method 10 (FIGURE 1).
  • the exemplary software enables data format to be transformed as desired without a need to reprogram the guard server to recognize a previously unrecognizable data format or to reprogram all machines running applications in a protected enclave to recognize all data formats that are recognized by the guard server.
  • the exemplary software implementation will be discussed in the same order as the discussion of the method 10 (FIGURE 1).
  • Data from an application 40 in a protected enclave 42 is received from a server 44 on behalf of the application 40 by an application proxy 46.
  • the application proxy 46 enables communication with the application 40 using the particular protocol standard of the application
  • a transformation analyzer 48 analyzes the data received by the application proxy 46 on behalf of the application 40 and makes a determination whether the format of the data is compatible with a protocol standard for a guard service SO.
  • logic is provided by an operator. The logic decides which particular application data is to be transformed. For example, the logic may identify the type of the application 40. The logic may also identify the type of data that came from the application 40. Given by way of non-limiting example, the type of data may be identified as binary data or ASCII data, such as without limitation HTML or XML.
  • the transformation analyzer 48 may compare the type of the application 40 against a list of predetermined application types that send data to the guard service that the guard service SO is expecting.
  • the transformation analyzer 48 may also compare the type of the data that came from the application 40 against a list of predetermined data types that the guard service 50 is expecting.
  • the guard service 50 may be expecting ASCII SMTP data from an Email application.
  • a list of predetermined applications includes Email applications but not web browsers
  • a list of predetermined data types includes ASCII SMTP data but not ASCII HTML data.
  • the application 40 may be a web browser that sends ASCII HTML data.
  • the transformation analyzer 48 identifies the application 40 as a web browser and may identify the data type as ASCII HTML.
  • the transformation analyzer compares the identified web browser application and/or the identified ASCII HTML data against the predetermined list that does not include web browsers or ASCII HTML data. The transformation analyzer thereby determines that, in this non-limiting example, the data is not compatible with the guard service SO and is to be transformed.
  • the analysis performed by the transformation analyzer 48 implements the process of the decision block 16 (FIGURE 1).
  • a transformation service 52 When the format of the data received by the application proxy 46 on behalf of the application 42 is not compatible with the protocol standard of the guard service 50, a transformation service 52 automatically transforms the format of the data to a format that is compatible with the protocol standard of the guard service 50.
  • the transformation performed by the transformation service 50 implements the process of the block 18 (FIGURE 1).
  • the transformation service 52 may be implemented as an XSLT transformation engine or the like.
  • a guard proxy 54 After the format of the data has been transformed by the transformation service 52 or, alternately, when the format of the data received on behalf of the application 40 by the application proxy 46 is compatible with the protocol standard of the guard service 50, a guard proxy 54 enables communication with the guard service 50 using the protocol standard of the guard service 50 (such as by using TCP at the transport layer).
  • the application proxy 46, the transformation analyzer 48, the transformation engine 52, and the guard proxy 54 may be provided as a software suite 56.
  • the software suite 56 resides in the protected enclave 42 - but not in a guard server (not shown) that provides the guard service.
  • Providing the software suite 56 outside the guard server advantageously enables data format to be transformed as desired without a need to reprogram the guard server to recognize a previously unrecognizable data format or to reprogram all machines running applications in the protected enclave 42 to recognize all data formats that are recognized by the guard server.
  • the application proxy 46 may include several application proxies - one for each application resident in the protected enclave 42.
  • the application proxy may include a pub/sub proxy 46A, an instant messaging proxy 46B, and a file transfer proxy 46C.
  • the pub/sub proxy 46 A enables communication with a pub/sub application 4OA.
  • the instant messaging proxy 46B enables communication with an instant messaging application 4OB.
  • the file transfer proxy 46C enables communication with a file transfer application 4OC.
  • the application proxy 46 is simply re-programmed to add a corresponding application proxy(ies) to enable communication with the added application(s).
  • the application proxy 46 simply is reprogrammed. Thus, there is no need to reprogram all machines running applications in the protected enclave 42 to recognize all data formats that are recognized by the guard server.
  • guard proxy 54 simply is reprogrammed.
  • the guard proxy 54 simply is reprogrammed.
  • the data is transmitted to the guard service 50 for ultimate reception by an application 40' in a protected enclave 42'.
  • the guard service 50 receives the data and filters the data to make a determination whether information content of the data is appropriate for sharing outside the protected enclave 42.
  • the guard service implements processing of the decision block 20 (FIGURE 1).
  • a software suite 56' includes a guard proxy 54', a transformation analyzer 48', a transformation service 52', and an application proxy 46'.
  • the guard proxy 54' receives the data from the guard service 50.
  • the guard proxy 54', the transformation analyzer 48', the transformation service 52', and the application proxy 46' perform the functions described above for the guard proxy 54, the transformation analyzer 48, the transformation service 52, and the application proxy 46 in a mirror-image fashion.
  • the data that is received by the guard proxy 54' is processed and is ultimately transmitted on behalf of the application 40' via a server 44'.
  • the software suites 56 and 56' can each be executed by processors provided in one respective computer 60 and 60' or, if desired, execution of the software suites 56 and 56' can be distributed among more computers.
  • Computers are extremely well known in the art and, therefore, a discussion of their construction and operation is not necessary.
  • the protected enclave 42 can include users running applications on a variety of computing machines.
  • the protected enclave 42 may represent a community of interest of users with a need to know at a certain level of security.
  • the users may be co-located but need not be co-located.
  • the computing machines of the protected enclave 42 may communicate with each other and the computer 60 directly (not shown) or via a network 60, such as without limitation the Internet.
  • the protected enclave 42 can include any computing machine as desired, such as without limitation a computer 64, a pen computer 66, a hand-held computer 68, a laptop computer 70, and the like.
  • the protected enclave 42 can also include computing machines within a mobile platform 72, such as without limitation an airplane, whose connectivity is provided via a satellite 74 and a ground station 76 (such as the mobile connectivity provided by Connexion by Boeing). Also, the satellite 74 may provide connectivity to a computer 78 via a ground station 80.
  • a mobile platform 72 such as without limitation an airplane, whose connectivity is provided via a satellite 74 and a ground station 76 (such as the mobile connectivity provided by Connexion by Boeing).
  • the satellite 74 may provide connectivity to a computer 78 via a ground station 80.
  • the protected enclave 42' may include similar components as the protected enclave 42.
  • Each component of the protected enclave 42' that is similar to a component of the protected enclave 42 is denoted with a same reference number that is appended with a prime (').
  • the protected enclave 42' may represent a community of interest of users with a need to know at a level of security that is different (that is, either higher or lower) than the security level of the protected enclave 42.
  • a guard server 82 provides the guard service 50 (FIGURE 2) and is directly connected to the computers 60 and 60'.
  • the software suites 56 and 56' do not reside on the guard server 82. Instead, as discussed above, the software suites 56 and 56' reside on the computers 60 and 60', respectively, or are distributed among more computers (that are not the guard server 82) in their respective protected enclaves.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

In exemplary embodiments, data with a format compatible with a first protocol standard is received on behalf of a first application. When the format of the data is not compatible with a second protocol standard, the format of the data is automatically transformed to a format that is compatible with the second protocol standard. The data is transmitted to a second application service using the second protocol standard. The data may be received from the second application. When the format of the data is not compatible with a third protocol standard, the format of the data is automatically transformed to a format that is compatible with the third protocol standard. The data is transmitted on behalf of a third application using the third protocol standard. The first and third applications may be in first and second protected enclaves. The second application may include a security gateway service.

Description

MULTIPLE LEVEL SECURITY ADAPTER
BACKGROUND
Several technological approaches and managerial procedures have been developed to help ensure availability, integrity, and confidentiality of information exchanged and managed by a computer system or network. One such technological approach is to provide and manage protected enclaves (or security enclaves).
In a protected enclave, a community-of- interest is established in which users having a need-to-know run applications within a network that is protected by predetermined security measures. The users may be co-located but need not be co-located. The applications may include, without limitation, electronic mail (Email), instant messaging (IM), file transfer, and the like. The security measures may be directed to protect content that includes national security information (such as confidential, secret, top secret, and the like); financial information; business information; personal information; and the like.
When a protected enclave is established, measures must be taken to enable appropriate sharing or exchange of data between the protected enclave and the outside world. In one approach to sharing data, a secure network server (or a guard server) acts as a gateway to route and filter data exchanged between the protected enclave and the outside world, or between a first protected enclave operating at a first security level and a second protected enclave operating at a second security level that is different (either higher or lower) than the first security level.
Thus, the guard server may filter sensitive information from the data originated by an application in the protected enclave. However, in order for the guard server to filter the data, the guard server must understand how to parse the data. Therefore, both the guard server and the application must be cognizant of format of the data originated by the application.
If the guard server understands how to parse die data, uien the guard server can filter the data and pass on the data, if appropriate. As an example, a file transfer application in a protected enclave may transfer files using an FTP protocol in its application layer. The guard server application may also include the FTP protocol in its application layer. In such a case, the guard server understands how to parse the data mat the application wants to send out of the protected enclave. Therefore, the guard server filters the information and can route the data accordingly. On the other hand, if the guard server does not understand how to parse the data, then the guard server will send the data to a suitable "data dump" and may generate an event for a security event log. As an example, an application in a protected enclave may send a web page using an HTTP protocol in its application layer. However, the guard server application may not include the HTTP protocol in its application layer. In such a case, the guard server does not understand how to parse the data that the application wants to send out of the protected enclave. Therefore, the guard server cannot filter the information and cannot route the data accordingly. Instead, the guard server will send the data to a suitable "data dump" and may generate an event for a security event log.
In currently known approaches, the filtering described above is performed by the guard server. In order for the guard server to recognize a data format that was previously unrecognizable, the guard server would have to be reprogrammed to recognize the desired data format. Alternately, all of the machines running applications in the protected application would have to be reprogrammed to recognize all data formats that are recognized by the guard server. Either approach is extremely time-and-labor intensive and, therefore, is cost prohibitive.
As a result, the design of currently known guard servers is tightly coupled to the applications executed in the protected enclaves. This tight coupling can reduce flexibility of design of the guard server and of the applications; can reduce re-use of software; can increase "lock-in" and dependence on certain vendors; and can increase integration cost.
Therefore, it would be desirable for a guard server to be able to recognize data formats of applications executed in the protected enclaves without reprogramming the guard server to recognize a previously unrecognizable data format and without reprogramming all machines running applications in a protected enclave to recognize all data formats that are recognized by the guard server.
The foregoing examples of related art and limitations associated therewith are intended to be illustrative and not exclusive. Other limitations of the related art will become apparent to those of skill in the art upon a reading of the specification and a study of the drawings.
SUMMARY
The following embodiments and aspects thereof are described and illustrated in conjunction with systems and methods which are meant to be exemplary and illustrative, not limiting in scope. In various embodiments, one or more of the problems described above in the Background have been reduced or eliminated, while other embodiments are directed to other improvements.
Exemplary embodiments provide computer executable methods, computer program products, and systems for exchanging data. In exemplary embodiments, data is received on behalf of a first application using a first protocol standard. The data has a format compatible with the first protocol standard. A determination is made whether the format of the data is compatible with a second protocol standard. When the format of the data is not compatible with the second protocol standard, the format of the data is automatically transformed to a format that is compatible with the second protocol standard. The data is transmitted to a second application service using the second protocol standard.
According to an aspect, the data may be received from the second application using the second protocol standard. The data has a format compatible with the second protocol standard. A determination is made whether the format of the data is compatible with a third protocol standard. When the format of the data is not compatible with the third protocol standard, the format of the data is automatically transformed to a format that is compatible with the third protocol standard. The data is transmitted on behalf of a third application using the third protocol standard.
According to other aspects, the first application may be provided within a first protected enclave, the second application may include a security gateway service, and the third application may provided within a second protected enclave.
According to further aspects, the first protocol standard may define a first security level and the : t thhiirrdd n prroottooccooll s sttaannddaarrdd m maavy d deeffiinnee a a s seeccoonndd s seeccuurriittvy l leevveell..
In addition to the exemplary embodiments and aspects described above, further embodiments and aspects will become apparent by reference to the drawings and by study of the following detailed description. BREF DESCRIPTION OF THE DRAWINGS
Exemplary embodiments are illustrated in referenced figures of the drawings. It is intended that the embodiments and figures disclosed herein are to be considered illustrative rather than restrictive.
FIGURE 1 is a flow chart of an exemplary method of exchanging data;
FIGURE 2 is a software block diagram of exemplary software processing blocks that implement the method of FIGURE 1 ;
FIGURE 3 is a software block diagram showing non-limiting details of the processing blocks of FIGURE 2; and
FIGURE 3 is a block diagram of an exemplary host environment that implements the method of FIGURE 1.
DETAILED DESCRIPTION
By way of overview and referring to FIGURE 1, at a block 14 data is received on behalf of a first application in a first protected enclave using a first protocol standard. The data has a format compatible with the first protocol standard, and the first protocol standard may define a first security level. At a decision block 16, a determination is made whether the format of the data is compatible with a second protocol standard. When the format of the data is not compatible with the second protocol standard, at a block 18 the format of the data is automatically transformed to a format that is compatible with the second protocol standard. The data is transmitted to a second application service, such as a security gateway service, using the second protocol standard. The data may be received from the second application in a second protected enclave using the second protocol standard. The data has a format compatible with the second protocol standard. At a decision block 24, a determination is made whether the format of the data is compatible with a third protocol standard. The third protocol standard may define a second security level. When the format of the data is not compatible with the third protocol standard, at a block 26 the format of the data is automatically transformed to a format that is compatible with the third protocol standard. At a block 28 the data is transmitted on behalf of a third application using the third protocol standard. Details of exemplary embodiments will now be set forth below. Exemplary Method
Still referring to FIGURE 1, an exemplary method 10 starts at a block 12. At the block
14, data is received on behalf of a first application in a first protected enclave using a first protocol standard. The protected enclave is a community-of-interest in which users having a need-to-know run applications within a network that is protected by predetermined security measures. The users may be co-located but need not be co-located. The applications may include, without limitation, electronic mail (Email), instant messaging (IM), File transfer, and the like. The information exchanged within the protected enclave may include without limitation national security information, business information, financial information, personal information, health care information, and the like.
The data received on behalf of the application at the block 16 has a format compatible with the first protocol standard. The data can be transferred in one of two modes: ASCII mode; and binary mode. In ASCII mode, individual letters, numbers, and characters are transferred using their ASCII character codes. When received, the data is saved in a text file in an appropriate format. Li binary mode, the data is sent bit for bit. When received, die data is stored by die receiving machine in its own format.
The protocol standard, sometimes referred to as a protocol stack, defines the data format and is die set of protocols for layers of interconnection, such as those set forth in die Open Systems Interconnection (OSI) model. As used herein, die term protocol standard refers to the protocols implemented in software in the layers including and above the transport layer — that is, the transport layer and the application layer. While a protocol stack may also be considered to include the session layer and the presentation layer, in practice die transport layer, die session layer, the presentation layer and the application layer typically are combined into die transport layer and the application layer. As such and as used herein, the term protocol standard refers to die transport layer and the application layer as used in practice — that is, that combines die transport layer, the session layer, the presentation layer and the application layer. By way of further explanation, such usage also means tiiat the term protocol standard does not refer to the physical layer, the data link layer, or the network layer (or the layer sometimes referred to as "layer 2.5").
Examples of die protocol standards are set forth in Table 1 for exemplary applications on behalf of which data can be received (or transmitted, such as at die block 28). TABLE l
Figure imgf000008_0001
The first protocol standard may define a first security level. For example, the transport and application layers may support encryption of the data. As another example, security labeling may be put in messages at the application layer.
At a decision block 16, a determination is made whether the format of the data is compatible with a second protocol standard. The second protocol standard is a protocol stack for a second application. In an exemplary embodiment, the second application is a guard service, such as that for a secure network server between a protected enclave and the outside world or between two protected enclaves. An exemplary protocol standard for a guard service generally includes TCP for use at the transport layer. Also, some guard protocol standards may require security labeling at the application layer and/or the transport layer. Given by way of non- limiting example, the determination of compatibility at the decision block 16 may be made by determining whether the first application is a type of application that uses a data format that is predetermined to be expected by the guard service. When the format of the data received on behalf of the application at the block 14 is not compatible with the second protocol standard, at a block 18 the format of the data is automatically transformed to a format that is compatible with the second protocol standard. In an exemplary embodiment, a transformation routine may be selected from a library of transformation routines and performed as desired for a particular application. For example, the library of transformation routines may include a generic transformation function, such as an XSLT transformation engine or the like. The library of transformation routines may also include routines that have been customized for desired applications.
The following non-limiting examples illustrate scenarios in which the format of the data received on behalf of the application at the block 14 is not compatible with the second protocol standard. Given by way of non-limiting example, the first application in the protected enclave may be a web browser that is sending a web page. From Table 1, the protocol standard for the web page uses TCP at the transport layer and HTTP at the application layer. The data is transferred in ASCII mode. In this scenario, the second application is a guard service that can filter messages (because its application layer uses an SMTP protocol). But, in this scenario, the guard service does not include an HTTP protocol in its application layer. Thus, the guard service of the second application can understand how to parse information in an Email message but cannot understand how to parse information in a web page. In this scenario, at the block 18, the data format of the web page (in which the application layer uses an HTTP protocol) is transformed to a known format and known protocol that is compatible with the guard service's protocol standard (in which the application layer uses an SMTP protocol). As another example in which the format of the data received on behalf of the application at the block 14 is not compatible with the second protocol standard, a determination may be made at the block 16 that an application layer protocol is intermixed with the data received on behalf of the application. In such a case, at the block 18 the intermixed application layer protocol is automatically removed from the data.
After the format of the data has been transformed at the block 18 or, alternately, when the format of the data received on behalf of the application at the block 14 is compatible with the second protocol standard, at a decision block 20 a determination may be made whether information content of the data is appropriate for sharing outside the protected enclave. The filtering and determination may be effected by keyword matching and comparison against predetermined keywords, or by other text classification or data mining routines, if desired. Advantageously, such filtering of the data is possible because either the format of the data received on behalf of the application at the block 14 is compatible with the second protocol standard or was transformed at the block 18 to a known format and known protocol that is compatible with the second protocol standard. In either case, the data that was received on behalf of the application at the block 14 advantageously is now compatible with the second protocol standard. When the second application is a guard service, this compatibility represents an advantage over currently known guard services that cannot understand how to parse the data and instead send the data to a suitable "data dump" and merely generate an event for an event log.
When content is determined to be inappropriate, an event is generated and sent to an audit log 22 for later analysis, as desired. Given by way of non-limiting example, content may be determined to be inappropriate when the data contains text that includes predetermined content that is not cleared for access outside the protected enclave.
When content has been determined to be appropriate for sharing outside the protected enclave, the data is shared outside the protected enclave. In another protected enclave at a decision block 24, determination is made whether the format of the data is compatible with a third protocol standard. The third protocol standard is a protocol stack for a third application. Details of the protocol standard and data format for the third application are the same as those for the first application discussed above and, as a result, need not be repeated. The third application in the second protected enclave may be, but need not be, the same application as the first application in the first protected enclave. Alternately, the third application in the second protected enclave may be a different application from the first application in the first protected enclave. The determination at the block 24 suitably is made in the same manner as the determination at the block 16.
When a determination is made at the decision block 24 that the format of the data is not compatible with the third protocol standard, at a block 26 the format of the data is automatically transformed to a format that is compatible with the third protocol standard. The transformation at the block 26 suitably is made in the same manner as the transformation at the block 18.
After the format of the data has been transformed at the block 26 or, alternately, when the format of the data is compatible with the third protocol standard, at a block 28 the data is transmitted on behalf of the third application. The method 10 ends at a block 30. Exemplary Software
Referring now to FIGURE 2, exemplary software implements processes of the method 10 (FIGURE 1). Advantageously, the exemplary software enables data format to be transformed as desired without a need to reprogram the guard server to recognize a previously unrecognizable data format or to reprogram all machines running applications in a protected enclave to recognize all data formats that are recognized by the guard server. The exemplary software implementation will be discussed in the same order as the discussion of the method 10 (FIGURE 1).
Data from an application 40 in a protected enclave 42 is received from a server 44 on behalf of the application 40 by an application proxy 46. The application proxy 46 enables communication with the application 40 using the particular protocol standard of the application
40. The protocol standard has already been described above in the context of the method 10
(HGURE 1).
A transformation analyzer 48 analyzes the data received by the application proxy 46 on behalf of the application 40 and makes a determination whether the format of the data is compatible with a protocol standard for a guard service SO. In an exemplary embodiment, logic is provided by an operator. The logic decides which particular application data is to be transformed. For example, the logic may identify the type of the application 40. The logic may also identify the type of data that came from the application 40. Given by way of non-limiting example, the type of data may be identified as binary data or ASCII data, such as without limitation HTML or XML. The transformation analyzer 48 may compare the type of the application 40 against a list of predetermined application types that send data to the guard service that the guard service SO is expecting. The transformation analyzer 48 may also compare the type of the data that came from the application 40 against a list of predetermined data types that the guard service 50 is expecting. Given by way of a non-limiting, illustrative example, the guard service 50 may be expecting ASCII SMTP data from an Email application. In this case, a list of predetermined applications includes Email applications but not web browsers, and a list of predetermined data types includes ASCII SMTP data but not ASCII HTML data. However, the application 40 may be a web browser that sends ASCII HTML data. The transformation analyzer 48 identifies the application 40 as a web browser and may identify the data type as ASCII HTML. The transformation analyzer compares the identified web browser application and/or the identified ASCII HTML data against the predetermined list that does not include web browsers or ASCII HTML data. The transformation analyzer thereby determines that, in this non-limiting example, the data is not compatible with the guard service SO and is to be transformed. The analysis performed by the transformation analyzer 48 implements the process of the decision block 16 (FIGURE 1).
When the format of the data received by the application proxy 46 on behalf of the application 42 is not compatible with the protocol standard of the guard service 50, a transformation service 52 automatically transforms the format of the data to a format that is compatible with the protocol standard of the guard service 50. The transformation performed by the transformation service 50 implements the process of the block 18 (FIGURE 1). Given by way of non-limiting example, the transformation service 52 may be implemented as an XSLT transformation engine or the like.
After the format of the data has been transformed by the transformation service 52 or, alternately, when the format of the data received on behalf of the application 40 by the application proxy 46 is compatible with the protocol standard of the guard service 50, a guard proxy 54 enables communication with the guard service 50 using the protocol standard of the guard service 50 (such as by using TCP at the transport layer).
Advantageously, the application proxy 46, the transformation analyzer 48, the transformation engine 52, and the guard proxy 54 may be provided as a software suite 56. Advantageously, the software suite 56 resides in the protected enclave 42 - but not in a guard server (not shown) that provides the guard service. Providing the software suite 56 outside the guard server advantageously enables data format to be transformed as desired without a need to reprogram the guard server to recognize a previously unrecognizable data format or to reprogram all machines running applications in the protected enclave 42 to recognize all data formats that are recognized by the guard server.
Referring additionally to FIGURE 3, additional details will be set forth regarding the software suite 56. The application proxy 46 may include several application proxies - one for each application resident in the protected enclave 42. Given by way of non-limiting example, the application proxy may include a pub/sub proxy 46A, an instant messaging proxy 46B, and a file transfer proxy 46C. The pub/sub proxy 46 A enables communication with a pub/sub application 4OA. The instant messaging proxy 46B enables communication with an instant messaging application 4OB. The file transfer proxy 46C enables communication with a file transfer application 4OC. As an additional application(s) 40 is added to the protected enclave 42, the application proxy 46 is simply re-programmed to add a corresponding application proxy(ies) to enable communication with the added application(s). Further, if for some reason a change is made to the protocol standard of any of the applications 40 in the protected enclave, the application proxy 46 simply is reprogrammed. Thus, there is no need to reprogram all machines running applications in the protected enclave 42 to recognize all data formats that are recognized by the guard server.
Further, if the guard server is replaced or if a change is made to the protocol standard of the guard service, then the guard proxy 54 simply is reprogrammed. Advantageously, in such a case there is no need to reprogram the guard server.
Referring back to FIGURE 2, the data is transmitted to the guard service 50 for ultimate reception by an application 40' in a protected enclave 42'. The guard service 50 receives the data and filters the data to make a determination whether information content of the data is appropriate for sharing outside the protected enclave 42. Thus, the guard service implements processing of the decision block 20 (FIGURE 1).
In the protected enclave 42', a software suite 56' includes a guard proxy 54', a transformation analyzer 48', a transformation service 52', and an application proxy 46'. The guard proxy 54' receives the data from the guard service 50. The guard proxy 54', the transformation analyzer 48', the transformation service 52', and the application proxy 46' perform the functions described above for the guard proxy 54, the transformation analyzer 48, the transformation service 52, and the application proxy 46 in a mirror-image fashion. Thus, the data that is received by the guard proxy 54' is processed and is ultimately transmitted on behalf of the application 40' via a server 44'.
Exemplary Network Environment
Referring now to FIGURE 4, the software suites 56 and 56' (FIGURE 2) reside in storage
(not shown) and are executed by processors (not shown) in computers 60 and 60', such as routers, in the protected enclaves 42 and 42'. The software suites 56 and 56' can each be executed by processors provided in one respective computer 60 and 60' or, if desired, execution of the software suites 56 and 56' can be distributed among more computers. Computers are extremely well known in the art and, therefore, a discussion of their construction and operation is not necessary.
The protected enclave 42 can include users running applications on a variety of computing machines. The protected enclave 42 may represent a community of interest of users with a need to know at a certain level of security. The users may be co-located but need not be co-located. The computing machines of the protected enclave 42 may communicate with each other and the computer 60 directly (not shown) or via a network 60, such as without limitation the Internet. The protected enclave 42 can include any computing machine as desired, such as without limitation a computer 64, a pen computer 66, a hand-held computer 68, a laptop computer 70, and the like. The protected enclave 42 can also include computing machines within a mobile platform 72, such as without limitation an airplane, whose connectivity is provided via a satellite 74 and a ground station 76 (such as the mobile connectivity provided by Connexion by Boeing). Also, the satellite 74 may provide connectivity to a computer 78 via a ground station 80.
The protected enclave 42' may include similar components as the protected enclave 42.
Each component of the protected enclave 42' that is similar to a component of the protected enclave 42 is denoted with a same reference number that is appended with a prime ('). The protected enclave 42' may represent a community of interest of users with a need to know at a level of security that is different (that is, either higher or lower) than the security level of the protected enclave 42.
A guard server 82 provides the guard service 50 (FIGURE 2) and is directly connected to the computers 60 and 60'. Advantageously, as discussed above, the software suites 56 and 56' do not reside on the guard server 82. Instead, as discussed above, the software suites 56 and 56' reside on the computers 60 and 60', respectively, or are distributed among more computers (that are not the guard server 82) in their respective protected enclaves. Therefore, execution of the software suites 56 and 56' on computers within the protected enclaves 42 and 42' (instead of on the guard server 82) enables data format to be transformed as desired without a need to reprogram the guard server 82 to recognize a previously unrecognizable data format or to reprogram all machines running applications in the protected enclaves 42 and 42' to recognize all data formats that are recognized by the guard server 82. While a number of exemplary embodiments and aspects have been illustrated and discussed above, those of skill in the art will recognize certain modifications, permutations, additions, and sub-combinations thereof. It is therefore intended that the following appended claims and claims hereafter introduced are interpreted to include all such modifications, permutations, additions, and sub-combinations as are within their true spirit and scope.

Claims

CLAIMSWhat is claimed is:
1. A computer executable method of exchanging data, the method comprising:
receiving data on behalf of a first application using a first protocol standard, the data having a format compatible with the first protocol standard;
determining whether the format of the data is compatible with a second protocol standard;
when the format of the data is not compatible with the second protocol standard, automatically transforming the format of the data to a format that is compatible with the second protocol standard; and
transmitting the data to a second application service using the second protocol standard.
2. The method of Claim 1, further comprising:
receiving the data from the second application using the second protocol standard, the data having a format compatible with the second protocol standard;
determining whether the format of the data is compatible with a third protocol standard;
when the format of the data is not compatible with the third protocol standard, automatically transforming the format of the data to a format that is compatible with the third protocol standard; and
transmitting the data on behalf of a third application using the third protocol standard.
3. The method of Claim 2, wherein the first application is provided within a first protected enclave.
4. The method of Claim 3, wherein the second application includes a security gateway service.
5. The method of Claim 4, wherein the third application is provided within a second protected enclave.
6. The method of Claim 5, wherein:
the first protocol standard defines a first security level; and
the third protocol standard defines a second security level.
7. The method of Claim 1, further comprising:
determining whether an application layer protocol is intermixed with the data received on behalf of the first application; and
when an application layer protocol is intermixed with the data received on behalf of the first application, automatically removing the intermixed application layer protocol from the data.
8. The method of Claim 2, wherein the first and second and third protocol standards each include a respective transport layer protocol and a respective application layer protocol.
9. The method of Claim 1, wherein determining includes:
identifying a type of the first application; and
comparing the type of the first application against a list of predetermined application types.
10. The method of Claim 9, wherein determining further includes:
identifying a type of data received on behalf of the first application; and comparing the type of the data received on behalf of the first application against a list of predetermined data types.
11. The method of Claim 1, wherein transforming is performed by an XSLT transformation engine.
12. A computer readable program product comprising:
first computer readable program code means for receiving data on behalf of a first application using a first protocol standard, the data having a format compatible with the first protocol standard;
second computer readable program code means for determining whether the format of the data is compatible with a second protocol standard;
third computer readable program code means for, when the format of the data is not compatible with the second protocol standard, automatically transforming the format of the data to a format that is compatible with the second protocol standard; and
fourth computer readable program code means for transmitting the data to a second application using the second protocol standard.
13. The computer readable program product of Claim 12, further comprising:
fifth computer readable program code means for receiving the data from the second application using the second protocol standard, the data having a format compatible with the second protocol standard
sixth computer readable program code means for determining whether the format of the data is compatible with a third protocol standard;
seventh computer readable program code means for, when the format of the data is not compatible with the third protocol standard, automatically transforming the format of the data to a format that is compatible with the third protocol standard; and eighth computer readable program code means for transmitting the data on behalf of a third application using the third protocol standard.
14. The computer readable program product of Claim 13, wherein the first computer readable program code means includes an application proxy.
15. The computer readable program product of Claim 14, wherein the second computer readable program code means includes a security gateway proxy.
16. The computer readable program product of Claim 12, further comprising:
ninth computer readable program code means for determining whether an application layer protocol is intermixed with the data received on behalf of the first application; and
tenth computer readable program code means for, when an application layer protocol is intermixed with the data received on behalf of the first application, automatically removing the intermixed application layer protocol from the data.
17. The computer readable program product of Claim 12, wherein the third computer readable program code means includes an XSLT transformation engine.
18. The computer readable program product of Claim 12, wherein the second computer readable program code means includes:
eleventh computer readable program code means for identifying a type of the first application; and
twelfth computer readable program code means for comparing the type of the first application against a list of predetermined application types.
19. The computer readable program product of Claim 18, wherein the second computer readable program code means further includes:
thirteenth computer readable program code means for identifying a type of data received on behalf of the first application; and
fourteenth computer readable program code means for comparing the type of the data received on behalf of the first application against a list of predetermined data types.
20. A system for exchanging data, the system comprising:
a first computer processing component configured to receive data on behalf of a first application using a first protocol standard, the data having a format compatible with the first protocol standard;
a second computer processing component configured to determine whether the format of the data is compatible with a second protocol standard;
a third computer processing component configured to, when the format of the data is not compatible with the second protocol standard, automatically transform the format of the data to a format that is compatible with the second protocol standard; and
a fourth computer processing component configured to transmit the data to a second application service using the second protocol standard.
21. The system of Claim 20, further comprising:
a fifth computer processing component configured to receive the data from the second application using the second protocol standard, the data having a format compatible with the second protocol standard;
a sixth computer processing component configured to determine whether the format of the data is compatible with a third protocol standard; a seventh computer processing component configured to, when the format of the data is not compatible with the third protocol standard, automatically transform the format of the data to a format that is compatible with the third protocol standard; and
an eighth computer processing component configured to transmit the data on behalf of a third application using the third protocol standard.
22. The system of Claim 20, wherein the first, second, third, and fourth computer processing components are provided in one computer processor.
23. The system of Claim 20, wherein the first, second, third, and fourth computer processing components are distributed among more than one computer processor.
24. The system of Claim 21, wherein the first, second, third, and fourth computer processing components are provided within a first protected enclave.
25. The system of Claim 24, wherein the second application includes a security gateway service implemented on a secure network server.
26. The system of Claim 25, wherein the fifth, sixth, seventh, and eighth computer processing components are provided within a first protected enclave.
27. The system of Claim 20, further comprising:
a ninth computer processing component configured to determine whether an application layer protocol is intermixed with the data received on behalf of the first application; and
a tenth computer processing component configured to, when an application layer protocol is intermixed with the data received on behalf of the first application, automatically remove the intermixed application layer protocol from the data.
28. The system of Claim 20, wherein the second computer processing component includes:
an eleventh computer processing component configured to identify a type of the first application; and
a twelfth computer processing component configured to compare the type of the first application against a list of predetermined application types.
29. The system of Claim 28, wherein the second computer processing component further includes:
a thirteenth computer processing component configured to identify a type of data received on behalf of the first application; and
a fourteenth computer processing component configured to compare the type of the data received on behalf of the first application against a list of predetermined data types.
PCT/US2007/009668 2006-05-15 2007-04-18 Protocol conversion in a network firewall Ceased WO2007136489A2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/434,313 2006-05-15
US11/434,313 US7873071B2 (en) 2006-05-15 2006-05-15 Multiple level security adapter

Publications (2)

Publication Number Publication Date
WO2007136489A2 true WO2007136489A2 (en) 2007-11-29
WO2007136489A3 WO2007136489A3 (en) 2008-02-21

Family

ID=38658633

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2007/009668 Ceased WO2007136489A2 (en) 2006-05-15 2007-04-18 Protocol conversion in a network firewall

Country Status (2)

Country Link
US (1) US7873071B2 (en)
WO (1) WO2007136489A2 (en)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2922705B1 (en) * 2007-10-23 2011-12-09 Sagem Defense Securite BIDIRECTIONAL GATEWAY WITH REINFORCED SAFETY LEVEL
US20090205046A1 (en) * 2008-02-13 2009-08-13 Docomo Communications Laboratories Usa, Inc. Method and apparatus for compensating for and reducing security attacks on network entities
US20100037240A1 (en) * 2008-08-08 2010-02-11 Microsoft Corporation Non Intrusive Application Mechanism
US10110631B2 (en) * 2009-02-12 2018-10-23 International Business Machines Corporation Introducing encryption, authentication, and authorization into a publication and subscription engine
US9742560B2 (en) * 2009-06-11 2017-08-22 Microsoft Technology Licensing, Llc Key management in secure network enclaves
US8352741B2 (en) * 2009-06-11 2013-01-08 Microsoft Corporation Discovery of secure network enclaves
US9100235B2 (en) 2011-11-07 2015-08-04 At&T Intellectual Property I, L.P. Secure desktop applications for an open computing platform
US9047476B2 (en) 2011-11-07 2015-06-02 At&T Intellectual Property I, L.P. Browser-based secure desktop applications for open computing platforms
US9705830B2 (en) * 2013-09-09 2017-07-11 At&T Mobility Ii, Llc Method and apparatus for distributing content to communication devices
US9596212B2 (en) 2013-11-11 2017-03-14 The Boeing Company Apparatus, method, and system for hardware-based filtering in a cross-domain infrastructure
US9864861B2 (en) * 2014-03-27 2018-01-09 Intel Corporation Object oriented marshaling scheme for calls to a secure region
US20170142069A1 (en) * 2014-06-30 2017-05-18 Firmitas Cyber Solutions (Israel) Ltd. Method and system for checking compliance of messages with a user-defined communication model
US9684798B2 (en) 2015-05-01 2017-06-20 International Business Machines Corporation Audience-based sensitive information handling for shared collaborative documents
US10637841B2 (en) * 2015-12-08 2020-04-28 Honeywell International Inc. Apparatus and method for using a security appliance with IEC 61131-3
US11218485B1 (en) * 2017-12-12 2022-01-04 Berryville Holdings, LLC Systems and methods for providing transparent simultaneous access to multiple secure enclaves
EP3742661A1 (en) 2019-05-24 2020-11-25 Nederlandse Organisatie voor toegepast- natuurwetenschappelijk Onderzoek TNO Encrypted data communication and gateway device for encrypted data communication

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4790003A (en) * 1987-04-27 1988-12-06 American Telephone And Telegraph Company, At&T Information Systems Message service system network
DE69130587T2 (en) 1990-05-10 1999-05-06 Hewlett-Packard Co., Palo Alto, Calif. System for integrating user programs in a heterogeneous network environment
US6901075B1 (en) 1998-03-12 2005-05-31 Whale Communications Ltd. Techniques for protection of data-communication networks
ATE393993T1 (en) * 1998-05-22 2008-05-15 Certco Inc ROBUST AND EFFICIENT DISTRIBUTED RSA KEY GENERATION
US7111060B2 (en) 2000-03-14 2006-09-19 Aep Networks, Inc. Apparatus and accompanying methods for providing, through a centralized server site, a secure, cost-effective, web-enabled, integrated virtual office environment remotely accessible through a network-connected web browser
US6898710B1 (en) * 2000-06-09 2005-05-24 Northop Grumman Corporation System and method for secure legacy enclaves in a public key infrastructure
US6826684B1 (en) * 2000-08-28 2004-11-30 Verizon Corporate Services Group Inc. Sliding scale adaptive self-synchronized dynamic address translation
SE520393C2 (en) 2001-03-22 2003-07-01 Columbitech Ab Method of communication through firewall
US7216173B2 (en) * 2001-06-12 2007-05-08 Varian Medical Systems Technologies, Inc. Virtual private network software system
US20060098649A1 (en) * 2004-11-10 2006-05-11 Trusted Network Technologies, Inc. System, apparatuses, methods, and computer-readable media for determining security realm identity before permitting network connection
GB0227049D0 (en) 2002-11-20 2002-12-24 Bae Sys Defence Sys Ltd Management of network security domains
US7236597B2 (en) * 2002-12-20 2007-06-26 Bbn Technologies Corp. Key transport in quantum cryptographic networks
KR100547133B1 (en) * 2003-07-11 2006-01-26 삼성전자주식회사 Apparatus and method for building an ad-hoc network of heterogeneous terminals
US20050086537A1 (en) * 2003-10-17 2005-04-21 Alex Johnson Methods and system for replicating and securing process control data
US7933290B2 (en) * 2004-03-30 2011-04-26 Nokia Corporation System and method for comprehensive service translation
US9112831B2 (en) * 2004-07-28 2015-08-18 International Business Machines Corporation Scalable infrastructure for handling light weight message protocols
US7623458B2 (en) * 2005-09-30 2009-11-24 The Boeing Company System and method for providing integrated services across cryptographic boundaries in a network

Also Published As

Publication number Publication date
WO2007136489A3 (en) 2008-02-21
US20070263658A1 (en) 2007-11-15
US7873071B2 (en) 2011-01-18

Similar Documents

Publication Publication Date Title
US7873071B2 (en) Multiple level security adapter
US10666591B2 (en) Systems and methods for controlling email access
US7483384B2 (en) System and method for monitoring network traffic
KR100269909B1 (en) Distributed network computing system and information exchange device/information exchange method for use in the same
US10587415B2 (en) Systems and methods for controlling email access
CA2394451C (en) System, method and computer product for delivery and receipt of s/mime-encrypted data
US9853928B2 (en) Systems and methods for controlling email access
JP2661793B2 (en) Distributed information system with automatic invocation of key management negotiation protocol
EP1111507A2 (en) Remote computer virus scanning
WO2014197379A1 (en) System and method for providing a single global borderless virtual perimeter through distributed points of presence
WO2014134538A1 (en) Systems, methods, and devices for adaptive communication in a data communication network
EP1203297A1 (en) Method and system for extracting application protocol characteristics
EP2286614A2 (en) Method and apparatus of network artifact indentification and extraction
Rahim et al. Prototype file transfer protocol application for LAN and Wi-Fi communication
CN112839083A (en) Data transmission method and device and readable storage medium
WO2008097846A2 (en) Verifying wireless communication security
EP1773082A1 (en) Remote testing of mobile terminals
US8520840B2 (en) System, method and computer product for PKI (public key infrastructure) enabled data transactions in wireless devices connected to the internet
CN111917630B (en) Data transmission method, data transmission device, storage medium and electronic device
US20080235370A1 (en) Method and System for Controlling Network Traffic of P2P and Instant Messenger Softwares
US20070008971A1 (en) Systems and methods for passing network traffic data
CN114239016A (en) Data security processing method, system and storage medium
Yuan et al. HTTP cookie covert channel detection based on session flow interaction features
CN117527746A (en) Mail processing method and device, electronic equipment and storage medium
CN107819830A (en) A kind of IM softwares send document method and device

Legal Events

Date Code Title Description
NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 07775859

Country of ref document: EP

Kind code of ref document: A2