Language selection

Search

Patent 2553081 Summary

Third-party information liability

Some of the information on this Web page has been provided by external sources. The Government of Canada is not responsible for the accuracy, reliability or currency of the information supplied by external sources. Users wishing to rely upon this information should consult directly with the source of the information. Content provided by external sources is not subject to official languages, privacy and accessibility requirements.

Claims and Abstract availability

Any discrepancies in the text and image of the Claims and Abstract are due to differing posting times. Text of the Claims and Abstract are posted:

  • At the time the application is open to public inspection;
  • At the time of issue of the patent (grant).
(12) Patent: (11) CA 2553081
(54) English Title: A METHOD FOR BINDING A SECURITY ELEMENT TO A MOBILE DEVICE
(54) French Title: METHODE DE LIAISON D'UN ELEMENT DE SECURITE A UN APPAREIL DE COMMUNICATION MOBILE
Status: Granted
Bibliographic Data
(51) International Patent Classification (IPC):
  • G06F 21/34 (2013.01)
  • H04W 12/04 (2021.01)
  • H04W 12/037 (2021.01)
(72) Inventors :
  • MACHANI, SALAH (Canada)
(73) Owners :
  • IMS SOFTWARE SERVICES, LTD. (United States of America)
(71) Applicants :
  • DIVERSINET CORP. (Canada)
(74) Agent: MCMILLAN LLP
(74) Associate agent:
(45) Issued: 2015-08-25
(22) Filed Date: 2006-07-24
(41) Open to Public Inspection: 2008-01-24
Examination requested: 2006-12-05
Availability of licence: N/A
(25) Language of filing: English

Patent Cooperation Treaty (PCT): No

(30) Application Priority Data: None

Abstracts

English Abstract

According to an aspect of the present invention there is provided a method of binding a security element to a device, comprising: generating a passkey to encrypt the security element, the passkey being a combination of attributes, and one of the attributes being a Device ID associated with said device. Preferably, the device is a mobile device. The combination of attributes may include the following: a) a build secret, the build secret consisting of a string which is generated when the software application is created; b) a salt, the salt consisting of a random string; wherein the build string and the salt are stored as non-printable strings within encryption code of the passkey.


French Abstract

Selon un aspect de la présente invention, on propose une méthode de liaison dun élément de sécurité à un dispositif, laquelle comprend : la génération dun passe-partout pour chiffrer lélément de sécurité, le passe-partout étant une combinaison dattributs et un des attributs étant un ID de dispositif associé audit dispositif. De préférence, le dispositif est un dispositif mobile. La combinaison des attributs peut comprendre ce qui suit : a) un secret de version, le secret de version étant constitué dune chaîne générée lors de la création de lapplication logicielle; b) un sel, le sel étant constitué dune chaîne aléatoire; dans laquelle la chaîne de version et le sel sont stockés comme des chaînes non imprimables dans le code de chiffrement du passe-partout.

Claims

Note: Claims are shown in the official language in which they were submitted.


What is claimed is:
1. A method of binding a security element to a device, comprising:
a) generating a build secret comprising a random string that is generated when
a
software application is created and stored as at least one non-printable
string within code
of said software application;
b) generating a passkey to encrypt said security element on said device, said
passkey being a combination of attributes associated with said device, wherein
said
attributes include a Device ID and said build secret;
c) encrypting said security element on said device using said passkey; and
d) retrieving said Device ID from said device as part of decrypting said
security
element.
2. The method of claim 1, wherein said device is a mobile device.
3. The method of claim 1, wherein said combination of attributes
additionally
includes one or more of the following attributes:
a) a salt, said salt consisting of a random string;
b) a user passphrase, said user passphrase consisting of a string input by the
user;
c) an application ID associated with a program used by said device;
d) a network ID associated with a network service provider used by said mobile
device.
4. The method of claim 1, wherein said security element is an OTP (One Time
Password) credential for use with a secure server.

6

