[go: up one dir, main page]

CN1905449B - Method and apparatus for processing digitally signed messages to determine address mismatches - Google Patents

Method and apparatus for processing digitally signed messages to determine address mismatches Download PDF

Info

Publication number
CN1905449B
CN1905449B CN2006101055295A CN200610105529A CN1905449B CN 1905449 B CN1905449 B CN 1905449B CN 2006101055295 A CN2006101055295 A CN 2006101055295A CN 200610105529 A CN200610105529 A CN 200610105529A CN 1905449 B CN1905449 B CN 1905449B
Authority
CN
China
Prior art keywords
message
address
digital signature
key
sender
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.)
Expired - Fee Related
Application number
CN2006101055295A
Other languages
Chinese (zh)
Other versions
CN1905449A (en
Inventor
迈克尔·K·布朗
迈克尔·G·柯卡普
迈克尔·S·布朗
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.)
Maliki Innovation Co ltd
BlackBerry Ltd
Original Assignee
Research in Motion Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Research in Motion Ltd filed Critical Research in Motion Ltd
Publication of CN1905449A publication Critical patent/CN1905449A/en
Application granted granted Critical
Publication of CN1905449B publication Critical patent/CN1905449B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/126Applying verification of the received information the source of the received data

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)
  • Mobile Radio Communication Systems (AREA)
  • Storage Device Security (AREA)
  • Information Transfer Between Computers (AREA)
  • Debugging And Monitoring (AREA)

Abstract

一种方法和设备,用于处理其中检测到地址失配的数字签名消息。在至少一个方面中,通过针对与出现在消息分隔符之后的已签名数据相对应的数字签名来执行至少一个预定动作,对于正确地并入由消息发送者之外的他人所签名的消息部分的消息,可以使报告给消息用户的地址失配错误的数目最小化,与消息包含谈话线程的情况相同。例如,消息分隔符可以指示消息包含来自旧的转发消息的数据或来自被回复的旧消息的数据。例如,所述至少一个预定动作可以包括:绕过针对这些数字签名的地址匹配的验证;或验证这些数字签名的地址匹配,但是禁止向用户通知任何地址失配错误。

A method and apparatus for processing digitally signed messages in which an address mismatch is detected. In at least one aspect, by performing at least one predetermined action on the digital signature corresponding to the signed data that appears after the message delimiter, correct incorporation of a message portion signed by someone other than the sender of the message message to minimize the number of address mismatch errors reported to the message user, as is the case if the message contains chat threads. For example, a message delimiter may indicate that the message contains data from an old forwarded message or data from an old message that was replied to. For example, the at least one predetermined action may include: bypassing verification that the digitally signed addresses match; or verifying that the digitally signed addresses match, but refraining from notifying the user of any address mismatch errors.

Description

处理数字签名消息以确定地址失配的方法和设备 Method and apparatus for processing digitally signed messages to determine address mismatch

本专利文献公开的一部分包含受版权保护的素材。版权所有人对于任何人复制专利文献或专利公开没有异议,因为它出现在专利商标局专利文件或记录中,但是仍然保留所有的版权。 Portions of the disclosure of this patent document contain material that is subject to copyright protection. The copyright owner has no objection to anyone's reproduction of the patent document or the patent disclosure as it appears in the Patent and Trademark Office patent file or records, but all copyright rights are reserved. the

技术领域technical field

本发明的实施例大体上涉及消息(例如电子邮件消息)的处理,更具体地,涉及计算设备(例如移动设备)的用户所接收的数字签名消息的处理。 Embodiments of the invention relate generally to the processing of messages, such as email messages, and more particularly, to the processing of digitally signed messages received by users of computing devices, such as mobile devices. the

背景技术Background technique

电子邮件(“e-mail”)消息通常可以使用多种已知协议之一来编码,以利于安全的消息通信。例如,安全多用途因特网邮件扩展(“S/MIME”)协议依靠公共和私有加密密钥要提供机密性和完整性,并且依靠公钥基础设施(PKI)来通信提供认证和授权的信息。使用私钥/公钥对的私钥编码的数据可以仅使用该对的相应公钥来进行解码,并且使用私钥/公钥对的公钥编码的数据可以仅使用该对的相应私钥来进行解码。可以采用其它公知标准和协议以利于安全消息通信,例如Pretty Good PrivacyTM(PGP)以及例如OpenPGP的PGP变体。基于PGP的系统同样使用公开和秘密加密密钥来提供机密性和完整性,尽管按照与S/MIME系统相比所不同的方式来验证在PGP消息的编码中使用的公钥的认证。可以在安全消息通信标准和协议中提供与包含公钥和密钥持有者信息的“证书”(例如,与S/MIME中使用的相同)类似的结构。这种结构的一个示例被公知为基于PGP系统中的“PGP密钥”。 Electronic mail ("e-mail") messages may typically be encoded using one of several known protocols to facilitate secure message communication. For example, the Secure Multipurpose Internet Mail Extensions ("S/MIME") protocol relies on public and private encryption keys to provide confidentiality and integrity, and relies on a public key infrastructure (PKI) to communicate information providing authentication and authorization. Data encoded using the private key of a private/public key pair can be decoded using only the pair's corresponding public key, and data encoded using the public key of a private/public key pair can be decoded using only the pair's corresponding private key to decode. Other well-known standards and protocols may be employed to facilitate secure messaging, such as Pretty Good Privacy (PGP) and PGP variants such as OpenPGP. PGP-based systems also use public and secret encryption keys to provide confidentiality and integrity, although in a different manner than S/MIME systems verify the authentication of the public keys used in the encoding of PGP messages. A structure similar to a "certificate" (eg, the same as used in S/MIME) containing a public key and key holder information may be provided in secure messaging standards and protocols. One example of such a structure is known as a "PGP key" based in the PGP system.

可以对编码消息进行加密、数字签名(签名)或同时加密和数字签名。考虑由计算设备(例如移动设备)处的用户接收的签名消息。典型地,该消息包括使用签名者的私钥所产生的一个数字签名,尽管一些协议可以允许对消息的多个独立部分进行签名。在对消息的多个部分进行签名的情况下,消息可以包括多个数字签名。如果用户拥有能够成功解码由签名者的私钥所产生的给定数字签名的公钥,则用户能够认证该签名者并且验证已签名数据的完整性。在一些情况下,公钥伴随着接收消息。 Encoded messages can be encrypted, digitally signed (signed), or both encrypted and digitally signed. Consider a signed message received by a user at a computing device (eg, a mobile device). Typically, the message includes a digital signature generated using the signer's private key, although some protocols may allow separate parts of the message to be signed. Where multiple parts of a message are signed, the message may include multiple digital signatures. If a user possesses a public key capable of successfully decoding a given digital signature produced by the signer's private key, the user can authenticate the signer and verify the integrity of the signed data. In some cases, the public key accompanies the received message. the

尽管数字签名的使用提供了保护,然而,仍然存在会损害安全的情况。例如,可以使用个人的私钥来签名消息。用户接收该消息,并且伴随该消息的公钥成功地解码消息中的数字签名。数字签名的成功验证表明这个人对该消息进行签名并且在传送中没有修改该消息。然而,假定用户不知道用于编码数字签名的私钥不属于消息的报头中所识别的消息发送者。在该示例中,导致用户错误地认为由所识别的发送者对该消息进行签名,即使所识别的发送者实际上不是签名该消息的个人。 Although the use of digital signatures provides protection, however, there are still situations where security can be compromised. For example, an individual's private key can be used to sign a message. The user receives the message, and the public key accompanying the message successfully decodes the digital signature in the message. Successful verification of a digital signature indicates that the person signed the message and did not modify the message in transit. However, it is assumed that the user does not know that the private key used to encode the digital signature does not belong to the sender of the message identified in the header of the message. In this example, the user is led to mistakenly believe that the message was signed by the identified sender, even though the identified sender is not actually the individual who signed the message. the

发明内容Contents of the invention

根据本发明的一方面,提供了一种处理在计算设备处接收的签名消息的方法,所述方法包括步骤:接收消息,所述消息包括:报头,至少包括发送者地址;至少一部分已签名数据;与已签名数据的每一部分相对应的数字签名;以及至少一个消息分隔符,所述消息分隔符指示了至少一个旧消息被并入了所接收消息;确定第一消息分隔符是否出现在一部分已签名数据中,其中第一消息分隔符在接收消息中的出现表示出现在第一消息分隔符之前的消息中的数据来源于所接收消息的发送者,而第一消息分隔符之后的数据来源于所述发送者之外的他人;如果第一消息分隔符未出现在一部分已签名数据中,针对消息中出现在第一消息分隔符之后的每一个数字签名,执行至少一个预定动作,以使通知提供给计算设备用户的误导地址失配错误的数目最小化;以及如果第一消息分隔符出现在一部分已签名数据中,验证发送者地址同与密钥相关联的地址是否相匹配,所述密钥用于产生出现在第一消息分隔符之后且与第一消息分隔符出现的那部分已签名数据相 对应的一个数字签名,以及针对消息中出现在第一消息分隔符之后的其它数字签名中的每一个,执行至少一个预定动作,以使通知提供给计算设备用户的误导地址失配错误的数目最小化。 According to an aspect of the present invention there is provided a method of processing a signed message received at a computing device, the method comprising the steps of: receiving a message comprising: a header including at least a sender address; at least a portion of signed data ; a digital signature corresponding to each portion of the signed data; and at least one message delimiter indicating that at least one old message has been incorporated into the received message; determining whether the first message delimiter appears in a portion In signed data, where the occurrence of the first message delimiter in the received message indicates that the data in the message that appears before the first message delimiter originates from the sender of the received message, and that the data after the first message delimiter originates from other than said sender; if the first message delimiter does not appear in a portion of the signed data, for each digital signature in the message that appears after the first message delimiter, perform at least one predetermined action such that Informing the user of the computing device that the number of misleading address mismatch errors is minimized; and verifying that the sender address matches the address associated with the key if the first message delimiter appears in a portion of the signed data, said The key is used to generate one digital signature corresponding to the portion of the signed data that appears after the first message delimiter, and for other digital signatures in the message that appear after the first message delimiter For each of these, at least one predetermined action is performed to minimize the number of misleading address mismatch errors that notifications are provided to a user of the computing device. the

根据本发明的另一方面,提供了一种处理在计算设备处接收的签名消息的设备,包括:接收消息的装置,所述消息包括:报头,至少包括发送者地址;至少一部分已签名数据;与已签名数据的每一部分相对应的数字签名;以及至少一个消息分隔符,所述消息分隔符指示了至少一个旧消息被并入了所接收消息;确定装置,用于确定第一消息分隔符是否出现在一部分已签名数据中,其中第一消息分隔符在接收消息中的出现表示出现在第一消息分隔符之前的消息中的数据来源于所接收消息的发送者,而第一消息分隔符之后的数据来源于所述发送者之外的他人;执行装置,用于如果第一消息分隔符未出现在一部分已签名数据中,则针对消息中出现在第一消息分隔符之后的每一个数字签名,执行至少一个预定动作,以使通知给计算设备用户的误导地址失配错误的数目最小化;以及如果第一消息分隔符出现在一部分已签名数据中,验证装置,用于如果第一消息分隔符出现在一部分已签名数据中,则验证发送者地址同与密钥相关联的地址是否相匹配,所述密钥用于产生出现在第一消息分隔符之后且与第一消息分隔符出现的那部分已签名数据相对应的一个数字签名,以及针对消息中出现在第一消息分隔符之后的其它数字签名中的每一个来执行至少一个预定动作的装置,以使通知给计算设备用户的误导地址失配错误的数目最小化。 According to another aspect of the present invention, there is provided an apparatus for processing signed messages received at a computing device, comprising: means for receiving a message, the message comprising: a header including at least a sender address; at least a portion of signed data; a digital signature corresponding to each part of the signed data; and at least one message delimiter indicating that at least one old message has been incorporated into the received message; determining means for determining the first message delimiter is present in a portion of signed data where the presence of the first message delimiter in the received message indicates that the data in the message that appears before the first message delimiter originates from the sender of the received message, and the first message delimiter the subsequent data originates from someone other than said sender; implementing means for, if the first message delimiter does not appear in the part of the signed data, for each digit in the message that occurs after the first message delimiter signing, performing at least one predetermined action to minimize the number of misleading address mismatch errors notified to a user of the computing device; and if the first message delimiter appears in a portion of the signed data, verification means for if the first message delimiter appears in a portion of the signed data, verify that the sender's address matches the address associated with the key used to generate the message that occurs after and with the first message delimiter and means for performing at least one predetermined action for each of the other digital signatures in the message that appear after the first message delimiter, so that the notification to the computing device user of The number of misleading address mismatch errors is minimized. the

附图说明Description of drawings

为了更好地理解此处所述系统和方法的实施例,并且更清楚地显示怎样实现这些系统和方法,作为示例来参考附图,附图中: For a better understanding of embodiments of the systems and methods described herein, and to more clearly show how they may be implemented, reference is made to the accompanying drawings, by way of example, in which:

图1是一个示例实现中的移动设备的方框图; Figure 1 is a block diagram of a mobile device in an example implementation;

图2是图1所示移动设备的通信子系统组件的方框图; Figure 2 is a block diagram of the communication subsystem components of the mobile device shown in Figure 1;

图3是无线网络的节点的方框图; Fig. 3 is the block diagram of the node of wireless network;

图4是示出了一个示例配置中的主系统的组件的方框图; Figure 4 is a block diagram illustrating components of the main system in an example configuration;

图5是示出了编码消息的示例的组件的方框图; Figure 5 is a block diagram illustrating components of an example of an encoded message;

图6A至6E是消息的示例; Figures 6A to 6E are examples of messages;

图7A是示出了在一个实施例中处理签名消息的方法的步骤的流程图; Figure 7A is a flowchart illustrating the steps of a method of processing a signed message in one embodiment;

图7B是示出了在另一个实施例中处理签名消息的方法的步骤的流程图;以及 Figure 7B is a flowchart illustrating the steps of a method of processing a signed message in another embodiment; and

图7C是示出了在另一个实施例中处理签名消息的方法的步骤的流程图。 Figure 7C is a flowchart illustrating the steps of a method of processing signed messages in another embodiment. the

具体实施方式Detailed ways

如以上示例所示,尽管成功解码了消息中的数据签名,可能导致在计算设备处接收签名消息的用户错误地认为在消息的报头中所识别的发送者对消息进行签名,即使这不是真的。 As shown in the above example, despite successful decoding of the data signature in the message, it may be possible for a user receiving a signed message at a computing device to mistakenly believe that the sender identified in the message's header signed the message, even though this is not true . the

为了解决这种问题,可以采用适用于验证签名消息的地址匹配的计算设备。具体地,该设备适用于验证与用于产生给定数字签名的密钥相关联的地址(例如电子邮件地址)同与在消息的报头中所识别的发送者相关联的地址相匹配。如果检测到地址失配(即两个地址不匹配),则作为例如告警或向用户显示的错误消息,向用户通知地址失配。因此,通过处理其中检测到地址失配错误的签名消息,当消息(或其一部分)的签名者与消息所识别的发送者不是同一个人时,可以告警用户。 To address this problem, computing devices adapted to verify address matches of signed messages may be employed. In particular, the device is adapted to verify that an address (eg, an email address) associated with the key used to generate a given digital signature matches an address associated with the sender identified in a header of the message. If an address mismatch is detected (ie, the two addresses do not match), the user is notified of the address mismatch as, for example, an alert or an error message displayed to the user. Thus, by processing signed messages in which an address mismatch error is detected, the user can be alerted when the signer of the message (or a portion thereof) is not the same person as the sender identified by the message. the

如以上提到的,根据采用的安全消息通信协议,一些消息可以包含同一个私钥产生的多个数字签名。例如,个人可以使用私有PGP密钥来签名同一个消息的多个不同部分。因此,消息可以包含使用该个 人的私有PGP密钥所产生的多个数字签名。当由用户接收到这种消息时,对于每一个数字签名,可以按照上述设备的实施方式来执行与产生各个签名的个人私有PGP密钥相关联的地址同消息的报头中所识别的发送者的地址相匹配的验证。 As mentioned above, depending on the secure messaging protocol employed, some messages may contain multiple digital signatures generated by the same private key. For example, an individual can use a private PGP key to sign multiple different parts of the same message. Thus, a message can contain multiple digital signatures generated using that individual's private PGP key. When such a message is received by a user, for each digital signature, a matching of the address associated with the personal private PGP key that generated the respective signature with the sender identified in the header of the message can be performed according to an embodiment of the device described above. Verification that the address matches. the

然而,一些其它消息可以包含多个数字签名,但是与以上示例相反,同一个私钥不能产生这些其它消息。 However, some other messages may contain multiple digital signatures, but contrary to the above example, the same private key cannot produce these other messages. the

例如,尽管适用于处理编码消息的一些设备将在发送由用户所编撰的/并入旧消息的新消息之前,从旧消息中去除数字签名,其它设备也可以不按照这种方式去除数字签名。例如,并入旧消息的新消息可以是被送回旧消息的发送者的回复消息、或被发送到其它一些接收者的转发消息。关于这一点,可以理解,大多数已知系统允许用户合并“原始消息”(即旧消息)的文本作为新的回复或转发消息的文本。如果设备不适用于在发送并入旧消息的新消息之前从旧消息去除数字签名,则当消息包含两个或多个个体之间的谈话线程时,该消息可能包含也许使用不同私钥产生的多个数字签名。 For example, while some devices adapted to handle encoded messages will remove digital signatures from old messages before sending new messages composed/incorporated by the user, other devices may not remove digital signatures in this manner. For example, a new message incorporated into an old message may be a reply message sent back to the sender of the old message, or a forward message sent to some other recipient. In this regard, it will be appreciated that most known systems allow the user to incorporate the text of the "original message" (ie, the old message) as the text of a new reply or forward message. If the device is not adapted to remove the digital signature from the old message before sending the new message incorporating the old message, when the message contains conversation threads between two or more individuals, the message may contain Multiple digital signatures. the

当适用于验证地址匹配的计算设备接收到包含一个或多个数字签名的消息时,它也许没有意识到一些数字签名来源于已经签名的旧消息,作为例如一部分转发文本或对已经正确并入消息的回复的文本。实际上,即使在消息中仅存在一个数字签名,如果数字签名来源于旧消息,则数字签名不是由接收消息的发送者产生的。 When a computing device adapted to verify an address match receives a message containing one or more digital signatures, it may not realize that some of the digital signatures originate from older messages that were already signed, as, for example, part of forwarded text or references to messages that have been correctly incorporated The text of the reply. In fact, even if there is only one digital signature in a message, if the digital signature originates from an old message, then the digital signature was not generated by the sender who received the message. the

