JP2005520395A - Multi-user key generation and authentication method and authentication system based on polynomial - Google Patents

Multi-user key generation and authentication method and authentication system based on polynomial Download PDF

Info

Publication number
JP2005520395A
JP2005520395A JP2003575553A JP2003575553A JP2005520395A JP 2005520395 A JP2005520395 A JP 2005520395A JP 2003575553 A JP2003575553 A JP 2003575553A JP 2003575553 A JP2003575553 A JP 2003575553A JP 2005520395 A JP2005520395 A JP 2005520395A
Authority
JP
Japan
Prior art keywords
party
value
polynomial
secret
argument
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2003575553A
Other languages
Japanese (ja)
Inventor
ツイルス,ピム,テー
ケヴェナアル,トマス,アー.,エム
シュリイェン,ゲエルト,ヨット
ディユク,マルテン,エー ヴァン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Koninklijke Philips NV
Original Assignee
Koninklijke Philips Electronics NV
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Koninklijke Philips Electronics NV filed Critical Koninklijke Philips Electronics NV
Publication of JP2005520395A publication Critical patent/JP2005520395A/en
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
    • H04L9/3273Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response for mutual authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2805Home Audio Video Interoperability [HAVI] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/085Secret sharing or secret splitting, e.g. threshold schemes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/321Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3218Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/60Digital content management, e.g. content distribution
    • H04L2209/603Digital right managament [DRM]

Abstract

A method of generating a common secret between a first party and a second party, preferably devices ( 101 - 105 ) in a home network ( 100 ) that operate in accordance with a Digital Rights Management (DRM) framework. The devices calculate the common secret by evaluating the product of two polynomials P(x, y) and Q(x, z) using parameters previously distributed by a Trusted Third Party (TTP) and parameters obtained from the other party. Preferably the parties subsequently verify that the other party has generated the same secret using a zero-knowledge protocol or a commitment-based protocol. The method is particularly suitable for very low power devices such as Chip-In-Disc type devices.

Description

本発明は、
第一当事者と第二当事者との間の共通の秘密を生成する方法であって、
前記第一当事者が、値 p1 と、第一引数が前記値 p1 により固定されている対称多項式 P(x, y) とを保持し、かつ、
前記第一当事者が、
前記第二当事者に前記値 p1 を送信するステップと、
前記第二当事者から値 p2 を受信するステップと、
多項式 P(p1, y) の p2 を求めることにより秘密 S1 を計算するステップと、
を行う方法に関する。
The present invention
A method for generating a common secret between a first party and a second party, comprising:
The first party holds a value p 1 and a symmetric polynomial P (x, y) whose first argument is fixed by the value p 1 , and
The first party
Sending the value p 1 to the second party;
Receiving a value p 2 from said second party;
Calculating the secret S 1 by finding p 2 of the polynomial P (p 1 , y);
On how to do.

本発明は、更に、このような方法を実行するように構成されている、第一当事者と、第二者当事者と、信頼できる第三当事者とを有するシステム、このシステム内で第一当事者または第二当事者として機能するように構成されているデバイス、およびコンピュータ・プログラム製品に関する。   The present invention further includes a system comprising a first party, a second party, and a trusted third party configured to perform such a method, wherein the first party or the second party in the system. The present invention relates to a device configured to function as a two party and a computer program product.

第一段落による方法の一実施例は、R. Blom の「非公開鍵の配布、暗号学における進歩 (Non-public key distribution, Advances in Cryptology)」(Crypto 82の議事録、231〜236頁、1983年)から知られている。   An example of the method according to the first paragraph is R. Blom's "Non-public key distribution, Advances in Cryptology" (Crypto 82, 231-236, 1983. Year).

認証は、デジタル通信ネットワークとコンテンツ保護システムで、重要な役割を演ずる。互いに通信するデバイスは、互いの信頼性について確信を抱いている必要がある。これらのデバイスは、信頼できない当事者に秘密情報を与えるべきではない。認証手順は、処理パワーを大量に必要とする公開鍵技術に基づいていることが多い。多くのアプリケーションでは、この(処理)パワーを利用することができないので、この場合、これらの公開鍵技術をそのまま適用することはできない。   Authentication plays an important role in digital communication networks and content protection systems. Devices that communicate with each other need to have confidence in each other's reliability. These devices should not give confidential information to untrusted parties. Authentication procedures are often based on public key technology that requires a large amount of processing power. In many applications, this (processing) power cannot be used, and in this case, these public key technologies cannot be applied as they are.

時折提案される解決策は、消費パワーがかなり少ない対称暗号を用いることに基づいている。しかしながら、これらの暗号には、グローバル・システムの秘密が各デバイス内で必要となり、これは多数出回る製品には望ましくない、という欠点がある。   The solution that is sometimes proposed is based on using symmetric ciphers that consume significantly less power. However, these ciphers have the disadvantage that a global system secret is required within each device, which is undesirable for a large number of products.

デジタル通信ネットワークは、CE 用アプリケーションでもますます一般的になりつつあるため、安価かつ低パワーの認証プロトコルの必要性が高まっている。パワーに関する制約は、一般に、携帯型 CE デバイス、スマートカードなどに該当するが、本出願の同一出願人による国際特許公開公報第 02/017316 号(社内整理番号 PHNL010233)に解説されているような「チップインディスク (CID: Chip In Disc)」タイプの製品の場合、特に厳しい。   As digital communication networks are becoming increasingly common in CE applications, there is a growing need for cheap and low-power authentication protocols. Power restrictions generally apply to portable CE devices, smart cards, etc., but as described in International Patent Publication No. 02/017316 (internal number PHNL010233) by the same applicant of this application. This is particularly severe for products of the “Chip In Disc” type.

CID の背景にある基本的なアプローチは、CD または DVD のようなキャリア上にチップを配置した後に、このチップをコンテンツ保護のために用いることである。このチップは、プレーヤを信用できることが確信でき次第、プレーヤがコンテンツをプレイすること(チップが持っているデスクランブル鍵へのアクセスをプレーヤに与えること)を可能にする。他方、プレーヤは、信頼できないディスク上のコンテンツは全くプレイしないであろう。したがって、プレーヤと CID の両方に、認証のための何らかの手段が必要となる。   The basic approach behind CID is to use the chip for content protection after it is placed on a carrier such as a CD or DVD. This chip allows the player to play the content (giving the player access to the descrambling key held by the chip) as soon as he can be sure that the player can be trusted. On the other hand, the player will not play any content on the unreliable disc. Therefore, some means for authentication is required for both the player and the CID.

留意すべき重要な点は、チップが自由に使用できるパワーが非常に限られている(約0.5 mW)ので、非常に複雑な計算を行うことができないことである。このことは、(RSA または ElGamal などの)公開鍵技術を直ちに使用することができないことを意味する。CID 認証問題は、CE の世界での認証問題の典型例である。   An important point to keep in mind is that the power that the chip is free to use is very limited (about 0.5 mW), so that very complex calculations cannot be performed. This means that public key technologies (such as RSA or ElGamal) cannot be used immediately. The CID authentication problem is a typical example of the authentication problem in the CE world.

上記に参照されている Blom による論文は、2変数の対称多項式に基づいた秘密共有プロトコルを用いた共通鍵、つまり、会議鍵の生成方法を開示している。このプロトコルは、図1に示されている。基本的に、「証明者」(P と略記する)と呼ばれる一方の当事者が、「検証者」(V と略記する)と呼ばれるシステム内の別の当事者に、検証者にも知られている秘密を自分が知っているということを確信させようと試みる。検証者が確信した場合、証明者は認証される。   The Blom paper referenced above discloses a method for generating a common key, a conference key, using a secret sharing protocol based on a two-variable symmetric polynomial. This protocol is illustrated in FIG. Basically, one party, called a “prover” (abbreviated as P), has a secret known to the verifier to another party in the system, called a “verifier” (abbreviated as V). Try to convince you that you know. If the verifier is convinced, the prover is authenticated.

システム内で、信頼できる第三者 (TTP: Trusted Third Party) は、(n+1)×(n+1) の対称行列Tを選択する。この行列のエントリ
は、2変数のn次多項式Pの各係数を表している。この多項式Pは、以下のように定義される。
In the system, a trusted third party (TTP) selects a (n + 1) × (n + 1) symmetric matrix T. This matrix entry
Represents each coefficient of a two-variable nth-order polynomial P. This polynomial P is defined as follows.

この多項式の領域内の全ての x と y に対して、
であることは明らかである。例えば
のように、引数 x を特定値に固定することにより、多項式 P を1変数の n 次多項式の空間上に投射させることができる。多項式 P の定義、行列 T の対称性、およびこの結果得られる P(x, y) の対称性から、全ての p と q に対して
が成り立つ。
For all x and y in the domain of this polynomial,
Obviously. For example
By fixing the argument x to a specific value, the polynomial P can be projected onto the space of a single variable n-order polynomial. For all p and q, the definition of the polynomial P, the symmetry of the matrix T, and the resulting symmetry of P (x, y)
Holds.

