E-mail firewall with stored key encryption/decryption
Claim Score by NHIP
Abstract
An e-mail firewall (<bold>105</highlight>) applies policies to e-mail messages (<bold>204</highlight>) between a first 5 site and a plurality of second sites in accordance with a plurality of administrator selectable policies (<bold>216</highlight>). The firewall comprises a simple mail transfer protocol (SMTP) relay (<bold>202</highlight>) for causing the e-mail messages (<bold>204</highlight>) to be transmitted between the first site and selected ones of the second sites. A plurality of policy managers (<bold>216</highlight>) enforce-administrator selectable policies. The policies, such as encryption and decryption policies, comprise at least a first source/destination policy (<bold>218</highlight>), at least a first content policy (<bold>202</highlight>) and at least a first virus policy (<bold>224</highlight>). The policies are characterized by a plurality of administrator selectable criteria (<bold>310</highlight>), a plurality of administrator selectable exceptions (<bold>312</highlight>) to the criteria and a plurality of administrator selectable actions (<bold>314, 316, 322</highlight>) associated with the criteria and exceptions. The policy managers comprise an access manager (<bold>218</highlight>) for restricting transmission of e-mail messages (<bold>204</highlight>) between the first site and the second sites in accordance with the source/destination policy (<bold>218</highlight>). The policy managers (<bold>216</highlight>) further comprise a content manager (<bold>220</highlight>) for restricting transmission of e-mail messages (<bold>204</highlight>) between the first site and the second sites in accordance with the content policy (<bold>220</highlight>), and a virus manager (<bold>224</highlight>) for restriction transmission of e-mail messages (<bold>204</highlight>) between the first site and the second sites in accordance with the virus policy (<bold>224</highlight>).