如果计算设备假定任意接收到的、包含一个或多个数字签名的消息应该由接收消息的发送者产生,并且随后试图针对每一个数字签名,验证与产生各个签名相关联的密钥同接收到消息的报头中所识别的发送者的地址相匹配,可能会检测到至少一个地址失配,并且向用户通知每一个地址失配。然而,在这些情况下,即使第三方攻击者没有恶意地试图假扮发送者,也会检测到地址失配。 If the computing device assumes that any received message containing one or more digital signatures should have been generated by the sender of the received message, and then attempts to verify, for each digital signature, that the key associated with generating each signature is header identified in the sender's header, at least one address mismatch may be detected and the user notified of each address mismatch. In these cases, however, the address mismatch will be detected even if the third-party attacker is not maliciously trying to impersonate the sender. the

即使在消息包含谈话线程或正确地并入发送者没有签名的数据时,地址失配错误的报告也会妨碍计算设备的适用性。 Reporting of address mismatch errors hampers the serviceability of computing devices even when messages contain conversation threads or correctly incorporate data that the sender did not sign. the

这里所述的实施例总体商涉及一种设备和方法,可以使报告给消息用户的地址失配错误数目最小化,尤其对于正确并入由发送者之外的他人签名的消息部分的消息,如消息包含谈话线程的情况一样。这 可以增强计算设备的适用性,并且当计算设备是移动设备时尤其有利。 Embodiments described herein generally relate to an apparatus and method that can minimize the number of address mismatch errors reported to message users, especially for messages that correctly incorporate message parts signed by someone other than the sender, such as The same is true for messages containing conversation threads. This can enhance the usability of the computing device and is especially advantageous when the computing device is a mobile device. the

在一个较广泛的方面中,提供了一种处理在计算设备处接收的签名消息的方法,该方法包括步骤:接收消息,所述消息包括至少识别消息的发送者地址的报头、至少一部分已签名数据、与已签名数据的每一部分相对应的数字签名以及至少一个消息分隔符;确定第一消息分隔符是否出现在一部分已签名数据中;如果第一消息分隔符未出现在一部分已签名数据中,针对消息中出现在第一消息分隔符之后的每一个数字签名,执行至少一个预定动作;以及如果第一消息分隔符出现在一部分已签名数据中,验证发送者地址同与用于产生出现在第一消息分隔符之后且与第一消息分隔符出现的那部分已签名数据相对应的一个数字签名的密钥相关联的地址相匹配,并针对消息中出现在第一消息分隔符之后的其它每一个数字签名,执行至少一个预定动作。 In one broader aspect, there is provided a method of processing a signed message received at a computing device, the method comprising the steps of: receiving a message including at least a header identifying the sender address of the message, at least a portion of the signed message data, a digital signature corresponding to each portion of the signed data, and at least one message delimiter; determining whether the first message delimiter is present in the portion of the signed data; if the first message delimiter is not present in the portion of the signed data , for each digital signature that appears in the message after the first message delimiter, perform at least one predetermined action; and if the first message delimiter appears in a portion of the signed data, verify the sender address with the same method used to generate the signature that appears after the first message delimiter The address associated with a digitally signed key that follows the first message delimiter and corresponds to the portion of the signed data in which the first message delimiter occurs matches, and for other parts of the message that appear after the first message Each digital signature performs at least one predetermined action. the

在另一个较广泛的方面,提供了一种处理在计算设备处接收的签名消息的方法,其中,针对出现在第一消息分隔符之后的数字签名的至少一个预定动作包括:绕过发送者地址同与用于产生数字签名的密钥相关联的地址相匹配的验证。 In another broader aspect, there is provided a method of processing a signed message received at a computing device, wherein at least one predetermined action for a digital signature that occurs after a first message delimiter includes: bypassing the sender address Verification that matches the address associated with the key used to generate the digital signature. the

在另一个较广泛的方面,提供了一种处理在计算设备处接收的签名消息的方法,其中,针对出现在第一消息分隔符之后的数字签名的至少一个预定动作包括:验证发送者地址同与用于产生数字签名的密钥相关联的地址相匹配;以及如果发送者地址同与用于产生数字签名的密钥相关联的地址不匹配,禁止向计算设备的用户通知地址失配。 In another broader aspect, there is provided a method of processing a signed message received at a computing device, wherein at least one predetermined action for a digital signature that appears after a first message delimiter includes: verifying that the sender address is the same as matching the address associated with the key used to generate the digital signature; and inhibiting notification of the address mismatch to a user of the computing device if the sender address does not match the address associated with the key used to generate the digital signature. the

在另一个较广泛的方面,提供了一种处理在计算设备处接收的签名消息的方法,其中,针对出现在第一消息分隔符之后的数字签名的至少一个预定动作包括:确定同与数字签名相对应的那部分已签名数据相关联的部分专用地址;验证部分专用地址同与用于产生数字签名的密钥相关联的地址相匹配;以及如果部分专用地址同与用于产生数字签名的密钥相关联的地址不匹配,向计算设备的用户通知地址失配。 In another broader aspect, there is provided a method of processing a signed message received at a computing device, wherein at least one predetermined action for a digital signature that occurs after a first message delimiter includes: determining the same as the digital signature the corresponding partial private address associated with that portion of the signed data; verify that the partial private address matches the address associated with the key used to generate the digital signature; and if the partial private address matches the key used to generate the digital signature If the address associated with the key does not match, a user of the computing device is notified of the address mismatch. the

在另一个较广泛的方面,提供了一种处理在计算设备处接收的签名消息的方法,其中确定部分专用地址的步骤包括:从出现在紧接在数字签名与之相对应的那部分已签名数据之前的消息分隔符和该部分之间的消息的文本中,提取前一发送者的地址。 In another broader aspect, there is provided a method of processing a signed message received at a computing device, wherein the step of determining a portion of the private address comprises: starting from the portion of the signed message that appears immediately before the digital signature to which it corresponds. Extract the previous sender's address from the message delimiter before the data and the text of the message between that part. the

在另一个较广泛的方面,提供一种处理在计算设备处接收的签名消息的方法,其中确定部分专用地址的步骤包括:从出现在紧接在数字签名与之相对应的那部分已签名数据之前的消息分隔符和该部分之间的消息的文本中,提取前一发送者的名称;以及从地址簿中检索与该名称相关联的前一发送者的地址。 In another broader aspect, there is provided a method of processing a signed message received at a computing device, wherein the step of determining a portion of the private address comprises: extracting from the portion of signed data that appears immediately after the digital signature corresponds to From the text of the message between the previous message delimiter and the portion, extract the name of the previous sender; and retrieve the address of the previous sender associated with the name from the address book. the

下面更详细地描述各个实施例的这些及其它方面和属性。 These and other aspects and attributes of various embodiments are described in more detail below. the

这里所述的系统和方法的一些实施例参考移动设备。移动设备是具有与其它计算机系统进行通信的先进数据通信能力的双向通信设备。移动设备还可以包括语音通信能力。根据移动设备所提供的功能,它可以被称为数据消息收发设备、双向寻呼机、具有数据消息收发能力的蜂窝电话、无线因特网设备或数据通信设备(具有或不具有电话能力)。移动设备通过收发站的网络与其它设备进行通信。 Some embodiments of the systems and methods described herein refer to mobile devices. Mobile devices are two-way communication devices with advanced data communication capabilities to communicate with other computer systems. Mobile devices may also include voice communication capabilities. Depending on the functionality provided by a mobile device, it may be called a data messaging device, a two-way pager, a cellular telephone with data messaging capabilities, a wireless Internet device, or a data communications device (with or without telephony capabilities). Mobile devices communicate with other devices through a network of transceiver stations. the

为了有助于读者理解移动设备的结构以及它怎样与其它设备进行通信,参考图1至3。 To help the reader understand the structure of the mobile device and how it communicates with other devices, reference is made to FIGS. 1 to 3 . the

首先参考图1,一个示例实现中的移动设备的方框图通常如100所示。移动设备100包括多个组件,控制组件是微处理器102。微处理器102控制移动设备100的整体操作。通过通信子系统104执行包括数据和语音通信的通信功能。通信子系统104从无线网络200接收消息并向其发送消息。在该移动设备100的示例实现中,根据全球移动通信系统(GSM)和通用分组无线业务(GPRS)标准来配置通信子系统104。GSM/GPRS无线网络在全世界范围内使用,并且预期这些标准将最终由改进数据GSM环境(EDGE)和通用移动通信系统(UMTS)代替。新标准正在定义中,但是我们相信它们将与此处所述的网络行为具有类似性,并且由本领域的技术人员也可以理解,本发明意欲使用将来开发的任意其它适当的标准。将通信子系统104与网络200相连的无线链路表示一个或多个不同的射频(RF)信道,根据针对GSM/GPRS通信所规范的定义协议而进行操作。利用新的网络协议,这些信道能够支持电路交换语音通信和分组交换数据通信。 Referring first to FIG. 1 , a block diagram of a mobile device in an example implementation is shown generally at 100 . The mobile device 100 includes a number of components, the controlling component being the microprocessor 102 . The microprocessor 102 controls the overall operation of the mobile device 100 . Communication functions, including data and voice communications, are performed through the communications subsystem 104 . Communication subsystem 104 receives messages from and sends messages to wireless network 200 . In the example implementation of the mobile device 100, the communication subsystem 104 is configured according to the Global System for Mobile Communications (GSM) and General Packet Radio Service (GPRS) standards. GSM/GPRS wireless networks are used worldwide and it is expected that these standards will eventually be superseded by Enhanced Data GSM Environment (EDGE) and Universal Mobile Telecommunications System (UMTS). New standards are being defined, but we believe they will have similarities to the network behavior described here, and it will be understood by those skilled in the art that the present invention is intended to use any other suitable standards that are developed in the future. The wireless link connecting the communication subsystem 104 with the network 200 represents one or more different radio frequency (RF) channels, operating according to defined protocols specified for GSM/GPRS communications. Using new network protocols, these channels can support both circuit-switched voice communications and packet-switched data communications. the

尽管在移动设备100的一个示例实现中与移动设备100相关联的无线网络是GSM/GPRS无线网络,在变体实现中,其它无线网络可以与移动设备100相关联。可以采用的不同种类的无线网络包括例如数 据中心无线网络、语音中心无线网络和可以在同一个物理基站上同时支持语音和数据通信的双模式网络。组合的双模式网络包括但不局限于:码分多址(CDMA)或CDMA2000网络、GSM/GPRS网络(如上所述)以及将来的第三代(3G)网络(例如EDGE和UMTS)。数据中心网络的一些较早的示例包括MobitexTM无线电网络和DataTACTM无线电网络。较早的语音中心数据网络的示例包括个人通信系统(PCS)网络(例如GSM)和时分多址(TDMA)系统。 Although in one example implementation of mobile device 100 the wireless network associated with mobile device 100 is a GSM/GPRS wireless network, other wireless networks may be associated with mobile device 100 in variant implementations. Different kinds of wireless networks that can be employed include, for example, data-centric wireless networks, voice-centric wireless networks, and dual-mode networks that can support both voice and data communications on the same physical base station. Combined dual-mode networks include, but are not limited to: Code Division Multiple Access (CDMA) or CDMA2000 networks, GSM/GPRS networks (as described above), and future third generation (3G) networks such as EDGE and UMTS. Some older examples of data center networks include the Mobitex radio network and the DataTAC radio network. Examples of older voice-centric data networks include Personal Communication Systems (PCS) networks (such as GSM) and Time Division Multiple Access (TDMA) systems.

微处理器102还与其它子系统进行交互,例如随机存取存储器(RAM)106、闪存108、显示器110、辅助输入/输出(I/O)子系统112、串行端口114、键盘116、扬声器118、麦克风120、短距离通信122及其它设备124。 Microprocessor 102 also interacts with other subsystems such as random access memory (RAM) 106, flash memory 108, display 110, auxiliary input/output (I/O) subsystem 112, serial port 114, keyboard 116, speaker 118 , microphone 120 , short range communication 122 and other equipment 124 . the

移动设备100的一些子系统执行通信相关功能,而其它子系统可以提供“驻留”或设备上功能。作为示例,显示器110和键盘116可以用于通信相关功能,例如输入用于在网络200上传输的文本消息,并且用于设备固有功能,例如计算器或任务列表。由微处理器102使用的操作系统软件通常存储在例如闪存108的持久存储器中,可选地,其也可以是只读存储器(ROM)或类似存储单元(未示出)。本领域的技术人员可以理解,可以将操作系统、专用设备应用程序或其一部分暂时地加载到例如RAM 106的易失性存储器中。 Some subsystems of the mobile device 100 perform communication-related functions, while other subsystems may provide "resident" or on-device functions. As an example, display 110 and keyboard 116 may be used for communication-related functions, such as entering text messages for transmission over network 200, and for device-native functions, such as a calculator or task list. Operating system software used by microprocessor 102 is typically stored in persistent storage such as flash memory 108, which may alternatively be a read-only memory (ROM) or similar storage unit (not shown). Those skilled in the art will appreciate that an operating system, application-specific programs, or portions thereof, may be temporarily loaded into volatile memory such as RAM 106. the

在完成了所需的网络注册或激活过程之后,移动设备100可以在网络200上发送和接收通信信号。网络访问与移动设备100的订户或用户相关联。为了识别订户,移动设备100需要将订户身份模块或“SIM”卡126插入到SIM接口128中,以便与网络进行通信。SIM 126是一种传统的用于识别移动设备100的订户且用于使移动设备100个人化的“智能卡”。没有SIM 126,则不能够完全操作移动设备100以与网络200进行通信。通过将SIM 126插入SIM接口128,订户可以访问所有的订阅服务。服务可以包括:web浏览和收发例如电子邮件、语音邮件、短消息服务(SMS)以及多媒体消息服务(MMS)的消息。更先进的服务可以包括:销售点(point of sale)、现场服务以及销售业务自动化(sale force automation)。SIM 126包括处理器和用于存储信息的存储器。一旦将SIM 126插入了SIM接口128,它就与微处理器 102相连。为了识别订户,SIM 126包含一些用户参数,例如国际移动订户身份(IMSI)。使用SIM 126的优点在于订户不需要绑定于单个物理移动设备。SIM 126也可以存储移动设备的附加订户信息,包括数据簿(或日历)信息以及近期的呼叫信息。 Mobile device 100 may send and receive communication signals over network 200 after required network registration or activation procedures have been completed. Network access is associated with a subscriber or user of the mobile device 100 . In order to identify a subscriber, the mobile device 100 requires a Subscriber Identity Module or "SIM" card 126 to be inserted into a SIM interface 128 in order to communicate with the network. SIM 126 is a conventional "smart card" used to identify the subscriber of mobile device 100 and to personalize mobile device 100. Without the SIM 126, the mobile device 100 cannot be fully operated to communicate with the network 200. By inserting the SIM 126 into the SIM interface 128, the subscriber can access all subscription services. Services may include web browsing and messaging such as email, voicemail, Short Message Service (SMS), and Multimedia Message Service (MMS). More advanced services can include: point of sale, field service, and sales force automation. SIM 126 includes a processor and memory for storing information. Once SIM 126 is inserted into SIM interface 128, it is just connected with microprocessor 102. In order to identify the subscriber, the SIM 126 contains some user parameters, such as the International Mobile Subscriber Identity (IMSI). An advantage of using SIM 126 is that the subscriber need not be bound to a single physical mobile device. SIM 126 may also store additional subscriber information for the mobile device, including data book (or calendar) information and recent call information. the

移动设备100是一种电池供电设备,并且包括电池接口132,用于容纳一个或多个可充电电池130。电池接口132与调节器(未示出)相连,调节器辅助电池130向移动设备100供电V+。尽管当前的技术使用电池,例如微燃料电池之类的未来技术也可以向移动设备100供电。 The mobile device 100 is a battery powered device and includes a battery interface 132 for receiving one or more rechargeable batteries 130 . The battery interface 132 is connected to a regulator (not shown), and the regulator assists the battery 130 to supply power V+ to the mobile device 100 . Although current technologies use batteries, future technologies such as micro fuel cells could also power the mobile device 100 . the

除了其操作系统功能之外,微处理器102还能够在移动设备100上执行软件应用程序。通常在制造期间将控制基本设备操作的应用程序组(包括数据和语音通信应用程序)安装在移动设备100中。可以加载到移动设备100上的其它应用程序可以是个人信息管理器(PIM)。PIM具有组织和管理订户感兴趣的数据项的功能,这些数据项是例如但不局限于:电子邮件、日历事件、语音邮件、约会和任务项。PIM应用程序具有经由无线网络200发送和接收数据项的能力。可以经由无线网络200将PIM数据项与存储的和/或与主计算机系统相关的移动设备订户的相应数据项无缝地整合、同步和更新。该功能在移动设备100上产生关于该项的镜像主计算机。这在主计算机系统是移动设备订户的办公计算机系统的情况下尤其有利。 In addition to its operating system functions, microprocessor 102 is also capable of executing software applications on mobile device 100 . A suite of applications that control basic device operations, including data and voice communication applications, is typically installed in mobile device 100 during manufacture. Another application that may be loaded onto mobile device 100 may be a personal information manager (PIM). PIM has functionality to organize and manage data items of interest to subscribers such as but not limited to: emails, calendar events, voicemails, appointments and task items. The PIM application has the capability to send and receive data items via the wireless network 200 . PIM data items can be seamlessly integrated, synchronized and updated via wireless network 200 with corresponding data items of mobile device subscribers stored and/or associated with a host computer system. This function creates a mirrored host computer on the mobile device 100 for the item. This is especially advantageous where the host computer system is the mobile device subscriber's office computer system. the

还可以通过网络200、辅助I/O子系统112、串行端口114、短距离通信子系统122或其它适当的子系统124,将其它应用程序加载到移动设备100上。这种应用程序安装的灵活性增加了移动设备100的功能性,并且可以提供增强的设备上功能、通信相关功能或两者。例如,安全通信应用程序能够使用移动设备100来执行电子商务功能和其它这种金融交易。 Other applications may also be loaded onto mobile device 100 via network 200 , auxiliary I/O subsystem 112 , serial port 114 , short-range communication subsystem 122 , or other suitable subsystem 124 . This flexibility in application installation increases the functionality of the mobile device 100 and may provide enhanced on-device functionality, communication-related functionality, or both. For example, a secure communication application can use the mobile device 100 to perform e-commerce functions and other such financial transactions. the

串行端口114使订户能够通过外部设备或软件应用程序来设置优选项,并且除通过无线通信网络之外,通过向移动设备100提供信息或软件下载,扩展移动设备100的能力。可选的下载路径可以被用于例如通过直接并因此可靠且可信的连接将加密密钥加载到移动设备100,以提供安全设备通信。 Serial port 114 enables a subscriber to set preferences through an external device or software application and expand the capabilities of mobile device 100 by providing information or software downloads to mobile device 100 in addition to over a wireless communication network. An optional download path may be used to load encryption keys to the mobile device 100, eg, over a direct and thus reliable and trusted connection, to provide secure device communications. the