Blom によると、他方のデバイスと共通の秘密を生成可能であることが必要な全てのデバイスは、対 (Pp(y), p)(つまり、多項式 P は p が固定されており、かつこの値 p は、P(x, y) から Pp(y) を生成するために用いられたものである)を受信する。デバイス (Pp, p) と (Pq, q) との間で共有される秘密は、p と q を交換することにより生成される Pp(q) = Pq(p) と、これらの多項式を評価して P の秘密 S1 と V の秘密 S2 を生じさせることにより与えられる。 According to Blom, all devices that need to be able to generate a common secret with the other device have the pair (P p (y), p) (ie the polynomial P has a fixed p and this The value p is the one used to generate P p (y) from P (x, y). The secret shared between devices (P p , p) and (P q , q) is P p (q) = P q (p) generated by exchanging p and q, and these It is given by evaluating the polynomial to give P secret S 1 and V secret S 2 .

このアプローチの場合、グローバルな秘密は、対称であるという理由により
個の独立したエントリを持つ行列 T から成る。この秘密のシェア (share) は、各々の値 p と、
の形態の n + 1個の係数を有する多項式 Pp(y) の形態で、全ての当事者に与えられる。
In this approach, the global secret is symmetric because
Consists of a matrix T with independent entries. This secret share has its value p and
Is given to all parties in the form of a polynomial P p (y) with n + 1 coefficients of the form

こうすることにより、未知数 tij
個である n + 1 個の線形方程式が全ての当事者に与えられるので、一当事者がグローバルな秘密 T を取り出すことは明らかに不可能となる。異なる一値 p を全当事者が有している n + 1 の当事者が協力した場合にしか、行列Tを取り出すことはできない。
By doing this, the unknown t ij becomes
Since n + 1 linear equations are given to all parties, it is clearly impossible for one party to extract the global secret T. The matrix T can be extracted only when n + 1 parties, all of which have different values p, cooperate.

このことは、この公知のプロトコルの主な欠点を示している。つまり、pi の異なる値の数が n+1 個未満でない限り、十分な数の当事者が協力すれば、グローバルな秘密 T を取り出すことが可能となってしまう。しかしながら、このことは、グローバル・システムの秘密 T を明らかにさせないようにするために、異なるシェアの数が、多項式の次数に限定されてしまうことを意味している。更に、二者の当事者が通信すると、これらの当事者が常に同じ共通の秘密を生成してしまう。 This shows the main drawback of this known protocol. In other words, unless the number of different values of p i is less than n + 1, the global secret T can be extracted if a sufficient number of parties cooperate. However, this means that the number of different shares is limited to the degree of the polynomial so as not to reveal the secret T of the global system. Moreover, when two parties communicate, they always generate the same common secret.

国際特許公開公報第02/017316号International Patent Publication No. 02/017316 国際特許出願第PCT/IB02/04803号International Patent Application No. PCT / IB02 / 04803 米国特許第5,140,634号U.S. Pat.No. 5,140,634 R. Blom の「非公開鍵の配布、暗号学における進歩 (Non-public key distribution, Advances in Cryptology)」(Crypto 82の議事録、231〜236頁、1983年)R. Blom's “Non-public key distribution, Advances in Cryptology” (Crypto 82, 231-236, 1983) A. Menezes、P. van Oorschot、および S. van Stone による「応用暗号学の手引き (Handbook of Applied Cryptography)」(CRC Press、405〜416頁、1996年)"Handbook of Applied Cryptography" by A. Menezes, P. van Oorschot, and S. van Stone (CRC Press, 405-416, 1996)

本発明の目的は、多項式 P の階数を増加させる必要なく、グローバルな秘密のより多数の異なるシェアを、当事者に配布可能にする方法を提供することである。   It is an object of the present invention to provide a method that allows a greater number of different shares of global secrets to be distributed to parties without having to increase the rank of the polynomial P.

この目的は、本発明によると、第一当事者が、
値 q1 と、
第一引数が値 q1 により固定されている対称多項式 Q(x, y) と、
を更に保持し、かつ更に、
第二当事者に q1 を送信するステップと、
第二当事者から値 q2 を受信するステップと、
秘密S1
として計算するステップと、
を行うことを特徴とする方法で達成される。
For this purpose, according to the present invention, the first party
The value q 1 and
A symmetric polynomial Q (x, y) whose first argument is fixed by the value q 1 and
And further hold
Sending q 1 to the second party; and
Receiving the value q 2 from the second party;
Secret S 1
Step to calculate as
Is achieved by a method characterized in that

pi の値の数を依然として n に限定しつつ、より多数の異なるシェアを当事者に配布することができる。システム全体での qi の値の数は、Blom のシステムの場合のように多項式 P の次数により限定されることはなく、Q 領域内の可能な要素の数 qi のみにより限定される。こうすることにより、十分な数の qi によってグローバルな秘密の固有なシェアを全ての当事者に供給することが可能となる。 More different shares can be distributed to the parties, while still limiting the number of values of p i to n. The number of q i values in the entire system is not limited by the degree of the polynomial P as in the Blom system, but only by the number q i of possible elements in the Q domain. This makes it possible to supply all parties with a unique share of global secrets with a sufficient number of q i .

一実施例の場合、第一当事者は、
乱数 r1 を得るステップと、
を計算するステップと、
第二当事者に
を送信するステップと、
第二当事者から
を受信するステップと、
秘密 S1
として計算するステップと、
を更に行う。乱数 r1 と r2 は、q1 と q2 の値を隠す。このことにより、盗聴者つまり非準拠のデバイスが q1 と q2 について何かを知ってしまうことが、非常に困難となる。第二に、r1 と r2 の値は、多項式 P と Q の評価の結果、結局乗算されるので、計算された秘密S1と S2 は、乱文字も持つことになる。このことは、S1 と S2 が後で対称暗号内の鍵として用いられれば、盗聴者が暗号を破ることが困難となることを意味する。更に今度は、2つのデバイス間での全ての新たなセッションで、異なる共通の秘密を生成することが可能となる。
In one embodiment, the first party is
Obtaining a random number r 1 ;
A step of calculating
To the second party
A step of sending
From the second party
Receiving the step,
Secret S 1
Step to calculate as
Is further performed. The random numbers r 1 and r 2 hide the values of q 1 and q 2 . This makes it very difficult for an eavesdropper or non-compliant device to know something about q 1 and q 2 . Secondly, the values of r 1 and r 2 are eventually multiplied as a result of the evaluation of the polynomials P and Q, so the calculated secrets S 1 and S 2 will also have random characters. This means that if S 1 and S 2 are later used as keys in a symmetric cipher, it will be difficult for an eavesdropper to break the cipher. In addition, it is now possible to generate different common secrets in every new session between the two devices.

更なる一実施例の場合、第一当事者は、任意に選択された値 r により乗算された値 q1 と、個々の多項式 P(p1, y) と Q(q1, z) ではなく積 Q(q1, z)P(p1, y) を保持し、かつ第一当事者は、

を計算するステップと、
第二当事者に
を送信するステップと、
第二当事者から
を受信するステップと、
秘密 S1
として計算するステップと、
を行う。このようにして、値 q1 と q2 は、デバイスにアクセスしかつグローバルな秘密 T、および/または、値 q1 または q2 を知ろうと試みる敵対者には機密となる。
In a further embodiment, the first party can multiply the value q 1 multiplied by an arbitrarily chosen value r and not the individual polynomials P (p 1 , y) and Q (q 1 , z). Hold Q (q 1 , z) P (p 1 , y) and the first party

A step of calculating
To the second party
A step of sending
From the second party
Receiving the step,
Secret S 1
Step to calculate as
I do. In this way, the values q 1 and q 2 are confidential to the adversary who accesses the device and tries to know the global secret T and / or the values q 1 or q 2 .

更なる一実施例の場合、第一当事者と第二当事者は、生成された秘密 S1 と S2 の各々に非線形関数を用いた後に、この秘密を更なる通信内の秘密鍵として用いる。この非線形関数は、一方向ハッシュ関数として実施されることが好ましいが、多項式の形態を取ることもできる。非線形関数を用いることにより、前後方向へのスキームが安全になる。換言すれば、攻撃者が鍵を入手したとしても、この入手された鍵から、前または後の鍵を導出することはできない。 In a further embodiment, the first party and the second party use this secret as a secret key in further communications after using a non-linear function for each of the generated secrets S 1 and S 2 . This non-linear function is preferably implemented as a one-way hash function, but can also take the form of a polynomial. By using a nonlinear function, the scheme in the front-rear direction becomes safe. In other words, even if the attacker obtains the key, the previous or subsequent key cannot be derived from the obtained key.

第二当事者が秘密S1を知っているということを、第一当事者は後で検証することが好ましい。第一当事者は、第二当事者が秘密 S1 を知っているということを検証するために、ゼロ知識プロトコルを適用することもできる。このプロトコルは、公開値

を用いる Guillou-Quisquater プロトコルであることが好ましい。このことの利点は、本発明では
の値が低い場合でも、Guillou-Quisquater プロトコルにより、敵対者はチャレンジを予期することができなくなるので、このプロトコルが非常に安全になり得ることである。更に、Guillou-Quisquater プロトコルは、通信とメモリ使用の点で効率的である。
It is preferred that the second party that knows the secret S 1, the first party to verify later. First party, to the second party to verify that knows the secret S 1, it is also possible to apply a zero-knowledge protocol. This protocol is a public value
When
The Guillou-Quisquater protocol is preferred. The advantage of this is that the present invention
Even if the value of is low, the Guillou-Quisquater protocol can make this protocol very secure because the adversary cannot expect a challenge. In addition, the Guillou-Quisquater protocol is efficient in terms of communication and memory usage.

これに代えて、第一当事者は、コミットメントに基づいたプロトコルを適用して、第二当事者が秘密 S1 を知っているということを検証することができる。DES、Lombok、またはAES などの対称暗号に基づいたコミットメント・プロトコルを用いることは、この方法を実行するデバイス内でのパワー消費の点で非常に効率的である。第一当事者は、同一の対称暗号を後で commit 関数として用いて、暗号化されているランダムなチャレンジの復号化に自らをコミットさせることが好ましい。こうすることにより得られる更なる利点は、チャレンジを暗号化するためのハードウエアおよび/またはソフトウエアが、コミット関数を実行するために再使用可能となるので、この実施態様の複雑さが低減されることである。 Alternatively, the first party applies a protocol based on the commitment, the second party can verify that knows the secret S 1. Using a commitment protocol based on symmetric ciphers such as DES, Lombok, or AES is very efficient in terms of power consumption within a device that performs this method. The first party preferably commits itself to decrypt the encrypted random challenge using the same symmetric cipher later as the commit function. A further advantage obtained by doing this is that the complexity of this implementation is reduced since the hardware and / or software for encrypting the challenge can be reused to perform the commit function. Is Rukoto.

他の有利な実施例は、従属請求項に提示されている。   Other advantageous embodiments are presented in the dependent claims.

本発明のこれらの態様と他の態様は、図面に示されている実施例から明らかとなり、かつこれらの実施例を参照することにより解明されるであろう。   These and other aspects of the invention will be apparent from and elucidated with reference to the embodiments shown in the drawings.

図面全体に渡って、同じ参照番号は、同様なまたは対応する特徴を示している。図面に示されている特徴の幾つかは、通常、ソフトウエア内で実施され、かつそれ自体で、ソフトウエア・モジュールまたはオブジェクトなどのソフトウエアの実体を表している。   Throughout the drawings, the same reference numerals indicate similar or corresponding features. Some of the features shown in the drawings are typically implemented in software and as such represent software entities, such as software modules or objects.

図2は、ネットワーク110を介して相互接続されているデバイス101〜105を有するシステム100を概略的に示している。この実施例の場合、システム100は家庭内ネットワークである。典型的なデジタル家庭ネットワークには、例えば、ラジオ受信器、チューナ/デコーダ、CD プレーヤ、1対のスピーカ、テレビジョン、VCR、テープデッキなどの幾つかのデバイスが含まれている。これらのデバイスは、1つのデバイス(例えばテレビジョン)が別のデバイス(例えば VCR)を制御することができるように、通常は相互接続されている。通常は、1つのデバイス(例えばチューナ/デコーダまたはセット・トップ・ボックス (STB: set top box) など)が中央のデバイスとなって、他のデバイスに対する中央制御を行う。   FIG. 2 schematically illustrates a system 100 having devices 101-105 interconnected via a network 110. In this embodiment, system 100 is a home network. A typical digital home network includes several devices such as, for example, a radio receiver, a tuner / decoder, a CD player, a pair of speakers, a television, a VCR, and a tape deck. These devices are usually interconnected so that one device (eg, a television) can control another device (eg, a VCR). Normally, one device (such as a tuner / decoder or set top box (STB)) becomes the central device and performs central control over other devices.

コンテンツは、通常は、音楽、歌、映画、テレビ番組、画像のようなものを含んでおり、住宅用のゲートウェイ、つまりセット・トップ・ボックス101を通して受信される。ソースは、ブロードバンド・ケーブル・ネットワーク、インターネット接続、衛星ダウンリンクなどへの接続とすることも可能である。次に、コンテンツをネットワーク110上でシンクに転送して、レンダリングさせることができる。シンクは、例えば、テレビ表示装置102、携帯型表示デバイス103、移動電話104、および/または、オーディオ再生デバイス105とすることもできる。   Content typically includes things such as music, songs, movies, television programs, images, and is received through a residential gateway, or set top box 101. The source can also be a connection to a broadband cable network, Internet connection, satellite downlink, and the like. The content can then be transferred over the network 110 to a sink for rendering. The sink may be, for example, a television display device 102, a portable display device 103, a mobile phone 104, and / or an audio playback device 105.

コンテンツ品目をレンダリングさせる適格な方法は、デバイスのタイプとコンテンツのタイプに依存する。例えば、ラジオ受信器の場合、レンダリングには、オーディオ信号を生成することと、これらの信号をラウド・スピーカにフィードすることが含まれる。テレビ受信器の場合、レンダリングには通常、オーディオ信号とビデオ信号を生成することと、これらの信号を表示画面とラウド・スピーカにフィードすることが含まれる。他のタイプのコンテンツに対しても、同様の適切な処置を行わなければならない。レンダリングには、受信された信号の復号化つまりデスクランブリング、オーディオ信号とビデオ信号との同期化などの動作を含めてもよい。   The eligible method for rendering a content item depends on the type of device and the type of content. For example, in the case of a radio receiver, rendering includes generating audio signals and feeding these signals to a loudspeaker. In the case of a television receiver, rendering typically includes generating audio and video signals and feeding these signals to a display screen and a loudspeaker. Similar appropriate actions must be taken for other types of content. Rendering may include operations such as decoding the received signal, ie descrambling, synchronizing the audio and video signals.

システム100内のセット・トップ・ボックス101、または他の何れかのデバイスは、受信されたコンテンツを記録し、かつ後で再生することを可能にする、適切な大きさのハードディスクなどの格納媒体S1を有してもよい。格納装置S1は、セット・トップ・ボックス101が接続されている、ある種類のパーソナル・デジタル・レコーダ (PDR: Personal Digital Recorder)(例えばDVD+RWレコーダ)とすることができる。CD (Compact Disc) またはDVD(Digital Versatile Disc)などのキャリア120上に格納されているシステム100に、コンテンツを設けることもできる。   A storage medium S1, such as a suitably sized hard disk, that allows the set top box 101 in the system 100, or any other device, to record the received content and play it back later. You may have. The storage device S1 can be a kind of personal digital recorder (PDR) (for example, a DVD + RW recorder) to which a set top box 101 is connected. Content can also be provided in the system 100 stored on a carrier 120 such as a CD (Compact Disc) or DVD (Digital Versatile Disc).

携帯型表示デバイス103と移動電話104は、例えば Bluetooth(登録商標) または IEEE 802.11b を用いている基地局111を使用して、ネットワーク110にワイヤレス接続される。他のデバイスは、従来の結線接続を用いて接続される。デバイス101〜105の相互作用を可能にさせるには、相互運用性に関する幾つかの規格を利用することができる。これらの規格によって、異なるデバイスがメッセージと情報を交換し、かつ互いに制御し合うことが可能となる。周知の規格の1つとして、ホーム・オーディオ・ビデオ相互運用性 (HAVi: Home Audio/Video Interoperability) 規格バージョン1.0が挙げられる。これは、2000年1月に公布され、かつインターネット上のアドレス http://www.havi.org/ から入手可能である。他の周知の規格として、(D2B: domestic digital bus)規格、IEC 1030に解説されている通信プロトコル、およびユニバーサル・プラグ・アンド・プレイ(http://www.upnp.org)が挙げられる。   The portable display device 103 and the mobile phone 104 are wirelessly connected to the network 110 using a base station 111 using, for example, Bluetooth (registered trademark) or IEEE 802.11b. Other devices are connected using conventional wire connections. Several standards for interoperability can be used to allow the devices 101-105 to interact. These standards allow different devices to exchange messages and information and control each other. One well-known standard is Home Audio / Video Interoperability (HAVi) standard version 1.0. It was promulgated in January 2000 and is available from the Internet address http://www.havi.org/. Other well-known standards include the (D2B: domestic digital bus) standard, the communication protocol described in IEC 1030, and Universal Plug and Play (http://www.upnp.org).

多くの場合に重要な点は、家庭ネットワーク内のデバイス101〜105が、コンテンツのコピーを無権限で作らないようにさせることである。こうするには、デジタル著作権管理 (DRM: Digital Rights Management) システムと通常呼ばれているセキュリティ・フレームワークが必要である。   An important point in many cases is to prevent the devices 101-105 in the home network from making unauthorized copies of the content. This requires a security framework commonly referred to as a digital rights management (DRM) system.

このようなフレームワークの1つの場合、家庭ネットワークは、概念的に、条件付きアクセス(CA: conditional access)領域とコピー保護(CP: copy protection)領域とに分割される。通常、シンクは CP 領域内に配置される。こうすることにより、コンテンツがシンクに提供された場合に、このコピー保護スキームが CP 領域内に配置されているので、コンテンツのコピーを無権限で作ることが不可能となる。CP 領域内のデバイスは、一時的なコピーを作る格納媒体を有してもよいが、このようなコピーは、CP 領域からエクスポートしてはならない。このフレームワークは、本出願と同一の出願人による国際特許出願第 PCT/IB02/04803号(社内管理番号 PHNL010880)に説明されている。   In one such framework, the home network is conceptually divided into a conditional access (CA) area and a copy protection (CP) area. Normally, sinks are placed in the CP area. In this way, when the content is provided to the sink, this copy protection scheme is located in the CP area, making it impossible to make an unauthorized copy of the content. Devices in the CP area may have storage media that make temporary copies, but such copies must not be exported from the CP area. This framework is described in International Patent Application No. PCT / IB02 / 04803 (internal control number PHNL010880) by the same applicant as this application.

セキュリティ・フレームワークを実施する家庭内ネットワーク内の全てのデバイスは、選択された特定のアプローチとは無関係に、実施要件にしたがってセキュリティ・フレームワークを実施する。これらのデバイスは、このフレームワークを用いて互いに認証を行い、かつコンテンツを安全に配布することができる。コンテンツへのアクセスは、セキュリティ・システムにより管理される。このことにより、保護されていないコンテンツが無権限のデバイスに漏れてしまうことがなくなり、かつ信頼できないデバイスから生じたデータがシステムに入ってしまうことがなくなる。   All devices in the home network that implement the security framework implement the security framework according to the implementation requirements, regardless of the particular approach chosen. These devices can authenticate each other using this framework and distribute content securely. Access to content is managed by the security system. This prevents unprotected content from leaking to unauthorized devices and prevents data from untrusted devices from entering the system.

デバイスはコンテンツの配布を、デバイスが予め認証に成功している他のデバイスにしか行わないことが重要である。こうすることによって、敵対者が不当なデバイスを使用してコピーを無権限に作ってしまうことが不可能になる。デバイスがそれ自身の認証に成功することができるのは、権限を与えられた製造業者によりデバイスが組み立てられており、例えば、認証に成功するために必要な特定の秘密を、権限を与えられた製造業者しか知らないか、またはこれらの製造業者のデバイスに、信頼できる第三者により発行された認定が与えられている場合のみである。   It is important that the device only distributes content to other devices that the device has previously successfully authenticated. This makes it impossible for the adversary to use unauthorized devices to make unauthorized copies. A device can successfully authenticate itself when the device is assembled by an authorized manufacturer, e.g. authorized with certain secrets necessary for successful authentication Only if the manufacturer knows or the devices of these manufacturers are given a certificate issued by a trusted third party.

秘密の共有
何れの認証スキームでも、何らかのグローバルな秘密、つまり、共通情報が存在していなければならない。また、別の当事者に自らを認証させることを望んでいるいかなる当事者も、この他の当事者と共通の何らかの情報を、少なくとも持っていなくてはならない。グローバルな秘密を全てのデバイスに与えることは、理論的には可能だが、実際には薦められない。なぜならば、(例えば1つのデバイスがハッキングされることによって)グローバルな秘密が知られてしまった場合、信頼できる当事者にグローバルな秘密を最初に配布した信頼できる第三者 (TTP: Trusted Third Party) の役割を、敵対者が支配してしまうことがあり得るからである。こうして、非準拠のデバイスがシステムに入ってしまい、かつ初期システムの安全性が損なわれ、認証が無駄になってしまう。グローバルな秘密が完全に知られてしまっているので、非準拠のデバイスを検出することが不可能となってしまうであろう。
Secret Sharing In any authentication scheme, there must be some global secret, that is, common information. Also, any party that wishes to have another party authenticate himself must have at least some information in common with the other party. Giving a global secret to all devices is theoretically possible but not recommended. Because if a global secret is known (for example, because one device is hacked), a trusted third party (TTP) that first distributed the global secret to a trusted party This is because it is possible for an adversary to dominate this role. In this way, a non-compliant device enters the system, and the security of the initial system is impaired, and authentication is wasted. Since the global secret is completely known, it would be impossible to detect non-compliant devices.

このことを解決する可能な方法は、秘密の共有 (secret sharing) である。つまり、信頼できる全ての当事者が、グローバルな秘密のシェアを1つ入手するのである。このシェアにより、信頼できる当事者は他の当事者に自らを十分に認証させることができるが、(こうすることが仮にも可能な場合に)グローバルな秘密を再構築させるためには、多数のシェアが必要となる。1つのデバイスが損なわれてしまった場合、グローバルな秘密のシェアは1つしか知られることがないので、このデバイスを無効にさせるための手段を講じることができる。   A possible way to solve this is secret sharing. This means that all trusted parties get a global secret share. This share allows trusted parties to fully authenticate themselves to other parties, but in order to reestablish a global secret (if this is possible), a large number of shares Necessary. If a device is compromised, only one global secret share can be known, so steps can be taken to disable this device.

本発明は、当事者が共通の秘密を決定することを可能にする秘密共有プロトコルを用いる。その後、当事者は通常、他の当事者が秘密を知っているということを検証するであろう(以下のセクション「秘密の検証」を参照されたい)。しかしながら、当事者は、明示的に照合を行うことなく、先へ進んでもよい。例えば、秘密を暗号化鍵として用いて、他の当事者に送信される何らかの情報を暗号化することができる。他の当事者は、同じ秘密を持っていなければ、情報を復号化することはできない。この秘密は、他の当事者に暗示的に権限を与えるのである。   The present invention uses a secret sharing protocol that allows parties to determine a common secret. The party will then typically verify that the other party knows the secret (see section "Secret Verification" below). However, the parties may proceed further without explicitly verifying. For example, some information sent to other parties can be encrypted using the secret as an encryption key. Other parties cannot decrypt the information unless they have the same secret. This secret implicitly authorizes other parties.

図3は、証明者 P と、検証者 V と、信頼できる第三者 TTP とを有する、図2のシステムを一般化したものを概略的に示している。本発明によると、検証者Vは、信頼できる第三者 TTP から受信された情報を用いて、証明者 P を認証することを望む。この認証は、検証者 V が信頼に足るものであることが証明者 P にも分かるように、相互に行われることが好ましい。   FIG. 3 schematically shows a generalization of the system of FIG. 2 with prover P, verifier V, and trusted third party TTP. According to the present invention, verifier V wishes to authenticate prover P using information received from a trusted third party TTP. This authentication is preferably done mutually so that prover P knows that verifier V is trustworthy.

検証者 V を証明者 P に認証させるために必要な情報は、TTP から当事者 P と V に予め配布されていることが想定されている。この配布は、当事者 P と V と、TTP との間の通信チャネル上で行うことができる。こうすることによりプロトコルは動的になり、かつ予め配布された秘密に対する無権限のアクセスを敵対者が得てしまった場合に、情報を容易に更新することが可能となる。   It is assumed that the information necessary for authenticating the verifier V to the prover P is distributed in advance from the TTP to the parties P and V. This distribution can take place on the communication channel between parties P and V and TTP. This makes the protocol dynamic and allows the information to be easily updated if an adversary gains unauthorized access to a pre-distributed secret.

証明者 P と検証者 V を、必要な機能性を提供するチップが備えられているキャリア120のようなデバイスと、オーディオ再生デバイス105とすることができる。このような場合、TTP から証明者と検証者への通信チャネルは、おそらく存在しないことがほとんどであろう。したがって、秘密の配布は、例えば、キャリア120またはデバイス105が製造されている工場内で、予め行われなければならない。   The prover P and the verifier V can be a device such as a carrier 120 equipped with a chip that provides the necessary functionality and an audio playback device 105. In such cases, there is probably no communication channel from TTP to the prover and verifier. Thus, the secret distribution must be made in advance, for example, in the factory where the carrier 120 or device 105 is manufactured.

証明者 P は、ネットワーク・モジュール301、暗号プロセッサ302、および格納媒体303を有する。証明者 P は、ネットワーク・モジュール301を用いて、検証者 V とのデータの送受信を行うことができる。ネットワーク・モジュール301は、ネットワーク110に接続したり、または検証者Vとの直接接続(例えばワイヤレス・チャネル)を確立することができる。   The prover P has a network module 301, a cryptographic processor 302, and a storage medium 303. The prover P can send and receive data to and from the verifier V using the network module 301. The network module 301 can connect to the network 110 or establish a direct connection (eg, wireless channel) with the verifier V.

暗号プロセッサ302は、本発明による方法を実行するように構成されている。このプロセッサ302は、通常はハードウエアとソフトウエアの組み合わせとして実現されるが、ハードウエアまたはソフトウエアの内部で、例えば、ソフトウエア・モジュールまたはオブジェクトの集まりとして完全に実現させることもできる。   The cryptographic processor 302 is configured to perform the method according to the present invention. The processor 302 is typically implemented as a combination of hardware and software, but may be implemented entirely within the hardware or software, for example, as a collection of software modules or objects.

証明者 P は、例えば、多項式 P と Q の係数を格納媒体303内に格納することができるが、認証が成功した後に検証者Vに配布したい幾つかのコンテンツを保持させるために、格納媒体303を使用してもよい。更に、TTP から受信された情報を格納させるために、格納媒体303を使用してもよい。システムのセキュリティを高めるためには、個々の多項式 P と Q を格納するのではなく、積 Qq(z)Pp(y) を代わりに格納すべきである。 For example, the prover P can store the coefficients of the polynomials P and Q in the storage medium 303, but in order to hold some content that is desired to be distributed to the verifier V after successful authentication, the storage medium 303 May be used. Further, a storage medium 303 may be used to store information received from TTP. To increase system security, instead of storing the individual polynomials P and Q, the product Q q (z) P p (y) should be stored instead.

同様に、検証者Vは、ネットワーク・モジュール311と、暗号プロセッサ312と、証明者 P の格納装置に対応した機能性を有する格納装置313とを有している。検証者 V が、チップインディスクを有するキャリア120として具現化される場合、格納装置313は、何れの(光)ディスクでも利用可能な格納装置に対応してもよいが、チップインディスク上の ROM 内に格納させることが好ましい。   Similarly, the verifier V has a network module 311, a cryptographic processor 312, and a storage device 313 having functionality corresponding to the storage device of the prover P. When the verifier V is embodied as a carrier 120 having a chip-in disk, the storage device 313 may correspond to a storage device that can use any (optical) disk, but the ROM on the chip-in disk It is preferable to store it in the inside.

さらに、証明者 P と検証者 V には、暗号的に強い疑似乱数を提供する、(ハードウエアおよび/またはソフトウエア内の)擬似乱数生成器304、314を設けてもよい。これらの疑似乱数は、本発明による方法の好ましい実施例で用いられる。次に、証明者 P を検証者 V に認証させる幾つかの実施例を、図4と図5を参照しながら説明する。   Further, the prover P and the verifier V may be provided with pseudorandom number generators 304 and 314 (in hardware and / or software) that provide cryptographically strong pseudorandom numbers. These pseudo-random numbers are used in the preferred embodiment of the method according to the invention. Next, several embodiments for authenticating the prover P to the verifier V will be described with reference to FIGS. 4 and 5. FIG.

2つの対称多項式を用いて共通の秘密を生成する
図4は、本発明の好ましい一実施例による、各々2変数の2つの対称多項式に基づいた秘密共有プロトコルを示している。当事者により行われる設定とステップの部分は、図1を参照して既に説明済みなので、ここでは繰り返さない。
Generating a Common Secret Using Two Symmetric Polynomials FIG. 4 illustrates a secret sharing protocol based on two symmetric polynomials, each with two variables, according to a preferred embodiment of the present invention. The settings and steps performed by the parties have already been described with reference to FIG. 1 and will not be repeated here.

対称多項式 P は、対称多項式 Q(x, z)(例えば、
)により乗算される。多項式 P の pi を固定させることに加えて、今度は同様に多項式 Q も qi を固定させる。次に証明者は、p1 が固定されている多項式 P ではなく、還元された多項式の積、
および値 p1 と q1 を、TTP から受信する。同様に、検証者は、p2 が固定されている多項式Pではなく、還元された多項式の積、
および値 p2 と q2 を受信する。証明者と検証者は、これらの多項式を、これらの係数の形態、
で格納することが好ましい。
The symmetric polynomial P is the symmetric polynomial Q (x, z) (for example,
). In addition to fixing p i of the polynomial P, this time also fixes q i to the polynomial Q as well. Next, the prover is not a polynomial P with p 1 fixed, but a product of reduced polynomials,
And the values p 1 and q 1 are received from the TTP. Similarly, the verifier is not a polynomial P with p 2 fixed, but a product of reduced polynomials,
And the values p 2 and q 2 are received. Prover and verifier use these polynomials in the form of these coefficients,
It is preferable to store in.

値 q1 と q2 は、最初に TTP によって、乱因子
により乗算されることが好ましい。こうして、証明者および/または検証者を具現化しているデバイスに対する無権限のアクセスを得てしまう可能性がある敵対者に対して、値 q1 と q2 が機密になるので、敵対者が権限のあるデバイスとして通用してしまうことがなくなる。
The values q 1 and q 2 are determined by the TTP
Is preferably multiplied by. In this way, the values q 1 and q 2 are confidential to the adversary who may gain unauthorized access to the device embodying the prover and / or verifier, so the adversary has authority. It will no longer be accepted as a device with

上記の内容から、下式が成り立つ。
この式は、実際の値 q を隠すためにブラインド化因子
が用いられている場合でも、証明者と検証者は、これらが持っている要素 pi と qi、および証明者と検証者が他の当事者から受信した要素 pi と qi を用いて、共通の秘密を多項式 P と Q の積として生成できるということを示している。
From the above contents, the following equation holds.
This formula uses a blinding factor to hide the actual value q
Even if the are used, the prover and the verifier uses the elements p i and q i which has received these have elements p i and q i, and the prover and verifier from another party, It shows that a common secret can be generated as a product of polynomials P and Q.

ここで、pi の値の数を n 以下に限定してしまうと、多項式 P と Q の係数を取り出すことができなくなってしまう。システム全体での qi の値の数は、Blom のシステムの場合と同様、多項式 P の次数により限定されてしまうことはなく、Q の領域内の可能な要素 qi によって限定されるだけである。こうすることにより、十分な数の値 qi によってグローバルな秘密の独自のシェア、全ての当事者に供給することが可能となる。 Here, if the number of values of p i is limited to n or less, the coefficients of the polynomials P and Q cannot be extracted. The number of values of q i in the entire system is not limited by the degree of the polynomial P, as in the Blom system, but only by the possible elements q i in the domain of Q . In this way, a sufficient number of values q i makes it possible to supply a unique share of global secrets to all parties.

当事者 P と V は、多項式 P と Q との積、および値 pi と qi (または
)
を受信すると、図4に示されているように、共通の秘密の生成を試みる。両方の当事者は、それらの pi と qi(または
)の値を交換し、かつそれらの各々の秘密 S1 と S2 を算出する。当事者 P と V は、各々の乱数 r1 と r2 を最初に生成することが好ましい。次に、当事者 P と V は、

を各々算出し、かつ値 q1 と q2 自体ではなく、

の積を交換する。こうすることには幾つかの利点がある。これらの利点の内、乱数 r1 と r2 が q1 と q2 の値を隠すことによって、盗聴者または非準拠のデバイスが、q1とq2に関して何かを知ってしまうことが非常に困難となる、という事実が挙げられる。さらに、当事者の一方(例えば、証明者 P)が、その秘密 S1 を、
として計算することが可能になる。
The parties P and V are the products of the polynomials P and Q and the values p i and q i (or
)
, It will attempt to generate a common secret, as shown in FIG. Both parties have their p i and q i (or
) And calculate their respective secrets S 1 and S 2 . Parties P and V preferably generate their respective random numbers r 1 and r 2 first. Next, parties P and V
When
, And the values q 1 and q 2 themselves,
When
Exchange the product of There are several advantages to doing this. Among these benefits, the random numbers r 1 and r 2 hide the values of q 1 and q 2 , which can make it possible for an eavesdropper or non-compliant device to know something about q 1 and q 2. The fact that it will be difficult. In addition, one of the parties (for example, prover P) has the secret S 1
Can be calculated as

本システムの更なる改良点は、両当事者が、計算された秘密 S1 と S2 に非線形関数を適用した後に、この秘密を秘密鍵として用いることにより、達成することができる。この非線形関数は、一方向ハッシュ関数として実施することが好ましいが、多項式の形態を取ることもできる。 A further improvement of the system can be achieved by both parties applying a non-linear function to the calculated secrets S 1 and S 2 and then using this secret as the secret key. This non-linear function is preferably implemented as a one-way hash function, but can also take the form of a polynomial.

限定された対称多項式を用いて共通の秘密を生成する
図5は、多項式 P が限られた数の点でしか対称でない、図4のプロトコルに基づいた変種を示している。多項式 P は、対称行列 T に基づいていており、かつ多項式 P(x, y) が、P の領域内の全ての x と y の値に対して対称であることを示すことができる。しかしながら、n 個を超える異なる値 pi が用いられる場合、敵対者が行列 T を再構築することが理論的には可能となる。したがって、多項式 P は、
個の値 p1, …, pm (
) でしか対称とならない必要がある。限られた数の点でしか対称でない多項式を組み立てる方法を説明するために、最初に幾つかの定義を提示する。
Generating a common secret using a limited symmetric polynomial FIG. 5 shows a variant based on the protocol of FIG. 4 where the polynomial P is symmetric only in a limited number of points. It can be shown that the polynomial P is based on the symmetric matrix T and that the polynomial P (x, y) is symmetric with respect to all x and y values in the domain of P. However, if more than n different values p i are used, it is theoretically possible for an adversary to reconstruct the matrix T. Therefore, the polynomial P is
Values p 1 ,…, p m (
) Must be symmetrical only. To illustrate how to construct a polynomial that is symmetric only at a limited number of points, some definitions are first presented.

2つの n 次ベクトル

の内積は、
により与えられる。

とのテンソル積
は、
により与えられる。
Two n-order vectors
When
The inner product of
Given by.
When
Tensor product with
Is
Given by.

長さがn+1のバンデルモンド・ベクトル
は、
により与えられる p に関連付けられる。特に明言しない限り、全てのバンデルモンド・ベクトルは、長さが n + 1 である。また、表記を容易にするために、下付きの n は省略する。
である別個の値のサブセット {p1, …, pm} が与えられると、バンデルモンド・ベクトル
が形成される。これらの
個のベクトルは、線形独立である。したがって、これらのベクトルは、サブ空間
の基底ベクトルである。
N + 1 Vandermonde vector of length
Is
Associated with p given by. Unless otherwise stated, all Vandermonde vectors are n + 1 in length. For ease of notation, the subscript n is omitted.
Given a distinct subset of values {p 1 ,…, p m }, the Vandermonde vector
Is formed. these
The vectors are linearly independent. Thus these vectors are subspaces
Basis vectors.

次に、
に対する可能な全てのテンソル積
を考える。テンソル算法からは、これらの
個のテンソル積がテンソル空間
の基底を形成することが知られている。全てのベクトル
に対して、下式が成り立つ。
next,
All possible tensor products for
think of. From the tensor algorithm, these
Tensor product is tensor space
It is known to form the basis of All vectors
On the other hand, the following equation holds.

上記の定義を用いて多項式 P(x, y) を内積として書き直すと、下式が得られる。
式中、
は、ベクトル (t00, …, t0n, t10, …, tnn) を表している。すなわち、
は、行列 T のエントリを含んでいる。P は、その書き直された形態でも対称のままである。
Rewriting the polynomial P (x, y) as an inner product using the above definition yields the following equation.
Where
Represents a vector (t 00 , ..., t 0n , t 10 , ..., t nn ). That is,
Contains entries for the matrix T. P remains symmetric in its rewritten form.

次に、
個の別個要素 p1, …, pm を選択する。これらの要素を用いてバンデルモンド・ベクトル
を組み立て、かつこれらのバンデルモンド・ベクトルから、テンソル積
を組み立てる。次に、上述したように空間
の垂直空間
からベクトル
を選択する。次に、多項式 P の書き直された形態は、好ましいセット {p1, …, pm} から選択された点で評価することができる。ベクトル
はベクトル
に加算可能であり、かつ
であることから、下式が得られる。
next,
Select the discrete elements p 1 ,…, p m . Vandermonde vector using these elements
And the tensor product from these Vandermonde vectors
Assemble. Next, space as described above
Vertical space
Vector from
Select. The rewritten form of the polynomial P can then be evaluated at points selected from the preferred set {p 1 ,..., P m }. vector
Is a vector
Can be added to and
Therefore, the following formula is obtained.

換言すれば、ベクトル
から、行列、
を導出し、かつこの行列
を行列 T に加算した場合、好ましいセット内の全ての pi と pj には、依然として P(pi, pj) = P(pj, pi) が成り立つ。
In other words, a vector
From the matrix,
And this matrix
Is added to the matrix T, P (pi, pj) = P (pj, pi) still holds for all p i and p j in the preferred set.

TTP は上記の所見を用いて、以下の動作を行うことによりシステムを設定する。
1. TTP は、(n+1)×(n+1) の対称行列 T をランダムに選択し、かつ任意値
を選択することが好ましい。
2. TTP は、
個の別個の要素 p1, …, pm (
) をランダムに選択する。
3. TTP は、テンソル積
から、空間
を計算する。
4. TTP は、
個の要素 p1, …, pm から、最初の
個の要素を選択することが好ましい。こうして、システムの更新が可能となる(以下のセクション「更新可能性」で説明する)。
TTP uses the above findings to set up the system by performing the following actions:
1. TTP randomly selects (n + 1) × (n + 1) symmetric matrix T and chooses an arbitrary value.
Is preferably selected.
2. TTP is
Separate elements p 1 ,…, p m (
) At random.
3. TTP is the tensor product
From the space
Calculate
4. TTP
From the elements p 1 ,…, p m
It is preferable to select individual elements. In this way, the system can be updated (described in the section “Updating Possibility” below).

TTP は、次にデバイスを発行することができる。つまり、TTP が、グローバルな秘密のシェアをデバイスに提供すると、これらのデバイスは、グローバルな秘密のシェアを有する他のデバイスに自らを(相互に)認証させることができるようになる。このようなデバイスは、多くの場合、認定されたデバイス、または権限のあるデバイスと呼ばれる。認定済みのデバイスは、他の認定済みのデバイスとの相互認証に次いで、無権限のデバイスを検出することができる。この検出は通常、このデバイスの認証が失敗することによって行うことができる。   The TTP can then issue the device. That is, when TTP provides global secret shares to devices, these devices can authenticate themselves (mutually) to other devices that have global secret shares. Such devices are often referred to as certified devices or authorized devices. Authorized devices can detect unauthorized devices following mutual authentication with other certified devices. This detection can usually be done by failure of authentication of this device.

デバイスを発行するために、TTP は以下のステップを行う。
1. TTP は、デバイス
に対して、
をランダムに選択し、かつ
個の要素 p1, …, pm を有するセットから、好ましくは
個の要素を有する選択されたサブセットから、pi をランダムに選択する。
2. TTP は、
から行列
を生成し、かつ行列
を形成する
3. TTP は、
から2変数の多項式 P(x, y) を組み立て、かつ
と表現することができる一変数の多項式 P(pi, y) の係数を計算する。
4. TTP は、値pi,
とベクトル
を、デバイス
に配布する。
To issue a device, TTP performs the following steps:
1. TTP is a device
Against
Choose at random, and
From a set with p elements p 1 ,…, p m , preferably
Randomly select p i from the selected subset with i elements.
2. TTP is
Matrix from
And a matrix
Form
3. TTP is
Construct a two-variable polynomial P (x, y) from
The coefficient of a univariate polynomial P (p i , y) that can be expressed as
4. TTP has the value p i ,
And vector
The device
Distribute to

当事者 P と V は、これらの各々の情報を受信すると、図5に示されているように、次はそれらの値 pi
を交換し、かつ P と V の各々の秘密 S1 と S2 を下式のように生成する。
When parties P and V receive each of these pieces of information, the next is their values p i and
And secrets S 1 and S 2 of P and V are generated as follows:

S1=S2 であれば、これらの当事者は共通の秘密を生成済みである。これらの当事者は、他の当事者も秘密を知っているということを暗示的に結論付けるか、または他の当事者が同じ秘密を知っているということを明示的に検証することができる。この点に関しては、下記の「秘密の検証」で説明する。 If S 1 = S 2 , these parties have generated a common secret. These parties can implicitly conclude that other parties also know the secret, or can explicitly verify that the other party knows the same secret. This will be described in “Secret Verification” below.

更新可能性
更新可能性は、システム100のようなシステム向けの、いかなる認証スキームまたはいかなる共通鍵生成スキームの重要な側面である。TTP は、元の秘密への無権限のアクセスを得てしまった敵を撃退するために、デバイス101〜105内に組み込まれている秘密を周期的に交換させることを望む場合がある。
Updatability Updatability is an important aspect of any authentication scheme or any common key generation scheme for systems such as system 100. The TTP may wish to have the secrets embedded in the devices 101-105 periodically exchanged in order to repel enemies that have gained unauthorized access to the original secret.

図5に示されている実施例を用いて、前のセクションで説明した属性を利用することにより、システム100に更新可能性を導入することができる。最初に、TTPは、
(
) が空間
に広がるように、要素 p1, …, pm (
) のみを用いてデバイスを発行する。しかしながら、行列
は、
から導出された
を用いる。デバイス
内に格納されている多項式を
と表した場合、このデバイスには対
が含まれる。
Using the embodiment shown in FIG. 5, updatability can be introduced into the system 100 by utilizing the attributes described in the previous section. First, TTP
(
) Is space
Elements p 1 ,…, p m (
) Use only to issue a device. However, the matrix
Is
Derived from
Is used. device
The polynomial stored in
The device is not compatible with this device.
Is included.

ここで、敵が
個の要素 pi と、更に何らかのデバイス多項式
とを、例えば、デバイスを破り開けることによって、どうにか取り出すことができたと想定する。これで敵は、新たなベクトル
を生成し、かつ
を含むデバイスを発行することが可能となった。これらのデバイスは、値 p1, …, pm の内の1つを含む準拠する全てのデバイスと協働してしまうであろう。すなわち、敵のデバイスは、準拠デバイスから
を受信し、かつ、
と評価し、かつ第二当事者は、
と評価する。この式は、両方の評価が等しいことを示している。
Where the enemy
Elements p i and some device polynomial
For example, it is assumed that the device can be removed by breaking the device. Now the enemy is a new vector
And
It became possible to issue devices including These devices will work with all compliant devices that contain one of the values p 1 ,..., P m . That is, the enemy device is
And
And the second party
And evaluate. This equation shows that both evaluations are equal.

これらのようなデバイスが敵により発行されているということに TTP が気づいた場合、TTPは、
のテンソル積が空間
に広がるように、
(
)
を用いてデバイスを発行し始めることができる。
であることに留意されたい。したがって、敵が
と選択してしまっている場合、これらの新たなデバイスは、敵のデバイスと協働してしまうであろう。

内でランダムに選択されていれば、

内にも存在してしまう確率は非常に僅かとなる。
If TTP notices that a device like these has been issued by an enemy,
Tensor product of is space
To spread
(
)
Can be used to start issuing devices.
Please note that. Therefore, the enemy
These new devices will collaborate with enemy devices.
But
If selected at random,
But
There is very little probability that it will also exist within.

このことによって、システムには、ある程度の更新可能性が与えられる。つまり、TTP により発行された新たな準拠デバイスが敵のデバイスと協働しない確率は、非常に高くなる。システムを更新させることができる最大回数は、
(nは多項式Pの次数)である。この回数は、更新毎に、
の値が1つ加算されると、発生する。
This gives the system some degree of updatability. In other words, the probability that a new compliant device issued by TTP will not work with an enemy device is very high. The maximum number of times a system can be updated is
(N is the degree of the polynomial P). This number is
Occurs when one of the values is added.

秘密の検証
当事者の各々が秘密を独立して生成した後、プロトコルの次のステップは、他の当事者が秘密を知っているということを検証することである。当事者の内の一者は、自分が秘密を知っていることを他の当事者に証明可能であれば、他の当事者に認証される。更に、他の当事者が同様に自らを第一当事者に認証させて、相互認証を達成してもよい。
Secret Verification After each party independently generates a secret, the next step in the protocol is to verify that the other party knows the secret. One of the parties is authenticated to the other party if it can prove to the other party that he knows the secret. In addition, other parties may similarly authenticate themselves to the first party to achieve mutual authentication.

検証者は、証明者が秘密を知っているということを検証したら、次に秘密 S1 を用いて、何らかの情報を証明者に安全に通信させることができる。例えば、暗号化されているコンテンツにアクセスするために必要な暗号化鍵を、S1 により暗号化することができる。この暗号化の結果は、証明者に伝送可能である。今度は証明者が、S2(これが S1 に等しいということは、検証が成功したことにより証明済みである)を用いてこの暗号化鍵を回復させ、次いで暗号化されているコンテンツを復号化させ、かつこのコンテンツにアクセスすることができる。 Once the verifier verifies that the prover knows the secret, the verifier can then use the secret S 1 to securely communicate some information to the prover. For example, an encryption key necessary for accessing encrypted content can be encrypted by S 1 . The result of this encryption can be transmitted to the prover. Now prover, S 2 (that this is equal to S 1 is proven and is by the validation is successful) decrypts using to recover the encryption key, then it is encrypted content And access to this content.

上記のように生成された秘密を一当事者が知っているということを検証する方法は、幾つかある。好ましい2つの実施例は、ゼロ知識プロトコルとコミットメントに基づいたプロトコルとに基づいている。   There are several ways to verify that one party knows the secret generated as described above. The two preferred embodiments are based on a zero knowledge protocol and a commitment based protocol.

ゼロ知識に基づいた検証
最初に、ゼロ知識(ZK: zero-knowledge)プロトコルに基づいた検証について説明する。ZKプロトコルは、A. Menezes、P. van Oorschot、および S. van Stone による、「応用暗号学の手引き (Handbook of Applied Cryptography)」(CRC Press、405〜416頁、1996年)で論じられている。好ましい一実施例では、メモリ要件と通信の点で効率的であるという理由から、(GQ: Guillou-Quisquater) ゼロ知識プロトコルが用いられている。GQ プロトコルは、本出願と同一の代理人による、米国特許第 140,634 号(社内整理番号 PHQ 87030)から知られている。
Verification Based on Zero Knowledge First, verification based on the zero-knowledge (ZK) protocol will be described. The ZK protocol is discussed in A. Menezes, P. van Oorschot, and S. van Stone in the "Handbook of Applied Cryptography" (CRC Press, pages 405-416, 1996). . In a preferred embodiment, the (GQ: Guillou-Quisquater) zero knowledge protocol is used because it is efficient in terms of memory requirements and communication. The GQ protocol is known from U.S. Pat. No. 140,634 (internal number PHQ 87030) by the same agent as the present application.

図4と図5を参照して上述したように、当事者 P と V の両者は、それらの多項式を評価し、かつこうして値 S1 と S2 を各々得ている。次に、何れかの当事者は、自分が S1 を知っているということを、他方の当事者にZKで証明しなければならない。GQ プロトコルは公開鍵暗号法に基づいているので、2つの素数 p と q の積である合成数
、および
となるような数
が必要である。
As described above with reference to FIGS. 4 and 5, both parties P and V evaluate their polynomials and thus obtain the values S 1 and S 2 , respectively. Then, either party may that he knows the S 1, it shall be proved in ZK to the other party. Since the GQ protocol is based on public key cryptography, a composite number that is the product of two prime numbers p and q
,and
Number to be
is required.

Pは、

乗根を知っているということを V に証明する。図6には、GQ プロトコルが示されている。ここで、値

は公開されている。このプロトコルは、以下のステップにしたがって進行する。
1. V が、
を計算するステップ。
2. P が、乱数
を選択し、かつ re を V に送信するステップ。
3. V が、ランダムなチャレンジ
を選択し、かつ c を P に送信するステップ。
4. P が、
によって応答するステップ。
5. V が、ye を算出し、かつ、
である場合のみ、(この式が S1=S2 であることを示しているので)P は V と同じ秘密を知っていると結論付けるステップ。
P is
of
Prove to V that you know the root. FIG. 6 shows the GQ protocol. Where the value
When
Is open to the public. This protocol proceeds according to the following steps.
1. V is
Calculating step.
2. P is a random number
And sending r e to V.
3. V is a random challenge
And sending c to P.
4. P is
To respond by.
5. V calculates y e and
A step that concludes that P knows the same secret as V (since this equation shows that S 1 = S 2 ) only if.

GQ プロトコルの ZK 属性のため、V も盗聴者も、P の秘密 S1 に関する何かを知ることはない。P が V により承認されると直ちに、P と V の役割は入れ替わり、かつ V は、

乗根を知っているということを、P に示すであろう。このようにして、P と V は相互認証される。
Because of ZK attributes of GQ protocol, V also eavesdropper also, it is not to know something about the secret S 1 of the P. As soon as P is approved by V, the roles of P and V are swapped, and V
of
You will show P that you know the root. In this way, P and V are mutually authenticated.

このプロトコルの設定は、上述文献の記述内容とは多少異なる。すなわち、通常は、
が公表され、かつ P がチャレンジ
を予期した場合、P は第一メッセージとして
を送信し、かつ S2 を知らなくても、依然として、V による承認を受けることができる。適切なチャレンジを選択する確率は、e-1 である。現在の設定では、
を公表する必要はない。このことによって、予期されたチャレンジから P が
を計算することは不可能となり、かつこのことによって、不当な承認が行われてしまう確率が
に低減される。したがって、
を 2 程度の低さに選択して、エラー確率は
のまま GQ を Fiat-Shamir プロトコルに有効に変換することが、1ラウンドで可能となる。このことは、デバイスがモジュラ指数化を、例えば RSA とは対照的に、小さな指数で行えばよいことを意味する。
This protocol setting is slightly different from the contents described in the above document. That is, usually
Published and P challenged
P is the first message
To send, and even without knowing the S 2, still, it can be subject to approval by the V. The probability of selecting an appropriate challenge is e- 1 . With the current settings,
Need not be published. This allows P from the expected challenge
It is impossible to calculate and there is a probability that this will result in unauthorized authorization.
Reduced to Therefore,
Is as low as 2 and the error probability is
It is possible to convert GQ to Fiat-Shamir protocol effectively in one round. This means that the device should perform modular indexing with a small index, for example, as opposed to RSA.

これをより効率的なものにさせるには、Montgomery の表現法を用いた実施態様を考えてもよい(P.L.Montgomeryの「試行除算を用いないモジュラ乗算 (Modular multiplication without trial division)」(Mathematics of Computation, 第44巻、第170番、519〜521頁、1985年4月)を参照されたい)。   To make this more efficient, you may consider an implementation using Montgomery's representation (PLMontgomery's “Modular multiplication without trial division” (Mathematics of Computation , 44, 170, 519-521, April 1985)).

