Apparatus and method for reusing pair of public and private keys
AssigneeSamsung Electronics Co., Ltd.
InventorSeong-min Kang
Life of this patent
Estimating the term…
Abstract
An apparatus and method that reuse a pair of public and private keys. The method includes determining whether a pair of public and private keys that have already been used in a first encryption process are still usable; and reusing the pair of public and private keys in a second encryption process if the pair of public and private keys are determined as being reusable. Accordingly, it is possible to considerably reduce the amount of computation and time that is generally required to calculate a pair of public and private keys, by allowing the pair of public and private keys to be reused.
Claims23
A method of reusing a pair of public and private keys, which is performed in a host, the method comprising:
- determining whether a pair of public and private keys that have already been used in a first encryption process between the host and a second host are still usable in a second encryption process, wherein the pair of public and private keys are determined as being reusable if the second encryption process is between the host and a third host other than the second host;
- and
- reusing the pair of public and private keys in the second encryption process if the pair of public and private keys are determined as being reusable,
- wherein the determining whether the pair of public and private keys are reusable comprises
- determining whether a number of times the pair of public and private keys have been used exceeds a predetermined maximum number;
- and
- determining whether the pair of public and private keys have already been used by the third host unless the number of times the pair of public and private keys have been used exceeds the predetermined maximum number,
- wherein, the pair of public and private keys are reused in the second encryption process if the pair of public and private keys have not yet been used by the third host.
A method of reusing a pair of public and private keys, which is performed in a host, the method comprising:
- determining whether a pair of public and private keys that have already been used in a first encryption process between the host and a second host are still usable in a second encryption process, considering whether the second encryption process is between the host and the second host or between the host and a third host other than the second host;
- and
- reusing the pair of public and private keys in the second encryption process if the pair of public and private keys are determined as being reusable,
- wherein the determining whether the pair of public and private keys are reusable comprises:
- determining whether a number of times the pair of public and private keys have been used exceeds a predetermined maximum number;
- and
- determining whether the pair of public and private keys have already been used by the third host unless the number of times the pair of public and private keys have been used exceeds the predetermined maximum number,
- wherein, the pair of public and private keys are reused in the second encryption process if the pair of public and private keys have not yet been used by the third host.
An Internet key exchange (IKE) initiation method, which is performed in a host, the IKE initiation method comprising:
- receiving a first packet having a key exchange payload from a second host, a public key included in a pair of Diffie-Hellman keys being recorded in the key exchange payload;
- determining whether the pair of Diffie-Hellman keys that have already been used in calculating a first shared key between the host and a second host are reusable in calculating a second shared key, wherein the pair of Diffie-Hellman keys are determined as being reusable if the second shared key is between the host and a third host other than the second host;
- and
- calculating an IKE encryption key based on the public key recorded in the key exchange payload of the first packet if the pair of Diffie-Hellman keys are determined as being reusable.
- wherein the determining whether the pair of Diffie-Hellman keys are reusable comprises
- determining whether a number of times the pair of Diffie-Hellman keys have been used exceeds a predetermined maximum number;
- and
- determining whether the pair of Diffie-Hellman keys have already been used by the third host unless the number of times the pair of Diffie-Hellman keys have been used exceeds the predetermined maximum number,
- wherein, the pair of Diffie-Hellman keys are reused if the pair of Diffie-Hellman keys have not yet been used by the third host.
An Internet key exchange (IKE) response method, which is performed in a host, comprising:
- determining whether a pair of Diffie-Hellman keys that have already been used in calculating a first shared key between the host and a second host are reusable in calculating a second shared key, wherein the pair of Diffie-Hellman keys are determined as being reusable if the second shared key is between the host and a third host other than the second host;
- reading the pair of Diffie-Hellman keys if the pair of Diffie-Hellman keys are determined as being reusable;
- and
- calculating an IKE encryption key based on the read pair of Diffie-Hellman keys between the host and the third host,
- wherein the determining whether the pair of Diffie-Hellman keys are reusable comprises
- determining whether a number of times the pair of Diffie-Hellman keys have been used exceeds a predetermined maximum number;
- and
- determining whether the pair of Diffie-Hellman keys have already been used by the third host unless the number of times the pair of Diffie-Hellman keys have been used exceeds the predetermined maximum number,
- wherein, the pair of Diffie-Hellman keys are reused if the pair of Diffie-Hellman keys have not yet been used by the third host.
A non-transitory computer-readable recording medium, on which a program enabling a method of reusing a pair of public and private keys is recorded, the method comprising:
- determining whether a pair of public and private keys that have already been used in a first encryption process between the host and a second host are still usable in a second encryption process, wherein the pair of public and private keys are determined as being reusable if the second encryption process is between the host and a third host other than the second host;
- and
- reusing the pair of public and private keys in the second encryption process if the pair of public and private keys are determined as being reusable,
- wherein the determining whether the pair of public and private keys are reusable comprises
- determining whether a number of times the pair of public and private keys have been used exceeds a predetermined maximum number;
- and
- determining whether the pair of public and private keys have already been used by the third host unless the number of times the pair of public and private keys have been used exceeds the predetermined maximum number,
- wherein, the pair of public and private keys are reused in the second encryption process if the pair of public and private keys have not yet been used by the third host.
A non-transitory computer-readable recording medium, on which a program enabling an Internet key exchange (IKE) initiation method is recorded, the IKE initiation method comprising:
- receiving a first packet having a key exchange payload from a second host, a public key included in a pair of Diffie-Hellman keys being recorded in the key exchange payload;
- determining whether the pair of Diffie-Hellman keys that have already been used in calculating a first shared key between the host and a second host are reusable in calculating a second shared key, wherein the pair of Diffie-Hellman keys are determined as being reusable if the second shared key is between the host and a third host other than the second host;
- and
- calculating an IKE encryption key based on the public key recorded in the key exchange payload of the first packet if the pair of Diffie-Hellman keys are determined as being reusable,
- wherein the determining whether the pair of Diffie-Hellman keys are reusable comprises
- determining whether a number of times the pair of Diffie-Hellman keys have been used exceeds a predetermined maximum number;
- and
- determining whether the pair of Diffie-Hellman keys have already been used by the third host unless the number of times the pair of Diffie-Hellman keys have been used exceeds the predetermined maximum number,
- wherein, the pair of Diffie-Hellman keys are reused if the pair of Diffie-Hellman keys have not yet been used by the third host.
A non-transitory computer-readable recording medium, on which a program enabling an Internet key exchange (IKE) response method is recorded, the IKE response method comprising:
- determining whether a pair of Diffie-Hellman keys that have already been used in calculating a first shared key between the host and a second host are reusable in calculating a second shared key, wherein the pair of Diffie-Hellman keys are determined as being reusable if the second shared key is between the host and a third host other than the second host;
- reading the pair of Diffie-Hellman keys if the pair of Diffie-Hellman keys are determined as being reusable;
- and
- calculating an IKE encryption key based on the read pair of Diffie-Hellman keys between the host and the third host,
- wherein the determining whether the pair of Diffie-Hellman keys are reusable comprises
- determining whether a number of times the pair of Diffie-Hellman keys have been used exceeds a predetermined maximum number;
- and
- determining whether the pair of Diffie-Hellman keys have already been used by the third host unless the number of times the pair of Diffie-Hellman keys have been used exceeds the predetermined maximum number,
- wherein, the pair of Diffie-Hellman keys are reused if the pair of Diffie-Hellman keys have not yet been used by the third host.
A method of managing a cryptographic communication from a host system, comprising:
- reusing pairs of public and private keys for communications between the host system and at least two other host systems until a number of times the public and private keys are reused exceeds a threshold, if the pairs of public and private keys can be used for host systems other than two host systems which previously used the pairs of public and private keys or for one of the two host systems and another host system,
- wherein the determining whether the pair of public and private keys are reusable comprises
- determining whether a number of times the pair of public and private keys have been used exceeds a predetermined maximum number;
- and
- determining whether the pair of public and private keys have already been used by the third host unless the number of times the pair of public and private keys have been used exceeds the predetermined maximum number,
- wherein, the pair of public and private keys are reused in the second encryption process if the pair of public and private keys have not yet been used by the third host.
A non-transitory computer-readable recording medium, on which a program enabling a method of managing a cryptographic communication from a host system is recorded, the method comprising:
- reusing pairs of public and private keys for communications between the host system and at least two other host systems until a number of times the public and private keys are reused exceeds a threshold, if the pairs of public and private keys can be used for host systems other than two host systems which previously used the pairs of public and private keys or for one of the two host systems and another host system,
- wherein the determining whether the pair of public and private keys are reusable comprises
- determining whether a number of times the pair of public and private keys have been used exceeds a predetermined maximum number;
- and
- determining whether the pair of public and private keys have already been used by the third host unless the number of times the pair of public and private keys have been used exceeds the predetermined maximum number,
- wherein, the pair of public and private keys are reused in the second encryption process if the pair of public and private keys have not yet been used by the third host.
Dependencies are inferred from the claim text.