短距离通信子系统122提供移动设备100和不同系统或设备之间的通信,不需要使用网络200。例如,子系统122可以包括红外设备以及短距离通信的相关电路和组件。短距离通信的示例包括红外数据联合会(IrDA)、蓝牙和由IEEE开发的802.11标准族。 The short-range communication subsystem 122 provides communication between the mobile device 100 and various systems or devices without using the network 200 . For example, subsystem 122 may include infrared devices and related circuits and components for short-range communications. Examples of short-range communications include Infrared Data Association (IrDA), Bluetooth, and the 802.11 family of standards developed by IEEE. the

在使用中,由通信子系统104处理例如文本消息、电子邮件消息或网页下载的接收信号并输入到微处理器102。然后,微处理器102处理接收信号,将其输出到显示器110或者可选地输出到辅助I/O子系统11。订户还可以使用键盘116结合显示器110以及可能的辅助I/O子系统112,编撰例如电子邮件消息的数据项。辅助子系统112可以包括例如触摸屏、鼠标、轨迹球、红外指纹检测器或具有动态钮按压能力的滚轮的设备。键盘116是字母数字键盘和/或电话类型小键盘。可以通过通信子系统104在网络200上发送编撰的项。 In use, received signals such as text messages, e-mail messages or web page downloads are processed by the communication subsystem 104 and input to the microprocessor 102 . Microprocessor 102 then processes the received signal and outputs it to display 110 or alternatively to auxiliary I/O subsystem 11 . Subscribers may also use keyboard 116 in conjunction with display 110 and possibly auxiliary I/O subsystem 112 to compose data items such as e-mail messages. Accessory subsystem 112 may include devices such as a touch screen, mouse, trackball, infrared fingerprint detector, or scroll wheel with dynamic button press capability. Keypad 116 is an alphanumeric keypad and/or a telephone-type keypad. Compiled items may be sent over network 200 via communications subsystem 104 . the

对于语音通信除了将接收信号输出到扬声器118、以及由麦克风120产生用于发送的信号之外,移动设备100的整体操作实质上是类似的。还可以在移动设备100上实现可选的语音或音频I/O子系统,例如语音消息记录子系统。尽管主要通过扬声器118来实现语音或音频信号的输出,显示器110也可以被用于提供附加信息,例如呼叫方的身份、语音呼叫的持续时间或其它语音呼叫相关的信息。 The overall operation of the mobile device 100 is substantially similar for voice communications, except that received signals are output to speaker 118 and signals for transmission are generated by microphone 120 . An optional voice or audio I/O subsystem may also be implemented on mobile device 100, such as a voice message recording subsystem. Although output of voice or audio signals is primarily accomplished through speaker 118, display 110 may also be used to provide additional information, such as the identity of the calling party, the duration of the voice call, or other voice call-related information. the

现在参考图2,示出了图1所示的通信子系统组件104的方框图。通信子系统104包括:接收机150;发射机152;一个或多个嵌入或内置天线单元154、156;本地振荡器(LO)158以及例如数字信号处理器(DSP)的处理模块160。 Referring now to FIG. 2, a block diagram of the communication subsystem component 104 shown in FIG. 1 is shown. The communication subsystem 104 includes: a receiver 150; a transmitter 152; one or more embedded or built-in antenna elements 154, 156; a local oscillator (LO) 158 and a processing module 160 such as a digital signal processor (DSP). the

通信子系统104的具体设计基于移动设备100意欲操作的网络200,因此应该理解,图2所示的设计仅用作示例。由天线154通过网络200接收的信号被输入到接收机150,接收机150执行一般的接收机功能,例如信号放大、频率下转换、滤波、信道选择和模拟到数字(A/D)转换。接收信号的A/D转换允许在DSP 160中执行例如解调和解码的更复杂的通信功能。按照类似的方式,由DSP 160处理要发射的信号,包括调制和编码。这些DSP处理信号被输入到发射机152,用于数字到模拟(D/A)转换、频率上转换、滤波、放大以及经由天线156在网络200上传输。DSP 160不仅处理通信信号,还向接收机 和发射机提供控制。例如,可以通过在DSP 160中实现的自动增益控制算法,自适应地控制接收机150和发射机152中施加到通信信号上的增益。 The specific design of the communication subsystem 104 is based on the network 200 in which the mobile device 100 is intended to operate, and thus it should be understood that the design shown in FIG. 2 is used as an example only. Signals received by antenna 154 over network 200 are input to receiver 150, which performs typical receiver functions such as signal amplification, frequency down conversion, filtering, channel selection, and analog-to-digital (A/D) conversion. A/D conversion of the received signal allows more complex communication functions such as demodulation and decoding to be performed in DSP 160. In a similar manner, the signal to be transmitted is processed by DSP 160, including modulation and coding. These DSP processed signals are input to transmitter 152 for digital-to-analog (D/A) conversion, frequency up-conversion, filtering, amplification, and transmission over network 200 via antenna 156 . The DSP 160 not only processes communication signals, but also provides control to the receiver and transmitter. For example, the gain applied to the communication signal in receiver 150 and transmitter 152 may be adaptively controlled by an automatic gain control algorithm implemented in DSP 160. the

移动设备100和网络200之间的无线链路可以包含一个或多个不同的信道(典型是不同的RF信道)并且与移动设备100和网络200之间使用的协议相关联。通常由于移动设备100的整个带宽和有限电池功率的限制,RF信道是必须保留的有限资源。 The wireless link between mobile device 100 and network 200 may comprise one or more different channels (typically different RF channels) and be associated with the protocol used between mobile device 100 and network 200 . RF channels are limited resources that must be reserved, typically due to limitations in overall bandwidth and limited battery power of the mobile device 100 . the

当使移动设备100全功能运行时,通常只有当向网络200发送时才打开发射机152,否则关闭以节约资源。类似地,周期地关闭接收机150以节约电能,直到在指定时间段期间需要接收信号或信息(如果有的话)为止。 When making the mobile device 100 fully functional, the transmitter 152 is typically only turned on when transmitting to the network 200, and turned off otherwise to conserve resources. Similarly, the receiver 150 is turned off periodically to conserve power until it is required to receive a signal or information (if any) during a specified time period. the

现在参考图3,无线网络的节点的方框图被示为202。实际上,网络200包括一个或多个节点202。移动设备100在无线网络200内与节点202进行通信。在图3的示例实现中,根据通用分组无线业务(GPRS)和全球移动通信系统(GSM)技术来配置节点202。节点202包括具有相关基站塔206的基站控制器(BSC)204、为在GSM中支持GPRS而添加的分组控制单元(PCU)208、移动交换中心(MSC)210、归属位置寄存器(HLR)212、访问位置寄存器(VLR)214、服务GPRS支持节点(SGSN)216、网关GPRS支持节点(GGSN)218以及动态主机配置协议(DHCP)220。该组件列表并不表示GSM/GPRS网络中的每一个节点202的详尽组件列表,而是通常在通过网络200的通信中使用的组件列表。 Referring now to FIG. 3 , a block diagram of a node of a wireless network is shown at 202 . In practice, network 200 includes one or more nodes 202 . Mobile device 100 communicates with node 202 within wireless network 200 . In the example implementation of FIG. 3, node 202 is configured according to General Packet Radio Service (GPRS) and Global System for Mobile Communications (GSM) technologies. The node 202 comprises a base station controller (BSC) 204 with associated base station tower 206, a packet control unit (PCU) 208 added to support GPRS in GSM, a mobile switching center (MSC) 210, a home location register (HLR) 212, Visitor Location Register (VLR) 214 , Serving GPRS Support Node (SGSN) 216 , Gateway GPRS Support Node (GGSN) 218 , and Dynamic Host Configuration Protocol (DHCP) 220 . This component list does not represent an exhaustive list of components for every node 202 in the GSM/GPRS network, but rather a list of components commonly used in communication over the network 200 . the

在GSM网络中,MSC 210与BSC 204相连,并且与例如公共交换电话网络(PSTN)222的陆地网络相连,以满足电路交换的需要。通过PCU 208、SGSN 216以及GGSN 218到公共或专用网络(因特网)224的连接(通常也被称为共享网络基础设施)表示能够具有GPRS能力的移动设备的数据路径。在利用GPRS能力扩展的GSM网络中,BSC 204还包含与SGSN 216相连的分组控制单元(PCU)208,用以控制分割、无线信道分配,并且满足分组交换的需要。为了跟踪移动设备的位置以及能够进行电路交换和分组交换管理,在MSC 210和SGSN 216之间共享HLR 212。由MSC 210控制对VLR 214的访问。 In a GSM network, the MSC 210 is connected to the BSC 204 and to a land network such as the Public Switched Telephone Network (PSTN) 222 for circuit switching requirements. The connection (also commonly referred to as shared network infrastructure) through the PCU 208, SGSN 216, and GGSN 218 to a public or private network (Internet) 224 represents the data path for a GPRS capable mobile device. In a GSM network that utilizes GPRS capability expansion, BSC 204 also includes a packet control unit (PCU) 208 connected to SGSN 216 to control segmentation, wireless channel allocation, and meet the needs of packet switching. The HLR 212 is shared between the MSC 210 and the SGSN 216 in order to track the location of the mobile device and to enable circuit-switched and packet-switched management. Access to the VLR 214 is controlled by the MSC 210. the

站206是固定收发站。站206和BSC 204一起组成固定的收发设备。固定收发设备提供通常称为“小区”的特定覆盖面积的无线网络覆盖。固定收发设备在其小区内经由站206向移动设备发送通信信号并且从移动设备接收通信信号。固定收发设备通常根据特定的(通常是预定的)通信协议和参数,在其控制器的控制之下,执行诸如要发送到移动设备的信号的调制和可能的编码和/或加密之类的功能。如果必要,固定收发设备类似地对从其小区内的移动设备100接收的任意通信信号执行解调和可能地解码和解密。通信协议和参数可以在不同节点之间变化。例如,一个节点可以采用不同的调制方案并操作在与其它节点不同的频率处。 Station 206 is a fixed transceiver station. Station 206 and BSC 204 together form fixed transceiver equipment. Fixed transceiver equipment provides wireless network coverage for a specific coverage area commonly referred to as a "cell". The fixed transceiver equipment transmits and receives communication signals to and from mobile devices via station 206 within its cell. Fixed transceiver equipment, usually under the control of its controller, performs functions such as modulation and possibly encoding and/or encryption of signals to be transmitted to mobile equipment, according to specific (usually predetermined) communication protocols and parameters . The fixed transceiver device similarly performs demodulation and possibly decoding and decryption, if necessary, of any communication signals received from mobile devices 100 within its cell. Communication protocols and parameters may vary between different nodes. For example, one node may employ a different modulation scheme and operate at a different frequency than other nodes. the

对于向特定网络注册的所有移动设备100,例如用户简档之类的永久配置数据被存储在HLR 212中。HLR 212还包含每一个注册移动设备的位置信息,并且可以查询以确定移动设备的当前位置。MSC 210负责一组位置区域,并将当前处于其负责区域内的移动设备的数据存储在VLR 214中。此外,VLR 214还包含正访问其它网络的移动设备的信息。VLR 214中的信息包括从HLR 212发送到VLR 214的用于快速访问的永久移动设备数据的一部分。通过将附加信息从远程的HLR212移动到VLR 214,可以减少这些节点之间的通信量,因此可以向语音和数据服务提供更快速的响应时间,同时需要使用更少的计算资源。 Permanent configuration data such as user profiles are stored in the HLR 212 for all mobile devices 100 registered with a particular network. The HLR 212 also contains location information for each registered mobile device and can be queried to determine the current location of the mobile device. The MSC 210 is responsible for a set of location areas and stores in the VLR 214 the data of mobile devices currently within its area of responsibility. In addition, the VLR 214 also contains information about mobile devices that are accessing other networks. The information in the VLR 214 includes a portion of the permanent mobile device data sent from the HLR 212 to the VLR 214 for quick access. By moving additional information from the remote HLR 212 to the VLR 214, the amount of communication between these nodes can be reduced, thus providing faster response times to voice and data services while requiring the use of fewer computing resources. the

SGSN 216和GGSN 218是用于支持GPRS而添加的单元;即,在GSM中支持分组交换数据。通过跟踪每一个移动设备100的位置,SGSN 216和MSC 210在无线网络200中具有类似的职责。SGSN 216还针对网络200上的数据流量执行安全功能和访问控制。GGSN 218向外部分组交换网络提供因特网网络连接,并且经由在网络200内操作的因特网协议(IP)骨干网络与一个或多个SGSN 216相连。在正常操作期间,给定的移动设备100必须执行“GPRS附加”以获取IP地址并且访问数据服务。这种需要不出现在电路交换语音信道中,因为集成服务数字网络(ISDN)地址被用于路由输入和输出呼叫。当前,具有GPRS能力的所有网络使用专用的、动态分配的IP地址,因此需要DHCP服务器220与GGSN 218相连。存在多种动态IP分配的机制, 包括使用远程验证拨号用户服务(RADIUS)服务器和DHCP服务器的组合。一旦完成了GPRS附加,就建立了从移动设备100、通过PCU208和SGSN 216到GGSN 218内的接入节点(APN)的逻辑连接。APN表示可以直接访问因特网兼容服务或专用网络连接的IP隧道的逻辑端。APN还表示网络200的安全机构,因此必须向每一个移动设备100分配一个或多个APN并且移动设备100在没有首先执行GPRS附加时,不能与已经被授权使用的APN交换数据。APN可以被认为与例如“myconnection.wireless.com”的因特网域名类似。 SGSN 216 and GGSN 218 are elements added to support GPRS; that is, support for packet switched data in GSM. SGSN 216 and MSC 210 have similar responsibilities in wireless network 200 by tracking the location of each mobile device 100. SGSN 216 also performs security functions and access control for data traffic on network 200. GGSN 218 provides Internet network connectivity to external packet-switched networks and is connected to one or more SGSNs 216 via an Internet Protocol (IP) backbone network operating within network 200. During normal operation, a given mobile device 100 must perform a "GPRS attach" to obtain an IP address and access data services. This need does not arise in circuit-switched voice channels because Integrated Services Digital Network (ISDN) addresses are used to route incoming and outgoing calls. Currently, all networks with GPRS capabilities use dedicated, dynamically assigned IP addresses, thus requiring a DHCP server 220 to be connected to the GGSN 218. Various mechanisms for dynamic IP assignment exist, including the use of a combination of Remote Authentication Dial-In User Service (RADIUS) servers and DHCP servers. Once the GPRS attachment is complete, a logical connection is established from the mobile device 100, through the PCU 208 and the SGSN 216 to the Access Node (APN) within the GGSN 218. The APN represents the logical end of an IP tunnel that provides direct access to Internet-compatible services or private network connections. The APN also represents the security authority of the network 200, therefore one or more APNs must be assigned to each mobile device 100 and a mobile device 100 cannot exchange data with an APN already authorized to use without first performing a GPRS attach. An APN can be thought of as similar to an Internet domain name such as "myconnection.wireless.com". the

一旦完成了GPRS附加,就创建了隧道,并且使用IP分组中支持的任意协议在标准IP分组中交换所有通信量。这包括隧道方法,例如虚拟专用网(VPN)所使用的一些IP安全协议(IPsec)连接的情况下的IP over IP。这些隧道还被称为分组数据协议(PDP)语境,并且在网络200中有有限数目的这些隧道可供使用。为了使PDP语境的使用最大化,网络200将针对每一个PDP语境运行空闲定时器,以确定是否没有活动。当移动设备100没有使用其PDP语境时,可以释放PDP语境,并且IP地址返回到由DHCP服务器220管理的IP地址池。 Once the GPRS attachment is complete, the tunnel is created and all traffic is exchanged in standard IP packets using whatever protocol is supported in IP packets. This includes tunneling methods such as IP over IP in the case of some IP security protocol (IPsec) connections used by virtual private networks (VPNs). These tunnels are also known as Packet Data Protocol (PDP) contexts, and there are a limited number of these tunnels available in network 200 . In order to maximize the use of PDP contexts, the network 200 will run an idle timer for each PDP context to determine if there is no activity. When the mobile device 100 is not using its PDP context, the PDP context can be released and the IP address returned to the IP address pool managed by the DHCP server 220 . the

现在参考图4,示出了一个示例配置中的主系统的组件的方框图。主系统250通常是公司办公处所或其它局域网(LAN),但是在变体实现中,也可以是例如家庭办公计算机或一些其它私人系统。在图4所示的该示例中,主系统250被描述为移动设备100的用户所属组织的LAN。 Referring now to FIG. 4 , a block diagram of components of the host system in an example configuration is shown. Host system 250 is typically a company office or other local area network (LAN), but in variant implementations it could be, for example, a home office computer or some other private system. In this example shown in FIG. 4, the host system 250 is depicted as the LAN of the organization to which the user of the mobile device 100 belongs. the

LAN 250包括彼此由LAN连接260相连的多个网络组件。例如,具有用户移动设备100的附随支架(accompanying cradle)264的用户桌面计算设备(“桌面计算机”)262a位于LAN 250上。移动设备100的支架264可以通过例如串连或通用串行总线(USB)连接与计算机262a相连。其它用户计算机262b也位于LAN 250上,并且每一个计算机可以具有或不具有移动设备的附随支架264。支架264利于将信息(例如PIM数据、用以利于移动设备100和LAN 250之间的安全通信的专用对称加密密钥)从用户计算机262a加载到移动设备100,并且对于在初始化移动设备100中经常使用的大量信息更新尤其有用。下载到移动设备100的信息可以包括在消息交换中使用的S/MIME 证书或PGP密钥。将信息从用户桌面计算机262a下载到用户移动设备100的处理也被称为同步。 LAN 250 includes a plurality of network components connected to each other by LAN connection 260. For example, a user's desktop computing device ("desktop computer") 262a with an accompanying cradle 264 for the user's mobile device 100 is located on the LAN 250. The cradle 264 of the mobile device 100 can be connected to the computer 262a by, for example, a serial or universal serial bus (USB) connection. Other user computers 262b are also located on the LAN 250, and each computer may or may not have an accompanying stand 264 for the mobile device. The cradle 264 facilitates loading of information (e.g., PIM data, dedicated symmetric encryption keys to facilitate secure communications between the mobile device 100 and the LAN 250) from the user computer 262a to the mobile device 100, and is often used during initialization of the mobile device 100 The extensive information updates used are especially useful. Information downloaded to mobile device 100 may include S/MIME certificates or PGP keys used in message exchanges. The process of downloading information from the user's desktop computer 262a to the user's mobile device 100 is also referred to as synchronization. the