コミットメントに基づいた検証
ZK プロトコルに代えて、コミットメントに基づいたプロトコルを用いて、一方の当事者は、他の当事者が秘密を知っているということを検証することができる。このアプローチの利点の1つは、非常に効率的に実施可能な対称鍵暗号法が利用可能であることである。
Verification based on commitment
Using a commitment based protocol instead of the ZK protocol, one party can verify that the other party knows the secret. One advantage of this approach is that symmetric key cryptography is available that can be implemented very efficiently.

前の状況とは対照的に、当事者 P と V の両方が検証者と証明者の役割を同時に果たすので、このことによりプロトコルの通信が効率的になる。前記のように、 P は S1 を算出し、かつ V は S2 を算出する。このプロトコル(図7を参照されたい)は、以下のステップを行う。
1. V が、対称暗号のブロック長にマッチングした長さの乱数
を選択するステップ。
2. V が、S2 を鍵とした対称暗号を用いて
を暗号化し、かつこの暗号化されたもの ES2(r) を P に送信するステップ。
3. Pが、このメッセージを S1 を用いて復号化し、
を得るステップ。
4. P が、乱数
を選択し、かつ
へのコミットメントを V に送信するステップ。このコミットメントは、以下に説明する関数
として得られる。
5. Vが、
を P に送信し、かつ P が、
であるか否かを照合し、
でない場合は、V との更なる通信を停止させるステップ。
6. P が、

