U.S. patent application number 14/388673 was filed with the patent office on 2015-12-03 for wireless memory device authentication.
The applicant listed for this patent is Nokia Corporation. Invention is credited to Jan-Erik EKBERG, Harald KAAJA.
Application Number | 20150350901 14/388673 |
Document ID | / |
Family ID | 49258295 |
Filed Date | 2015-12-03 |
United States Patent
Application |
20150350901 |
Kind Code |
A1 |
EKBERG; Jan-Erik ; et
al. |
December 3, 2015 |
WIRELESS MEMORY DEVICE AUTHENTICATION
Abstract
A system for wireless memory device authentication is provided,
wherein a communications device receives a certified public key
from a wireless memory device. The communications device validates
the public key and sends a challenge to the wireless memory device.
The wireless memory device sends a signature to the communications
device and the communications device validates the signature in
order to authenticate the wireless memory device.
Inventors: |
EKBERG; Jan-Erik; (Vantaa,
FI) ; KAAJA; Harald; (Jarvenpaa, FI) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
Nokia Corporation |
Espoo |
|
KI |
|
|
Family ID: |
49258295 |
Appl. No.: |
14/388673 |
Filed: |
March 29, 2012 |
PCT Filed: |
March 29, 2012 |
PCT NO: |
PCT/FI2012/050310 |
371 Date: |
September 26, 2014 |
Current U.S.
Class: |
713/176 |
Current CPC
Class: |
G06F 21/44 20130101;
H04L 9/3247 20130101; H04L 63/0492 20130101; H04W 12/0609 20190101;
H04L 63/0823 20130101; G06F 2221/2103 20130101; H04L 9/3271
20130101 |
International
Class: |
H04W 12/06 20060101
H04W012/06; H04L 9/32 20060101 H04L009/32; G06F 21/44 20060101
G06F021/44 |
Claims
1-17. (canceled)
18. A communications device comprising: a first memory unit; a
first input/output interface; and at least one first processor
configured to: receive a certified public key from a wireless
memory device; validate the public key; send a challenge to the
wireless memory device; receive a signature from wireless memory
device; and to validate the signature in order to authenticate the
wireless memory device.
19. The device of claim 18, wherein the at least one first
processor is further configured to form a key stream; and to send
the key stream to the wireless memory device.
20. The device of claim 18, wherein the at least one first
processor is further configured to validate the signature using a
Lamport signature scheme.
21. A wireless memory device comprising: a second memory unit; a
second input/output interface; and at least one second processor
configured to: receive a challenge from a communications device;
form a signature from a private key based on the challenge; send
the signature to a communications device; and to destroy the
private key.
22. The wireless memory device of claim 21, wherein the at least
one second processor is further configured to receive a key stream
from the communications device.
23. The wireless memory device of claim 21, wherein the at least
one second processor is further configured to form the signature
using a Lamport signature scheme.
24. The wireless memory device of claim 21, wherein the second
memory unit comprises at least one pre-stored certified public key
and at least one pre-stored private key.
25. The device of claim 21, wherein the wireless memory device is a
radio frequency memory tag.
26. A method comprising: receiving a certified public key from a
wireless memory device; validating the public key; sending a
challenge to the wireless memory device; receiving a signature from
the wireless memory device; and validating the signature in order
to authenticate the wireless memory device.
27. The method of claim 26 further comprising forming a key stream;
and sending the key stream to the wireless memory device.
28. The method of claim 26 further comprising validating the
signature using a Lamport signature scheme.
Description
TECHNICAL FIELD
[0001] The present application generally relates to wireless memory
device authentication.
BACKGROUND
[0002] Mobile communication devices and their environments are
becoming increasingly complicated and the security demands of
communication are increasing respectively. The increase of the
number of devices and services providing information or distributed
content through wireless communications has created new demands for
security of communications.
[0003] Moreover, as secure communications solutions are becoming
more and more common, the number of manufacturers of devices, such
as radio frequency memory tags and wireless memories capable of
secure communication is increasing, and accordingly the number,
quality and type of devices on the market increases.
[0004] The user of a mobile communication device is also faced with
threats such as malicious communication, phishing and identity
theft, which increases the need for secure communications
infrastructure. It is in the interest of both the user of a mobile
communications device and the owner of the device being
communicated with to ascertain that a secure communication is
feasible.
SUMMARY
[0005] Various aspects of examples of the invention are set out in
the claims.
[0006] According to a first example aspect of the invention, there
is provided a communications device comprising:
[0007] a first memory unit;
[0008] a first input/output interface; and
[0009] at least one first processor configured to: [0010] receive a
certified public key from a wireless memory device; [0011] validate
the public key; [0012] send a challenge to the wireless memory
device; [0013] receive a signature from the wireless memory device;
and to [0014] validate the signature in order to authenticate the
wireless memory device.
[0015] The at least one first processor may be further configured
to form a key stream; and to send the key stream to the wireless
memory device.
[0016] The at least one first processor may be further configured
to validate the signature using a Lamport signature scheme.
[0017] According to a second example aspect of the invention there
is provided a wireless memory device comprising:
[0018] a second memory unit;
[0019] a second input/output interface; and
[0020] at least one second processor configured to: [0021] receive
a challenge from a communications device; [0022] form a signature
from a private key based on the challenge; [0023] send the
signature to a communications device; and to [0024] destroy the
private key.
[0025] The at least one second processor may be further configured
to receive a key stream from the communications device.
[0026] The at least one second processor may be further configured
to form the signature using a Lamport signature scheme.
[0027] The second memory unit may comprise at least one pre-stored
certified public key and at least one pre-stored private key.
[0028] The wireless memory device may be a radio frequency memory
tag.
[0029] According to a third example aspect of the invention, there
is provided a system comprising a communications device according
to the first example aspect of the invention; and a wireless memory
device according to a second example aspect of the invention.
[0030] According to a fourth example aspect of the invention, there
is provided a method comprising:
[0031] receiving a certified public key from a wireless memory
device;
[0032] validating the public key;
[0033] sending a challenge to the wireless memory device;
[0034] receiving a signature from the wireless memory device;
and
[0035] validating the signature in order to authenticate the
wireless memory device.
[0036] The method may further comprise forming a key stream; and
sending the key stream to the wireless memory device.
[0037] The method may further comprise validating the signature
using a Lamport signature scheme.
[0038] According to a fifth example embodiment, there is provided a
method comprising:
[0039] receiving a challenge from a communications device;
[0040] forming a signature from a private key based on the
challenge;
[0041] sending the signature to a communications device; and
[0042] destroying the private key.
[0043] The method may further comprise receiving a key stream from
the communications device.
[0044] The method may further comprise forming the signature using
a Lamport signature scheme.
[0045] According to a sixth example aspect of the invention, there
is provided a computer program, comprising:
[0046] code for performing a method of any example aspect of the
invention,
[0047] when the computer program is run on a processor.
[0048] According to a seventh example aspect of the invention,
there is provided a memory medium comprising the computer program
of the seventh example aspect.
[0049] Any foregoing memory medium may comprise a digital data
storage such as a data disc or diskette, optical storage, magnetic
storage, holographic storage, opto-magnetic storage, phase-change
memory, resistive random access memory, magnetic random access
memory, solid-electrolyte memory, ferroelectric random access
memory, organic memory or polymer memory. The memory medium may be
formed into a device without other substantial functions than
storing memory or it may be formed as part of a device with other
functions, including but not limited to a memory of a computer, a
chip set, and a sub assembly of an electronic device.
[0050] Different non-binding example aspects and example
embodiments of the present invention have been illustrated in the
foregoing. The foregoing example embodiments are used merely to
explain selected aspects or steps that may be utilized in
implementations of the present invention. Some example embodiments
may be presented only with reference to certain example aspects of
the invention. It should be appreciated that corresponding example
embodiments may apply to other example aspects as well.
BRIEF DESCRIPTION OF THE DRAWINGS
[0051] For a more complete understanding of example embodiments of
the present invention, reference is now made to the following
descriptions taken in connection with the accompanying drawings in
which:
[0052] FIG. 1 shows a block diagram of the environment of the
wireless memory device authentication according to an example
embodiment;
[0053] FIG. 2 shows a block diagram of a system suited for wireless
memory device authentication according to an example
embodiment;
[0054] FIG. 3 shows a messaging sequence chart according to an
example embodiment; and
[0055] FIG. 4 shows the forming of the signature based on the
challenge according to an example embodiment.
DETAILED DESCRIPTION OF THE DRAWINGS
[0056] An example embodiment of the present invention and its
potential advantages are understood by referring to FIGS. 1 through
4 of the drawings.
[0057] FIG. 1 illustrates a block diagram of an environment of the
wireless memory device authentication according to an example
embodiment. As shown in FIG. 1, a communications device 100 and a
wireless memory device 200 form the environment. The communications
device 100 is configured to communicate with the wireless memory
device 200. The communications device 100 is further configured to
authenticate the wireless memory device in accordance with an
example embodiment of the wireless memory device authentication
method described hereinafter. The communications device 100 is
further configured to form and/or to compute and/or to encrypt and
to store a key stream into a memory unit 210 of the wireless memory
device 200 in order to configure the wireless memory device 200 for
further communication based on a prior successful authentication
during a first communication with the wireless memory device
200.
[0058] In an example embodiment, the communications device 100 is
at least one of: a personal computer; a server computer; a mobile
phone; a tablet computer; a handheld device; and a portable
electronic device.
[0059] In an example embodiment, the wireless memory device 200 is
a radio frequency (RF) memory tag. In a further example embodiment,
the RF memory tag is a standalone RF memory tag, such as an RFID
tag, which is either integrated or embedded into a communications
device or not integrated or embedded. In an example embodiment the
wireless memory device 200 is configured for near field
communication (NFC) or otherwise configured for wireless
communication with high capacity and high data rates. The wireless
memory device 200 is, in one example embodiment, an active device
that comprises an internal power source. In another example
embodiment, the wireless memory device 200 is a passive device that
relies on receiving a powering signal. Moreover, in one example
embodiment, the wireless memory device 200 is able to operate
either as a passive or an active device.
[0060] In an example embodiment, the communications device 100 and
the wireless memory device 200 are configured to support wireless
communications, wherein one radio frequency, e.g. ultra-high
frequency (UHF), is provided for power transfer and another radio
frequency signals, e.g. Impulse ultra-wideband (UWB) signals, are
provided for wireless data transfer. Moreover, in one example
embodiment, the communications device 100 and the wireless memory
device 200 are configured to support wireless communications using
near field communication (NFC) for power transfer and for finding
and selecting other devices in the proximity. The wireless memory
device 200 is further configured to support near field
communication (NFC) for initial data transfer and further
configured to support wideband wireless communications, e.g.
impulse ultra-wideband (UWB), for any further data transfer
requiring high capacity. In FIG. 1, the communications device 100
and the wireless memory device 200 are configured to support secure
communications, and the communications device 100 is further
configured to verify that the wireless memory device 200 is
configured to support secure communications in a compatible manner
using wireless memory device authentication according to an example
embodiment.
[0061] FIG. 2 illustrates a block diagram of a system suited for
wireless memory device authentication according to an example
embodiment. FIG. 2 shows some basic blocks of the communications
device 100 and a wireless memory device 200. The communications
device 100 comprises a processor 110, a first memory unit 120, an
input/output (I/O) interface 130, and a user interface (UI) 140.
The communications device 100 further comprises software 150 stored
in the first memory unit 120 and operable to be loaded into and
executed in the processor 110. According to an example embodiment
the processor 110 is a central processing unit (CPU), a
microprocessor, a digital signal processor (DSP) or the like. FIG.
2 shows one processor in the communications device 100 as well as
in the wireless memory device 200, but in some embodiments the
communications device 100 and/or the wireless memory device 200 can
be provided with a plurality of processors.
[0062] The wireless memory device 200 comprises a processor 230, an
input/output (I/O) interface 220, a second memory unit 210, and a
protected section 240. The wireless memory device 200 further
comprises software 250 stored in the second memory unit 210 and
operable to be loaded into and executed in the processor 230.
According to an example embodiment the processor 210 is a central
processing unit (CPU), a microprocessor, a digital signal processor
(DSP) or the like. In an example embodiment, the computing power of
the wireless memory device is low. In an example embodiment the
memory unit 210 of the wireless memory device 200 comprises
dedicated memory areas for storing the public and private keys and
the data provided by the communications device 100 based on a
successful authentication.
[0063] The wireless memory device 200 should be configured for
secure communications, i.e. to implement a specific set of
functions to serve as building blocks when secure communications
are set up. The communications device 100 is configured to
communicate with the wireless memory device 200 and to authenticate
the wireless memory device 200 according to example embodiments.
The authentication ascertains that the wireless memory device 200
is configured for secure communications in a compatible manner.
[0064] The input/output interface 130 of the communications device
100 is configured to send and receive signals to and from the
wireless memory device 200 using wireless communications.
Respectively, the input/output interface 220 of the wireless memory
device 200 is configured to send and receive messages to and from
the communications device 100. The input/output interfaces 130, 220
are configured to be in connection with and are configured to be
controlled by the corresponding processors 110, 230 and/or any
software executed by the processors 110, 230.
[0065] In an example embodiment, the wireless memory device 200 or
the input/output interface 220 thereof comprises an interface
configured to derive power from the activation and/or powering
signals received by the input/output interface 220 of the wireless
memory device 200.
[0066] In an example embodiment, the first memory unit 120 and
second memory unit 210 are configured to store information, or
data, and further configured to receive information from other
parts of the devices and to send information to the other parts of
the device, i.e. to read and write information. The first and
second memory units 120, 210 are configured to be in connection
with and controlled by the processor 110, 230. In a further example
embodiment, either the communications device 100 or the wireless
memory device 200 is configured to function in a passive mode. In a
passive mode, the processor 110, 230 of either the communications
device 100 or the wireless memory device 200 is not active and the
first or second memory unit 120, 210 is configured to be controlled
by the processor 110, 230 of the active device. In an example
embodiment, the second memory unit 210 comprises a protected
section 240. The first and second memory units 120, 210 comprise
any memory compatible with secure communications and selected from
a non-volatile and/or a volatile memory unit, such as a read-only
memory unit (ROM), a programmable read-only memory unit (PROM),
erasable programmable read-only memory unit (EPROM), a
random-access memory unit (RAM), a flash memory unit, a data disk,
an optical storage, a magnetic storage and/or a smart card.
[0067] In an example embodiment, the communications device 100 and
the wireless memory device 200 comprise a plurality of memory
units. Each memory unit is either configured solely to store
information or configured to serve other purposes in communication
with further parts, such as to process information. Each memory
unit is further configured to support secure communications. In an
example embodiment the second memory unit 210 of the wireless
memory device 200 is configured to store at least one digital
signature. Furthermore, the processor 230 of the wireless memory
device 200 is configured to choose or look up elements of a digital
signature based on data received from a communications device
100.
[0068] In addition to the elements shown in FIG. 2, in some example
embodiments the communications device 100 and/or the wireless
memory device 200 comprise other elements, such as microphones or
displays, as well as additional circuitry, memory chips,
application-specific integrated circuits (ASIC), processing
circuitry for specific purposes such as source coding and decoding
circuitry, channel coding and decoding circuitry, ciphering and
deciphering circuitry, and the like.
[0069] FIG. 3 illustrates a messaging sequence chart according to
an example embodiment. A certified public key pub_k and a private
key priv_k are stored in the memory unit 210 of the wireless memory
device 200 prior to the wireless memory device being taken into use
303, 304. In an example embodiment, the manufacturer of the
wireless memory device generates the public key pub_k and the
private key priv_k and stores them in the memory unit 210 of the
wireless memory device 200. In order to certify the pair of keys
pub_k, priv_k on the wireless memory device 200, the generator of
the keys signs them with her own trust root, e.g. a RSA signature.
The public key pub_k stored in the memory unit 210 of the wireless
memory device 200 is in a format that is universally readable. In
an example embodiment, the public key pub_k and the private key
priv_k are formed in accordance with the Lamport signature
scheme.
[0070] The example wireless memory device authentication method is
carried out as illustrated in the message sequence chart only the
first time a communications device 100 communicates with the
wireless memory device 200. First, the communications device 100
reads or receives 310 the public key pub_k from the wireless memory
device 200 and checks 315 the validity of the public key pub_k
based on the certificate, or trust root, of the generator of the
keys on the wireless memory device 200. The validity of the
certificate is checked from a local list or through communications
services.
[0071] The communications device 100 sends 320 a challenge H(cha)
to the wireless memory device 200. In an example embodiment, the
challenge H(cha) comprises a predetermined number of bits. The
wireless memory device 200 forms a signature Sig(cha) based on the
challenge H(cha) received from the communications device 100 and
sends 320 it to the communications device 100. According to an
embodiment, the public key pub_k and the private key priv_k stored
in the memory unit 210 of the wireless memory device 200 are formed
in accordance with the Lamport signature scheme, wherein the
private key consists of a predetermined number, e.g. 256 of pairs
of random numbers 401, 402 and the public key is formed by hashing
these random numbers. In an example embodiment, the signature
Sig(cha) is formed by choosing, or looking up in a table, from the
private key priv_k for each bit 410 of the challenge H(cha) either
the first or second number of a pair of numbers in accordance with
the value of the respective bit of the challenge H(cha).
[0072] The communications device 100 checks 340 the validity of the
signature Sig(cha) received as a response to the challenge H(cha).
In an example embodiment the signature Sig(cha) is validated by
first choosing, or looking up in a table, from the public key pub_k
for each bit of the challenge either the first or second number of
a pair of numbers in accordance with the value of the respective
bit of the challenge H(cha), hashing the numbers of the signature
Sig(cha) and comparing the hashed numbers of the signature with the
numbers chosen from the public key pub_k. Should the numbers match,
the signature is valid.
[0073] The private key priv_k and the public key pub_k are
destroyed 350, i.e. deleted from the wireless memory device 200
substantially immediately after they have been used to form the
signature Sig(cha). Accordingly, the private key priv_k and the
public key pub_k are used only once and the private key priv_k is
never sent out or copied from the memory unit 210 of the wireless
memory device 200, but only used to form the signature Sig(cha). In
an example embodiment, the memory unit 210 of wireless memory
device 200 contains several pairs of public and private keys in
order for several communications devices to authenticate the
wireless memory device 200.
[0074] As hereinbefore described, the example wireless memory
device authentication is only carried out once for each wireless
memory device during the first communication with the wireless
memory device in question. For purposes of further communication,
the communication device sends 360 a key stream auth_k to the
wireless memory device 200. The key stream auth_k is stored in the
memory unit 210 of the wireless memory device 200 and is used to
authenticate and/or secure any further communication between the
communication device 100 and the wireless memory device 200 in a
conventional manner. In an example embodiment, the communications
device 100 would before further communication make certain that the
wireless memory device 200 is authenticated for example by
requiring the wireless memory device 200 to return a certain part
of the key stream auth_k.
[0075] In an example embodiment, as hereinbefore described, the
wireless memory device 200 contains several pairs of public and
private keys in order for several communications devices to
authenticate the wireless memory device 200. The wireless memory
device 200 accordingly receives several key streams auth_k from the
several communications devices. In a further example embodiment,
the wireless memory device needs to be partially authenticated by
several communications devices to enable a valid authentication.
The RF memory device 200 receives a key stream auth_k or a part of
a key stream auth_k from each participating communications device
100. These key streams auth_k or a key stream auth_k assembled from
the parts of the key stream received are/is stored in the memory
unit 210 of the wireless memory device 200. The key streams or key
stream are/is used for further communication as described
hereinbefore with reference to one communications device 100.
[0076] In an example embodiment the authentication of the wireless
memory device 200 is time dependent. To enable the time dependency,
the key stream auth_k sent to the wireless memory device contains a
time stamp in order to limit the validity of authentication to a
certain period of time, e.g. valid for five days. In a further
example embodiment the validity is limited to a certain time of the
day, week or month, e.g. valid Thursdays 9 am to 5 pm.
[0077] Some use cases relating to given example embodiments of the
wireless memory device authentication are presented in the
following. In a first use case, the wireless memory device
authentication is generally used in connection with wireless memory
devices in situations or transactions which benefit from
cryptographically authenticated communication. For example
situations in which a user of a communications device encounters a
new wireless memory device, for example a newly-purchased radio
frequency memory tag or otherwise a previously unknown wireless
memory device. In this kind of situation, the user of the
communications device wishes to make certain that the wireless
memory device can be used in secure communications. For this
purpose the manufacturer of the device and its compliance with
security standards is found out and the wireless memory device is
authenticated for further communication.
[0078] In a second use case, the wireless memory device
authentication is applied by a user of a communications device in
order to keep track of her communications history. The
communications device of the user stores a history of all
communications with various wireless memory devices by saving the
authentication key streams sent to the wireless memory devices
together with identifying information on the communications, such
as manufacturer of the wireless memory device as well as time and
place of the communication. Should the user of a communications
device later receive a communication or a message or the like from
an owner of a wireless memory device with which a communication had
previously occurred, the user of the communications device would be
immediately aware which previous communication had caused the new
contact, since the new communication would contain the
authentication key stream. Furthermore, in an example use case of
the wireless memory device authentication, the communications
device is provided with a user interface for controlling the
communications history, setting or enforcing privacy rules and for
accepting or declining any further communications occurring due to
previous communications
[0079] Without in any way limiting the scope, interpretation, or
application of the appended claims, a technical effect of one or
more of the example embodiments disclosed herein is to provide a
way of ascertaining that wireless memory devices with which a
communications device communicates are truly capable of secure
communication and have no malicious intent. Another technical
effect of one or more of the example embodiments disclosed herein
is to make it possible to use passive wireless memory devices, e.g.
passive RF memory tags in secure communications since little
computational power is required on the wireless memory device.
Another technical effect of one or more of the example embodiments
disclosed herein is to provide a secure authentication method.
[0080] It will be understood that each operation of the flowchart,
and/or combinations of operations in the flowchart can be
implemented by various means. Means for implementing the operations
of the flowchart, combinations of the operations in the flowchart,
or other functionality of the example embodiments described herein
may comprise software, hardware, application logic or a combination
of software, hardware and application logic. The application logic,
software or an instruction set is maintained on any one of various
conventional computer-readable media. A computer-readable medium
may comprise a computer-readable storage medium that may be any
media or means that can contain or store the instructions for use
by or in connection with an instruction execution system,
apparatus, or device, such as a computer.
[0081] If desired, the different functions discussed herein may be
performed in a different order and/or concurrently with each other.
Furthermore, if desired, one or more of the afore-described
functions may be optional or may be combined.
[0082] Although various aspects of the invention are set out in the
independent claims, other aspects of the invention comprise other
combinations of features from the described embodiments and/or the
dependent claims with the features of the independent claims, and
not solely the combinations explicitly set out in the claims.
[0083] It is also noted herein that while the foregoing describes
example embodiments of the invention, these descriptions should not
be viewed in a limiting sense. Rather, there are several variations
and modifications which may be made without departing from the
scope of the present invention as defined in the appended
claims.
* * * * *