本领域的技术人员可以理解,典型地,用户计算机262a、262b还与图4中未明确示出的其它外围设备相连。此外,图4中仅示出了LAN 250的网络组件的子集,并且本领域的技术人员可以理解,对于该示例配置,LAN 250包括图4中未明确示出的附加组件。更一般地,LAN 250可以表示该组织的更大网络(未示出)的较小一部分,并且可以包括不同的组件,和/或按照与图4的示例中所示不同的拓扑来布置。 Those skilled in the art can understand that typically, the user computers 262a, 262b are also connected to other peripheral devices not explicitly shown in FIG. 4 . Furthermore, only a subset of the network components of LAN 250 are shown in FIG. 4, and those skilled in the art will appreciate that for this example configuration, LAN 250 includes additional components not explicitly shown in FIG. More generally, LAN 250 may represent a smaller portion of the organization's larger network (not shown), and may include different components, and/or be arranged in a different topology than that shown in the example of FIG. 4 . the

在该示例中,移动设备100通过无线网络200的节点202以及诸如服务提供商网络或公共因特网之类的共享网络基础设施224,与LAN 250进行通信。可以通过一个或多个路由器(未示出)提供对LAN250的访问,并且LAN 250的计算设备可以在防火墙或代理服务器266之后操作。 In this example, mobile device 100 communicates with LAN 250 through nodes 202 of wireless network 200 and shared network infrastructure 224, such as a service provider network or the public Internet. Access to LAN 250 may be provided through one or more routers (not shown), and computing devices of LAN 250 may operate behind a firewall or proxy server 266. the

在变体实现中,LAN 250包括无线VPN路由器(未示出),以利于LAN 250和移动设备100之间的数据交换。无线VPN路由器的概念在无线行业是较新的,并且暗示可以直接通过专用无线网络与移动设备100建立VPN连接。使用无线VPN路由器近年来变得可能,并且当新的第六版因特网协议(IP)(IPv6)进入基于IP的无线网络时可以使用。这种新的协议将提供足够的IP地址,以向每一个移动设备提供IP地址,可以在任何时候将信息推送到移动设备。使用无线VPN路由器的优点在于它可以是不用定制的VPN组件,不需要使用独立的无线网关和独立的无线基础设施。在该变体实现中,优选地,VPN连接是传输控制协议(TCP)/IP或用户数据报协议(UDP)/IP连接,用以将消息直接传递给移动设备100。 In a variant implementation, LAN 250 includes a wireless VPN router (not shown) to facilitate data exchange between LAN 250 and mobile device 100. The concept of a wireless VPN router is relatively new in the wireless industry and implies that a VPN connection can be established with a mobile device 100 directly through a private wireless network. The use of wireless VPN routers has become possible in recent years and became available when the new sixth version of the Internet Protocol (IP) (IPv6) came into use in IP-based wireless networks. This new protocol will provide enough IP addresses to provide IP addresses to every mobile device, and information can be pushed to mobile devices at any time. The advantage of using a wireless VPN router is that it can be a custom VPN component without using a separate wireless gateway and a separate wireless infrastructure. In this variant implementation, the VPN connection is preferably a Transmission Control Protocol (TCP)/IP or User Datagram Protocol (UDP)/IP connection for passing messages directly to the mobile device 100 . the

首先,由LAN 250的消息服务器268接收到意欲提供给移动设备100的用户的消息。这种消息可以来源于多个源中的任意一个。例如,消息可以经由共享网络基础设施224,并且可能通过例如应用服务提供商(ASP)或因特网服务提供商(ISP),由发送者发送自LAN 250内的计算机262b、来自与无线网络200或与不同无线网络相连的不同移动设备(未示出)、或来自不同的计算设备或能够发送消息的其它设 备。 First, a message intended for the user of the mobile device 100 is received by the message server 268 of the LAN 250. Such messages may originate from any of a number of sources. For example, the message may be sent by the sender from computer 262b within LAN 250, from computer 262b within LAN 250, from wireless network 200, or with Different mobile devices (not shown) connected to different wireless networks, or from different computing devices or other devices capable of sending messages. the

消息服务器268通常作为在组织内且在共享网络基础设施224上的消息(尤其是电子邮件消息)交换的主接口。组织内被建立用于发送和接收消息的每一个用户通常与消息服务器268所管理的用户账户相关联。消息服务器268的一个示例是Microsoft ExchangeTM服务器。在一些实现中,LAN 250可以包括多个消息服务器268。消息服务器268还适用于提供消息管理之外的附加功能,例如,包括与日历和任务列表相关联的数据的管理。 The message server 268 typically serves as the primary interface for the exchange of messages, especially e-mail messages, within the organization and over the shared network infrastructure 224 . Each user within an organization that is established for sending and receiving messages is typically associated with a user account managed by message server 268 . One example of message server 268 is a Microsoft Exchange server. In some implementations, LAN 250 may include multiple message servers 268 . The message server 268 is also adapted to provide additional functionality beyond message management, including, for example, the management of data associated with calendars and task lists.

当消息由管理服务器268接收到时,通常将它们存储在消息存储器(未示出)中,以后可以从该存储器中检索消息并传递给用户。例如,操作在用户计算机262a上的电子邮件客户端应用程序可以请求与存储在消息服务器268上的用户账户相关联的电子邮件消息。然后,通常可以从消息服务器268中检索这些消息并且本地地存储在计算机262a上。 As messages are received by the management server 268, they are typically stored in a message store (not shown) from which they can be later retrieved and delivered to users. For example, an email client application operating on user computer 262a may request email messages associated with a user account stored on message server 268 . These messages may then typically be retrieved from message server 268 and stored locally on computer 262a. the