5. The method of claim 3, wherein said user passphrase is used as an attribute
and
decryption of said security element requires input of said user passphrase.
6. The method of claim 1, wherein said non-printable strings are stored as
segmented non-printable strings and stored in different parts of said code of
said software
application.
7. A method of supplying said software application for encrypting a
security element
using the method in claim 1-6 comprising at least one of:
downloading said software application to said device;
installing said software application to said device; and
recompiling said software application for said device.
8. The method of any one of claims 1-7, wherein said Device ID is one of:
a serial number; an IMEI (International Mobile Equipment Identity) number;
a digest or hash value derived from a phone number; or
a digest or hash value derived from an email address.

7

Description

Note: Descriptions are shown in the official language in which they were submitted.


CA 02553081 2006-07-24
A METHOD FOR BINDING A SECURITY ELEMENT
TO A MOBILE DEVICE
Field of the Invention
[0001]
The present invention relates to the field of security and encryption. In
particular, it relates to methods of binding security elements, such as
passwords, to
mobile devices, such as mobile phones.
Background of the Invention
[0002]
The rapid increase in the use of online services for shopping, banking and
other financial transactions has brought with it an increase in identity theft
and fraud.
The most common existing security techniques rely on the user having a
password
associated with an online identity (user name). However, schemes such as
keystroke
logging, phishing and similar techniques are used to improperly record or
intercept
passwords and the associated user names. Thus, the username/password data can
be
taken and used in fraudulent transactions, leading to loss of money, loss of
time and loss
of reputation, not only for the user whose identity was taken, but also for
those parties
who were fraudulently induced into believing they were transacting with the
user.
[0003]
The flaws in the username/password system have lead to the development of
two-factor (also known as "strong") authentication systems. Two-factor
authentication is
based on two elements: 1) something the user knows (i.e. a password or PIN);
and 2)
something the user has (an authenticator, often a physical device referred to
as a "fob").
The fob and the password are used together to provide an additional level of
security, as
either one, individually, is of no use without the other.
[0004]
Despite the improved security, two-factor authentication is still of limited
use
due to the requirement of the hardware fob. Furthermore, each secure system
requires its
own fob, creating a problem for the user who then needs to keep track of the
multiple
fobs necessary for access to multiple services.
[0005]
One method of two-factor authentication is the use of One-Time Password
(OTP) authentication. Using OTP authentication, a new OTP value (OTP token) is
- 1 -
57522-2[CA-121(KB)

CA 02553081 2006-07-24
generated for use on a per-event basis (e.g. each remote logon attempt) or on
a time-
window basis (e.g. once per minute). The user is typically required to use a
fob, either to
generate the OTP, or to contact the system and receive the OTP.
[0006]
Ideally, the fob can be replaced by another device already carried by the
user,
such as a mobile phone or PDA, which stores a set of OTP credentials for use
when
access the secure system. However, this creates a new problem that must be
addressed,
namely, the requirement that the OTP credentials be properly encrypted and
bound to the
device.
Summary of the Invention
[0007]
According to an aspect of the present invention there is provided a method of
binding a security element to a device, comprising: generating a passkey to
encrypt the
security element, the passkey being a combination of attributes, and one of
the attributes
being a Device ID associated with said device, encrypting the security element
on the
device using the passkey, and retrieving the Device ID from the device to
decrypt the
security element.
[0008]
Preferably, the device is a mobile device. Also preferably, the combination of
attributes includes the following: a) a build secret, the build secret
consisting of a random
alphanumeric string; b) a salt, the salt consisting of a random alphanumeric
string; and
wherein the build string and the salt are stored as non-printable strings
within encryption
code of the passkey.
[0009]
Preferably, the security element is an OTP credential for use with a secure
server.
[0010]
Other preferable attributes used include a user passphrase, a software
application ID associated with a software program used by said device and/or a
network
ID associated with a network service provider used by said mobile device.
[0011]
Other and further advantages and features of the invention will be apparent to
those skilled in the art from the following detailed description thereof,
taken in
conjunction with the accompanying drawings.
- 2 -
57522-2[CA-12](KB)