Term
Term ended
Projected expiry passed 21 April 2023, 3.4 years ago.
- Priority
- Filed
- Published
- Projected expiry
- Today
18 claims: 5 independent, 13 dependent
- 1A computer based encryption and decryption system comprising:(a) means (i) for determining whether digital input information including as content at least one of a body of a message and a file attachment is encrypted using a cryptographic key, and (ii) for decrypting the digital input information using a private decryption key of a public key pair prior to applying policies that analyze the content of the digital input information;and (b) a policy manager configured to apply the policies, the policies including a virus policy for detecting and eradicating a detected virus;wherein: (c) the private decryption key is apart from the content of the digital input information and (d) decryption is done without using decryption executables contained in a header corresponding to the digital input information when a header is present.
- 7Broadest claimClaim Score 70, broad(NHIP)A computer based encryption and decryption method, said method comprising the steps of:(a) determining whether digital input information that includes as content at least one of a body of a message and a file attachment is encrypted;(b) decrypting the digital input information without using decryption executables included in a header corresponding to the digital input information when a header is present if it is determined that the digital input information is encrypted;and (c) providing content analysis including performing virus detection to facilitate eradication of a detected virus subsequent to decrypting the digital information.
- 13A storage medium comprising:a program executable by a computing mechanism that facilitates the following steps: (i) determining whether digital input information that includes as content at least one of a body of a message and a file attachment is encrypted;(ii) decrypting the digital input information without using decryption executables included in a header corresponding to the digital input information when a header is present if it is determined that the digital input information is encrypted;and (iii) applying content analysis to the decrypted digital input information prior to allowing use of the decrypted digital input information, wherein content analysis includes performing virus detection to facilitate eradication of a detected virus.
- 16A computer based encryption and decryption system comprising:(a) means (i) for determining whether digital input information including as content at least one of a body of a message and a file attachment is encrypted using a cryptographic key, and (ii) for decrypting the digital input information using a private decryption key of a public key pair prior to applying policies that analyze the content of the digital input information;and (b) a policy manager configured to apply the policies, the policies including a virus policy for detecting and eradicating a detected virus;wherein: (c) the private decryption key is apart from the content of the digital input information and (d) has been stored by the system for access at the time of decryption.
- 18An encryption and decryption method comprising:providing content analysis by determining whether digital input information that includes at least one of a file, document and at least part of a body of a message is encrypted and generating a decryption request to a decryptor to decrypt the encrypted digital input information prior to applying content analysis to facilitate content analysis within the encrypted digital input information;and decrypting the encrypted digital input information prior to completion of the content analysis wherein content analysis includes performing virus detection to facilitate eradication of a detected virus, wherein decrypting is done without using decryption executables contained in a header corresponding to the digital input information, if a header is present.
Independent claims5
42 paragraphs in 6 sections, as filed
RELATED APPLICATION
[0001] This application claims priority to U.S. Provisional Patent Application No. 60/053,668 filed on Jul. 24, 1997, PCT/US98/1552 filed on Jul. 23, 1998, and U.S. application Ser. No. 09/180,377, all of which are incorporated herein by reference.
TECHNICAL FIELD
[0002] This application pertains generally to the field of computer security and more specifically to security for electronic mail systems.
BACKGROUND
[0003] The widespread use of electronic mail (e-mail) and groupware applications coupled with the growth and ubiquity of the Internet have opened new avenues for business level communications and electronic commerce. Organizations are increasingly relying on e-mail for the transfer of critical files such as purchase orders, sales forecasts, financial information and contracts both within the organization and increasingly with other organizations via the Internet. In this setting, these files are now tangible information assets that must be protected.
[0004] A number of conventional security measures exist to insure the confidentiality and integrity of modern data communications. For example, traditional firewalls prevent network access by unauthorized users. Secure sockets technology allows for data to be passed securely over the World Wide Web (WWW). E-mail, however, which is by far the most prominent application over the Internet, still remains problematic, from a security standpoint, for most organizations. Many traditional firewalls simply limit access to information protected by the firewall but do not contain the capability to limit transfer of information, into or out of an organization, by way of e-mail. This can lead to inadvertent or deliberate disclosure of confidential information from e-mail originating within an organization and introduction of viruses from e-mail entering an organization.
[0005] One solution to protecting confidentiality of e-mail messages is by encrypting such messages. Further security is available by way of digital signatures, which provide for authentication of e-mail messages. Encryption and authentication are both supported in the S/MIME (Secure/Multipurpose Internet Mail Extensions) messaging protocol defined in documents generated by the Internet Engineering Task Force (IETF) entitled “S/MIME Message Specification” (1997) and “S/MIME Certificate Handling” (1997). Individual users can encrypt/decrypt and authenticate e-mail messages using commercially available software. However, the use of software to perform such tasks is not always simple and therefore can detract from the inherent ease of use of e-mail as a means of communication. Moreover, an organization wishing to use such software must rely on individual users to encrypt all necessary messages without means of any centralized control. In addition, many conventional firewalls contain no capability to control the content or format of certain messages that enter or exit an organization. For example, many conventional firewalls contain no capability to ensure that e-mail meeting certain criteria such as content or source and/or destination address or domains, is encrypted. In addition, many conventional firewalls contain no capability to control unwanted messages entering an organization such as unsolicited e-mail advertising.
[0006] There is accordingly a need for an e-mail firewall that provides improved centralized control over e-mail messages exiting and entering an organization.
SUMMARY OF THE INVENTION
[0007] In a principal aspect, the present invention provides an e-mail firewall (<b>105</b>) for screening e-mail messages (<b>204</b>) originating in, or entering into a computer network (<b>101</b>, <b>103</b>). Embodiments employing the principles of the present invention advantageously take the form of an e-mail control system (<b>105</b>) that controls e-mail messages (<b>204</b>) transmitted from and received by a computing site. The e-mail control system (<b>105</b>) includes a message encryptor (<b>526</b>) which encrypts, in accordance with at least a first stored encryption key (<b>528</b>), a first designated type of message (<b>204</b>) transmitted from the computing site. A message decryptor (<b>552</b>) decrypts, in accordance with at least a second stored encryption key (<b>528</b>), a second designated type of message (<b>204</b>) received by the computing site. A filter (<b>216</b>) monitors messages (<b>204</b>), after decryption by the decryptor (<b>552</b>) and before encryption by the encryptor (<b>526</b>), in accordance with changeable filter information (<b>216</b>).
[0008] A significant advantage of such embodiments is increased centralized control of e-mail policies by an organization. All e-mail messages entering into or originating within an organization can be encrypted or decrypted and filtered in accordance with policies imposed by the organization. Individual users of desktop computers within the organization therefore need not be concerned with ensuring that they comply with e-mail policies of the organization. E-mail messages can be monitored for certain content, or for certain sources or destinations.
[0009] Advantageously, embodiments employing the principles of the present invention operate transparently to individual users within an organization. For example such individual users need not be concerned with complying with encryption policies of the organization. E-mail messages containing certain content, or originating from, or being transmitted to specified addresses or domains, can be automatically encrypted and/or filtered. For example, if an organization (e.g., Company A) which frequently exchanges e-mail with another organization (e.g. Company B) determines that all e-mail to Company B should be encrypted for security purposes, then an e-mail firewall in Company A, as described above, can be configured to recognize the domain name of Company B and to store an encryption key. Thereafter, all e-mail messages from Company A to Company B will be encrypted by the above described e-mail firewall without requiring any additional action by individual users. If Company B has installed an e-mail firewall employing the above described principles then that email firewall can be configured to decrypt messages from Company A. Individual recipients in Company B of e-mail from Company A therefore need not take any additional action to decrypt e-mail from Company A. All e-mail messages from Company A to Company B can therefore be securely exchanged with no intervention from users at Company A or Company B. Of course, the e-mail firewall of Company B can be configured to allow similar transmission of e-mail messages from Company B to Company A.
[0010] In addition, other policies can be enforced with respect to transmission of messages between Company A and B. For example, inadvertent (or even deliberate) disclosure of certain information between Companies A and B can be reduced by configuring the above described filter of the e-mail firewall in question with rules to recognize and prevent transmission of e-mail messages containing certain terms or phrases. The e-mail firewall may also be configured with exceptions to such rules. For example, e-mail from or to certain users may be exempted from such rules. Also, actions taken by the e-mail firewall after a message is prevented from being transmitted are changeable. For example, the message in question may be returned to the sender with an explanatory message. Alternatively, or in addition, the message may be stored for viewing by an administrator, or the messages may be deleted. Multiple encryption keys, each associated with one or more domains or individual addresses, may be stored in e-mail firewalls employing the aforesaid principles to allow secure communications with multiple domains and/or individual users.
BRIEF DESCRIPTION OF THE DRAWINGS
[0011]FIG. 1 of the drawings is a block diagram showing a plurality of e-mail networks which are coupled by way of the Internet and which employ an e-mail firewall employing the principles of the present invention.
[0012]FIG. 2 of the drawings is a block diagram of a preferred embodiment of an e-mail firewall.
[0013]FIGS. 3 and 4 are block diagrams illustrating further details of operation of the e-mail firewall of FIG. 2.
[0014] FIGS. <b>5</b>(<i>a</i>), <b>5</b>(<i>b</i>) and <b>5</b>(<i>c</i>) are block diagrams illustrating alternative secure e-mail communication mechanisms.
[0015] FIGS. <b>6</b>(<i>a</i>) and <b>6</b>(<i>b</i>) are flowcharts illustrating operation of a preferred embodiment of an e-mail firewall.
[0016]FIG. 7 is a block diagram showing further details of a portion of FIGS. <b>6</b>(<i>a</i>) and <b>6</b>(<i>b</i>).
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0017] In FIG. 1 of the drawings, e-mail networks <b>101</b> and <b>102</b> are coupled to e-mail network <b>103</b> by way of a Wide Area Network (WAN) <b>104</b> such as the Internet. Disposed between the internet <b>104</b> and e-mail network <b>101</b> and <b>103</b> are an access firewall <b>106</b> and an e-mail firewall <b>105</b>. E-mail network <b>102</b> is coupled to Internet <b>104</b> only by access firewall <b>106</b>.<b>1</b>. E-mail networks <b>101</b>, <b>102</b>, and <b>103</b> may each take a conventional form. For example, e-mail networks <b>101</b>-<b>103</b> may take the form of a Local Area Network (LAN) or a plurality of LANs which support one or more conventional e-mail messaging protocols. Access firewalls <b>106</b> may also take a conventional form. Access firewalls <b>106</b> operate to limit access to files stored within a computer network, such as e-mail networks <b>101</b>-<b>103</b>, from remotely located machines. E-mail firewalls <b>105</b> (individually shown as <b>105</b>.<b>1</b> and <b>105</b>.<b>2</b>) advantageously take a form as described in further detail herein to control transmission of electronic mail messages between an internal site and one or more external sites. An internal site for e-mail firewall <b>105</b>.<b>2</b>, by way of example, may take the form of e-mail network <b>103</b>. External sites for e-mail firewall <b>105</b>.<b>2</b> are any sites not contained in e-mail network <b>103</b>. For example, external sites for e-mail firewall <b>105</b>.<b>2</b> are any sites in e-mail networks <b>101</b> and <b>102</b> as well as any other sites coupled to Internet <b>104</b>. E-mail firewall <b>105</b> is preferably positioned on the “safe-side” of the access firewall <b>106</b>. FIG. 1 should be understood as showing, by way of an example, the principles of the embodiments described herein. The access firewalls <b>106</b> are shown only for purposes of explanation and are not required for operation of embodiments employing the principles of the present invention.
[0018] Preferably the e-mail firewall <b>105</b> takes the form of a program executing on a conventional general purpose computer. In an exemplary embodiment, the computer executes the Windows NT or Windows <b>2000</b> operating systems available from Microsoft Corp., of Redmond, Wash. In other embodiments, the computer executes a Unix operating system such as Solaris from Sun Microsystems, of Mountain View, Calif. Although e-mail firewall <b>105</b> is shown in FIG. 1 as operating on e-mail messages between an internal site and an external site, the e-mail firewall <b>105</b> may also be used to exchange messages between two internal sites for computer networks with SMTP compliant messaging backbones.
[0019]FIG. 2 of the drawings illustrates in block diagram form the major functional components of e-mail firewalls <b>105</b>.<b>1</b> and <b>105</b>.<b>2</b>. In FIG. 2, a Simple Mail Transfer Protocol (SMTP) relay module <b>202</b> performs the functions of a conventional SMTP relay host. An example of an Internet relay host is a UNIX Send mail program. The SMTP relay module <b>202</b> transmits and receives e-mail messages such as shown at <b>204</b> to and from an internal site <b>210</b> and external sites <b>212</b>. E-mail message <b>204</b> takes the form of a conventional e-mail message which contains a plurality of user specified information fields, such as source field <b>205</b> specifying an e-mail address for the source of the message <b>204</b>, a destination field <b>206</b> specifying one or more destination e-mail addresses for the message <b>204</b>, a subject field <b>207</b> specifying a subject for the message <b>204</b>, a body field <b>208</b> specifying the body of the message <b>204</b> containing textual and/or graphics data, and an optional attachment field <b>209</b>, specifying one or more files to be transmitted with the message <b>204</b>. Other user specified fields include, but are not limited to, priority of the message, identity of the sending agent, and the date and time of the message.
[0020] E-mail message <b>204</b> may be encoded in accordance with one of a plurality of encoding formats as explained in further detail below. SMTP relay module <b>202</b> preferably takes a conventional form of a software module which receives and transmits e-mail messages in accordance with the Simple Mail Transfer Protocol as specified by ‘Internet RFC <b>821</b>.’ The SMTP protocol is not critical to the invention. In other embodiments, the SMTP relay module is replaced with a module that receives and/or transmits messages in other formats such as the File Transfer Protocol (FTP), the Hyper-Text Transfer Protocol (HTTP), the Network News Transfer Protocol (NNTP), or the Internet Relay Chart (IRC).
[0021] In one embodiment, the SMTP relay module <b>202</b> is configured to use the Domain Name System (DNS) to determine routing to message recipients or alternatively is configured to relay messages to at least one administrator specified SMTP host. If DNS is selected, at least one SMTP host is specified to allow for default message forwarding even if DNS service is not available. The routing option can be overridden on a per-domain basis. The SMTP relay module <b>202</b> advantageously allows inbound and outbound SMTP connections to be limited from or to specific hosts and allows connections to or from specific SMTP hosts to be denied. Preferably, the SMTP relay module <b>202</b> transmits messages that include text messages and binary data e-mail messages, as is known in the art. The following illustration refers to a generic routing server, which facilitates some of the functionality provided by the SMTP relay module <b>202</b> to transmit e-mail messages in accordance with the invention.
[0022]FIG. 3 illustrates the manner in which messages received by the SMTP relay module <b>202</b> from internal site <b>210</b> and external site <b>212</b> are processed by policy engine <b>214</b>. Policy engine <b>214</b> accepts messages from SMTP relay module <b>202</b> and determines which policies are applicable to a message by building a list <b>302</b> of sender policies for the sender (source) <b>204</b> of the message, and building a list <b>302</b>, <b>306</b>, and <b>308</b> of recipient policies for each recipient. The policy engine <b>214</b> then calls the policy managers <b>216</b> to apply each policy. The different types of policies have a predetermined priority in which they are applied. For example, decryption policies are applied before other policies, to allow the policies that operate on the body <b>208</b> of the message to be able to access the contents contained therein. In an alternative embodiment, the order in which the policies are applied is selectable by a system administrator. Access manager policies get applied after decryption policies and then the other policy managers are called repeatedly in the order implied by the policies to be applied to the message. The policy engine <b>214</b> then receives results from policy managers <b>216</b> and transmits messages to SMTP relay module <b>202</b> in accordance with the received results. The results received by the policy engine <b>214</b> comprise actions such as disposition, annotation, and notification described in further detail herein. The result of processing of a message <b>204</b> by policy engine <b>214</b> can result in generation of a plurality of additional messages, for example, for notification to the sender or recipient, or to the system administrator. In a preferred embodiment, the policy engine <b>214</b> is implemented as a program executed by a digital computer.
[0023] Policy managers <b>216</b> operate to enforce policies entered by an administrator of e-mail firewall <b>105</b>. Policy managers <b>216</b> preferably comprise a plurality of modules for enforcing administrator configured policies, directed to specific aspects of e-mail messages. For example, in e-mail firewall <b>105</b>, policy manager <b>216</b> implements a plurality of manager modules including an access manager <b>218</b>, a content manager <b>220</b>, a format manager <b>222</b>, a virus manager <b>224</b>, and a security manager <b>226</b>. Policy managers <b>216</b> are preferably developed by inputs entered by an administrator by way of configuration module <b>230</b>. Configuration module <b>230</b> also operates, in response to information entered by an administrator, to configure SMTP relay <b>202</b> and policy engine <b>214</b>. The policy managers shown in FIG. 2 and described herein are merely illustrative of an exemplary embodiment. Other types of policy managers are contemplated as being within the principals described herein. As may further be appreciated, the policy managers <b>216</b> operate to enforce policies on all portions of the message in a recursive manner. Thus, when a massage contains another message as an attachment, or when an attachment includes several files, e.g., ZIP. File, the various modules operate on such included content regardless of how far within deep message the content is extracted from. Thus, when an e-mail has another e-mail attached which has an archive attached to it, the policy managers <b>216</b> operate on the received e-mail, the attached e-mail, extract all files from the archive, and operate on each of the extracted files.
[0024] Access manager <b>218</b> provides enforcement of access control policies such as destinations to which e-mail is prohibited from being sent, or sources from which e-mail cannot be received. In one embodiment, the access manager <b>218</b> refers to a directory, such as a LDAP directory, when reviewing message destinations and sources. Access manager <b>218</b> can also filter messages that exceed a maximum message size determined by an administrator, or which contain specific words in the subject field <b>207</b> of the message. Access manager <b>218</b> can also filter a message by the priority of the message specified by the user. For example, high priority messages can be passed through immediately, while low priority messages are stored in a queue (explained in further detail in connection with FIG. <b>7</b>). Access manager <b>218</b> can also filter messages by the date and/or time of transmission of the message. For example, messages transmitted between certain hours of the day or on certain days, such as weekends or holidays may be retained or further filtered by, for example, content manager <b>220</b>.
[0025] Content manager <b>220</b> supports the enforcement of content control policies. The content manager <b>220</b> examines the message's content to determine if a content policy is applicable to the message. Preferably content manager <b>214</b> supports filtering by one or more of the following criteria: (a) specific words, or word patterns, in the body <b>208</b>; (b) specific words in the subject <b>207</b>; (c) attachment <b>209</b> (all or by name/type such as video or sound); (d) specific words, or word patterns, in the attachment <b>209</b>. In one embodiment, the number of filter criteria matches is tracked to provide a match total for the message. The match total is then compared to a threshold to determine whether a dependent criteria is satisfied. For non-plain text attachments, such as PDF files and spreadsheets, text is extracted by employing well known content extraction software such as filter programs widely available as open source software. Filtering by attachment type also includes prompting a signature verification process for certain type attachments, such as executables. Content control policies, and other appropriate policies, can also be specified to require certain material, such as for example, certain notices or disclaimers. Other content policies block messages that include executables, including interpreted executables such as JavaScript. This blocking can extend to attachments that include embedded code or macros. In some embodiments, the prohibited embedded code is removed from the attachment while the message is allowed to pass to the recipient. This blocking is one form of preventing virus programs from infecting a recipient computer. A second form is enforcement provided by virus manager <b>224</b>.
[0026] Virus manager <b>224</b> supports the enforcement of virus control policies by detecting virus infected e-mail attachments. Virus manager <b>224</b> preferably detects viruses contained in a plurality of compressed file formats including PKZip, PKLite, ARJ, LZExe, LHA, and MSCompress. Virus manager <b>224</b>, by way of example, may use a commercially available virus scanning engine. Virus manager <b>224</b> also preferably applies policies on “clean messages,” that is, messages that have been scanned for a virus and found to be free of any viruses. In this embodiment, a “clean stamp” annotation is added to such messages, indicating that no viruses were detected.
[0027] Format manager <b>222</b> provides conversion of an e-mail message from a first format to a second format. In a preferred embodiment, format manager <b>222</b> converts messages from conventional, UUENCODE format to MIME format. Preferably format manager <b>222</b> converts messages prior to message processing by other policy managers.
[0028] Security manager <b>226</b> preferably enforces a plurality of e-mail encryption policies. Preferably, security manager <b>226</b> enforces a client security usage policy, a preserve encryption policy, a plain text access policy, and default action policies. Security manager <b>226</b> also applies on behalf of users proxy encryption and signature policies, as discussed in further detail in connection with FIG. 5(<i>b</i>).
[0029] Other actions associated with the policy managers <b>216</b> include prompting for secure delivery and archiving the message. In one embodiment, secure routing is implemented by forwarding the message to the destination over a predefined transmission route such as that provided by TLS. In another embodiment, secure routing is by a redirection of the message to a secure message delivery service such as IME service from Tumbleweed Communication of Redwood City, Calif.
[0030] In one embodiment, client security usage policies specify that certain users, under certain conditions, should perform encryption or signature, or both, at the desktop. Additional criteria can be set to indicate when this policy should be enforced. For example, an e-mail from a company's CEO to the company's legal counsel by the domain or full e-mail address can be specified to require either encryption, signature, or both, to enforce attorney-client privilege and to preserve encryption policies. Moreover, client security usage policies can be used to specify that messages, which are already in encrypted form and perhaps meet some other criteria, should be preserved. Thus, such messages are not processed, modified, or encrypted by the e-mail firewall <b>105</b>. Furthermore, the security policy may also select varying encryption methods as a result of applying policy to transmitted e-mail. Plain text access policies require that the e-mail firewall <b>105</b> is designated as a recipient on certain types of specified messages. The e-mail firewall <b>105</b> is designated as a recipient on encrypted messages in order to apply access, content, virus, and other policies on the message. Plain text access policies can also be used to send a signed notification to the sender of a message as a way of providing the sender with the e-mail firewall's <b>105</b> public key. Default action policies indicate the action to be taken on messages, which are not encrypted and will not be encrypted by the e-mail firewall <b>105</b>, and which might meet some other criteria. The default action policy type is used to ensure that certain messages get encrypted somewhere, whether at the desktop or by the e-mail firewall <b>105</b>.
[0031] Policies are preferably entered by an authorized administrator by way of configuration module <b>230</b> which preferably takes the form of a program executing on a stored program computer. Policies can advantageously be applied to users, either individually or by e-mail domains or other groupings. FIG. 4 shows an example of how policies are applied. Users can be organized in a hierarchical directory-type structure to facilitate grouping of users and/or domains. If a policy is applied to a given directory then sub-directories corresponding to the given directory inherit such policies. For example, in FIG. 4, policy 1 applies to subdirectory <b>404</b> and thus applies to all sub-directories, domains and users, such as sub-directory <b>412</b>, user <b>408</b>, and domain <b>410</b>, corresponding to sub-directory <b>404</b>, unless that policy is explicitly overridden by another policy applied to a particular sub-directory or to an intervening sub-directory. For example, policy 3 will override policy 1, for users shown at <b>408</b>, where there are conflicts between policy 1 and policy 3, and will supplement policy 1, where there are no conflicts. Exception 1 will override policies 1 and 3 for the particular exception specified in exception <b>1</b>. As further shown in FIG. 4, policy 1 applies to users <b>414</b>, <b>416</b>, and <b>418</b>, and is overridden by policy 2 for users <b>414</b>, <b>416</b>, and <b>418</b> in the event of conflicts, and is supplemented where there are no conflicts. This advantageously allows policies to be easily applied to groups of users. The exact manner in which the policies are stored is not critical, and a variety of means and formats of storage may be employed.
[0032] E-mail messages <b>204</b> received and/or transmitted by SMTP relay <b>202</b> are preferably encoded in accordance with the S/MIME (Secure/Multipurpose Internet Mail Extension) protocol, as specified by the Internet Engineering Task Force in documents entitled “S/MIME Message Specification” (1997) and “S/MIME Certificate Handling” (1997). Advantageously, the S/MIME protocol builds security on top of the industry standard MIME protocol according to Public Key Cryptography Standards (PKCS) specified by RSA Data Security, Inc. S/MIME advantageously offers security services for authentication using digital certificates, and privacy, using encryption. Digital certificates are preferably implemented in accordance with the X.509 format as specified in “Information Technology—Open Systems Interconnection—The Directory: Authentication Framework,” also known as “ITU-T Recommendation X.509” (June 1997). Encryption is preferably performed by one of the following symmetric encryption algorithms: DES, Triple-DES, RC2, and other algorithms introduced by revisions of the S/MIME standard. The S/MIME protocol is well known and widely used and provides encryption and digital signatures and is therefore preferable as a communications protocol. The precise details by which the protocol operates is not critical. Moreover, it should be understood that other secure messaging protocols such as PGP (Pretty Good Privacy) or Open PGP, as specified by the ITF working group, may also be used.
[0033] Access manager <b>218</b> is the first policy manager to process e-mail message <b>204</b>. Access manager <b>218</b> operates only on message header information which is not encrypted. Thus, access manager <b>218</b> may operate on an e-mail message <b>204</b> prior to decryption by S/MIME engine <b>215</b>. The term “message header information” generally refers to portions of message excluding the body <b>208</b> (and commonly referred to as message text), and attachments <b>209</b>. Thus, the header information includes the source, destination, and subject fields (<b>205</b>, <b>206</b>, <b>207</b>). Optional header fields include date/time stamp, priority, and sending agent. The remainder of the modules operate on the message <b>204</b> after processing by S/MIME engine <b>215</b>. As previously noted, format manager <b>222</b> preferably operates on messages prior to operation by other managers such as virus manager <b>224</b>, security manager <b>226</b>, and content manager <b>220</b>.
[0034] The S/MIME protocol allows two sites which support the S/MIME protocol to exchange secure e-mail messages <b>204</b>. A type of virtual private network (VPN), as shown in FIG. 5(<i>a</i>), can be achieved if both the transmitting and receiving site perform S/MIME functions. The resulting VPN, termed herein an “object level e-mail VPN,” provides encryption/signature and/or decryption/verification of messages between transmitting and receiving site(s). In the object level e-mail VPN shown in FIG. 5(<i>a</i>), each object (message) is encrypted individually and sent over a standard (SMTP) transport medium, where each object (message) is decrypted at the other end. Advantageously, the object level e-mail VPN does not require a secure real-time connection as required by conventional VPNs. As shown in FIG. 5(<i>a</i>), mail servers <b>105</b>.<b>1</b> and <b>105</b>.<b>2</b> perform functions described herein for e-mail firewall <b>105</b>, and as a result, achieve an object level e-mail VPN between them. E-mail that is encrypted and transmitted between servers <b>105</b>.<b>1</b> and <b>105</b>.<b>2</b> is protected from disclosure to third parties, despite the fact that e-mail transmitted via the Internet <b>104</b> may pass through numerous unsecured servers before reaching its destination. Accordingly, one may appreciate that it is not required for the intermediate e-mail relay servers between servers <b>105</b>.<b>1</b> and <b>105</b>.<b>2</b> to support encryption or decryption of messages.
[0035] In one embodiment, in such an exchange, e-mail firewalls <b>105</b>.<b>1</b> and <b>105</b>.<b>2</b> provide key pair and public key certificate generation and provide automated or manual public key certificate exchange with the other S/MIME server. In addition, e-mail firewalls <b>105</b>.<b>1</b> and <b>105</b>.<b>2</b> allow: identification of the other S/MIME server through directory domain records, association of directory domain records with server certificates and selection of encryption/signature algorithms and key lengths. The directory domain records, and the directory user records referred to below, are as described in FIG. 4.
[0036] Exchange of S/MIME encoded messages may also be performed between the e-mail firewalls <b>105</b>.<b>1</b>, <b>105</b>.<b>2</b> and an S/MIME client coupled in a server that does not perform S/MIME functions. FIG. 5(<i>b</i>) illustrates an exchange between e-mail firewall <b>105</b> and a S/MIME client coupled to a non-S/MIME server <b>506</b>. In FIG. 5(<i>b</i>), server <b>105</b>.<b>1</b> encrypts and decrypts messages on behalf of client <b>502</b>.<b>2</b> and generally provides the functions described above for e-mail firewalls <b>105</b>.<b>1</b> and <b>105</b>.<b>2</b>. Specifically, in such an exchange, e-mail firewall <b>105</b>.<b>1</b> provides key pair and public key certificate generation and provides automated or manual public key certificate exchange with the client <b>508</b>.<b>1</b>. In addition, e-mail firewall <b>105</b>.<b>1</b> allows: identification of the client <b>508</b>.<b>1</b> through directory user records, association of directory user records with user certificates and selection of encryption/signature algorithms and key lengths. Client <b>508</b>.<b>1</b> provides encryption/decryption services to allow messages to be transmitted securely through server <b>506</b> by supporting encryption/decryption services. A specific type of object level VPN, referred to herein as “proxy security,” is achieved in FIG. 5(<i>b</i>) between the server <b>105</b>.<b>1</b> and the client <b>508</b>.<b>1</b>. In proxy security, at least one client is involved in performing encryption/decryption, such as client <b>508</b>.<b>1</b> in FIG. 5(<i>b</i>). This is in contrast to the arrangement of FIG. 5(<i>a</i>), where the encryption/decryption services performed by servers <b>105</b>.<b>1</b> and <b>105</b>.<b>2</b> is transparent to the clients <b>502</b>.<b>1</b> and <b>502</b>.<b>2</b>.
[0037] In FIG. 5(<i>a</i>), communications between servers <b>105</b>.<b>1</b> and <b>105</b>.<b>2</b> are secure, but communications between clients <b>502</b>.<b>1</b> and <b>502</b>.<b>2</b> and their respective servers <b>105</b>.<b>1</b> and <b>105</b>.<b>2</b> are not necessarily secure. In many such installations, security is not necessary because the client <b>502</b>.<b>1</b> and the server <b>105</b>.<b>1</b> typically communicate over a common LAN, which is protected from the Internet by a standard firewall. However, if such security is desired, the clients <b>508</b>.<b>1</b> and <b>508</b>.<b>2</b> can also be equipped with encryption/decryption services to perform proxy security, as is shown in FIG. 5(<i>c</i>). The servers <b>105</b>.<b>1</b> and <b>105</b>.<b>2</b> perform the same function described above in connection with FIG. 5(<i>a</i>) and therefore achieve an object level VPN. In addition, the clients <b>508</b>.<b>2</b> and <b>508</b>.<b>1</b> allow secure communications with the corresponding servers <b>105</b>.<b>1</b> and <b>105</b>.<b>2</b>. It should be noted that the encryption/decryption performed by servers <b>105</b>.<b>1</b> and <b>105</b>.<b>2</b> can be independent of the encryption performed by the corresponding clients <b>508</b>.<b>2</b> and <b>508</b>.<b>1</b>. For example, a message by client <b>508</b>.<b>2</b> to client <b>508</b>.<b>1</b> may be encrypted when transmitted to server <b>105</b>.<b>1</b>, decrypted by server <b>105</b>.<b>1</b> and subjected to appropriate actions by the policy managers. The message may then be encrypted for transmission to server <b>105</b>.<b>2</b>, decrypted by server <b>105</b>.<b>2</b>, and subjected to appropriate actions by the policy managers, and encrypted for transmission to client <b>508</b>.<b>1</b> which decrypts the message. Alternatively, a message by client <b>508</b>.<b>2</b> to client <b>508</b>.<b>1</b> may be encrypted by client <b>508</b>.<b>2</b>, be subjected to appropriate actions to non-encrypted portions, such as the destination field, and then the entire message, including the portions not encrypted by client <b>508</b>.<b>2</b>, can be encrypted again by server <b>105</b>.<b>1</b> for transmission to server <b>105</b>.<b>2</b>, which decrypts the encryption by server <b>105</b>.<b>1</b>, and transmits the message to client <b>508</b>.<b>1</b> for decryption of the encryption performed by client <b>508</b>.<b>2</b>. Several combinations of the foregoing two scenarios are possible. In another embodiment, the client to server connection is protected by means other than object level security such by using a Secure Socket Layer (SSL) connection while the connection between servers is by an object level VPN in accordance with the invention.
[0038] Each e-mail message <b>204</b> processed by e-mail firewall <b>105</b> is processed in accordance with the steps shown in FIGS. <b>6</b>(<i>a</i>) and <b>6</b>(<i>b</i>). FIG. 6(<i>a</i>) is a flowchart showing operation of the e-mail firewall <b>105</b> in response to a received message. FIG. 6(<i>b</i>) is a flowchart showing operation of the e-mail firewall <b>105</b> prior to transmitting a message. The messages processed by e-mail firewall <b>105</b> may be received from an internal site for transmission to an internal site, or may be received from an internal site for transmission to an external site, or may be received from an external site for transmission to an internal site. Any single message may include internal and external destinations <b>206</b>. The steps shown in FIGS. <b>6</b>(<i>a</i>) and <b>6</b>(<i>b</i>) are preferably performed by generation of sender and recipient policies shown in FIG. 3. For multiple destinations, the steps shown in FIG. 6(<i>b</i>) may therefore be performed differently and have different results for different destinations.
[0039] Turning to FIG. 6(<i>a</i>), at <b>602</b>, the e-mail firewall <b>105</b> determines if decryption of portions of the message <b>204</b> is required. If so, then at <b>604</b>, decryption is performed in accordance with stored private keys <b>628</b>. Storing private keys is well known in the art of public key cryptography. After decryption, or if no decryption is required, the e-mail firewall <b>105</b> applies policy managers <b>216</b>, which can perform four types of actions (shown at <b>610</b>, <b>612</b>, <b>614</b>, <b>616</b>, and <b>620</b>) on e-mail message <b>204</b> for each policy. Criteria actions <b>610</b> present filtering criteria selected by the administrator. Exception actions <b>612</b> determine which criteria <b>610</b> are excluded. Multiple criteria <b>610</b> can be selected which effectively results in a logical AND operation of the criteria. Multiple exceptions <b>612</b> can be selected which effectively results in a logical OR operation of the exceptions; that is, any one of the exception conditions being true will result in a policy not being triggered. In another embodiment, a generic Boolean expression is used in lieu of the criteria and exception combination. Annotation actions <b>614</b> cause generation of attachment to message <b>602</b> or insertion of text into the body <b>208</b> of the message. The manner by which annotations are made is based on a policy entered by the administrator. Notification actions <b>616</b> cause the sending of one or more e-mail notifications when a given policy is triggered. Notifications can be sent to sender, recipient, administrator, or any e-mail address that is defined by the administrator. In addition, notification actions <b>616</b> allow specification of whether the original message <b>204</b> should accompany the notification. Disposition action <b>620</b> determines whether the message should continue to the destination(s) (specified by field <b>620</b>) or whether one of a plurality of alternative actions <b>622</b> such as deferral, quarantine, return to sender, or dropping of the message are required.
[0040] Referring now back to FIG. 6(<i>b</i>), the illustrated steps are performed for each destination specified for a message <b>204</b>. The steps shown in FIG. 6(<i>b</i>) are also performed for messages generated by step <b>622</b>. First, policy managers <b>216</b> perform actions <b>610</b>, <b>612</b>, <b>614</b> and <b>616</b>, for each destination specified in the message <b>204</b>. Disposition action <b>623</b>, operates similarly to disposition action <b>620</b> by determining whether the message should continue to the destination(s) or whether one of a plurality of alternative actions <b>622</b> such as deferral, quarantine, return to sender, or dropping of the message, are required. At step <b>624</b>, a determination is made if encryption or signature is required. If encryption is required, then at step <b>626</b> encryption is performed in accordance with stored keys <b>628</b>. If a signature is required, a signature is added at step <b>629</b>. Notice that some implementation may instead choose to sign before encrypting. The message is then transmitted to the specified destination at step <b>630</b>. Messages that are processed by block <b>622</b> are also checked at step <b>624</b> before transmission. For example, messages that are deferred, quarantined, or returned to the sender, may need to be encrypted or include a signature.
[0041]FIG. 7 is a block diagram showing further details of alternative actions <b>622</b>. Messages received from disposition step <b>620</b> are stored in one of the four queues <b>702</b>, which include quarantine queue <b>704</b>, retry queue <b>706</b>, dead letter queue <b>708</b>, and defer queue <b>709</b> depending upon the specified disposition of the message. Quarantine queue <b>704</b> stores messages for subsequent retrieval and review by a system administrator or other authorized person. Retry queue <b>706</b> stores messages for which delivery has failed. Transmission of messages in the retry queue <b>706</b> is subsequently re-attempted. Dead letter queue <b>708</b> stores messages which continue to be undeliverable after several retries and which cannot be returned to the sender. Messages in the dead letter queue <b>708</b> may be acted upon by a system administrator. Defer queue <b>709</b> stores messages to be delivered automatically at a later time, for example an off-peak-time such as a weekend or night time. Configuration module <b>230</b> provides a plurality of actions <b>710</b>-<b>714</b> which may be performed on the messages in queue <b>702</b>. The messages can be viewed <b>710</b> by the administrator, returned to the sender <b>711</b>, deleted <b>712</b>, sent to the specified destination(s) <b>713</b> and/or saved <b>714</b>.
[0042] It is to be understood that the specific mechanisms and techniques which have been described are merely illustrative of one application of the principals of the invention. Numerous modifications may be made to the methods and apparatus described without departing from the true spirit and scope of the invention.
Contents6
10 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6 Sheet 7 Sheet 8 Sheet 9 Sheet 10
Every citation, both ways
| Document | Relation | Office | Cited during |
|---|---|---|---|
| US2010169638A1 | Cited by | United States of America | Pre-grant |
| US2012100839A1 | Cited by | United States of America | Pre-grant |
| US8804966B2 | Cited by | United States of America | Applicant |
| US2007214353A1 | Cited by | United States of America | Pre-grant |
| US8255683B2 | Cited by | United States of America | Applicant |
| US9338026B2 | Cited by | United States of America | Applicant |
| US7310816B1 | Cited by | United States of America | Search report |
| US7650510B2 | Cited by | United States of America | Search report |
| US2015222650A1 | Cited by | United States of America | Pre-grant |
| US2005262575A1 | Cited by | United States of America | Pre-grant |
| US10284511B2 | Cited by | United States of America | Applicant |
| US2005153686A1 | Cited by | United States of America | Pre-grant |
| US8607042B2 | Cited by | United States of America | Applicant |
| US10250743B2 | Cited by | United States of America | Search report |
| US8191105B2 | Cited by | United States of America | Search report |
| US2011195690A1 | Cited by | United States of America | Pre-grant |
| US2007174362A1 | Cited by | United States of America | Pre-grant |
| US8355701B2 | Cited by | United States of America | Applicant |
| USRE43302E1 | Cited by | United States of America | Applicant |
| US9240978B2 | Cited by | United States of America | Search report |
| US2005228864A1 | Cited by | United States of America | Pre-grant |
| USRE43302E | Cited by | United States of America | Applicant |
| US2007005983A1 | Cited by | United States of America | Pre-grant |
| US2007245416A1 | Cited by | United States of America | Pre-grant |
| US8315601B2 | Cited by | United States of America | Applicant |
| US10469510B2 | Cited by | United States of America | Search report |
| US8195128B2 | Cited by | United States of America | Applicant |
| US8037528B2 | Cited by | United States of America | Search report |
| US2004049696A1 | Cited by | United States of America | Pre-grant |
| US2007118874A1 | Cited by | United States of America | Pre-grant |
| US2004054914A1 | Cited by | United States of America | Pre-grant |
| US2008098477A1 | Cited by | United States of America | Pre-grant |
| US2004193922A1 | Cited by | United States of America | Pre-grant |
| US2015222650A1 | Cited by | United States of America | Search report |
| US8438465B2 | Cited by | United States of America | Search report |
| US7380274B2 | Cited by | United States of America | Applicant |
| US8611936B2 | Cited by | United States of America | Applicant |
| US5278984A | Cites | United States of America | Pre-grant |
| US5283856A | Cites | United States of America | Pre-grant |
| US5331543A | Cites | United States of America | Pre-grant |
| US5369707A | Cites | United States of America | Pre-grant |
| US5414833A | Cites | United States of America | Pre-grant |
| US5416842A | Cites | United States of America | Pre-grant |
| US5530758A | Cites | United States of America | Pre-grant |
| US5555346A | Cites | United States of America | Pre-grant |
| US5577202A | Cites | United States of America | Pre-grant |
| US5606668A | Cites | United States of America | Pre-grant |
| US5623600A | Cites | United States of America | Pre-grant |
| US5627764A | Cites | United States of America | Pre-grant |
| US5632011A | Cites | United States of America | Pre-grant |
| US5748884A | Cites | United States of America | Pre-grant |
| US5778174A | Cites | United States of America | Pre-grant |
| US5802253A | Cites | United States of America | Pre-grant |
| US5828893A | Cites | United States of America | Pre-grant |
| US5835726A | Cites | United States of America | Pre-grant |
| US6072942A | Cites | United States of America | Pre-grant |
| US6324648B1 | Cites | United States of America | Pre-grant |
| US6393566B1 | Cites | United States of America | Pre-grant |
60 members in 9 offices
Priority claims10
| Document | Office | Kind | Date |
|---|---|---|---|
| 5366897 | United States of America | P | |
| 5366897 | United States of America | P | |
| 18037798 | United States of America | A | |
| 18037798 | United States of America | A | |
| 41921903 | United States of America | A | |
| 09180377 | – | – | – |
| 60053668 | – | – | – |
| US19970053668P | – | – | – |
| US19980180377 | – | – | – |
| US20030419219 | – | – | – |
Members60
| Document | Office | Kind | |
|---|---|---|---|
| CA2301147A1 | Canada | A1 | |
| WO9905814A2 | World Intellectual Property Organization (WIPO) | A2 | |
| AU8759098A | Australia | A | |
| WO9905814A3 | World Intellectual Property Organization (WIPO) | A3 | |
| EP1010283A2 | European Patent Office (EPO) | A2 | |
| HK1029013A1 | Hong Kong, China | A1 | |
| JP2001518724A | Japan | A | |
| US2002169954A1 | United States of America | A1 | |
| US2002199095A1 | United States of America | A1 | |
| WO03001326A2 | World Intellectual Property Organization (WIPO) | A2 | |
| AU2002345739A1 | Australia | A1 | |
| US6609196B1 | United States of America | B1 | |
| US2003196098A1 | United States of America | A1 | |
| WO03001326A3 | World Intellectual Property Organization (WIPO) | A3 | |
| US2004054886A1 | United States of America | A1 | |
| US2004193922A1 | United States of America | A1 | |
| US2005081059A1 | United States of America | A1 | |
| EP1010283A4 | European Patent Office (EPO) | A4 | |
| US7117358B2 | United States of America | B2 | |
| US7127741B2 | United States of America | B2 | |
| EP1010283B1 | European Patent Office (EPO) | B1 | |
| US2006282888A1 | United States of America | A1 | |
| AT347200T | Austria | T | |
| ATE347200T1 | Austria | T1 | |
| US2007005983A1 | United States of America | A1 | |
| US7162738B2 | United States of America | B2 | |
| DE69836545D1 | Germany | D1 | |
| US2007011737A1 | United States of America | A1 | |
| EP1750384A1 | European Patent Office (EPO) | A1 | |
| DE69836545T2 | Germany | T2 | |
| JP3932319B2 | Japan | B2 | |
| US2007214353A1 | United States of America | A1 | |
| US2007245416A1 | United States of America | A1 | |
| US7380274B2 | United States of America | B2 | |
| US7389413B2 | United States of America | B2 | |
| US7401356B2 | United States of America | B2 | |
| US2008250503A1 | United States of America | A1 | |
| US2008270789A1 | United States of America | A1 | |
| US2009157708A1 | United States of America | A1 | |
| EP1750384B1 | European Patent Office (EPO) | B1 | |
| AT444614T | Austria | T | |
| ATE444614T1 | Austria | T1 | |
| DE69841210D1 | Germany | D1 | |
| CA2301147C | Canada | C | |
| USRE43302E | United States of America | E | |
| US8255683B2 | United States of America | B2 | |
| US8407780B2 | United States of America | B2 | |
| US2013198798A1 | United States of America | A1 | |
| US8607042B2 | United States of America | B2 | |
| US2014041013A1 | United States of America | A1 | |
| US8806191B2 | United States of America | B2 | |
| US2014351883A1 | United States of America | A1 | |
| US8943308B2 | United States of America | B2 | |
| US2015195290A1 | United States of America | A1 | |
| US9338026B2 | United States of America | B2 | |
| US9444826B2 | United States of America | B2 | |
| US2017070461A1 | United States of America | A1 | |
| US9838358B2 | United States of America | B2 | |
| US10116621B2 | United States of America | B2 | |
| US10581778B2 | United States of America | B2 |
12 transactions on the USPTO file
Abandoned after 1 non-final rejection.
- Non-final rejections
- 1
- Final rejections
- 0
- RCEs
- 0
- Appeals
- 0
Over time
Point at a mark for the transactionTransactions
| Event | Code | |
|---|---|---|
| Mail Abandonment for Failure to Respond to Office ActionAbandonedMABN2 | MABN2 | |
| Aband. for Failure to Respond to O. A.AbandonedABN2 | ABN2 | |
| Mail Non-Final RejectionNon-final rejectionMCTNF | MCTNF | |
| Non-Final RejectionNon-final rejectionCTNF | CTNF | |
| IFW TSS Processing by Tech Center CompleteTSSCOMP | TSSCOMP | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Application Dispatched from OIPEOIPE | OIPE | |
| Application Is Now CompleteCOMP | COMP | |
| IFW Scan & PACR Auto Security ReviewSCAN | SCAN | |
| Information Disclosure Statement (IDS) FiledM844 | M844 | |
| Information Disclosure Statement (IDS) FiledWIDS | WIDS | |
| Initial Exam Team nnIEXX | IEXX |
1 legal event, as the office reported them to INPADOC
Events
| Event | Code | |
|---|---|---|
| Information on status: application discontinuationABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTIONSTCB | STCB |
Numbers
- Publication, DOCDB
- 2003196098
- Publication, EPODOC
- US2003196098
- Application
- 10419219
- Application, DOCDB
- 41921903
- Application, EPODOC
- US20030419219
Titles
- English
- E-mail firewall with stored key encryption/decryption
Classification
- CPC, 11
- H04L63/0263
- H04L63/0227
- H04L51/063
- H04L51/12
- H04L63/0245
- H04L51/24
- H04L63/0428
- H04L63/0464
- H04L2209/76
- H04L51/212
- H04L51/224
- IPC, 8
- G06F1 00
- G06F13 00
- G06F21 00
- H04L9 00
- H04L9 14
- H04L12 22
- H04L12 58
- H04L29 06
- USPC, 2
- 713188000
- 713150000