Hashing prefix-free values in a certificate scheme

US9049022B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9049022-B2
Application numberUS-201213458382-A
CountryUS
Kind codeB2
Filing dateApr 27, 2012
Priority dateApr 27, 2012
Publication dateJun 2, 2015
Grant dateJun 2, 2015

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Methods, systems, and computer programs for producing hash values are disclosed. A prefix-free value is obtained based on input data. The prefix-free value can be based on an implicit certificate, a message to be signed, a message to be verified, or other suitable information. A hash value is obtained by applying a hash function to the prefix-free value. The hash value is used in a cryptographic scheme. In some instances, a public key or a private key is generated based on the hash value. In some instances, a digital signature is generated based on the hash value, or a digital signature is verified based on the hash value, as appropriate.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer-implemented method comprising: accessing an implicit certificate associated with an entity; converting the implicit certificate to a prefix-free value in a prefix-free set, wherein none of the values in the prefix-free set is a prefix of any other value in the prefix-free set, wherein the converting comprises: generating a first value that indicates a length of the implicit certificate; dividing the implicit certificate into a plurality of blocks, wherein the first value indicates a length of the implicit certificate in units of blocks; and producing the prefix-free value by prepending the first value to the implicit certificate; obtaining a hash value by applying a hash function to the prefix-free value; generating, by data processing apparatus, a public key associated with the entity based on the hash value, wherein the public key is an elliptic curve point Q U , and generating the public key includes: extracting from the implicit certificate an elliptic curve point P U that represents a public key reconstruction value; accessing an elliptic curve point Q CA that represents a public key of a certificate authority that issued the implicit certificate; computing the elliptic curve point Q U =eP U +Q CA , where e is the hash value; and using the public key for cryptographic correspondence. 2. The method of claim 1 , wherein the first value indicates a length of the implicit certificates in units of bytes. 3. The method of claim 1 , wherein converting the implicit certificate to a prefix-free value comprises converting the implicit certificate to a format in which the implicit certificate has a predetermined length. 4. The method of claim 1 , wherein using the public key for cryptographic correspondence comprises using the public key to encrypt a message to the entity. 5. The method of claim 1 , wherein using the public key for cryptographic correspondence comprises using the public key to authenticate a message from the entity. 6. The method of claim 1 , wherein the method is performed by data processing apparatus associated with the entity. 7. The method of claim 1 , wherein the method is performed by data processing apparatus associated with a certificate authority that issued the implicit certificate. 8. The method of claim 1 , wherein the method is performed by data processing apparatus associated with a correspondent, other than the entity, that validates the public key based on the implicit certificate. 9. A computer-implemented method comprising: accessing an implicit certificate associated with an entity; converting the implicit certificate to a prefix-free value in a prefix-free set, wherein none of the values in the prefix-free set is a prefix of any other value in the prefix-free set, wherein converting the implicit certificate to the prefix-free value comprises: dividing the implicit certificate into a plurality of blocks, the plurality of blocks including a first plurality of blocks and a last block; appending a zero bit to each of the first plurality of blocks; and appending a one bit to the last block; and obtaining a hash value by applying a hash function to the prefix-free value; generating, by data processing apparatus, a public key associated with the entity based on the hash value, wherein the public key is an elliptic curve point Q U and generating the public key includes: extracting from the implicit certificate an elliptic curve point P U that represents a public key reconstruction value; accessing an elliptic curve point Q CA that represents a public key of a certificate authority that issued the implicit certificate; computing the elliptic curve point Q U =eP U +Q CA , where e is the hash value; and using the public key for cryptographic correspondence. 10. A computing system comprising: a hash module comprising computer-readable instructions on a computing device operable to: convert an implicit certificate to a prefix-free value in a prefix-free set, wherein none of the values in the prefix-free set is a prefix of any other value in the prefix-free set, and the implicit certificate is associated with an entity, wherein the hash module is operable to convert the implicit certificate to the prefix-free value by: generating a first value that indicates a length of the implicit certificate; dividing the implicit certificate into a plurality of blocks, wherein the first value indicates a length of the implicit certificate in units of blocks; and producing the prefix-free value by prepending the first value to the implicit certificate; and obtain a hash value by applying a hash function to the prefix-free value; and a key generation module operable to generate a public key associated with the entity based on the hash value, wherein the public key is an elliptic curve point Q U , and generating the public key includes: extracting from the implicit certificate an elliptic curve point P U that represents a public key reconstruction value; accessing an elliptic curve point Q CA that represents a public key of a certificate authority that issued the implicit certificate; computing the elliptic curve point Q U =eP U +Q CA , where e is the hash value; and using the public key for cryptographic correspondence. 11. The computing system of claim 10 , wherein the hash module is operable to convert the implicit certificate to a prefix-free value by converting the implicit certificate to a format in which the implicit certificate has a predetermined length. 12. A computing system comprising: a hash module comprising computer-readable instructions on a computing device operable to: convert an implicit certificate to a prefix-free value in a prefix-free set, wherein none of the values in the prefix-free set is a prefix of any other value in the prefix-free set, and the implicit certificate is associated with an entity, wherein the hash module is operable to convert the implicit certificate to a prefix-free value by: dividing the implicit certificate into a plurality of blocks, the plurality of blocks including a first plurality of blocks and a last block; appending a zero bit to each of the first plurality of blocks; and appending a one bit to the last block; and obtain a hash value by applying a hash function to the prefix-free value; and a key generation module operable to generate a public key associated with the entity based on the hash value, wherein the public key is an elliptic curve point Q U , and generating the public key includes: extracting from the implicit certificate an elliptic curve point P U that represents a public key reconstruction value; accessing an elliptic curve point Q CA that represents a public key of a certificate authority that issued the implicit certificate; computing the elliptic curve point Q U =eP U +Q CA , where e is the hash value; and using the public key for cryptographic correspondence. 13. A non-transitory computer-readable medium storing instructions that are operable when executed by data processing apparatus to perform operations comprising: converting an implicit certificate to a prefix-free value in a prefix-free set, wherein none of the values in the prefix-free set is a prefix of any other value in the prefix-free set, and the implicit certificate is associated with an entity, wherein the converting comprises: generating a first value that indicates a length of the implicit certificate; dividing the implicit certificate into a plurality of blocks, wherein the first value indicates a length of the implicit certificate in units of blocks; and producing the prefix-free value by prepending the

Assignees

Inventors

Classifications

  • H04L9/3066Primary

    involving algebraic varieties, e.g. elliptic or hyper-elliptic curves · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9049022B2 cover?
Methods, systems, and computer programs for producing hash values are disclosed. A prefix-free value is obtained based on input data. The prefix-free value can be based on an implicit certificate, a message to be signed, a message to be verified, or other suitable information. A hash value is obtained by applying a hash function to the prefix-free value. The hash value is used in a cryptographi…
Who is the assignee on this patent?
Zaverucha Gregory Marc, Kravitz David William, Certicom Corp
What technology area does this patent fall under?
Primary CPC classification H04L9/3066. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Jun 02 2015 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).