CA 02553081 2010-04-01
Brief Description of the Drawings
[0012]
The invention will now be described in more detail, by way of example only,
with reference to the accompanying drawings, in which like numbers refer to
like
elements, wherein:
Figure 1 is a block diagram of the passkey creation and credential encryption
method.
Detailed Description of the Preferred Embodiments
[0013]
The inventive method presented herein consists of binding a chosen security
element to a specific mobile device used by a user at the time the security
element is
being supplied to the user. The method is of particular application when the
security
element needs to be generated by the secure server at the time of the first
request by the
user for access to the secure server. The security element is then used by the
user for
future access to the secure server from the mobile device.
[0014] The
security element can be of any known type and is typically application
and sever dependent. A preferred embodiment of security element is an OTP (One
Time
Password) credential which is stored on the mobile device to enable access to
a secure
server. The OTP credential is then used by the user during future transactions
with the
secure server as part of a two-factor authentication process.
[0015] With
reference to Figure 1, a combination of attributes 100 is used to create
an encryption key, herein referred to as a passkey 130, is used to encrypt the
security
element. The attributes used to create the passkey can include one or more of:
a user
passphrase (i.e. a password or PIN) 102 (not the same password/PIN used in the
two-
factor authentication), an application (software) ID 104, a network ID 106, a
device ID
108, and other randomly-generated strings 110, 112. Of these, the device ID
108
provides the strongest binding of the passkey 130 to the specific device.
[0016] An
example of a passkey 130 meeting requirements for a Triple DES (Data
Encryption Standard) key as generated by the inventive method is shown using
four
separate attributes combined to generate the passkey 130:
- 3 -
57522-2[CA-12](KB)

CA 02553081 2006-07-24
100171
1) The Device ID 108. This is number, alphanumeric string or code that
identifies the device being used by the user to connect to the server. Device
IDs can be
unique, such as the device's serial number or IMEI (International Mobile
Equipment
Identity) number. Alternatively, this can be a SHA-1 hash or other hash or
digest of the
phone number or email address associated with the device. In any case, the
Device ID is
read from the device every time the protected security element is accessed.
[0018]
2) The build secret 110. A build secret is a randomly generated string (e.g.
20
characters) which is generated during the build of the application. The build
secret is
stored in the encryption code as a non-printable (non-accessible) string. For
additional
security, the build secret 110 may be stored as a set of segmented non-
printable strings in
different parts of the code to make it more difficult to discover.
[0019]
3) The salt 112. A salt is a random number generated during the build
process. The salt is stored in the encryption code as a non-printable (non-
accessible)
string. As with the build secret 110, the salt 112 may be stored as a set of
segmented
non-printable strings in different parts of the code.
[0020]
4) The user passphrase 102. This is a string of characters input by the user
during the first access attempt. The passphrase can be changed by the user on
their
device at a later time. The user passphrase 102 is only known by the user and
is not sent
over the connection to the server.
100211 The attributes are combined using a derivation algorithm 120 to
create the
passkey 130. Once the passkey 130 is created, it is used to encrypt 140 the
security
element (i.e. OTP credential) 132 stored on the device. The result is an
encrypted,
protected security element 150. When the user needs to decrypt the security
element,
they input the user passphrase 102, the Device ID 108 is read off the device,
and the
security element 150 is decrypted for use.
100221
Thus, a form of two-factor authentication is now provided for the stored
security element 150. If the device falls into the hands of an unauthorized
user, the
security element 150 is inaccessible without the user passphrase 102.
Conversely, if the
security element 150 is somehow removed from the device and the passphrase 102
obtained, it remains inaccessible as the proper Device ID 108 cannot be read.
- 4 -
57522-2[CA-12](KB)

