EP1770586A1

Account management in a system and method for providing code signing services

Abstract

A system and method for providing code signing services to software application developers or to other individuals or entities that wish to have applications digitally signed. Signing of the applications may be required in order to enable the applications to access sensitive APIs and associated resources of a computing device when the applications are executed on the computing device. In one embodiment, a method of providing code signing services will comprise at least some steps relating to registering the entities that seek access to sensitive APIs as controlled by the code signing authority, and managing the accounts of the registered entities.

EP1770586A1, drawing sheet 1
Sheet 1 of 14

Term

Term ended

Projected expiry passed 29 September 2025, 1 year ago.

  1. Priority and filed
  2. Published
  3. Projected expiry
  4. Today

16 claims: 13 independent, 3 dependent

  1. 1
    A method for providing code signing services, the method comprising the steps of:creating (414) at least one public key and at least one corresponding private key;deploying (415) each public key to protect at least one sensitive API and storing (415) each corresponding private key;registering (420) at least one entity for code signing services, wherein the identity of each entity is authenticated, and wherein an account record for each registered entity is created;receiving (430) a code signing request from a requestor, said requestor being an entity registered at the registering step, wherein the code signing request comprises an object that the requestor is requesting to have signed with a select private key of said at least one private key created;digitally signing (470) the object, wherein a digital signature is generated using said select private key;and transmitting (470) said digital signature to said requestor;wherein the method further comprises the step of providing a user interface, wherein said user interface is adapted to receive input from a user, wherein said input is used to populate (450) the account record of one or more registered entities.
  2. 4
    The method of any one of claims 1 to 3, wherein the input comprises e-mail notification settings, and wherein the method further comprises the step of sending (460) an e-mail notification upon the occurrence of at least one of an error and irregular behavior, if required by said e-mail notification settings.
  3. 5
    The method of any one of claims 1 to 4, wherein the input comprises an expiry date, and wherein the object is digitally signed at the signing step only if the expiry date has not passed.
  4. 6
    The method of any one of claims 1 to 5, wherein the input comprises a number of allowable signing requests, wherein the object is digitally signed at the signing step only if the number of allowable signing requests indicates that there are allowable signing requests remaining, and wherein the method further comprises the step of updating the number of allowable signing requests after the signing step is performed.
  5. 7
    The method of any one of claims 1 to 6, wherein each of said at least one entity is a software application developer.
  6. 8
    The method of any one of claims 1 to 7, wherein the object is a software application.
  7. 9
    The method of any one of claims 1 to 7, wherein the object is a hash of a software application, said hash generated by the requestor using a hashing algorithm.
  8. 10
    The method of any one of claims 1 to 9, wherein the registering step (420) comprises validating credit card information associated with each entity to authenticate the identity of the respective entity.
  9. 11
    The method of any one of claims 1 to 10, wherein the code signing request received from the requestor further comprises a second digital signature, the second digital signature associated with the requestor, and wherein the method further comprises a step of verifying the second digital signature before the signing and transmitting steps are performed.
  10. 12
    The method of any one of claims 1 to 11, wherein a random data service provides random data used to create the at least one public key and the at least one corresponding private key at the creating step (414), and wherein the method comprises the steps of determining (411) the randomness quality of the random data, and displaying (412) an indicator of the randomness quality to a user prior to completion of the creating step (414).
  11. 13
    The method of any one of claims 1 to 12, further comprising the step of tracking registration attempts made against an account associated with the account record, and disabling the account if the registration attempts exceed a pre-defined number.
  12. 14
    A computer-readable medium comprising instructions for performing the steps of the method as claimed in any of the preceding claims, wherein said instructions are executable on a computing device.
  13. 15
    A system for providing code signing services, comprising a private key store (466) for storing a plurality of private keys, a client information database (464) for storing a plurality of account records, and a code signing authority application (452) which, when executed on a computing device, performs the steps of the method as claimed in any one of claims 1 to 13.