を V に送信するステップ。V は、このコミットメントを開き、かつ
であるか否かを照合し、かつこの照合が満たされない場合は、P との更なる通信を停止させる。
In contrast to the previous situation, this makes protocol communication efficient because both parties P and V play the roles of verifier and prover simultaneously. As before, P calculates S 1 and V calculates S 2 . This protocol (see FIG. 7) performs the following steps:
1. V is a random number whose length matches the block length of the symmetric cipher
Step to choose.
2. V uses a symmetric cipher with S 2 as the key.
And sending this encrypted E S2 (r) to P.
3. P decrypts this message using S 1 and
Get the step.
4. P is a random number
And select
To send a commitment to V to V. This commitment is a function described below
As obtained.
5. V
To P, and P
And whether or not
If not, stop further communication with V.
6. P is
When
To send V to V. V opens this commitment and
If this verification is not satisfied, further communication with P is stopped.

関数は、コミットメントの結合属性と隠れ属性を実施する必要がある。結合とは、コミットメント内の値
を変える、P の能力のことである。
となるような値
を P が見つけることは、困難または不可能でなければならない。隠れ属性とは、
の受信後に
に関する情報を得る、Vの能力のことである。実際には、暗号ハッシュ関数つまり一方向関数が
関数として用いられることが多い。
The function needs to enforce the binding and hidden attributes of commitment. A join is a value within a commitment
It is P's ability to change.
A value such that
It must be difficult or impossible for P to find. What are hidden attributes?
After receiving
V's ability to get information about. In practice, the cryptographic hash function or one-way function
Often used as a function.