当操作移动设备100时,用户也许希望检索电子邮件消息以传递给手持设备。运行在移动设备100上的电子邮件客户端应用程序还可以向消息服务器268请求与用户账户相关联的消息。电子邮件客户端可以被(用户或管理员,可能根据组织的信息技术(IT)政策)配置用于根据用户的指导、以预定时间间隔、或当发生预定事件时做出该请求。在一些实现中,向移动设备100分配其自身的电子邮件地址,并且当由消息服务器268接收到明确要发送到移动设备100的消息时,自动地将它们重定向到移动设备100。 While operating mobile device 100, a user may wish to retrieve email messages for delivery to the handheld device. An email client application running on the mobile device 100 may also request messages associated with the user account from the message server 268 . The email client may be configured (by the user or an administrator, possibly according to the organization's information technology (IT) policy) to make this request at the user's direction, at predetermined intervals, or when predetermined events occur. In some implementations, the mobile device 100 is assigned its own email address, and when messages specifically intended for the mobile device 100 are received by the message server 268, they are automatically redirected to the mobile device 100. the

为了利于移动设备100和LAN 250的组件之间的消息和消息相关数据的无线通信,可以提供多个无线通信支持组件270。在该示例实现中,例如,无线通信支持组件270包括消息管理服务器272。消息管理服务器272用于专门向要由移动设备处理的消息(例如电子邮件消息)管理提供支持。通常,尽管消息仍然被存储在消息服务器268上,消息管理服务器272被用于控制消息应该何时、是否以及怎样被发送到移动设备100。消息管理服务器272还利于对在移动设备100上编撰的发送到消息服务器268用于以后传递的消息的处理。 To facilitate wireless communication of messages and message-related data between components of the mobile device 100 and the LAN 250, a number of wireless communication support components 270 may be provided. In this example implementation, wireless communication support component 270 includes message management server 272, for example. The message management server 272 is used to provide support specifically for the management of messages (eg, e-mail messages) to be processed by the mobile device. Generally, while messages are still stored on message server 268, message management server 272 is used to control when, if and how messages should be sent to mobile device 100. The message management server 272 also facilitates the processing of messages composed on the mobile device 100 that are sent to the message server 268 for later delivery. the

例如,消息管理服务器272可以:监控新电子邮件消息的用户“邮 箱”(例如,与消息服务器268上的用户账户相关联的消息存储器);对新消息应用用户可定义的过滤器,以确定是否以及怎样将消息传递给用户的移动设备100;压缩并加密新消息(例如使用诸如数据加密标准(DES)或三迭DES)并经由共享网络基础设施224和无线网络20将它们推送到移动设备100;以及接收在移动设备100上编撰的(例如使用三迭DES加密的)消息,解密并解压缩编撰的消息,如果需要,重新格式化编撰的消息,使得它们表现为来源于用户计算机262a,并且将编撰的消息改换路由到消息服务器268以便传递。 For example, message management server 272 may: monitor a user's "mailbox" (e.g., a message store associated with a user account on message server 268) for new email messages; apply user-definable filters to new messages to determine Whether and how messages are delivered to the user's mobile device 100; compress and encrypt new messages (e.g., using data such as Data Encryption Standard (DES) or Triple DES) and push them to the mobile device via shared network infrastructure 224 and wireless network 20 100; and receiving messages composed (e.g., encrypted using Triple DES) on the mobile device 100, decrypting and decompressing the composed messages, and if necessary, reformatting the composed messages so that they appear to originate from the user computer 262a, And the composed message is re-routed to the message server 268 for delivery. the

可以(例如由管理员根据IT策略)定义发送自移动设备100和/或由移动设备100接收的与消息相关联的某些属性或限制,并且由消息管理服务器272实施。这些属性或限制可以包括例如:移动设备100是否可以接收加密和/或签名的消息、最小的加密密钥大小、是否必须对输出的消息加密和/或签名以及是否要将发送自移动设备100的所有安全消息的拷贝发送到预定义拷贝地址。 Certain attributes or restrictions associated with messages sent from and/or received by the mobile device 100 may be defined (eg, by an administrator in accordance with IT policy) and enforced by the message management server 272 . These attributes or restrictions may include, for example: whether the mobile device 100 can receive encrypted and/or signed messages, a minimum encryption key size, whether outgoing messages must be encrypted and/or signed, and whether messages sent from the mobile device 100 are to be A copy of all secure messages is sent to a predefined copy address. the

消息管理服务器272还可以适用于提供其它的控制功能,例如仅将存储在消息服务器268上的消息的特定消息信息或预定部分(例如“块”)推送到移动设备100。例如,当最初由移动设备100从消息服务器268中检索消息时,消息管理服务器272适用于仅将消息的第一部分推送到移动设备100,该部分是预定大小的(例如2KB)。然后,用户可以请求由消息管理服务器272将该消息的更多部分以相同大小的块传递给移动设备100,可能最多到最大的预定消息大小。 The message management server 272 may also be adapted to provide other control functions, such as pushing only certain message information or predetermined portions (eg, "chunks") of messages stored on the message server 268 to the mobile device 100 . For example, when a message is initially retrieved by the mobile device 100 from the message server 268, the message management server 272 is adapted to push only the first portion of the message to the mobile device 100, which portion is of a predetermined size (eg, 2KB). The user may then request that more portions of the message be delivered by the message management server 272 to the mobile device 100 in chunks of the same size, possibly up to a maximum predetermined message size. the

因此,消息管理服务器272利于更好地控制通信到移动设备100的数据类型和数据量,并且有助于使带宽或其它资源的可能浪费最小化。 Accordingly, the message management server 272 facilitates better control over the type and amount of data communicated to the mobile device 100 and helps minimize possible waste of bandwidth or other resources. the

本领域的技术人员可以理解,消息管理服务器272不需要实现在LAN 250或其它网络中的独立物理服务器上。例如,可以使与消息管理服务器272相关联的一些或所有功能与消息服务器268或者LAN250中的其它服务器相结合。此外,LAN 250可以包括多个消息管理服务器272,具体地,在变体实现中,需要支持大量的移动设备。 Those skilled in the art will appreciate that the message management server 272 does not need to be implemented on a separate physical server in the LAN 250 or other networks. For example, some or all of the functionality associated with message management server 272 may be integrated with message server 268 or other servers in LAN 250 . In addition, LAN 250 may include multiple message management servers 272, specifically, in variant implementations, a large number of mobile devices need to be supported. the

尽管可以将简单邮件传输协议(SMTP)、RFC822报头以及多用途因特网邮件扩展协议(MIME)主体部分用于定义不需要编码的典 型的电子邮件消息的格式,还可以在编码消息的通信中(即在安全收发消息应用中)使用作为MIME协议的一种版本的安全/MIME(S/MIME)。S/MIME能够实现端到端的认证和秘密性,并且提供数据完整性和从消息的始发者发送消息到由消息接收者解码和阅读消息为止的秘密性。可以采用其它标准和协议以利于安全消息通信,例如Pretty Good PrivacyTM(PGP)和例如OpenPGP的PGP变体。可以理解,尽管此处一般引用“PGP”,该术语意欲包含根据更一般化的PGP方案的多种变体的实现之一。 Although the Simple Mail Transfer Protocol (SMTP), RFC822 headers, and Multipurpose Internet Mail Extensions (MIME) body parts can be used to define the format of a typical e-mail message that does not require encoding, it is also possible in the communication of encoded messages (i.e. In Secure Messaging applications) Secure/MIME (S/MIME), which is a version of the MIME protocol, is used. S/MIME enables end-to-end authentication and confidentiality, and provides data integrity and confidentiality from when the originator of the message sends the message to when the message is decoded and read by the recipient. Other standards and protocols may be employed to facilitate secure messaging, such as Pretty Good Privacy (PGP) and PGP variants such as OpenPGP. It will be appreciated that although "PGP" is generally referred to herein, this term is intended to encompass implementations according to one of many variants of the more generalized PGP scheme.

例如S/MIME和基于PGP协议的安全收发消息协议依靠公共和私有的加密密钥来提供秘密性和完整性。使用私钥/公钥对的私钥加密的数据仅可以使用该对的相应公钥来解码,并且使用私钥/公钥对的公钥加密的数据仅可以使用该对的相应私钥来解码。意欲永不公开私钥信息,但共享公钥信息。 Secure messaging protocols such as S/MIME and PGP-based protocols rely on public and private encryption keys to provide confidentiality and integrity. Data encrypted with the private key of a private/public key pair can only be decoded with the pair's corresponding public key, and data encrypted with the public key of a private/public key pair can only be decoded with the pair's corresponding private key . It is intended to never disclose private key information, but share public key information. the

例如,如果发送者希望以加密形式将消息发送到接收者,接收者的公钥被用于加密消息,则该消息仅能够使用接收者的私钥来解码。可选地,在一些编码技术中,产生一次性会话密钥,并且通常利用对称加密技术(例如三迭DES),用于解码消息的主体。然后,使用接收者的公钥(例如利用例如RSA的公钥加密算法)加密会话密钥,则仅能够使用接收者的私钥来解密会话密钥。消息报头可以被用于指定必须用于解密消息的特定加密方案。在变体实现中,可以使用基于公钥密码术的其它加密技术。然而,在这些情况的每一个中,仅可以使用接收者的私钥以利于消息的成功解密,并且按照这种方式,可以保持消息的机密性。 For example, if a sender wishes to send a message in encrypted form to a recipient, the recipient's public key was used to encrypt the message, the message can only be decoded using the recipient's private key. Optionally, in some encoding techniques, a one-time session key is generated and used to decode the body of the message, typically using a symmetric encryption technique (eg Triple DES). The session key is then encrypted using the recipient's public key (eg using a public key encryption algorithm such as RSA), the session key can only be decrypted using the recipient's private key. Message headers can be used to specify a particular encryption scheme that must be used to decrypt the message. In variant implementations, other encryption techniques based on public key cryptography may be used. In each of these cases, however, only the recipient's private key can be used to facilitate successful decryption of the message, and in this way, the confidentiality of the message can be maintained. the

作为另一个示例,发送者可以使用数字签名来签名消息。数字签名是使用发送者的私钥加密的消息的提要(例如消息的哈希散列),然后,可以将数字签名添加到输出的消息上。为了在接收时验证消息的数字签名,接收者使用与发送者相同的技术(例如使用相同的标准哈希算法)来获得接收消息的提要。接收者还使用发送者的公钥来解码数字签名,以便获得接收消息的匹配提要。如果接收消息的提要不匹配,这表示在传输期间改变了消息内容和/或消息不是来源于其公钥被用于验证的发送者。按照一种方式设计数字签名算法,使得仅有知道 发送者私钥的人能够对接收者可以直接使用发送者的公钥来解码的签名进行编码。因此,通过按照这种方式验证数字签名,可以保持发送者的认证和消息的完整性。 As another example, a sender may sign a message using a digital signature. A digital signature is a digest of the message (such as a hash of the message) encrypted with the sender's private key. The digital signature can then be added to the outgoing message. To verify a message's digital signature upon receipt, the recipient uses the same techniques as the sender (eg using the same standard hashing algorithm) to obtain a digest of the received message. The receiver also uses the sender's public key to decode the digital signature in order to obtain a matching digest of the received message. If the digest of the received message does not match, this indicates that the message content was changed during transmission and/or the message did not originate from the sender whose public key was used for authentication. The digital signature algorithm is designed in such a way that only the person who knows the sender's private key can encode a signature that the recipient can directly use the sender's public key to decode. Therefore, by verifying the digital signature in this manner, the authentication of the sender and the integrity of the message are maintained. the

可以对编码的消息进行加密、签名或既加密还签名。在S/MIME中,使用证书来证实在这些操作中使用的公钥的可靠性。证书可以是认证授权中心(CA)发出的数字文献。证书被用于认证用户及其公钥之间的关联,并且实质上,提供了用户公钥的可靠性的可信度。证书包含关于证书持有人的信息,证书内容通常具有根据所接受标准(例如X.509)的格式。证书通常由认证授权中心进行数字地签名。 Encoded messages can be encrypted, signed, or both. In S/MIME, certificates are used to verify the authenticity of the public keys used in these operations. A certificate may be a digital document issued by a certificate authority (CA). Certificates are used to authenticate the association between a user and their public key and, in essence, provide confidence in the authenticity of the user's public key. A certificate contains information about the certificate holder, and the certificate content is usually in a format according to an accepted standard (eg X.509). Certificates are usually digitally signed by a certificate authority. the

在基于PGP的系统中,使用PGP密钥,PGP密钥与S/MIME证书一样包含包括公钥和关于密钥持有人或拥有者信息的公开信息。然而,与S/MIME证书不同,PGP密钥通常不是由认证授权中心发出的,并且典型地,PGP密钥的可靠性的可信度需要验证可靠个体已经担保给定PGP密钥的可靠性。 In PGP-based systems, PGP keys are used, which, like S/MIME certificates, contain public information including the public key and information about the key holder or owner. However, unlike S/MIME certificates, PGP keys are generally not issued by a certificate authority, and typically confidence in the authenticity of a PGP key requires verification that a trusted individual has vouched for the authenticity of a given PGP key. the

标准电子邮件安全协议通常利于非移动计算设备(例如图4的计算机262a、262b;远程桌面设备)之间的安全消息传输。为了可以从移动设备100中读取从发送者接收到的签名消息并且可以从移动设备100发送该加密消息,移动设备100适用于存储其它个体的公钥(例如S/MIME证书中的、PGP密钥)。例如,通常通过支架264将存储在用户计算机262a上的密钥从计算机262a下载到移动设备100。 Standard email security protocols generally facilitate secure messaging between non-mobile computing devices (eg, computers 262a, 262b of FIG. 4; remote desktop devices). In order that the signed message received from the sender can be read from the mobile device 100 and the encrypted message can be sent from the mobile device 100, the mobile device 100 is adapted to store other individuals' public keys (e.g. PGP keys in S/MIME certificates). key). For example, keys stored on user computer 262a are downloaded from computer 262a to mobile device 100, typically via cradle 264. the

移动设备100还可以适用于存储与用户相关联的公钥/私钥对的私钥,以便移动设备100的用户可以签名在移动设备100上编撰的输出消息,并且解密利用用户的公钥加密的发送到用户的消息。例如,可以通过支架264将私钥从用户的计算机262a下载到移动设备100。优选地,在计算机262a和移动设备100之间交换私钥,以便用户可以共享一个身份和一种方法,以便访问消息。 The mobile device 100 may also be adapted to store the private key of a public/private key pair associated with the user, so that the user of the mobile device 100 can sign outgoing messages composed on the mobile device 100, and decrypt messages encrypted with the user's public key. The message sent to the user. For example, the private key may be downloaded from the user's computer 262a to the mobile device 100 via the cradle 264 . Preferably, private keys are exchanged between computer 262a and mobile device 100 so that users can share one identity and one method to access messages. the

用户计算机262a、262b可以从多个源获得S/MIME证书以及PGP密钥,用于存储在例如计算机262a、262b和/或移动设备(例如移动设备100)的密钥存储器中。这些证书和密钥的源可以是私有(例如专用于组织内部)或公共,可以驻留在本地或远程,并且可以从组织的专用网络内访问或通过例如因特网访问。在图4所示的示例中,与 组织相关联的多个公钥基础设施(PKI)服务器280驻留在LAN 250上。例如,PKI服务器280包括:可以用于发出S/MIME证书的CA服务器282、可以用于(例如针对组织内的个体)搜索并下载S/MIME证书和/或PGP密钥的简化目录访问协议(LDAP)服务器284以及可以用于验证S/MIME证书的撤销状态的在线证书状态协议(OCSP)服务器286。 The user computers 262a, 262b may obtain S/MIME certificates and PGP keys from a variety of sources for storage, eg, in the keystores of the computers 262a, 262b and/or mobile devices (eg, mobile device 100). The source of these certificates and keys can be private (eg, dedicated within the organization) or public, can reside locally or remotely, and can be accessed from within the organization's private network or via, for example, the Internet. In the example shown in FIG. 4, a plurality of public key infrastructure (PKI) servers 280 associated with an organization reside on LAN 250. For example, PKI server 280 includes a CA server 282 that can be used to issue S/MIME certificates, Simplified Directory Access Protocol (SCA) that can be used to search and download S/MIME certificates and/or PGP keys (e.g., for individuals within an organization). LDAP) server 284 and an Online Certificate Status Protocol (OCSP) server 286 that can be used to verify the revocation status of S/MIME certificates. the

例如,可以由用户计算机262a从LDAP服务器284中检索证书和/或PGP密钥,以便经由支架264下载到移动设备100。然而,在变体实现中,LDAP服务器284可以由移动设备100直接访问(即,在该语境中的“空中下载”),并且移动设备100可以通过移动数据服务器288搜索并检索个人证书和PGP密钥。类似地,移动数据服务器288可以适用于使移动设备100可以直接查询ODSP服务器286以验证S/MIME证书的撤销状态。 For example, certificates and/or PGP keys may be retrieved by user computer 262 a from LDAP server 284 for download to mobile device 100 via cradle 264 . However, in a variant implementation, the LDAP server 284 can be directly accessed by the mobile device 100 (i.e., "over the air" in this context), and the mobile device 100 can search and retrieve personal certificates and PGP via the mobile data server 288. key. Similarly, mobile data server 288 may be adapted to allow mobile device 100 to query ODSP server 286 directly to verify the revocation status of the S/MIME certificate. the

在变体实现中,移动设备仅可以访问选定的PKI服务器280(例如,使得仅仅可以从用户的计算机262a、262b下载证书,而可以从移动设备100检查证书的撤销状态)。 In a variant implementation, the mobile device can only access selected PKI servers 280 (eg, so that only certificates can be downloaded from the user's computer 262a, 262b, but the revocation status of the certificates can be checked from the mobile device 100). the

在变体实现中,如IT管理员所规定的,也可以根据IT策略,使特定PKI服务器280仅由注册了特定用户的移动设备访问。 In a variant implementation, a specific PKI server 280 may also be made accessible only by mobile devices registered with specific users, according to IT policy, as specified by the IT administrator. the

例如S/MIME证书和PGP密钥的其它源(未示出)可以包括:Windows证书或密钥存储器、LAN 250之上或之外的其它的安全证书或密钥存储器以及智能卡。 Other sources (not shown) such as S/MIME certificates and PGP keys may include: Windows certificate or key stores, other secure certificate or key stores on or off the LAN 250, and smart cards. the

在最后一个系统实施例中,策略引擎290驻留在LAN 250中。例如,可以作为PGP公司开发的PGP通用服务器来提供策略引擎290。这仅是一个示例。在变体实施例中,可以在除PGP通用服务器之外的其它设备或结构中实现策略引擎,并且可以在除PGP之外的协议的语境中(例如在S/MIME策略引擎中)应用。 In a last system embodiment, policy engine 290 resides in LAN 250. For example, policy engine 290 may be provided as PGP General Server developed by PGP Corporation. This is just an example. In variant embodiments, the policy engine may be implemented in other devices or structures than the PGP generic server, and may be applied in the context of protocols other than PGP (eg, in an S/MIME policy engine). the

关于上述示例,PGP通用服务器290适用于与用户桌面计算机(例如262a)以及用户的移动设备(例如100,经由消息管理服务器272)进行通信,并且还适用于例如根据管理员建立的策略,加密消息以及强制服从关于由用户发送的消息的安全需要。如图4所示的LAN 250中的PGP通用服务器290的布置仅仅作为示例,并且其它的布置和配 置也是可以的。根据PGP通用服务器290的布置以及其中可以采用PGP通用服务器290的LAN 250的特定配置,对经过安全编码的处理消息的控制(具体地,对用户发送的消息的控制)的等级可以改变。 With respect to the above example, the PGP general server 290 is adapted to communicate with the user's desktop computer (eg, 262a) as well as the user's mobile device (eg, 100, via the message management server 272), and is also adapted to encrypt messages, eg, according to policies established by the administrator. As well as enforce compliance with security requirements regarding messages sent by users. The arrangement of the PGP Universal Server 290 in the LAN 250 as shown in FIG. 4 is merely an example, and other arrangements and configurations are possible. Depending on the placement of the PGP Universal Server 290 and the particular configuration of the LAN 250 in which the PGP Universal Server 290 may be employed, the level of control over securely encoded process messages (in particular, user-sent messages) may vary. the

例如,PGP通用服务器290适用于直接处理所有的输出消息(即由用户从用户桌面计算机、移动设备或其它计算设备发送到一个或多个目的接收者的消息),其中,它根据管理员所配置的PGP通用服务器290上定义的策略(如果有的话),决定要加密和/或签名哪些消息。如果策略规定要使用PGP来加密和签名要由用户发送到特定域或属于特定主题的消息,PGP通用服务器290本身可以在发送之前加密和签名消息。 For example, PGP Universal Server 290 is adapted to directly process all outgoing messages (i.e., messages sent by a user from a user's desktop computer, mobile device, or other computing device to one or more intended recipients), where it Policies (if any) defined on the PGP general server 290 determine which messages are to be encrypted and/or signed. If policy dictates that PGP be used to encrypt and sign messages to be sent by a user to a particular domain or belonging to a particular subject, the PGP general server 290 itself can encrypt and sign the message before sending. the

可选地,例如通过与PGP通用服务器290进行通信的用户计算机设备上的其它PGP收发消息应用程序,用户可以将安全策略数据从PGP通用服务器290下载到用户计算设备。然后,可以根据获得的安全策略数据,命令用户或应用程序在发送之前加密且签名消息。 Alternatively, the user may download security policy data from the PGP general server 290 to the user computing device, such as through other PGP messaging applications on the user computer device in communication with the PGP general server 290 . Then, based on the obtained security policy data, the user or application can be instructed to encrypt and sign the message before sending it. the

因此,PGP通用服务器290根据域和其它机制,提供了强制集中策略的能力。 Thus, PGP Generic Server 290 provides the ability to enforce centralized policies based on domains and other mechanisms. the

PGP通用服务器290还适用于存储、证实以及管理PGP密钥,并且当需要密钥来编码(例如加密和/或签名)消息时,适用于从远程密钥存储器中检索PGP密钥。在由用户或应用程序请求时,PGP通用服务器290还可以按照需要将所存储或检索的PGP密钥提供给用户。 The PGP general server 290 is also adapted to store, validate, and manage PGP keys, and to retrieve PGP keys from remote key stores when keys are needed to encode (eg, encrypt and/or sign) messages. PGP Universal Server 290 may also provide stored or retrieved PGP keys to users as needed, upon request by the user or application. the

通过采用例如由作为示例所述的PGP通用服务器290所实现的策略引擎,可以将与处理安全消息(例如电子邮件)相关联的多数责任(具体地,是决定要安全地发送哪些消息以及根据情况应该应用哪个安全编码)转移到策略引擎上。 By employing a policy engine such as implemented by the PGP Generic Server 290 described by way of example, most of the responsibility associated with handling secure messages (e.g. e-mail) (in particular, deciding which messages to send securely and which which security encoding should be applied) is transferred to the policy engine. the

现在参考图5,可以由消息服务器(例如图4的消息服务器268)接收并且转发到用户(例如移动设备100)的编码消息的一个示例的组件的方框图如350所示。编码消息350通常包括一个或多个以下组件:报头352、主体或数据部分354、可选地一个或多个编码附件356、一个或多个加密会话密钥358(如果消息被加密)以及数字签名和签名相关的信息360。 Referring now to FIG. 5 , a block diagram of components of one example of an encoded message that may be received by a message server (eg, message server 268 of FIG. 4 ) and forwarded to a user (eg, mobile device 100 ) is shown at 350 . An encoded message 350 typically includes one or more of the following components: a header 352, a body or data portion 354, optionally one or more encoded attachments 356, one or more encrypted session keys 358 (if the message is encrypted), and a digital signature Information 360 related to the signature. the

例如,典型地,消息350的报头部分352包括地址信息,例如“到”、 “来自”以及“Cc”消息地址,并且还可以包括例如长度指示符以及加密和签名方案标识符。实际的消息内容通常包括在主体或数据部分354中,并且可能处于可以由发送者使用会话密钥加密的一个或多个附件356中。如果要使用会话密钥,通常针对每一个预期的接收者,使用每一个接收者的各自公钥来加密会话密钥,并且将所述会话密钥包含在消息的358处。 For example, header portion 352 of message 350 typically includes address information, such as "to," "from," and "Cc" message addresses, and may also include, for example, length indicators and encryption and signature scheme identifiers. The actual message content is typically included in a body or data portion 354 and possibly in one or more attachments 356 which may be encrypted by the sender using a session key. If a session key is to be used, it is typically encrypted for each intended recipient using each recipient's respective public key and included at 358 in the message. the

如果对消息进行签名,则包括数字签名和签名相关的信息360。例如,当使用例如S/MIME的协议时,这可以包括发送者的证书。作为另一个示例,如果签名是PGP签名,PGP签名将包括可以被用于识别签名消息的PGP密钥的PGP密钥标识符。典型地,消息不包括PGP密钥。典型地,意欲彼此安全地进行通信的个体可以在通信之前彼此交换PGP密钥。PGP密钥通常还包括与密钥持有人相关联的信息,例如与密钥持有人相关联的地址(例如电子邮件地址)。 If the message is signed, the digital signature and signature-related information 360 is included. For example, this may include the sender's certificate when using a protocol such as S/MIME. As another example, if the signature is a PGP signature, the PGP signature will include a PGP key identifier that can be used to identify the PGP key that signed the message. Typically, the message does not include the PGP key. Typically, individuals who intend to communicate securely with each other can exchange PGP keys with each other prior to communicating. PGP keys typically also include information associated with the key holder, such as an address (eg, an email address) associated with the key holder. the

签名的消息不必限制于在消息末端添加了单个数字签名360的消息。例如,一些协议允许签名消息主体354中数据的多个独立部分,并且产生的消息可以包括包含在消息中(可能嵌入在消息主体354本身中)的多个数字签名。 Signed messages need not be limited to messages with a single digital signature 360 added to the end of the message. For example, some protocols allow multiple independent portions of data in the message body 354 to be signed, and the resulting message may include multiple digital signatures contained within the message (possibly embedded in the message body 354 itself). the

仅作为示例提供如图5所示的编码消息的格式,并且本领域的技术人员可以理解,存在其它格式的编码消息。根据采用的特定安全收发消息标准或协议,编码消息的组件可以按照与图5所示不同的顺序出现,并且编码消息可以包括更少的、附加的或者不同的组件,这取决于是否加密、签名或既加密也签名编码消息。例如,在多种公知实现中,会话密钥358被设置在报头352之后而在消息主体354之前。 The format of the encoded message as shown in FIG. 5 is provided as an example only, and those skilled in the art will appreciate that there are other formats of the encoded message. Depending on the particular secure messaging standard or protocol employed, the components of an encoded message may appear in a different order than shown in Figure 5, and the encoded message may include fewer, additional, or different components, depending on whether encrypted, signed Or both encrypt and sign encoded messages. For example, in various known implementations, session key 358 is placed after header 352 but before message body 354 . the

为了利于更好地理解此处所述实施例的多个特征,仅作为演示,在图6A至6E中提供了多个消息示例。可以理解,消息的一般格式和内容在不同实现中是不同的。 To facilitate a better understanding of the various features of the embodiments described herein, a number of example messages are provided in FIGS. 6A through 6E by way of illustration only. It will be appreciated that the general format and content of the messages will vary from implementation to implementation. the

还可以理解,尽管这些示例中所示的多数消息包含已经使用基于PGP的协议签名的数据,此处所述实施例的特征也适用于包含使用其它安全收发消息协议签名的数据的消息。 It will also be appreciated that while most of the messages shown in these examples contain data that has been signed using a PGP-based protocol, features of the embodiments described herein are also applicable to messages containing data signed using other secure messaging protocols. the

为了简洁性,没有明确地示出将出现在这些图所示的消息中的实际PGP签名,并且为了方便,在这些示例中每一个签名被标识为“<... 签名出现在此...>”。 For the sake of brevity, the actual PGP signatures that would appear in the messages shown in these figures are not explicitly shown, and for convenience, each signature is identified in these examples as "<...the signature appears here... >". the

参考图6A,如消息400的报头402所示,从John Smith发送到地址janedoe@xyz.com的示例电子邮件消息400包括:开始消息报头404、已签名数据部分406以及与已签名数据部分406相对应并且由开始签名报头409所识别的PGP数字签名408。可以按照公知的方式使用数字签名408来验证已签名数据部分406实际上是由数字签名408中密钥ID所识别的密钥签名的,并且在传送中没有被修改。 Referring to FIG. 6A, as shown in header 402 of message 400, an example email message 400 sent from John Smith to the address janedoe@xyz.com includes a start message header 404, a signed data portion 406, and a signature corresponding to the signed data portion 406. PGP digital signature 408 corresponding to and identified by start signature header 409 . Digital signature 408 may be used in known manner to verify that signed data portion 406 was in fact signed by the key identified by the key ID in digital signature 408 and has not been modified in transit. the

此外,在一个系统实施例中,可以通过从密钥/证书存储器中检索与密钥相关联的密钥持有人信息,确定与用于产生数字签名408的密钥相关联的地址。例如,在消息400的janedoe@xyz.com处的接收者可以预先与John Smith交换PGP密钥,并且将John Smith的PGP密钥存储在她计算设备(例如图4的移动设备100)的密钥存储器中。假定消息实际是由John Smith发送的,由数字签名408中密钥ID所识别的密钥与存储在密钥存储器中的John Smith的密钥相匹配。为了更好的安全性,可以执行与密钥相关联的地址与报头402中所识别的John Smith地址相匹配的验证。如果地址不匹配,则可以告警消息400的接收者检测到地址失配,与是否正确地验证数字签名408本身无关。 Additionally, in one system embodiment, the address associated with the key used to generate the digital signature 408 may be determined by retrieving the key holder information associated with the key from the key/certificate store. For example, the recipient at janedoe@xyz.com of message 400 may have previously exchanged a PGP key with John Smith, and stored John Smith's PGP key at the key of her computing device (e.g., mobile device 100 of FIG. 4 ). in memory. Assuming the message was actually sent by John Smith, the key identified by the key ID in digital signature 408 matches John Smith's key stored in the key store. For better security, a verification that the address associated with the key matches the John Smith address identified in header 402 may be performed. If the addresses do not match, the recipient of the message 400 may be alerted to the detection of an address mismatch, regardless of whether the digital signature 408 itself was properly verified. the

现在参考图6B,此处所示的示例电子邮件消息410是如消息410的报头412所示,从janedoe@xyz.com处消息400(图6A)的接收者Jane Doe到John Smith的回复。消息400的文本被并入消息410,在消息分隔符414之下,并且可以被认为表示John Smith和Jane Doe之间的谈话线程。 Referring now to FIG. 6B, an example email message 410 shown here is a reply from Jane Doe, recipient of message 400 (FIG. 6A) at janedoe@xyz.com, to John Smith, as indicated by header 412 of message 410. The text of message 400 is incorporated into message 410, below message separator 414, and can be considered to represent a thread of conversation between John Smith and Jane Doe. the

在该示例中,消息分隔符414是“-----Original Message----”形式的原始消息分隔符。一般使用多个消息分隔符,用于从当前消息中的数据中分离所回复的消息数据,包括例如:直线分隔符(即从当前消息中的数据中划分所回复的消息数据的直线或虚线)、写作作者分隔符(即谁写出了所回复的消息的指示,也许是例如消息410中的“JohnSmith Wrote:”或“johnsmith@abc.xomwrote:”)、以及用于该目的的其它预定分隔符。类似地,可以使用转发消息分隔符(例如“----ForwardedMessage----”)、写作作者分隔符以及其它预定分隔符来从当前消息中的数据中分离被转发的消息数据。 In this example, the message separator 414 is an original message separator of the form "-----Original Message----". Generally, multiple message delimiters are used to separate the replied message data from the data in the current message, including for example: a straight line delimiter (that is, a straight line or a dotted line that divides the replied message data from the data in the current message) , the writing author separator (i.e. an indication of who wrote the message being replied to, perhaps e.g. "JohnSmith Wrote:" or "johnsmith@abc.xomwrote:" in message 410), and other predetermined separators for this purpose symbol. Similarly, forwarded message delimiters (eg, "----ForwardedMessage----"), author delimiters, and other predetermined delimiters may be used to separate forwarded message data from data in the current message. the

在示例消息410中,Jane Doe没有数字地签名她向John Smith的回复的任何部分。然而,消息410包含所回复的旧消息400的文本。通过并入旧消息的文本,消息410现在包含一部分已签名数据406以及相应的数字签名408。适用于检测地址失配的设备可以假定与用于产生数字签名408的密钥相关联的地址应该与消息410的报头412中所识别的发送者Jane Doe的地址相匹配。在这种情况下,因为用于产生数字签名408的密钥属于John Smith,检测到地址失配。然而,会误导向用户通知该地址失配,因为该错误是被正确地并入当前消息410的旧消息400的结果,而不是例如设法假扮Jane Doe的恶意的第三方的结果。 In the example message 410, Jane Doe did not digitally sign any part of her reply to John Smith. However, message 410 contains the text of the old message 400 that was replied to. Message 410 now contains a portion of signed data 406 and a corresponding digital signature 408 by incorporating the text of the old message. A device adapted to detect an address mismatch may assume that the address associated with the key used to generate digital signature 408 should match the address of the sender, Jane Doe, identified in header 412 of message 410 . In this case, an address mismatch was detected because the key used to generate the digital signature 408 belonged to John Smith. However, the user would be misdirected notifying the address mismatch because the error was the result of the old message 400 being correctly incorporated into the current message 410, rather than the result of a malicious third party, e.g., trying to impersonate Jane Doe. the

因此,在一个较广泛的方面,如将参考图7A至7C详细讨论的多个实施例所示,可以针对出现在第一消息分隔符之后的消息中的每一个数字签名执行至少一个预定动作,其目的是避免在上述情况下误导用户。例如,在图6B的示例中,John Smith的计算设备将适用于忽略出现在消息分隔符414之后的消息410的文本中的任何数字签名(例如408),因此绕过报头412中的发送者地址同与用于产生数字签名408的密钥相关联的密钥相匹配的验证。作为另一个示例,John Smith的计算设备适用于验证报头412中的发送者地址同与用于产生数字签名408的密钥相关联的地址相匹配,但是禁止向用户通知检测的地址失配。此处将描述变体实施例中的预定动作的其它示例。 Thus, in a broader aspect, at least one predetermined action may be performed for each digital signature in a message that appears after the first message delimiter, as shown in various embodiments that will be discussed in detail with reference to FIGS. 7A to 7C , Its purpose is to avoid misleading users in the above situations. For example, in the example of FIG. 6B, John Smith's computing device would be adapted to ignore any digital signature (eg, 408) in the text of message 410 that appears after message delimiter 414, thus bypassing the sender address in header 412 Verification that matches the key associated with the key used to generate the digital signature 408 . As another example, John Smith's computing device is adapted to verify that the sender address in the header 412 matches an address associated with the key used to generate the digital signature 408, but is inhibited from notifying the user of a detected address mismatch. Other examples of predetermined actions in modified embodiments will be described here. the

现在参考图6C,与图6B所示的回复相对,此处所示的示例电子邮件消息410b是来自Jane Doe的回复的不同示例。 Referring now to FIG. 6C, the example email message 410b shown here is a different example of a reply from Jane Doe as opposed to the reply shown in FIG. 6B. the

消息410b与消息410类似。同样将消息400的文本并入消息410b,在消息分隔符414之下。然而,在示例消息410b中,Jane Doe使用她自己的PGP密钥数字地对她向John Smith的回复消息的整个内容进行签名。由Jane Doe密钥所签名的数据在图6C中识别为416,并且与已签名数据416相对应的PGP数字签名被示为418。 Message 410b is similar to message 410 . The text of message 400 is also incorporated into message 410b, below message separator 414. However, in the example message 410b, Jane Doe digitally signs the entire content of her reply message to John Smith using her own PGP key. Data signed by the Jane Doe key is identified as 416 in FIG. 6C , and the PGP digital signature corresponding to the signed data 416 is shown as 418 . the

已签名数据416还从所回复的消息400中并入了一部分已签名数据406和相应的数字签名408。 Signed data 416 also incorporates a portion of signed data 406 and a corresponding digital signature 408 from the replied message 400 . the

在出现在消息41ob中的两个数字签名408、418中,在该示例中,John Smith的计算设备检测最后的数字签名418与报头412所识别的 消息410b的发送者(即Jane Doe)之间的地址失配是适当的。然而,对于剩下的数字签名408,可以执行至少一个预定动作,如参考图6B所述一样。 Of the two digital signatures 408, 418 that appear in the message 41ob, in this example, John Smith's computing device detects a connection between the last digital signature 418 and the sender of the message 410b identified by the header 412 (i.e., Jane Doe). The address mismatch is appropriate. However, for the remaining digital signatures 408, at least one predetermined action may be performed, as described with reference to FIG. 6B. the

图6D和6E是消息420、420b的其它示例,包含John Smith和JaneDoe之间的更长的谈话线程。示出了如报头422所示由John Smith给Jane Doe的两个可选回复。所回复的消息被并入消息420、420b,在消息分隔符424之后。 Figures 6D and 6E are other examples of messages 420, 420b containing longer conversation threads between John Smith and JaneDoe. Two optional replies from John Smith to Jane Doe as indicated by header 422 are shown. The replied message is incorporated into the message 420, 420b after the message separator 424. the

在图6D中,对作为John Smith的回复所提供的新文本进行签名,并且已签名数据和相应的数字签名被分为示为426和428。在消息420中,消息分隔符424未出现在已签名数据426中。 In FIG. 6D , the new text provided as John Smith's reply is signed, and the signed data and corresponding digital signature are shown as 426 and 428 respectively. In message 420 , message separator 424 does not appear in signed data 426 . the

在图6E中,对作为回复所提供的新文本以及John Smith正回复的消息进行签名,并且已签名数据和相应的数字签名被分别示为426和428。在消息420b中,消息分隔符424出现在已签名数据426中。 In Figure 6E, the new text provided as a reply and the message that John Smith is replying to is signed, and the signed data and corresponding digital signature are shown as 426 and 428, respectively. In message 420b, message separator 424 appears within signed data 426 . the

在两个示例中,检测在数字签名428和报头422所识别的消息420的发送者之间是否存在地址失配的适当的。然而,关于出现在消息426中的其它数字签名,可以执行至少一个预定动作。下面所述的至少一个实施例提供这些特征。 In both examples, it is appropriate to detect whether there is an address mismatch between the digital signature 428 and the sender of the message 420 identified by the header 422 . However, with respect to other digital signatures present in message 426, at least one predetermined action may be performed. At least one embodiment described below provides these features. the

如本说明书的以上所述,此处所述的实施例总体上涉及一种设备和方法,可以使报告给消息用户的地址失配错误的数目最小化,尤其是对于正确地并入由发送者之外的他人签名的消息部分的消息,如消息包含谈话线程的情况。这可以增强计算设备的适用性,并且当计算设备是移动设备时是尤其有利的。 As noted above in this specification, the embodiments described herein generally relate to an apparatus and method that minimizes the number of address mismatch errors reported to message users, especially for correctly incorporated Messages that are part of a message other than someone else's signature, as in the case of a message containing a conversation thread. This can enhance the usability of the computing device and is especially advantageous when the computing device is a mobile device. the

首先参考图7A,一个示范实施例中处理签名消息的方法的步骤的流程图通常如500所示。在本说明书的前述部分已经讨论了在变体实施例中可以采用的关于方法500(以及方法500b和500c)的各个步骤以及关于属性的其它细节。 Referring first to FIG. 7A , a flowchart of steps in a method of processing a signed message in an exemplary embodiment is shown generally at 500 . The various steps of method 500 (and methods 500b and 500c) and other details about attributes that may be employed in variant embodiments have been discussed in the preceding sections of this specification. the

由执行且驻留在计算设备上的应用程序执行方法500(以及方法500b和500c)的至少一些步骤。应用程序可以是电子邮件或其它收发消息的应用程序、与电子邮件或其它收发消息应用程序相结合或整合的其它应用程序(例如提供必须功能的附加组件)或者编程以执行这些步骤的其它应用程序。 At least some of the steps of method 500 (and methods 500b and 500c) are performed by an application program executing and resident on the computing device. The application may be an email or other messaging application, other application combined or integrated with the email or other messaging application (such as an add-on to provide the necessary functionality), or other application programmed to perform these steps . the

计算设备可以是桌面计算机(例如,可以包括膝上计算机或移动设备可以与之同步的某种其它计算设备)、移动设备或某种其它计算设备。计算设备可以与策略引擎(例如如图4的PGP通用服务器290中所实现的)相连。 A computing device may be a desktop computer (eg, may include a laptop computer or some other computing device with which a mobile device may be synchronized), a mobile device, or some other computing device. The computing device may be connected to a policy engine (eg, as implemented in PGP general server 290 of FIG. 4). the

在步骤510处,由在计算设备上执行的应用程序(例如电子邮件应用程序)在计算设备(例如图4的移动设备100)处接收消息(例如电子邮件消息)。接收的消息包括报头,典型地,报头包括发送者地址(即消息来自何处)、接收者地址、消息被发送或接收的日期和时间、消息的主题以及可能的其它信息,如图5的示例所示。 At step 510, a message (eg, an email message) is received at a computing device (eg, mobile device 100 of FIG. 4 ) by an application (eg, an email application) executing on the computing device. A received message includes a header which typically includes the address of the sender (i.e. where the message came from), the address of the recipient, the date and time the message was sent or received, the subject of the message, and possibly other information, as in the example of Figure 5 shown. the

在步骤510处接收的、要根据方法500处理的消息也包含至少一部分已签名数据和与已签名数据的每一部分相对应的数字签名的消息。已签名数据部分可以包括整个消息主体。 The message received at step 510 to be processed according to method 500 also contains at least a portion of signed data and a digitally signed message corresponding to each portion of the signed data. The signed data section may include the entire message body. the

根据至少一个实施例,可以使用PGP密钥来签名已签名数据的所述至少一部分中的每一个。可以由PGP开始消息报头(例如“----BEGINPGP MESSAGE----”或“----BEGIN PGP SIGNED MESSAGE----”)在其开始处、由相同的PGP开始签名报头(例如“----BEGIN PGPSIGNATURE----”)在其末端处限定消息中已签名数据的所述至少一部分的每一个,其中已签名数据被设置在两个报头之间。 According to at least one embodiment, each of said at least one portion of signed data may be signed using a PGP key. A message can be started by a PGP header (e.g. "----BEGINPGP MESSAGE----" or "----BEGIN PGP SIGNED MESSAGE----") at its beginning, by the same PGP Begin Signed header (e.g. "----BEGIN PGPSIGNATURE----") defines at its end each of said at least one portion of signed data in the message, wherein the signed data is disposed between two headers. the

还可以作为已经并入在步骤510处接收的消息的旧消息的一部分(例如正回复或已经回复的消息、或者正转发或已经转发的消息)来包含已签名数据部分和相应的数字签名。在一些情况下,还可以再次签名已签名数据和相应的数字签名,并且相应地嵌入在步骤510处接收的消息中的已签名数据的另一部分中(参见图6E)。 The signed data portion and corresponding digital signature may also be included as part of an old message that has been incorporated into the message received at step 510 (eg, a message being or has been replied to, or a message being or has been forwarded). In some cases, the signed data and corresponding digital signature may also be re-signed and embedded accordingly in another part of the signed data in the message received at step 510 (see FIG. 6E ). the

在步骤510处接收的、要根据方法500处理的消息还包括至少一个消息分隔符,表示至少一个旧消息被并入了该接收消息中。例如,消息分隔符可以是原始消息分隔符(例如“----Original Message----”)、直线分隔符(例如“----”或水平线或条)、写作作者分隔符(例如“<thesender>wrote:”)、转发消息分隔符(例如“----Forwarded Message----”)或应用程序适用于检测的预定某种其它消息分隔符。因为消息分隔符可以在已知系统中广泛地变化,应用程序适用于检测常见的变体。 The message received at step 510 to be processed according to method 500 also includes at least one message delimiter indicating that at least one old message was incorporated into the received message. For example, the message separator can be an original message separator (such as "----Original Message----"), a straight line separator (such as "----" or a horizontal line or bar), an authoring separator (such as "<thesender> wrote:"), a forwarded message delimiter (such as "----Forwarded Message----"), or some other message delimiter predetermined by the application as appropriate for detection. Because message delimiters can vary widely across known systems, the application is suitable for detecting common variants. the

在变体实施例中,应用程序还适用于在开始处利用第一开始消息报头所定义的一部分已签名数据内检测随后的开始消息报头,作为消息分隔符。例如,如果第一“----BEGIN PGP MESSAGE----”报头出现,表示跟随着已签名数据,并且在第一报头之后且在“----BEGIN PGP SIGNATURE----”出现之前,出现随后的“----BEGIN PGP MESSAGE----”报头,则可以将随后的报头当作消息分隔符。 In a variant embodiment, the application is also adapted to detect a subsequent start message header as a message delimiter within the portion of signed data defined at the beginning with the first start message header. For example, if the first "----BEGIN PGP MESSAGE----" header appears, it means signed data follows, and after the first header and after "----BEGIN PGP SIGNATURE----" Before, the following "----BEGIN PGP MESSAGE----" header appears, the following header can be used as a message delimiter. the

在步骤520处,定位在步骤510处接收的消息中的第一消息分隔符。典型地,第一消息分隔符在接收消息中的存在表示出现在第一消息分隔符之前的消息中的数据来源于在步骤510处接收的消息的发送者,而第一消息分隔符之后的数据来源于发送者之外的他人。例如,第一消息分隔符之后的数据可以属于在步骤510处接收的消息的发送者正回复或转发的旧消息。 At step 520, the first message delimiter in the message received at step 510 is located. Typically, the presence of the first message delimiter in the received message indicates that the data appearing in the message before the first message delimiter originates from the sender of the message received at step 510, while the data after the first message delimiter From someone other than the sender. For example, the data after the first message delimiter may belong to an old message that the sender of the message received at step 510 is replying to or forwarding. the

消息可以包括也可以不包括已签名数据的一个或多个部分和相应的数字签名,两者都出现在第一消息分隔符之前。签名消息的这些部分最可能来源于在步骤510处接收的消息的发送者。可以按照公知的方式验证与出现在第一消息分隔符之前的已签名数据相对应的每一个数字签名(未示出该步骤)。 A message may or may not include one or more portions of signed data and a corresponding digital signature, both of which appear before the first message delimiter. These portions of the signed message most likely originated from the sender of the message received at step 510 . Each digital signature corresponding to signed data appearing before the first message delimiter can be verified in known manner (this step not shown). the

此外,在一个实施例中,对于与出现在第一消息分隔符之前的已签名数据相对应的每一个数字签名,应用程序适用于:(1)验证在步骤510处接收的消息的报头所识别的发送者地址同与用于产生与出现在第一消息分隔符之前的已签名数据相对应的各个数字签名的密钥相关联的地址相匹配;以及(2)如果发送者地址同与用于产生各个数字签名的密钥相关联的地址不匹配,向计算设备的用户通知地址失配,如步骤530所示。 Additionally, in one embodiment, for each digital signature corresponding to signed data that appears before the first message delimiter, the application is adapted to: (1) verify that the header of the message received at step 510 identifies matches the address associated with the key used to generate the respective digital signature corresponding to the signed data that appears before the first message delimiter; and (2) if the sender address matches the key used for The addresses associated with the keys that generated the respective digital signatures do not match, and the user of the computing device is notified of the address mismatch, as shown in step 530 . the

为了确定与用于产生给定数字签名的密钥相关联的地址,必须在存储到可以提取地址的密钥存储器(例如在计算设备上或来自远程密钥存储器)中时,检索与密钥相关联的密钥持有人信息(未示出该步骤)。一旦确定了与密钥相关联的地址,则应用程序可以验证所确定的地址与发送者地址相匹配。 In order to determine the address associated with the key used to generate a given digital signature, the key associated with the key must be retrieved when stored into a key store from which the address can be extracted (for example, on a computing device or from a remote key store). Associated key holder information (this step is not shown). Once the address associated with the key is determined, the application can verify that the determined address matches the sender address. the

在变体实施例中,只有当管理计算设备使用的安全策略允许时,才可以执行在步骤530处的通知用户。例如,IT策略设置可以规定当检测到地址失配时在何种情况下应该通知计算设备的用户。 In a variant embodiment, notifying the user at step 530 may be performed only if permitted by the security policy governing usage of the computing device. For example, an IT policy setting may specify under what circumstances a user of a computing device should be notified when an address mismatch is detected. the

在步骤540处,确定在步骤520处定位的第一消息分隔符是否出现在在步骤510处接收的消息中的已签名数据的一部分中。例如,如果“----Original Message----”分隔符出现在消息中,在“----BEGIN PGPMESSAGE----”或“----BEGIN PGP SIGNED MESSAGE----”报头出现之后,但是在“----BEGIN PGP SIGNATURE----”出现之前,则这表示第一消息分隔符出现在已签名数据的一部分中。 At step 540 , it is determined whether the first message delimiter located at step 520 is present in a portion of the signed data in the message received at step 510 . For example, if the "----Original Message----" delimiter appears in the message, after "----BEGIN PGPMESSAGE----" or "----BEGIN PGP SIGNED MESSAGE----" header, but before "----BEGIN PGP SIGNATURE----", then this indicates that the first message separator appears as part of the signed data. the

如果确定第一消息分隔符未出现在已签名数据的一部分中,则这通常表示与被并入在步骤510处接收的消息的旧消息相关联的数据未由接收消息的发送者签名。如果确定第一消息分隔符未出现在已签名数据的一部分中,则可以针对消息中出现在第一消息分隔符之后的每一个数字签名,执行至少一个预定动作,这可以使通知给计算设备用户的误导地址失配错误的数目最小化。 If it is determined that the first message delimiter does not appear in a portion of the signed data, this generally indicates that the data associated with the old message incorporated into the message received at step 510 was not signed by the sender of the received message. If it is determined that the first message delimiter does not appear in a portion of the signed data, at least one predetermined action may be performed for each digital signature that appears in the message after the first message delimiter, which may cause a notification to the computing device user The number of misleading address mismatch errors is minimized. the

例如,在本实施例中,如步骤550所示,针对出现在第一消息分隔符之后的数字签名的至少一个预定动作包括绕过发送者地址同与用于产生该数字签名的密钥相关联的地址相匹配的验证。作为另一种方式,为了检测地址失配,应用程序适用于忽略出现在第一消息分隔符之后的任何数字签名。 For example, in this embodiment, as shown in step 550, at least one predetermined action for a digital signature that appears after the first message delimiter includes bypassing the sender address associated with the key used to generate the digital signature The address matches the verification. Alternatively, to detect address mismatches, the application is adapted to ignore any digital signatures that appear after the first message delimiter. the

可以理解,应用程序可以验证数字签名本身(即解码数字签名以认证相应的已签名数据的签名人并确认消息完整性)(未示出该步骤)。 It will be appreciated that the application may verify the digital signature itself (ie decode the digital signature to authenticate the signer of the corresponding signed data and confirm message integrity) (this step is not shown). the

为了检测地址失配,通过忽略出现在第一消息分隔符之后的数字签名,可以消除用户被通知与旧消息相关的误导地址失配错误的可能性,只要正确地识别消息中的第一消息分隔符。这可以增强计算设备的适用性,并且当计算设备是移动设备时尤其有利。例如,对于用户,在移动设备上管理多个误导地址失配错误通知比较麻烦。 To detect address mismatches, by ignoring digital signatures that appear after the first message delimiter, the possibility of the user being notified of a misleading address mismatch error associated with an old message is eliminated, provided the first message delimiter in the message is correctly identified symbol. This can enhance the usability of the computing device and is especially advantageous when the computing device is a mobile device. For example, managing multiple misleading address mismatch error notifications on a mobile device is cumbersome for users. the

再次参考步骤540,如果确定第一消息分隔符出现在已签名数据的一部分中,则这通常表示与至少一个旧消息相关联的数据被并入了在步骤510处接收的消息并且由接收消息的发送者进行签名。应该存在与其中出现第一消息分隔符的该部分已签名数据相对应的数字签名,但是在第一消息分隔符之后。因此,在步骤560处,应用程序验证在步骤510处接收的消息报头所识别的发送者地址同与用于产生数字签名的密钥相关联的地址相匹配。在步骤570处,如果发送者地址 同与用于产生数字签名的密钥相关联的地址不匹配,向计算设备的用户通知地址失配。 Referring again to step 540, if it is determined that the first message delimiter is present in a portion of the signed data, this generally indicates that data associated with at least one old message was incorporated into the message received at step 510 and is used by the receiving message's The sender signs it. There should be a digital signature corresponding to the portion of the signed data in which the first message delimiter occurs, but after the first message delimiter. Accordingly, at step 560, the application verifies that the sender address identified by the message header received at step 510 matches the address associated with the key used to generate the digital signature. At step 570, if the sender address does not match the address associated with the key used to generate the digital signature, the user of the computing device is notified of the address mismatch. the

在两个或多个个体之间的谈话中例行地对消息的整个主体进行签名的情况下,通常将与在任意特定情况下接收的当前消息相对应的数字签名附加到消息的末端。因此,在这些情况下,当第一消息分隔符的确出现在已签名数据的一部分中时,与其中出现了第一消息分隔符的那部分已签名数据相对应的数字签名通常是消息中最后的数字签名(参见图5E)。 Where it is routine to sign the entire body of a message in a conversation between two or more individuals, a digital signature corresponding to the current message received under any particular circumstances is typically appended to the end of the message. Therefore, in these cases, when the first message delimiter does appear in a part of the signed data, the digital signature corresponding to that part of the signed data in which the first message delimiter occurs is usually the last in the message Digital signature (see Figure 5E). the

然而,通常,也可能与其中出现第一消息分隔符的那部分已签名数据相对应的数字签名不是消息中最后的数字签名。必须例如通过确定关于特定部分已签名数据成功地验证了出现在第一消息分隔符之后的哪个数字签名,确定正确的相应数字签名(未明确示出该步骤)。 In general, however, it is also possible that the digital signature corresponding to the portion of the signed data in which the first message delimiter occurs is not the last digital signature in the message. The correct corresponding digital signature must be determined, for example by determining which digital signature appearing after the first message delimiter was successfully verified with respect to a particular part of the signed data (this step is not explicitly shown). the

如上所述,为了确定与用于产生给定数字签名的密钥相关联的地址,必须在存储到从其可以提取地址的密钥存储器(例如在计算设备上或来自远程密钥存储器)中时检索与密钥相关联的密钥持有人信息(未示出该步骤)。一旦确定了与密钥相关联的地址,应用程序则可以验证其与发送者地址相匹配。 As noted above, in order to determine the address associated with the key used to generate a given digital signature, one must, when stored into a key store from which the address can be extracted (e.g., on a computing device or from a remote key store), Keyholder information associated with the key is retrieved (this step is not shown). Once the address associated with the key is determined, the application can verify that it matches the sender's address. the

在变体实施例中,只有当管理计算设备的使用的安全策略允许时,才可以执行在步骤570处的通知用户。例如,IT策略设置可以规定当检测到地址失配时,在何种情况下应该通知计算设备的用户。 In a variant embodiment, notifying the user at step 570 may be performed only if permitted by the security policy governing usage of the computing device. For example, an IT policy setting may specify under what circumstances a user of a computing device should be notified when an address mismatch is detected. the

在步骤580处,针对除了在步骤560处验证了地址匹配的数字签名之外出现在第一消息分隔符之后的消息中的每一个数字签名,执行至少一个预定动作,这可以使会通知给计算设备用户的误导地址失配错误的数目最小化。 At step 580, at least one predetermined action is performed for each digital signature in the message that appears after the first message delimiter except for the digital signature whose address was verified to match at step 560, which may cause notification to the computing device The number of misleading address mismatch errors by users is minimized. the

在该实施例中,针对除了在步骤560处验证了地址匹配的数字签名之外出现在第一消息分隔符之后的每一个数字签名的所述至少一个预定动作包括:绕过发送者地址同与用于产生数字签名的密钥相关联的地址相匹配的验证。作为另一种方式,为了检测地址失配,应用程序适用于忽略除了与其中出现了第一消息分隔符的已签名数据相对应的数字签名之外出现在第一消息分隔符之后的任何数字签名。 In this embodiment, the at least one predetermined action for each digital signature that appears after the first message delimiter except for the digital signature for which an address match was verified at step 560 includes: bypassing the sender address Verification that the address associated with the key that generated the digital signature matches. Alternatively, to detect address mismatches, the application is adapted to ignore any digital signature occurring after the first message delimiter other than the digital signature corresponding to the signed data in which the first message delimiter occurs. the

关于步骤550,可以理解,应用程序可以验证数字签名本身(即 解码数字签名以认证相应的已签名数据的签名人并确认消息完整性)(未示出该步骤)。 With regard to step 550, it is understood that the application may verify the digital signature itself (i.e., decode the digital signature to authenticate the signer of the corresponding signed data and confirm message integrity) (this step is not shown). the

此外,与关于步骤550所述类似,为了检测地址失配,通过忽略出现在第一消息分隔符之后的其它数字签名,可以消除用户被通知与旧消息相关的地址失配错误的可能性,只要正确地识别消息中的第一消息分隔符。这可以增强计算设备的适用性,并且当计算设备是移动设备时尤其有利。例如,对于用户,在移动设备上管理多个误导地址失配错误通知比较麻烦。 Furthermore, similar to that described with respect to step 550, for detecting address mismatches, by ignoring other digital signatures that appear after the first message delimiter, the possibility of the user being notified of an address mismatch error associated with an old message can be eliminated, as long as Correctly identify the first message delimiter in the message. This can enhance the usability of the computing device and is especially advantageous when the computing device is a mobile device. For example, managing multiple misleading address mismatch error notifications on a mobile device is cumbersome for users. the

参考图7B,另一个示范实施例中处理签名消息的方法的步骤的流程图如500b所示。 Referring to FIG. 7B , a flow chart of steps of a method for processing a signed message in another exemplary embodiment is shown at 500b. the

方法500b与方法500类似,除了针对出现在第一消息分隔符之后的数字签名所执行的所述至少一个预定动作(即,如果第一消息分隔符未出现在已签名数据的一部分中,则针对出现在第一消息分隔符之后的每一个数字签名,否则针对除了与其中出现了第一消息分隔符的那部分已签名数据相对应的数字签名之外出现在第一消息分隔符之后的每一个数字签名)包括:验证发送者地址同与用于产生数字签名的密钥相关联的地址相匹配,但是当发送者地址同与用于产生数字签名的密钥相关联的地址不匹配时,禁止向计算设备的用户通知地址失配。在步骤550b和580b处示出了该方法。前面已经参考图7A的方法500描述了方法500b的其它步骤。 Method 500b is similar to method 500, except that the at least one predetermined action is performed for digital signatures that occur after the first message delimiter (i.e., for for each digital signature that occurs after the first message delimiter, otherwise for each digit that occurs after the first message delimiter except for the digital signature corresponding to the portion of the signed data in which the first message delimiter occurs signature) includes verifying that the sender's address matches the address associated with the key used to generate the digital signature, but prohibiting sending A user of the computing device notifies the address mismatch. The method is shown at steps 550b and 580b. The other steps of method 500b have been described above with reference to method 500 of FIG. 7A. the

在变体实施例中,只有当管理计算设备的使用的安全策略允许时,才可以执行在步骤550b和/或580b处的通知用户的禁止。例如,IT策略设置可以规定当检测到地址失配时在何种情况下应该通知计算设备的用户。 In a variant embodiment, the prohibition of notifying the user at steps 550b and/or 580b may be performed only if allowed by the security policy governing the use of the computing device. For example, an IT policy setting may specify under what circumstances a user of a computing device should be notified when an address mismatch is detected. the

与参考图7A所述类似,为了确定与用于产生给定数字签名的密钥相关联的地址,必须在存储到从其可用提取地址的密钥存储器(例如在计算设备上或来自远程密钥存储器)中时检索与密钥相关联的密钥持有人信息(未示出该步骤)。一旦确定了与密钥相关联的地址,应用程序则可以验证它与发送者地址相匹配。 Similar to that described with reference to FIG. 7A , in order to determine the address associated with the key used to generate a given digital signature, it must be stored in the key store (e.g., on a computing device or from a remote key) from which the address can be extracted. memory) to retrieve the key holder information associated with the key (this step is not shown). Once the address associated with the key is determined, the application can verify that it matches the sender's address. the

还可以理解,应用程序可以验证数字签名本身(即解码数字签名以认证相应的已签名数据的签名人并确认消息完整性)(未示出该步 骤)。 It will also be appreciated that the application can verify the digital signature itself (i.e. decode the digital signature to authenticate the signer of the corresponding signed data and confirm message integrity) (this step is not shown). the

参考图7C,另一个示范实施例中处理签名消息的方法的步骤的流程图大致如500c所示。 Referring to FIG. 7C , a flow chart of the steps of the method for processing a signed message in another exemplary embodiment is generally shown at 500c. the

方法500c与方法500类似,除了试图针对出现在第一消息分隔符之后的数字签名提供语境以便可以进行地址匹配的正确验证。这可能向用户提供附加的安全性。例如,假设用户假定并入接收消息的一部分旧消息的发送者已经签名了该部分,如在谈话线程的文本中所示。然而,有可能谈话线程的旧消息中的“From:”行中所示的发送者或发送者地址改变了,使得看起来旧消息是由实际发送者之外的他人发送并签名。 Method 500c is similar to method 500, except that it attempts to provide context for digital signatures that appear after the first message delimiter so that proper verification of address matches can occur. This may provide additional security to the user. For example, assume that the sender of a part of an old message that a user assumes incorporated into a received message has signed that part, as shown in the text of a conversation thread. However, it is possible that the sender or sender address shown in the "From:" line in the old message of the conversation thread changed, making it appear that the old message was sent and signed by someone other than the actual sender. the

关于方法550c所述的实施例通过确定同与并入在步骤510处接收的消息的旧消息相关联的、每一个特定部分已签名数据相关联的地址,来试图解决这种问题。 The embodiment described with respect to method 550c attempts to address this issue by determining the address associated with each particular portion of the signed data associated with the old message incorporated into the message received at step 510 . the

更具体地,除了假定与用于产生出现在接收消息中的数字签名的密钥相关联的地址应该与发送者地址相匹配之外,针对消息中每一部分已签名数据,试图确定部分专用地址,以便当检测到地址失配时可以匹配正确的地址。 More specifically, for each portion of signed data in a message, an attempt is made to determine a partial private address, in addition to assuming that the address associated with the key used to generate the digital signature that appears in the received message should match the sender's address, so that the correct address can be matched when an address mismatch is detected. the

具体地,在一个实施例中,针对出现在第一消息分隔符之后的数字签名的所述至少一个预定动作(即,如果第一消息分隔符未出现在已签名数据的一部分中,则针对出现在第一消息分隔符之后的每一个数字签名,否则针对除了与其中出现了第一消息分隔符的那部分已签名数据相对应的数字签名之外的、出现在第一消息分隔符之后的每一个数字签名)包括:(1)确定与数字签名对应于的那部分已签名数据相关联的部分专用地址,如步骤550c和580c处所示;(2)验证在步骤550c和580c处确定的部分专用地址同与用于产生数字签名的密钥相关联的地址相匹配,分别如步骤552c和582c处所示;以及(3)如果部分专用地址同与用于产生数字签名的密钥相关联的地址不匹配,向计算设备的用户通知地址失配,分别如步骤554c和584c处所示。前面已经参考图7A的方法500描述了方法500c的其它步骤。 Specifically, in one embodiment, said at least one predetermined action for a digital signature that occurs after a first message delimiter (i.e., if the first message delimiter does not occur in a part of the signed data, then for occurrences of For each digital signature that follows the first message delimiter, otherwise for each digital signature that occurs after the first message delimiter A digital signature) includes: (1) determining the portion private address associated with the portion of the signed data to which the digital signature corresponds, as shown at steps 550c and 580c; (2) verifying the portion determined at steps 550c and 580c The private address matches the address associated with the key used to generate the digital signature, as shown at steps 552c and 582c, respectively; and (3) if the partial private address matches the address associated with the key used to generate the digital signature The addresses do not match, and the user of the computing device is notified of the address mismatch, as indicated at steps 554c and 584c, respectively. The other steps of method 500c have been described above with reference to method 500 of FIG. 7A. the

在一个实施例中,确定与对应于数字签名的那部分已签名数据相关联的部分专用地址的步骤(例如步骤550c、580c)包括:在可能的 情况下,从出现在紧接在数字签名与之相对应的那部分已签名数据之前的消息分隔符和那部分已签名数据之间的消息中的文本中,提取前一发送者的地址。通常,目的是首先确定被并入接收消息并且包含那部分已签名数据的旧消息开始之处,这通常由已签名数据之前最靠近的消息分隔符指示出。因此,在至少一些情况下,通常可以从出现在消息分隔符之后的报头中确定旧消息的发送者的部分专用地址,在这种情况下报头被设置在并入的文本中。 In one embodiment, the step of determining the portion of the private address associated with the portion of the signed data corresponding to the digital signature (e.g., steps 550c, 580c) includes, where possible, from the Extract the previous sender's address from the message delimiter preceding the corresponding portion of the signed data and from the text in the message between that portion of the signed data. Typically, the aim is to first determine where the old message that was incorporated into the received message and containing that portion of the signed data began, which is usually indicated by the closest message delimiter preceding the signed data. Thus, in at least some cases, the partial private address of the sender of the old message can often be determined from the header that appears after the message delimiter, in which case the header is set in the incorporated text. the

例如,考虑图6D的示例。已签名数据416是消息420中已经回复的来自报头412所示的Jane Doe的一部分原始消息。为了执行地址的正确匹配,可以提取出现在已签名数据416之前报头412中(即janedoe@xyz.com)的发送者地址,作为专门与已签名数据416以及相应的数字签名418相关联相对应的部分专用地址。然后,可以执行与相应的数字签名418相关联的地址同出现在报头412中的发送者的部分专用地址相匹配的验证,并且如果检测到地址失配,可以通知用户。类似地,关于数字签名408,可以提取出现在已签名数据406之前报头402中的发送者地址,作为专门与已签名数据406以及相应的数字签名406相关联的部分专用地址。然后可以执行与相应的数字签名408相关联的地址同出现在报头402中的发送者的部分专用地址相匹配的验证,并且如果检测到地址失配,可以通知用户。 For example, consider the example of Figure 6D. Signed data 416 is the portion of the original message from Jane Doe shown in header 412 that has been replied in message 420 . In order to perform a correct match of addresses, the sender address appearing in header 412 (i.e. janedoe@xyz.com) preceding signed data 416 can be extracted as the corresponding address specifically associated with signed data 416 and corresponding digital signature 418 Some private addresses. Verification that the address associated with the corresponding digital signature 418 matches the sender's partial private address appearing in header 412 may then be performed, and the user may be notified if an address mismatch is detected. Similarly, with respect to digital signature 408 , the sender address appearing in header 402 preceding signed data 406 may be extracted as part of the private address specifically associated with signed data 406 and corresponding digital signature 406 . A verification that the address associated with the corresponding digital signature 408 matches the sender's partial private address appearing in the header 402 may then be performed, and the user may be notified if an address mismatch is detected. the

按照这种方式,即使当已签名数据和相应的数字签名是已经并入在计算设备处接收的消息的一部分旧消息时,也可以正确地检测地址失配错误。 In this way, address mismatch errors can be correctly detected even when the signed data and corresponding digital signature are part of an old message that has been incorporated into the message received at the computing device. the

与参考图7A所述类似,为了确定与用于产生给定数字签名的密钥相关联的地址,必须在存储到从其可以提取地址的密钥存储器(例如在计算设备上或来自远程密钥存储器)中时检索与密钥相关联的密钥持有人信息(未示出该步骤)。一旦确定了与密钥相关联的地址,则应用程序可以验证它与部分专用地址相匹配。 Similar to that described with reference to FIG. 7A , in order to determine the address associated with the key used to generate a given digital signature, it must be stored in a key store from which the address can be extracted (e.g., on a computing device or from a remote key). memory) to retrieve the key holder information associated with the key (this step is not shown). Once the address associated with the key is determined, the application can verify that it matches the partially private address. the

还可以理解,应用程序可以验证数字签名本身(即解码数字签名以认证相应的已签名数据的签名人并确认消息完整性)(未示出该步骤)。 It will also be appreciated that the application can verify the digital signature itself (ie decode the digital signature to authenticate the signer of the corresponding signed data and confirm message integrity) (this step is not shown). the

对于一些消息,在接收消息中也许没有明确地示出接收消息的发 送者地址或者已经被并入接收消息的旧消息的先前发送者地址。例如,当应用程序适用于处理消息使得发送者仅由给定消息的报头中的名称(例如容易由用户辨别的名称)识别时,会出现这种情况。 For some messages, the sender's address of the received message or the previous sender's address of an old message that has been incorporated into the received message may not be explicitly shown in the received message. This situation arises, for example, when an application is adapted to process messages such that the sender is identified only by a name in a header of a given message, such as a name that is easily discernible by a user. the

因此,在变体实施例中,确定与签名数字对应于的那部分已签名数据相关联的部分专用地址的步骤(例如步骤550c、580c)包括:(1)从出现在紧接在数字签名与之相对应的那部分已签名数据之前的消息分隔符和那部分已签名数据之间的消息中的文本中,提取前一发送者的名称;以及(2)在提取了名称的情况下,从地址簿中提取与提取的名称相关联的前一发送者地址,作为部分专用地址。通常,目的是首先确定已经被并入接收消息并且包含那部分已签名数据的旧消息开始之处,这通常由已签名数据之前最接近的消息分隔符指示。因此,在至少一些情况下,通常可以从出现在消息分隔符之后的报头中确定旧消息的发送者名称,在这种情况下报头被设置在并入的文本中。根据名称,可以试图从例如用户地址簿中的数据中确定与该名称相关联的部分专用地址。 Thus, in a variant embodiment, the step of determining the portion of the private address associated with the portion of the signed data to which the signature number corresponds (for example, steps 550c, 580c) includes: (1) starting from the from the message delimiter preceding the corresponding portion of the signed data and from the text in the message between that portion of the signed data, extracting the name of the previous sender; and (2) if the name is extracted, from The previous sender address associated with the extracted name is extracted from the address book as part of the private address. Typically, the aim is to first determine where an old message that has been incorporated into the received message and contains that portion of signed data begins, which is usually indicated by the closest message delimiter preceding the signed data. Thus, in at least some cases it is often possible to determine the sender name of an old message from a header that appears after the message delimiter, in which case the header is set in the incorporated text. From the name, an attempt can be made to determine the partial private address associated with the name from data in, for example, the user's address book. the

例如,考虑图6E的示例。已签名数据416是消息420中已经回复的、来自报头412所示的Jane Doe的一部分原始消息。为了执行地址的正确匹配,可以提取出现在已签名数据416之前报头412中的发送者名称(即Jane Doe)。然后,可以从用户地址簿中检索Jane Doe的地址,作为专门与已签名数据416和相应的数字签名418相关联的部分专用地址。然后,可以执行与相应的数字签名418相关联的地址同与出现在报头412中的名称相关联的发送者的部分专用地址相匹配的验证,并且如果检测到地址失配,可以通知用户。 For example, consider the example of Figure 6E. Signed data 416 is the portion of the original message from Jane Doe shown in header 412 that has been replied in message 420 . To perform a correct match of addresses, the sender's name (ie Jane Doe) appearing in header 412 preceding signed data 416 may be extracted. Jane Doe's address can then be retrieved from the user's address book as a partial private address associated exclusively with the signed data 416 and corresponding digital signature 418. Verification that the address associated with the corresponding digital signature 418 matches the sender's partial private address associated with the name appearing in header 412 may then be performed, and the user may be notified if an address mismatch is detected. the

认为地址簿包括其中提供名称和相关地址的任何目录、列表或其它数据结构。地址簿的数据可以驻留在计算设备上,或者处于例如远程计算设备上的存储中。 An address book is considered to include any directory, list, or other data structure in which names and associated addresses are provided. The data of the address book may reside on the computing device, or be in storage on a remote computing device, for example. the

在该变体实施例中,仅在未在相应的报头中明确地提供前一发送者地址的情况下,可以从地址簿中检索前一发送者的地址。如果明确地提供了地址,提取的地址可以被用于如上所述地执行地址验证。 In this variant embodiment, the address of the previous sender can be retrieved from the address book only if the address of the previous sender is not explicitly provided in the corresponding header. If an address is explicitly provided, the extracted address can be used to perform address verification as described above. the

与参考图7A所述类似,为了确定与用于产生给定数字签名的密钥相关联的地址,必须在存储到从其可以提取地址的密钥存储器(例 如在计算设备上或来自远程密钥存储器)中时检索与密钥相关联的密钥持有人信息(未示出该步骤)。一旦确定了与密钥相关联的地址,则应用程序可以验证它与部分专用地址相匹配。 Similar to that described with reference to FIG. 7A , in order to determine the address associated with the key used to generate a given digital signature, it must be stored in a key store from which the address can be extracted (e.g., on a computing device or from a remote cryptographic key). Keyholder information associated with the key is retrieved when stored in the key store (this step is not shown). Once the address associated with the key is determined, the application can verify that it matches the partially private address. the

还可以理解,应用程序可以验证数字签名本身(即解码数字签名以认证相应的已签名数据的签名人并确认消息完整性)(未示出该步骤)。 It will also be appreciated that the application can verify the digital signature itself (ie decode the digital signature to authenticate the signer of the corresponding signed data and confirm message integrity) (this step is not shown). the

参考图7A至7C所述的方法的实施例仅作为示例,并且在变体实施例中可以使用其它技术,以使可能由适用于检测地址失配错误的计算设备所产生的误导或不正确的地址失配错误的数目最小化。具体地,可以应用其它的探索,以有助于确定对于特定消息结构、何时通知用户地址失配错误可能是不适当的。 The embodiment of the method described with reference to FIGS. 7A to 7C is by way of example only, and other techniques may be used in variant embodiments to make misleading or incorrect information that may be generated by a computing device adapted to detect an address mismatch error The number of address mismatch errors is minimized. In particular, other heuristics may be applied to help determine when it may be inappropriate to notify a user of an address mismatch error for a particular message structure. the

此外,在变体实施例中,在执行发送者地址或部分专用地址同与用于产生特定数字签名的密钥相关联的地址相匹配的验证的情况下,对于出现在第一消息分隔符之前或之后的数字签名,在检测到地址失配的情况下,计算设备还适用于禁止向用户显示消息本身或消息的一个或多个部分。只有当管理计算设备的使用的安全策略允许时,才可以执行禁止显示至少一部分消息。例如,IT策略设置可以规定当检测到地址失配时在何种情况下应该显示消息(或其一部分)。当禁止了至少一部分消息的显示时,通常向用户通知禁止消息显示的原因是检测到地址失配错误。 Furthermore, in a variant embodiment, in case a verification is performed that the address of the sender or part of the private address matches the address associated with the key used to generate the particular digital signature, for the or subsequent digital signatures, the computing device is further adapted to suppress display of the message itself or one or more parts of the message to the user in the event of an address mismatch being detected. Suppressing display of at least a portion of the message may be performed only if permitted by a security policy governing use of the computing device. For example, an IT policy setting may specify under what circumstances a message (or a portion thereof) should be displayed when an address mismatch is detected. When the display of at least a part of the message is suppressed, the user is generally notified that the reason for suppressing the display of the message is the detection of an address mismatch error. the

还可以理解,在给定实现中可以采用此处所述各个实施例的特征的组合。例如,可以针对消息中特定已签名数据部分做出确定部分专用地址的尝试,以便执行地址匹配验证,而仅仅绕过且忽略消息中其它数据部分。针对并入接收消息的特定旧消息是否执行地址匹配的验证可以取决于例如在给定谈话线程中特定旧消息有多旧。例如,可以由管理计算设备的使用的安全策略规定(例如,如IT策略设置中所指示的)应该应用于已签名数据的给定部分和并入接收消息中的旧消息的相应数字签名的技术。 It is also understood that combinations of the features of the various embodiments described herein may be employed in a given implementation. For example, an attempt to determine a portion-specific address may be made for a particular signed data portion in a message in order to perform address match verification, while other data portions in the message are simply bypassed and ignored. Whether a verification of an address match is performed for a particular old message incorporated into a received message may depend, for example, on how old the particular old message is in a given conversation thread. For example, the technique that should be applied to a given portion of signed data and the corresponding digital signature of an older message incorporated into a received message may be dictated by a security policy governing the use of the computing device (e.g., as indicated in an IT policy setting) . the

可以作为存储在包括传输型(transmission-type)介质的计算机可读介质上的可执行软件指令来提供此处所述的方法的步骤。 The steps of the methods described herein may be provided as executable software instructions stored on a computer-readable medium, including transmission-type media. the

可以参考多个实施例描述了本发明。然而,本领域的技术人员可 以理解,在不脱离所附权利要求所限定的本发明范围下,可以做出其它的变化和修改。 The invention has been described with reference to a number of embodiments. However, it will be appreciated by those skilled in the art that other changes and modifications can be made without departing from the scope of the present invention as defined in the appended claims. the

Claims (24)

1. the method for the signature information that receives at the computing equipment place of a processing, described method comprises step:
Receive message, described message comprises:
Header comprises the sender address at least;
At least a portion is signed data;
With the corresponding digital signature of each part of signed data; And
At least one message separator character, described message separator character have indicated at least one Geju City message to be merged in received message;
Determine whether first message separator character appears at a part in the signed data, sender in the message before wherein present first message separator character is expressed in the appearance of first message separator character in receiving message, and outside the described sender other people after first message separator character data from received message;
If first message separator character does not appear at a part in the signed data,
At appearing at first message separator character each digital signature afterwards in the message, carry out at least one predetermined action, minimize so that be notified to the number of computing equipment user's misleading address mismatch error; And
If first message separator character appears at a part in the signed data,
Whether checking sender address is complementary with the address that is associated with key, the corresponding digital signature of that part of signed data that described key is used to produce after present first message separator character and occurs with first message separator character, and
At in other digital signature that appears in the message after first message separator character each, carry out at least one predetermined action, minimize so that be notified to the number of computing equipment user's misleading address mismatch error.
2. method according to claim 1, also comprise step: if first message separator character appears at a part in the signed data, when the sender address does not match with the address that is associated with key, to the user notification address of computing equipment mismatch, the corresponding digital signature of that part of signed data that described key is used to produce after present first message separator character and occurs with first message separator character.
3. method according to claim 2 wherein, has only when the security strategy of the use of Management Calculation equipment allows, just the exercise notice step.
4. according to the described method of one of claim 1 to 3, wherein, at least one predetermined action of carrying out at the digital signature that appears at after first message separator character comprises: walk around the checking whether (550,580) sender address is complementary with the address that is associated with the key that is used to produce described digital signature.
5. according to the described method of one of claim 1 to 3, wherein, comprise at least one predetermined action that appears at the digital signature execution afterwards of first message separator character:
Whether checking sender address is complementary with the address that is associated with the key that is used to produce described digital signature; And
If the sender address does not match with the address that is associated with the key that is used to produce described digital signature, forbid to the user notification address of computing equipment mismatch.
6. method according to claim 5 wherein, has only when the security strategy of the use of Management Calculation equipment allows, and just forbids to user notification address mismatch.
7. according to the described method of one of claim 1 to 3, wherein, comprise at least one predetermined action that appears at the digital signature execution afterwards of first message separator character:
Whether checking sender address is complementary with the address that is associated with the key that is used to produce described digital signature; And
If the sender address does not match with the address that is associated with the key that is used to produce described digital signature, forbid showing at least a portion message to the user of computing equipment.
8. method according to claim 7 wherein, has only when the security strategy of the use of Management Calculation equipment allows, and just forbids showing at least a portion message to the user of computing equipment.
9. according to the described method of one of claim 1 to 3, wherein, comprise at least one predetermined action that appears at the digital signature execution afterwards of first message separator character:
Determine with the part specific address that is associated with the corresponding that part of signed data of described digital signature;
Whether the verification portion specific address is complementary with the address that is associated with the key that is used to produce described digital signature; And
As the fruit part specific address be used to produce as described in the address that is associated of the key of digital signature do not match, to the user notification address of computing equipment mismatch.
10. method according to claim 9 wherein, has only when the security strategy of the use of Management Calculation equipment allows, just the Notify Address mismatch.
11. method according to claim 9, wherein, at least one predetermined action of carrying out at the digital signature that appears at after first message separator character also comprises: as the fruit part specific address be used to produce as described in the address that is associated of the key of digital signature do not match, forbid showing at least a portion message to the user of computing equipment.
12. method according to claim 11 wherein, has only when the security strategy of the use of Management Calculation equipment allows, and just forbids showing at least a portion message to the user.
13. method according to claim 9, wherein, the step of determining section specific address comprises: from the text that appears at the message separator character that was right after before the corresponding with it that part of signed data of digital signature and described that part of message between the signed data, extract the sender's of received message last sender's address.
14. method according to claim 9, wherein, the step of determining section specific address comprises:
From the text that appears at the message separator character that was right after before the corresponding with it that part of signed data of digital signature and described that part of message between the signed data, extract the sender's of received message last sender's title; And
The described last sender's that retrieval is associated with title from address book address.
15., also comprise step according to the described method of one of claim 1 to 3: at each digital signature that appears in first message separator character message before,
Whether checking sender address is complementary with the address that is associated with the key that is used to produce described digital signature; And
If the sender address does not match with the address that is associated with the key that is used to produce described digital signature, to the user notification address of computing equipment mismatch.
16. method according to claim 15 wherein, has only when the security strategy of the use of Management Calculation equipment allows, just the exercise notice step.
17. according to the described method of one of claim 1 to 3, each digital signature at appearing in first message separator character message before also comprises step:
Whether checking sender address is complementary with the address that is associated with the key that is used to produce described digital signature; And
If the sender address does not match with the address that is associated with the key that is used to produce described digital signature, forbid showing at least a portion message to the user of computing equipment.
18. method according to claim 17 wherein, has only when the security strategy of the use of Management Calculation equipment allows, and just forbids showing at least a portion message to the user.
19., also comprise step:, come definite address that is associated with described key by the key holder information that retrieval from crypto key memory is associated with the key that is used to produce digital signature according to the described method of one of claim 1-3.
20. according to the described method of one of claim 1-3, wherein, at least one message separator character comprises one or more message separator characters of selecting from following group: straight line separated symbol, origination message separator, transmit message separator character, writing author separator, partly by beginning message header and predetermined separator subsequently in the first beginning part that message header limited signed data.
21. according to the described method of one of claim 1 to 3, wherein, use the PGP key that each of described at least a portion signed data is signed, and begin the header that begins to sign of corresponding PGP in message header and the message by PGP and limit described at least a portion each of signed data.
22., wherein, use S/MIME that each of described at least a portion signed data is signed according to the described method of one of claim 1 to 3.
23. according to the described method of one of claim 1-3, wherein, computing equipment is a mobile device.
24. the equipment of the signature information that a processing receives at the computing equipment place comprises:
Receive the device of message, described message comprises:
Header comprises the sender address at least;
At least a portion is signed data;
With the corresponding digital signature of each part of signed data; And
At least one message separator character, described message separator character have indicated at least one Geju City message to be merged in received message;
Determine device, be used for determining whether first message separator character appears at part signed data, sender in the message before wherein present first message separator character is expressed in the appearance of first message separator character in receiving message, and outside the described sender other people after first message separator character data from received message;
Final controlling element, do not appear at part signed data if be used for first message separator character, then at appearing at first message separator character each digital signature afterwards in the message, carry out at least one predetermined action, minimize so that be notified to the number of computing equipment user's misleading address mismatch error; And
If first message separator character appears at a part in the signed data,
Demo plant, be used to verify whether the sender address is complementary with the address that is associated with key, the corresponding digital signature of that part of signed data that described key is used to produce after present first message separator character and occurs with first message separator character, and
Carry out the device of at least one predetermined action at each that appears in the message in first message separator character other digital signature afterwards, minimize so that be notified to the number of computing equipment user's misleading address mismatch error.
CN2006101055295A 2005-07-29 2006-07-14 Method and apparatus for processing digitally signed messages to determine address mismatches Expired - Fee Related CN1905449B (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP05107025A EP1748614B1 (en) 2005-07-29 2005-07-29 Method and apparatus for processing digitally signed messages to determine address mismatches
EP05107025.8 2005-07-29

Publications (2)

Publication Number Publication Date
CN1905449A CN1905449A (en) 2007-01-31
CN1905449B true CN1905449B (en) 2011-04-06

Family

ID=35079179

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2006101055295A Expired - Fee Related CN1905449B (en) 2005-07-29 2006-07-14 Method and apparatus for processing digitally signed messages to determine address mismatches

Country Status (6)

Country Link
EP (1) EP1748614B1 (en)
CN (1) CN1905449B (en)
AT (1) ATE377900T1 (en)
CA (1) CA2549585C (en)
DE (1) DE602005003221T2 (en)
SG (1) SG129350A1 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7653696B2 (en) 2005-07-29 2010-01-26 Research In Motion Limited Method and apparatus for processing digitally signed messages to determine address mismatches
CN101340653B (en) * 2008-08-07 2011-09-14 四川长城天讯数码技术有限公司 Copyright protection method and system for downloading data by portable terminal
EP2458812B1 (en) * 2010-11-29 2016-09-14 BlackBerry Limited Server and method of signing a message
LU102626B1 (en) * 2021-03-01 2022-09-01 Wenzl Ehm Alexander Process for the transmission of encrypted messages

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1636365A (en) * 2002-02-22 2005-07-06 Rpost国际公司 Systems and methods for authenticating delivery and content of electronic messages

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7127741B2 (en) * 1998-11-03 2006-10-24 Tumbleweed Communications Corp. Method and system for e-mail message transmission
US20030050981A1 (en) * 2001-09-13 2003-03-13 International Business Machines Corporation Method, apparatus, and program to forward and verify multiple digital signatures in electronic mail
US20040092310A1 (en) * 2002-11-07 2004-05-13 Igt Identifying message senders
US6986049B2 (en) * 2003-08-26 2006-01-10 Yahoo! Inc. Method and system for authenticating a message sender using domain keys

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1636365A (en) * 2002-02-22 2005-07-06 Rpost国际公司 Systems and methods for authenticating delivery and content of electronic messages

Also Published As

Publication number Publication date
CN1905449A (en) 2007-01-31
DE602005003221T2 (en) 2008-08-28
ATE377900T1 (en) 2007-11-15
DE602005003221D1 (en) 2007-12-20
SG129350A1 (en) 2007-02-26
EP1748614A1 (en) 2007-01-31
CA2549585C (en) 2011-05-03
EP1748614B1 (en) 2007-11-07
CA2549585A1 (en) 2007-01-29

Similar Documents

Publication Publication Date Title
US8090786B2 (en) Method and apparatus for processing digitally signed messages to determine address mismatches
US9237148B2 (en) System and method for displaying a security encoding indicator associated with a message attachment
KR101072942B1 (en) Providing certificate matching in a system and method for searching and retrieving certificates
US8914860B2 (en) System and method for associating message addresses with certificates
US9350689B2 (en) Systems and methods for protecting header fields in a message
US8019085B2 (en) System and method for sending encrypted messages to a distribution list
CN100536395C (en) System and method for verifying digital signatures on certificates
US8542824B2 (en) System and method for processing messages with encryptable message parts
CN101027869B (en) System and method for determining a security encoding to apply to an outgoing message
US20090216678A1 (en) System and method for facilitating secure communication of messages associated with a project
CA2639092C (en) System and method for displaying a security encoding indicator associated with a message attachment
US8463863B2 (en) Systems and methods for protecting header fields in a message
CN1905449B (en) Method and apparatus for processing digitally signed messages to determine address mismatches
CN101420664B (en) System and method for controlling message attachment handling functions on a mobile device
CA2587155C (en) System and method for processing messages with encryptable message parts

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: Voight, Ontario, Canada

Patentee after: BlackBerry Ltd.

Country or region after: Canada

Address before: Voight, Ontario, Canada

Patentee before: RESEARCH IN MOTION Ltd.

Country or region before: Canada

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20240529

Address after: Ai Erlandubailin

Patentee after: Maliki Innovation Co.,Ltd.

Country or region after: Ireland

Address before: Voight, Ontario, Canada

Patentee before: BlackBerry Ltd.

Country or region before: Canada

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20110406