CA 02553081 2006-07-24
[0023]
This method can be modified or further expanded by using an application
(software) ID 104 as an additional attribute of the passkey generation method
or as a
replacement for one of the existing attributes. An application ID 104 is a
unique
identifier associated with the software application instance used by the user,
either to
decrypt the security element, or to access the secure system. The application
ID 104 is
similar to the Device ID 108 in that it is a number, alphanumeric string or
code that
identifies the software application instance. The application ID 104 is
created at the time
the software is downloaded or installed on the device.
[0024]
Another potential attribute is a network ID 106 associated with the network
service provider used by the mobile device. Given that it is generally
desirable to allow
users to have the ability to switch service providers of their own volition,
use of this
attribute is likely to be limited. However, the network ID 106 could be used
to restrict
access to certain providers or certain geographic areas.
[0025]
While the above method contemplates binding and protecting the security
elements on the device, it is equally applicable for use in protecting the
security element
during the provisioning or transportation to the device. The binding process
can be
applied by repackaging or recompiling the software application for a specific
user and
device at the time of download.
[0026]
While the above method has been presented in the context of mobile devices,
such as mobile phones, the method is equally applicable to fixed devices, such
as laptop
or desktop PCs, as well. While fixed devices generally have superior
integrated security
measures than mobiles devices, the simplicity and device-branding capabilities
of the
method presented herein provide these same security benefits to fixed devices
as well.
[0027]
This concludes the description of a presently preferred embodiment of the
invention. The foregoing description has been presented for the purpose of
illustration
and is not intended to be exhaustive or to limit the invention to the precise
form
disclosed. Many modifications and variations are possible in light of the
above teaching
and will be apparent to those skilled in the art. It is intended the scope of
the invention be
limited not by this description but by the claims that follow.
- 5 -
57522-2[CA-121(KB)

Representative Drawing
A single figure which represents the drawing illustrating the invention.
Administrative Status

For a clearer understanding of the status of the application/patent presented on this page, the site Disclaimer , as well as the definitions for Patent , Administrative Status , Maintenance Fee  and Payment History  should be consulted.

Administrative Status

Title Date
Forecasted Issue Date 2015-08-25
(22) Filed 2006-07-24
Examination Requested 2006-12-05
(41) Open to Public Inspection 2008-01-24
(45) Issued 2015-08-25

Abandonment History

Abandonment Date Reason Reinstatement Date
2013-07-24 FAILURE TO PAY APPLICATION MAINTENANCE FEE 2013-12-09

Maintenance Fee

Last Payment of $473.65 was received on 2023-12-01


 Upcoming maintenance fee amounts

Description Date Amount
Next Payment if standard fee 2024-07-24 $624.00
Next Payment if small entity fee 2024-07-24 $253.00

Note : If the full payment has not been received on or before the date indicated, a further fee may be required which may be one of the following

  • the reinstatement fee;
  • the late payment fee; or
  • additional fee to reverse deemed expiry.

Patent fees are adjusted on the 1st of January every year. The amounts above are the current amounts if received by December 31 of the current year.
Please refer to the CIPO Patent Fees web page to see all current fee amounts.

Payment History

Fee Type Anniversary Year Due Date Amount Paid Paid Date
Application Fee $400.00 2006-07-24
Registration of a document - section 124 $100.00 2006-08-30
Request for Examination $800.00 2006-12-05
Maintenance Fee - Application - New Act 2 2008-07-24 $100.00 2008-06-26
Maintenance Fee - Application - New Act 3 2009-07-24 $100.00 2009-06-30
Maintenance Fee - Application - New Act 4 2010-07-26 $50.00 2010-07-06
Maintenance Fee - Application - New Act 5 2011-07-25 $100.00 2011-06-20
Maintenance Fee - Application - New Act 6 2012-07-24 $100.00 2012-06-22
Registration of a document - section 124 $100.00 2013-10-01
Reinstatement: Failure to Pay Application Maintenance Fees $200.00 2013-12-09
Maintenance Fee - Application - New Act 7 2013-07-24 $100.00 2013-12-09
Maintenance Fee - Application - New Act 8 2014-07-24 $100.00 2014-06-24
Final Fee $150.00 2015-04-27
Maintenance Fee - Application - New Act 9 2015-07-24 $100.00 2015-06-23
Maintenance Fee - Patent - New Act 10 2016-07-25 $125.00 2016-07-19
Maintenance Fee - Patent - New Act 11 2017-07-24 $125.00 2017-06-30
Maintenance Fee - Patent - New Act 12 2018-07-24 $125.00 2018-06-29
Maintenance Fee - Patent - New Act 13 2019-07-24 $250.00 2019-07-19
Maintenance Fee - Patent - New Act 14 2020-07-24 $250.00 2020-07-17
Maintenance Fee - Patent - New Act 15 2021-07-26 $459.00 2021-07-16
Maintenance Fee - Patent - New Act 16 2022-07-25 $458.08 2022-07-15
Maintenance Fee - Patent - New Act 17 2023-07-24 $473.65 2023-12-01
Late Fee for failure to pay new-style Patent Maintenance Fee 2023-12-01 $150.00 2023-12-01
Owners on Record

Note: Records showing the ownership history in alphabetical order.

Current Owners on Record
IMS SOFTWARE SERVICES, LTD.
Past Owners on Record
DIVERSINET CORP.
MACHANI, SALAH
Past Owners that do not appear in the "Owners on Record" listing will appear in other documentation within the application.
Documents

To view selected files, please enter reCAPTCHA code :



To view images, click a link in the Document Description column. To download the documents, select one or more checkboxes in the first column and then click the "Download Selected in PDF format (Zip Archive)" or the "Download Selected as Single PDF" button.

List of published and non-published patent-specific documents on the CPD .

If you have any difficulty accessing content, you can call the Client Service Centre at 1-866-997-1936 or send them an e-mail at CIPO Client Service Centre.


Document
Description 
Date
(yyyy-mm-dd) 
Number of pages   Size of Image (KB) 
Abstract 2006-07-24 1 18
Claims 2006-07-24 2 50
Drawings 2006-07-24 1 18
Description 2006-07-24 5 255
Representative Drawing 2007-12-27 1 10
Cover Page 2008-01-10 2 42
Claims 2010-04-01 2 59
Description 2010-04-01 5 256
Claims 2012-09-26 2 57
Claims 2014-08-07 2 53
Representative Drawing 2015-07-22 1 12
Cover Page 2015-07-22 1 40
Correspondence 2010-07-20 1 17
Assignment 2006-07-24 3 78
Correspondence 2006-08-21 1 26
Maintenance Fee Payment 2017-06-30 1 33
Correspondence 2010-08-05 5 169
Fees 2010-07-13 2 149
Assignment 2006-08-30 4 95
Prosecution-Amendment 2006-12-05 1 35
Fees 2008-06-26 1 39
Maintenance Fee Payment 2018-06-29 1 33
Prosecution-Amendment 2009-10-02 3 78
Fees 2009-06-30 1 40
Prosecution-Amendment 2010-04-01 10 382
Prosecution-Amendment 2011-08-05 5 202
Fees 2010-07-06 2 50
Correspondence 2010-07-06 3 70
Correspondence 2010-08-23 1 14
Prosecution-Amendment 2011-02-08 3 84
Fees 2011-06-20 1 201
Fees 2016-07-19 1 33
Prosecution-Amendment 2012-03-26 3 128
Fees 2012-06-22 1 163
Prosecution-Amendment 2012-09-26 9 300
Assignment 2013-10-01 10 470
Fees 2013-12-09 1 33
Prosecution-Amendment 2014-02-11 4 155
Prosecution-Amendment 2014-08-07 8 290
Fees 2014-06-24 1 33
Correspondence 2015-04-27 1 29
Fees 2015-06-23 1 33