この設定では、
を暗号化するために用いられる対称暗号は、
関数として用いることもできる。隠れ属性が満たされることは自明である。なぜならば、V は、ランダムに選択された R に関する知識がなければ、V の算出パワー量とは無関係に、
に関する情報を得ることはできないからである。したがって、コミットメントは、無条件に隠れている。対称暗号の場合には、EK(x) = z は K の一方向関数(xとzは既知)であることが知られており、つまり、

が与えられても、
となるような値
を、255 回未満の演算で見つけ出す方法は分からない、という事実から、結合属性は成り立っている。したがって、コミットメントは、算出を行うことにより結合される。
With this setting,
The symmetric cipher used to encrypt is
It can also be used as a function. It is self-evident that hidden attributes are satisfied. Because V has no knowledge of R chosen at random, regardless of the calculated power of V,
It is because the information regarding can not be obtained. Therefore, commitment is hidden unconditionally. In the case of symmetric cryptography, E K (x) = z is known to be a one-way function of K (x and z are known), that is,
When
Is given,
A value such that
And I do not know how to find in the calculation of less than 2 55 times, from the fact that, coupled attribute is made up. Thus, commitments are combined by making calculations.

次に、プロトコルの完全性と安定性について考える。完全性とは、両当事者が、プロトコルを正確に実行し、かつ
である場合のことである。したがって、両当事者は、対称暗号の精査と対称属性とにより、
のときは
であることを見出すであろう。
Next, consider the integrity and stability of the protocol. Integrity means that both parties execute the protocol correctly, and
This is the case. Therefore, both parties can scrutinize symmetric cryptography and
When
You will find that.

安定性とは、P が S1 を知らないか、または V が S2 を知らない場合に、相互に承認してしまう状況に関する。P は、承認を不当に受けるために、V へのコミットメントとしてどのような値 z でも送信することができる。P は、V から
を受信した後、
となるような値
を見つけなければならない。上述したように、
は、
を見つけ出すことを困難な問題にさせる、与えられた x と z に対する K の一方向関数である。
Stability refers to the situation in which P approves each other if P doesn't know S 1 or V doesn't know S 2 . P can send any value z as a commitment to V for unfair approval. P is from V
After receiving
A value such that
Must find. As mentioned above,
Is
Is a one-way function of K for a given x and z that makes finding a difficult problem.

同様に、V は、S2 を知らない場合、P に対してどのような値 z でも選択することができる。P は、ER(DS2(z)) によって応答するであろう。V は、承認されるためには、DS2(z) を得なければならない。このことは、コミットメントがランダムな値
によって無条件に隠れているので、非常に困難である。偶然に S1 が弱い DES 暗号化鍵である場合、V は、DS1(z) = z となるような z を選択すれば、承認されてしまうであろう。弱い鍵の場合、このような定点は 232 個あり、かつ P により不当に承認されてしまう確率は、232/264 = 2-32 である。
Similarly, V is, if you do not know the S 2, may be selected in any such value z against P. P will respond by E R (D S2 (z)). V must obtain D S2 (z) to be approved. This means that the commitment is a random value
It is very difficult to hide unconditionally. If S 1 happens to be a weak DES encryption key, V would be accepted if we choose z such that D S1 (z) = z. For weak keys, the probability of such a fixed point is 2 32, and thus is unduly approved by P is 2 32/2 64 = 2 -32.

本発明の幾つかの利点
本発明の方法により、本発明が実行されるデバイス内で必要なエネルギー(パワー)を相当節約すること、および RSA に基づいた認証と比較して処理時間を実質的に節約することが達成される。
Several advantages of the present invention The method of the present invention saves considerable energy (power) in the device in which the present invention is implemented, and substantially reduces processing time compared to authentication based on RSA. Savings are achieved.

一般に、パワー消費は、実施態様のアーキテクチャに依存する。例えば、このアーキテクチャを変化させて、クロック・スピードとパワー消費をトレードすることができる。第二の重要な要因は、用いられる技術である。つまり、最小特徴サイズが小さく、かつ供給電圧が低い最新技術は、一般に、古い技術よりも余りパワーを必要としないであろう。   In general, power consumption depends on the architecture of the implementation. For example, this architecture can be changed to trade clock speed and power consumption. The second important factor is the technology used. That is, state-of-the-art technologies that have a small minimum feature size and a low supply voltage will generally require less power than older technologies.

以下の表は、各プロトコルの異なる部分に必要な作用力の推定値を、n(多項式の次数)、k(値のビット長)、l(GQ モジュラスのビット長)、および h(RSA モジュラスのビット長)で記したものである。この推定された作用力は、単精度乗算(つまり、2ビットの乗算を、2つの k ビットの数を乗算させることで行うこと)で表現されている。
The table below gives estimates of the force required for different parts of each protocol: n (degree of polynomial), k (bit length of value), l (bit length of GQ modulus), and h (RSA modulus (Bit length). This estimated force is expressed by single-precision multiplication (that is, performing a 2-bit multiplication by multiplying two k-bit numbers).

以下の表は、n、k、l、およびhの幾つかの値の場合ごとにサブプロトコルが必要とするエネルギーの推定値(ジュール)、および0.5 mWのパワーを利用できるチップインディスク・アプリケーションに本発明が用いられた場合の処理時間量を示している。
The table below shows the estimated energy (in joules) required by the sub-protocol for several values of n, k, l, and h, and chip-in-disk applications that can utilize 0.5 mW of power. The amount of processing time when the present invention is used is shown.

上記の値は、単精度乗算毎に必要となるエネルギーの推定値に基づいていることに留意すべきである。実エネルギーは、選択されたアーキテクチャ、レイアウト、設計プロセスでの最適化目標(例えば、パワーまたはスピード)などに依存する。それでもやはり、上記の表内のデータは、異なるプロトコルに必要なエネルギー比に対する見識を与えてくれる。最後の列では、次数が2048の多項式と、64ビットの値の場合でさえ、新たなプロトコルの方がRSAよりも30〜100倍効率的であることが分かる。   It should be noted that the above values are based on an estimate of the energy required for each single precision multiplication. Real energy depends on the selected architecture, layout, optimization goals (eg, power or speed), etc. in the design process. Nevertheless, the data in the table above gives insight into the energy ratios required for different protocols. In the last column, we can see that the new protocol is 30 to 100 times more efficient than RSA, even for polynomials of order 2048 and 64-bit values.

最大 0.5 mW のパワーが利用可能な CID の特殊な場合、RSA プロトコルには約1秒必要だが、対称多項式に基づいたプロトコルには、多くても 52 ms だけ必要となることが導き出せる。   It can be derived that in the special case of a CID where a maximum of 0.5 mW of power is available, the RSA protocol requires approximately 1 second, whereas a protocol based on a symmetric polynomial requires only 52 ms at most.

上述の実施例は、本発明を限定しているのではなく例示しているのであり、かつ当業者は、添付の請求の範囲の範囲内で、代替実施例を多数設計できることに留意すべきである。上記では、コンテンツ保護とデジタル権利管理との関連で認証方法が詳述されているが、本発明は、勿論、この関連事項には制限されない。   It should be noted that the embodiments described above illustrate rather than limit the invention, and that those skilled in the art can design many alternative embodiments within the scope of the appended claims. is there. In the above, the authentication method is described in detail in relation to content protection and digital rights management. However, the present invention is not limited to this related matter, of course.

本発明は、特に、パワー消費量が低いことが重要な場合に、コンポーネントおよび/またはデバイスのいかなる対の間でのインタフェースで認証を行うためのユニバーサルな組み立てブロックとして考えることができる。したがって、本発明は、例えば、CD2内、セット・トップ・ボックス内、ワイヤレス・スマートカード内、有線ネットワークまたはワイヤレス・ネットワークなどにも適用可能である。本発明は、人間である検証者が人間である証明者を、各々に相互接続された2つのデバイスを用いて認証する必要がある場合にも有効である。   The present invention can be thought of as a universal building block for authenticating at the interface between any pair of components and / or devices, particularly where low power consumption is important. Therefore, the present invention is also applicable to, for example, CD2, set top box, wireless smart card, wired network, or wireless network. The present invention is also effective when a human verifier needs to authenticate a human prover using two devices interconnected to each other.

上記で、「乱数」または「任意に選択された数」という用語が用いられている場合、これには、真にランダムなイベントから導出されたシード値を用いてまたは用いずに、ハードウエアおよび/またはソフトウエア内で実施される擬似乱数生成器を使用して選択された数が含まれていることが明らかとなるであろう。本方法のセキュリティは、擬似乱数生成器の品質に依存するところが大きい。   Where the terms “random number” or “arbitrarily selected number” are used above, this includes hardware and with or without seed values derived from truly random events. It will be apparent that a number selected using a pseudo-random number generator implemented in software is included. The security of this method largely depends on the quality of the pseudorandom number generator.

請求項では、括弧間に配置されている何れの引用符号も、請求項を限定するものと解釈してはならない。「有する」という語は、請求項に列挙されているもの以外の要素またはステップの存在を除外するものではない。ある要素の前にある語「1つの」という語は、そのような要素が複数存在することを除外するものではない。本発明は、幾つかの個別要素を有するハードウエアと、最適にプログラムされたコンピュータとにより実施可能である。   In the claims, any reference signs placed between parentheses shall not be construed as limiting the claim. The word “comprising” does not exclude the presence of elements or steps other than those listed in a claim. The word “one” preceding an element does not exclude the presence of a plurality of such elements. The present invention can be implemented with hardware having several individual elements and an optimally programmed computer.

幾つかの手段を列挙しているデバイス請求項では、これらの手段の幾つかを、全く同一ハードウエア品目により具現化させることができる。特定の手段が相互に異なる従属クレーム内に詳述されているという単なる事実は、これらの手段の組み合わせを有利に用いることができないことを示している訳ではない。   In the device claim enumerating several means, several of these means can be embodied by one and the same item of hardware. The mere fact that certain measures are recited in mutually different dependent claims does not indicate that a combination of these measured cannot be used to advantage.

Blom による2変数の対称多項式に基づいた秘密共有プロトコルを示す。A secret sharing protocol based on a two-variable symmetric polynomial by Blom is shown. 本発明にしたがって動作するように構成されている、ネットワークを介して相互接続されているデバイスを有するシステムを、概略的に示す。1 schematically illustrates a system having devices interconnected via a network configured to operate in accordance with the present invention. 証明者、検証者、および信頼できる第三者を有する、図2のシステムを一般化したものを概略的に示す。FIG. 3 schematically shows a generalization of the system of FIG. 2 with a prover, verifier, and a trusted third party. 各々2変数の2つの対称多項式に基づいた、証明者と検証者との間の秘密共有プロトコルを示す。A secret sharing protocol between the prover and verifier is shown, based on two symmetric polynomials, each with two variables. 2つの多項式が限られた数の点でしか対称でない、図4のプロトコルに基づいた変種を示す。Fig. 5 shows a variant based on the protocol of Fig. 4 in which the two polynomials are symmetric only at a limited number of points. Guillou-Quisquater プロトコルを示す。Indicates the Guillou-Quisquater protocol. コミットメントに基づいたプロトコルを示す。Demonstrate a protocol based on commitment.

符号の説明Explanation of symbols

100…家庭ネットワーク
101…セット・トップ・ボックス
102…テレビ表示装置
103…携帯型表示デバイス
104…移動電話
105…オーディオ再生デバイス
110…ネットワーク
111…基地局
120…キャリア
301…ネットワーク・モジュール
302…暗号プロセッサ
303…格納媒体
304…擬似乱数生成器
311…ネットワーク・モジュール
312…暗号プロセッサ
313…格納装置
314…擬似乱数生成器
100 ... Home network
101 ... set top box
102 ... TV display device
103 ... Portable display device
104 ... Mobile phone
105… Audio playback device
110 ... Network
111… Base station
120 ... Career
301 ... Network module
302 ... Cryptographic processor
303 ... Storage medium
304 ... Pseudo random number generator
311 ... Network module
312 ... Crypto processor
313 ... Storage device
314 ... Pseudo random number generator

Claims (19)

第一当事者と第二当事者との間の共通の秘密を生成する方法であって、
前記第一当事者が、値 p1 と、第一引数が前記値 p1 により固定されている対称多項式 P(x, y) とを保持し、かつ、
前記第一当事者が、
前記第二当事者に前記値 p1 を送信するステップと、
前記第二当事者から値 p2 を受信するステップと、
多項式 P(p1, y) のp2 を求めることにより共通の秘密 S1 を計算するステップと、
を行う方法において、
前記第一当事者が、値 q1 と、第一引数が前記値 q1 により固定されている対称多項式 Q(x, z) とを更に保持し、かつ
前記第二当事者に q1 を送信するステップと、
前記第二当事者から値 q2 を受信するステップと、
前記秘密 S1
として計算するステップと、
を更に行うことを特徴とする方法。
A method for generating a common secret between a first party and a second party, comprising:
The first party holds a value p 1 and a symmetric polynomial P (x, y) whose first argument is fixed by the value p 1 , and
The first party
Sending the value p 1 to the second party;
Receiving a value p 2 from said second party;
Calculating a common secret S 1 by determining p 2 of the polynomial P (p 1 , y);
In the way to do
The step of the first party, transmitting a value q 1, the first argument is the value q 1 symmetric polynomial is fixed by Q (x, z) further holds a, and the q 1 to the second party When,
Receiving the value q 2 from the second party;
Secret S 1
Step to calculate as
Further comprising:
前記第一当事者が、
乱数 r1 を得るステップと、
を計算するステップと、
前記第二当事者に
を送信するステップと、
前記第二当事者から
を受信するステップと、
前記秘密 S1
として計算するステップと、
を更に実行する、請求項1の方法。
The first party
Obtaining a random number r 1 ;
A step of calculating
To the second party
A step of sending
From the second party
Receiving the step,
Secret S 1
Step to calculate as
The method of claim 1, further comprising:
前記第一当事者が、
任意に選択された値 r により乗算された前記値 q1、および、
個々の多項式 P(p1, y) と Q(q1, z) ではなく積 Q(q1, z)P(p1, y) を保持し、かつ
前記第一当事者が、
を計算するステップと、
前記第二当事者に
を送信するステップと、
前記第二当事者から
を受信するステップと、
前記秘密 S1
として計算するステップと、
を行う、請求項2の方法。
The first party
Said value q 1 multiplied by an arbitrarily selected value r, and
Hold the product Q (q 1 , z) P (p 1 , y) rather than the individual polynomials P (p 1 , y) and Q (q 1 , z), and the first party
A step of calculating
To the second party
A step of sending
From the second party
Receiving the step,
Secret S 1
Step to calculate as
3. The method of claim 2, wherein
前記対称多項式 P(x, y) の前記第一引数が前記値 p2 により固定され、前記対称多項式 Q(x, z) の前記第一引数が前記値 q2 により固定されている状態で、前記第二当事者が、値 p2 と値 q2 を保持し、かつ、
前記第二当事者が、
前記第一当事者に q2 を送信するステップと、
前記第一当事者から q1 を受信するステップと、
秘密 S2
として計算するステップと、
を行い、
このことにより、前記秘密 S2 が前記秘密 S1 に等しい場合は前記共通の秘密が生成済みとなる、請求項1の方法。
With the first argument of the symmetric polynomial P (x, y) fixed by the value p 2 and the first argument of the symmetric polynomial Q (x, z) fixed by the value q 2 , the second party holds a value p 2 and a value q 2, and,
Said second party
Sending q 2 to the first party;
Receiving q 1 from the first party;
Secret S 2
Step to calculate as
And
Thus, if the secret S 2 equals the secret S 1 becomes the common secret is already generated, the method of claim 1.
信頼できる第三者が、
(n+1)×(n+1) の対称行列 T を選択するステップと、
行列 T からのエントリを前記多項式 P の各係数として用いて前記多項式 P を構築するステップと、
前記多項式 Q(x, y) を構築するステップと、
前記値 p1、前記値 p2、前記値 q1、および前記値 q2 を選択するステップと、

前記値 p1 と、前記値 q1 と、第一引数が前記値 p1 により固定されている前記多項式 P(x, y) と、第一引数が前記値 q1 により固定されている前記多項式 Q(x, z) とを、前記第一当事者に送信するステップと、
前記値 p2 と、前記値 q2 と、第一引数が前記値 p2 により固定されている前記多項式 P(x, y) と、第一引数が値 q2 により固定されている前記多項式 Q(x, z) とを、前記第二当事者に送信するステップと、
を行う、請求項1の方法。
A trusted third party
selecting a (n + 1) × (n + 1) symmetric matrix T;
Constructing the polynomial P using entries from the matrix T as the coefficients of the polynomial P;
Constructing the polynomial Q (x, y);
Selecting the value p 1 , the value p 2 , the value q 1 , and the value q 2 ;
And the value p 1 , the value q 1 , the polynomial P (x, y) whose first argument is fixed by the value p 1 , and the first argument that is fixed by the value q 1 Sending the polynomial Q (x, z) to the first party;
And the value p 2, and the value q 2, the first argument is the value p 2 by has been fixed the polynomial P (x, y) and the polynomial Q for the first argument is fixed by the value q 2 sending (x, z) to the second party;
The method of claim 1, wherein:
前記信頼できる第三者が、更に、
値 r を任意に選択し、
前記第一当事者に、前記値 q1 ではなく値 r×q1 を送信し、かつ前記個々の多項式 P(p1, y) と Q(q1, z) ではなく前記積 Q(q1, z)P(p1, y) を送信し、かつ、
前記第二当事者に、前記値 q2 ではなく値
を送信し、かつ前記個々の多項式 P(p2, y) と Q(q2, z) ではなく前記積 Q(q2, z)P(p2, y) を送信する、
請求項5の方法。
The trusted third party further comprises:
Arbitrarily choose the value r,
Send the value r × q 1 instead of the value q 1 to the first party and not the individual polynomials P (p 1 , y) and Q (q 1 , z) but the product Q (q 1 , z) send P (p 1 , y) and
Not the value q 2 but the value to the second party
And the product Q (q 2 , z) P (p 2 , y) instead of the individual polynomials P (p 2 , y) and Q (q 2 , z)
6. The method of claim 5.
前記信頼できる第三者が、更に、
前記値 p1 と前記 p2 を含む
個の値 pi を有するセットを選択するステップと、
値 pi の前記セットから組み立てられたバンデルモンド・ベクトル
のテンソル積
から空間
を計算するステップと、
前記空間
の垂直空間
から、ベクトル
とベクトル
を選択するステップと、
前記ベクトル
から行列
を構築し、かつ前記ベクトル
から行列
を構築するステップと、
前記行列
からのエントリを用いて多項式
を構築し、かつ第一引数が前記値 p1 により固定されている前記多項式
を前記第一当事者に送信するステップと、
前記行列
からのエントリを用いて多項式
を構築し、かつ第一引数が前記値 p2 により固定されている前記多項式
を前記第二当事者に送信するステップと、
を行う請求項5の方法。
The trusted third party further comprises:
Including the value p 1 and the p 2
Selecting a set having values p i ;
Vandermonde vector constructed from said set of values p i
Tensor product of
From space
A step of calculating
The space
Vertical space
From the vector
And vector
A step of selecting
The vector
Matrix from
And the vector
Matrix from
And the steps to build
The matrix
Polynomial with entries from
The polynomial whose first argument is fixed by the value p 1
Sending to the first party;
The matrix
Polynomial with entries from
The polynomial whose first argument is fixed by the value p 2
Sending to the second party;
6. The method of claim 5, wherein:
値 pi の数
(
)
が、追加された当事者に配布される、請求項5の方法。
Number of values p i
(
)
6. The method of claim 5, wherein is distributed to the added parties.
前記第一当事者と前記第二当事者が、前記生成された秘密 S1 と S2 の各々に非線形関数を用いた後に、この秘密を更なる通信内で秘密鍵として用いる、請求項1の方法。 The method of claim 1, wherein the first party and the second party use a non-linear function for each of the generated secrets S 1 and S 2 and then use this secret as a secret key in further communications. 一方向ハッシュ関数が、前記生成された秘密 S1 と S2 に適用される、請求項9の方法。 The method of claim 9, wherein a one-way hash function is applied to the generated secrets S 1 and S 2 . 多項式の形態をした非線形関数が、前記生成された秘密 S1 と S2 に適用される、請求項9の方法。 Non-linear function in the form of a polynomial is applied to the secret S 1 and S 2 the generated method of claim 9. 前記第二当事者が前記秘密 S1 を知っていることを検証するステップを更に含む、請求項1の方法。 The method of claim 1, further comprising the step of verifying that the second party knows the secret S 1. 前記第一当事者が、ゼロ知識プロトコルを後で適用して、前記第二当事者が前記秘密 S1 を知っていることを検証する、請求項12の方法。 The first party, and later applying the zero knowledge protocol, wherein the second party to verify that knows the secret S 1, The method of claim 12. 前記第一当事者が、コミットメントに基づいたプロトコルを後で適用して、前記第二当事者が前記秘密 S1 を知っていることを検証する、請求項12の方法。 The first party applies later protocol based on commitment, the second party to verify that knows the secret S 1, The method of claim 12. 前記第二当事者が、ランダムなチャレンジを暗号化する対称暗号を用い、かつ前記暗号化されたランダムなチャレンジを前記第一当事者に送信し、かつ、
前記第一当事者が、前記同一の対称暗号をコミット関数として後で用いて、前記暗号化されたランダムなチャレンジの復号化に自分自身をコミットさせる、
請求項14の方法。
The second party uses a symmetric cipher that encrypts a random challenge and sends the encrypted random challenge to the first party; and
The first party commits itself to decrypt the encrypted random challenge, using the same symmetric cipher as a commit function later;
15. The method of claim 14.
上記請求項の何れかの方法を実行するように構成されている、第一当事者 (P) と、第二当事者 (V) と、信頼できる第三者 (TTP) とを有するシステム。   A system comprising a first party (P), a second party (V), and a trusted third party (TTP) configured to perform the method of any of the preceding claims. 請求項16の前記システム内で、前記第一当事者として、および/または、前記第二当事者として動作するように構成されているデバイス (P)。   Device (P) configured to operate as the first party and / or as the second party within the system of claim 16. 前記多項式 P と前記多項式 Q を、これらの各々の係数の形態で格納するための記憶手段を有する、請求項17のデバイス。   18. The device of claim 17, comprising storage means for storing the polynomial P and the polynomial Q in the form of their respective coefficients. 上記請求項1〜15の何れかの方法を、一つ以上のプロセッサに実行させるための、コンピュータ・プログラム製品。   A computer program product for causing one or more processors to execute the method of any of claims 1-15.
JP2003575553A 2002-03-13 2003-02-14 Multi-user key generation and authentication method and authentication system based on polynomial Pending JP2005520395A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP02075983 2002-03-13
PCT/IB2003/000655 WO2003077470A1 (en) 2002-03-13 2003-02-14 Polynomial-based multi-user key generation and authentication method and system

Publications (1)

Publication Number Publication Date
JP2005520395A true JP2005520395A (en) 2005-07-07

Family

ID=27798863

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003575553A Pending JP2005520395A (en) 2002-03-13 2003-02-14 Multi-user key generation and authentication method and authentication system based on polynomial

Country Status (9)

Country Link
US (1) US20050265550A1 (en)
EP (1) EP1486027B1 (en)
JP (1) JP2005520395A (en)
KR (1) KR20040093128A (en)
CN (1) CN1643840A (en)
AT (1) ATE314763T1 (en)
AU (1) AU2003252817A1 (en)
DE (1) DE60303018T2 (en)
WO (1) WO2003077470A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009519658A (en) * 2005-12-14 2009-05-14 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ Authentication method and system for low resource tester
JP2011518455A (en) * 2008-03-06 2011-06-23 クゥアルコム・インコーポレイテッド Image-based man-in-the-middle protection in a numerical comparison association model
JP2012521109A (en) * 2009-03-20 2012-09-10 四川▲長▼虹▲電▼器股▲分▼有限公司 Identification method and shared key generation method

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8239917B2 (en) * 2002-10-16 2012-08-07 Enterprise Information Management, Inc. Systems and methods for enterprise security with collaborative peer to peer architecture
US7840806B2 (en) * 2002-10-16 2010-11-23 Enterprise Information Management, Inc. System and method of non-centralized zero knowledge authentication for a computer network
EP1683298B1 (en) * 2003-11-03 2008-09-17 Koninklijke Philips Electronics N.V. Method and device for efficient multiparty multiplication
US7647498B2 (en) 2004-04-30 2010-01-12 Research In Motion Limited Device authentication
ATE380420T1 (en) * 2004-04-30 2007-12-15 Research In Motion Ltd CRYPTOGRAPHIC AUTHENTICATION OF A DEVICE
EP1766849A1 (en) * 2004-07-08 2007-03-28 Koninklijke Philips Electronics N.V. Method of providing digital certificate functionality
US7730319B2 (en) 2004-08-27 2010-06-01 Ntt Docomo, Inc. Provisional signature schemes
EP1797668B1 (en) * 2004-09-30 2016-08-03 Koninklijke Philips N.V. Method of authentication based on polynomials
US20080253558A1 (en) * 2004-09-30 2008-10-16 Koninklijke Philips Electronics, N.V. Polynomial-Based Key Distribution System and Method
KR20070086052A (en) 2004-11-12 2007-08-27 코닌클리케 필립스 일렉트로닉스 엔.브이. Apparatus and method for sharing contents via headphone set
CA2629370A1 (en) * 2005-12-01 2007-06-07 Telefonaktiebolaget Lm Ericsson (Publ) Key management
JP4630826B2 (en) * 2006-01-27 2011-02-09 株式会社東芝 Decryption key generation method, content provider side system, user side system, tracking system, content provision method, encrypted content decryption method, program, encryption device, and decryption device
JP5323685B2 (en) * 2006-05-02 2013-10-23 コーニンクレッカ フィリップス エヌ ヴェ Improved domain access
US20080120558A1 (en) 2006-11-16 2008-05-22 Paco Xander Nathan Systems and methods for managing a persistent virtual avatar with migrational ability
US9253183B2 (en) * 2006-11-16 2016-02-02 Mark Stephen Meadows Systems and methods for authenticating an avatar
CN100579007C (en) * 2007-08-07 2010-01-06 上海交通大学 Method for generating cipher key, communication system, communication apparatus and server
US9176393B2 (en) 2008-05-28 2015-11-03 Asml Netherlands B.V. Lithographic apparatus and a method of operating the apparatus
US8245308B2 (en) * 2008-06-04 2012-08-14 Microsoft Corporation Using trusted third parties to perform DRM operations
CN101299752B (en) * 2008-06-26 2010-12-22 上海交通大学 Method for establishing cipher protocol security based on trustful greenness
US8345861B2 (en) * 2008-08-22 2013-01-01 Red Hat, Inc. Sharing a secret using polynomial division over GF(Q)
US20100046740A1 (en) * 2008-08-22 2010-02-25 Schneider James P Embedding a secret in a larger polynomial
US7915637B2 (en) * 2008-11-19 2011-03-29 Nantero, Inc. Switching materials comprising mixed nanoscopic particles and carbon nanotubes and method of making and using the same
US9106414B2 (en) * 2009-09-09 2015-08-11 Edward W. Laves Method and apparatus for wirelessly transmitting high volume content to an electronic device
JP5594034B2 (en) * 2010-07-30 2014-09-24 ソニー株式会社 Authentication device, authentication method, and program
JP5790290B2 (en) * 2011-08-12 2015-10-07 ソニー株式会社 Information processing apparatus, information processing method, program, and computer-readable recording medium recording the program
JP5790288B2 (en) * 2011-08-12 2015-10-07 ソニー株式会社 Information processing apparatus and information processing method
BR112014028757A2 (en) * 2012-05-21 2017-06-27 Koninklijke Philips Nv Operation method of a first communication unit, Operation method for a communication system, Communication unit, Communication system and Computer program
CN106685980B (en) * 2017-01-13 2019-12-20 桂林电子科技大学 Encryption method for large file
US11003777B2 (en) * 2018-04-16 2021-05-11 International Business Machines Corporation Determining a frequency at which to execute trap code in an execution path of a process executing a program to generate a trap address range to detect potential malicious code
FR3085815B1 (en) 2018-07-11 2022-07-15 Ledger SECURITY GOVERNANCE OF THE PROCESSING OF A DIGITAL REQUEST
WO2020027758A2 (en) * 2018-08-03 2020-02-06 Istanbul Teknik Universitesi Systems and methods for generating shared keys, identity authentication and data transmission based on simultaneous transmission on wireless multiple- access channels

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4996711A (en) * 1989-06-21 1991-02-26 Chaum David L Selected-exponent signature systems
US5202921A (en) * 1991-04-01 1993-04-13 International Business Machines Corporation Method and apparatus for authenticating users of a communication system to each other
CA2169449A1 (en) * 1993-08-13 1995-02-23 Frank Thomson Leighton Secret key exchange
US5539826A (en) * 1993-12-29 1996-07-23 International Business Machines Corporation Method for message authentication from non-malleable crypto systems
US5953420A (en) * 1996-10-25 1999-09-14 International Business Machines Corporation Method and apparatus for establishing an authenticated shared secret value between a pair of users
US6076163A (en) * 1997-10-20 2000-06-13 Rsa Security Inc. Secure user identification based on constrained polynomials
US6298153B1 (en) * 1998-01-16 2001-10-02 Canon Kabushiki Kaisha Digital signature method and information communication system and apparatus using such method

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009519658A (en) * 2005-12-14 2009-05-14 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ Authentication method and system for low resource tester
JP2011518455A (en) * 2008-03-06 2011-06-23 クゥアルコム・インコーポレイテッド Image-based man-in-the-middle protection in a numerical comparison association model
US9398046B2 (en) 2008-03-06 2016-07-19 Qualcomm Incorporated Image-based man-in-the-middle protection in numeric comparison association models
JP2012521109A (en) * 2009-03-20 2012-09-10 四川▲長▼虹▲電▼器股▲分▼有限公司 Identification method and shared key generation method

Also Published As

Publication number Publication date
DE60303018D1 (en) 2006-02-02
ATE314763T1 (en) 2006-01-15
AU2003252817A1 (en) 2003-09-22
EP1486027B1 (en) 2005-12-28
US20050265550A1 (en) 2005-12-01
DE60303018T2 (en) 2006-08-24
CN1643840A (en) 2005-07-20
EP1486027A1 (en) 2004-12-15
WO2003077470A1 (en) 2003-09-18
KR20040093128A (en) 2004-11-04

Similar Documents

Publication Publication Date Title
EP1486027B1 (en) Polynomial-based multi-user key generation and authentication method and system
JP4723251B2 (en) Secure integration and use of device-specific security data
CN104094267B (en) Method, apparatus and system for secure sharing of media content from a source device
JP3864401B2 (en) Authentication system, electronic device, authentication method, and recording medium
JP4790731B2 (en) Derived seed
US7877604B2 (en) Proof of execution using random function
EP1271875A1 (en) Device arranged for exchanging data, and method of manufacturing
US20100235627A1 (en) Securing communications sent by a first user to a second user
US20080059809A1 (en) Sharing a Secret by Using Random Function
CN111092717A (en) Group authentication-based safe and reliable communication method in smart home environment
JP2006174356A (en) Pseudo public key encryption method and system
Chen et al. Security of the TCG privacy-CA solution
JP2009141674A (en) Id-based encryption system and method
Kim et al. Secure and efficient anonymous authentication scheme in global mobility networks
Tseng et al. A robust user authentication scheme with self‐certificates for wireless sensor networks
CN107872312B (en) Method, device, equipment and system for dynamically generating symmetric key
Seifelnasr et al. SKAFS: Symmetric Key Authentication Protocol with Forward Secrecy for Edge Computing
Juang Efficient user authentication and key agreement in wireless sensor networks
KR20110053578A (en) An authentication method of device member in ubiquitous computing network
Akand et al. Composable Anonymous Proof-of-Location with User-controlled Offline Access
Chiou Authenticated blind issuing of symmetric keys for mobile access control system without trusted parties
CN115766268A (en) Processing method, device, equipment and storage medium
JP2004064783A (en) Apparatus and method for making safe distributed network
Kim et al. Research Article Secure and Efficient Anonymous Authentication Scheme in Global Mobility Networks

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060116

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20060801

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090609

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20091126