JP2000244474A - Group key method, device therefor and recording medium recorded with group key program - Google Patents

Group key method, device therefor and recording medium recorded with group key program

Info

Publication number
JP2000244474A
JP2000244474A JP11040319A JP4031999A JP2000244474A JP 2000244474 A JP2000244474 A JP 2000244474A JP 11040319 A JP11040319 A JP 11040319A JP 4031999 A JP4031999 A JP 4031999A JP 2000244474 A JP2000244474 A JP 2000244474A
Authority
JP
Japan
Prior art keywords
key
group key
group
information
sgk
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
JP11040319A
Other languages
Japanese (ja)
Inventor
Hiroyuki Kito
宏幸 鬼頭
Hiroki Ueda
広樹 植田
Kimihiko Sekino
公彦 関野
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP11040319A priority Critical patent/JP2000244474A/en
Publication of JP2000244474A publication Critical patent/JP2000244474A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To decode information which is ciphered in the past only by means of holding the latest group key by a group member by decoding shared information ciphered by a past group key through the use of the group key derived by using one direction function from the latest group key that a user himself holds. SOLUTION: A user holds the latest group key, ciphers shared information by using the latest group key and decodes shared information ciphered by the group key with the group key. Shared information ciphered by the past group key is decoded by using the group key derived from the latest group key that the user himself holds by using the one direction function. This group key device is composed of a group key generation mechanism 1 for generating the group key and plural user terminals 3a-3c using shared information of the group by ciphering/decoding it by using the generated group key.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、共有情報を暗号化
/復号化する鍵を複数の利用者からなるグループで共有
することにより情報を共有するグループ鍵方法および装
置に関し、更に詳しくは、複数の利用者からなるグルー
プの共有情報をグループ鍵で暗号化してグループで共有
し、利用者は暗号化された共有情報をグループ鍵で復号
化して利用するグループ鍵方法および装置とグループ鍵
プログラムを記録した記録媒体に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a group key method and apparatus for sharing information by sharing a key for encrypting / decrypting shared information among a group of a plurality of users. A group key method, a device, and a group key program, in which the shared information of a group of users is encrypted with a group key and shared by the group, and the user decrypts and uses the encrypted shared information with the group key. To a recording medium.

【0002】[0002]

【従来の技術】企業内における業務およびワークフロー
は、組織毎あるいは業務毎のグループにより行われるこ
とが多い。例えば、所属部署、役職などによって、機密
情報に対する操作、閲覧の可否が決定する。こういった
グループ外秘の機密情報を保護するには、担当業務、所
属部署、役職毎にグループを作成し、グループ毎に暗号
鍵(以下、グループ鍵とする)を割り当て、暗号化を行
うのが有効な方法である。
2. Description of the Related Art Businesses and workflows in a company are often performed by a group for each organization or each business. For example, whether to operate or view confidential information is determined depending on the department, post, etc. In order to protect such confidential information that is confidential to the group, a group must be created for each job, department, and position, and an encryption key (hereafter referred to as a group key) must be assigned to each group, and encryption must be performed. Is an effective method.

【0003】荒井氏らは、グループの共有文書に宛先リ
ストを添付し、これとICカードなどに格納した利用者
の属性情報(氏名・部署名など)とを比較し、共有情報
に対するアクセス制御を行うグループ鍵方式を提案して
いる(荒井正人、鍛忠司、伊藤浩道、柴田利幸:企業情
報向けグループ暗号システム、コンピュータセキュリテ
ィ 1-3,p.11-16,May 29.1998参照)。宛先リストには共
有文書にアクセス可能な利用者の氏名もしくは部署名が
記述される。しかし、ワークフローにおけるグループは
部署名以外により細かい業務毎でグループが作成でき、
グループの追加・削除が容易であるのが一般的である。
Arai et al. Attach a destination list to a shared document of a group, compare the destination list with user attribute information (name, department name, etc.) stored in an IC card or the like, and control access to the shared information. He proposes a group key method to be performed (Masato Arai, Tadashi Kazumi, Hiromichi Ito, Toshiyuki Shibata: Group encryption system for corporate information, computer security 1-3, p.11-16, May 29.1998). The destination list describes the names or department names of users who can access the shared document. However, groups in the workflow can be created for more detailed tasks other than department names,
In general, it is easy to add and delete groups.

【0004】また、松崎氏らは、移動体通信システムに
おいて、センタが特定した端末を除いた残りすべての端
末で新規グループの鍵更新を行う方式を提案している
(松崎なつめ、安斉潤:移動体通信に適したグループ鍵
更新法(II)、移動体通信に適したグループ鍵更新法
(III),ISEC 97-73,p.51-62,Mar.1998 参照)。
In addition, Matsuzaki et al. Have proposed a method in which a key is updated in a new group in all the remaining terminals except the terminal specified by the center in a mobile communication system (Natsume Matsuzaki, Junjun Azai: Mobile Group Key Update Method Suitable for Mobile Communication (II), Group Key Update Method Suitable for Mobile Communication
(III), ISEC 97-73, p.51-62, Mar. 1998).

【0005】[0005]

【発明が解決しようとする課題】上述した荒井氏らの方
式は、新たにグループを追加するには、ICカードを回
収し属性情報を変更するか、新たに追加するグループの
共有情報の宛先リストにそのグループのメンバの氏名を
列挙しなければならないという問題がある。
According to the method of Arai et al. Described above, in order to add a new group, the IC card is collected and attribute information is changed, or a destination list of shared information of the newly added group is added. Has to list the names of the members of the group.

【0006】また、上述した松崎氏らの方式は、グルー
プ内の共用情報の暗号化に適用すると、次に示すような
問題がある。
The above-mentioned method of Matsuzaki et al., When applied to encryption of shared information in a group, has the following problem.

【0007】グループ毎にグループ鍵を払い出す方式の
場合、ある時刻tにグループのメンバXが脱退すると、
そのグループのグループ鍵GKold をメンバXが知り得
ない新しいグループ鍵GKnew に更新する必要がある。
グループに残ったメンバはGKnew を入手し、t以降は
GKnew で暗号化する。しかし、時刻tより以前に暗号
化された文書を復号化するにはGKold が必要なため、
グループに残ったメンバはGKold ,GKnew を保持し
なければならない。このようにグループに残ったメンバ
は鍵の更新の度に保持する鍵の数が増加する。また、新
たにグループに加わったメンバは最新のグループ鍵GK
new の他に過去のグループ鍵GKold も入手しなければ
ならないという問題もある。
In the case of a method of paying out a group key for each group, when a member X of the group withdraws at a certain time t,
It is necessary to update the group key GK old of the group to a new group key GK new that the member X cannot know.
The members remaining in the group obtain GK new, and after t, encrypt with GK new . However, since GK old is required to decrypt a document encrypted before time t,
The remaining members of the group must hold GK old and GK new . In this way, the number of keys held by the members remaining in the group increases each time the key is updated. Also, members newly joining the group are updated with the latest group key GK.
There is also a problem that the past group key GK old must be obtained in addition to new .

【0008】一方、階層構造を持った複数グループで
は、上位階級のグループメンバは下位階級のグループの
情報を暗号化/復号化する権限を持つことが一般的であ
る。例えば、図6のような企業組織で部長グループ、課
長グループ、係長グループが存在するモデルでは、部長
グループのメンバは部長グループおよび課長グループお
よび係長グループの情報を暗号化/復号化し、課長グル
ープのメンバは課長グループおよび係長グループの情報
を暗号化/復号化できるのが一般的である。グループ毎
に鍵を払い出す方式の場合、各グループのメンバは自身
のグループ鍵の他に下位階級のグループ鍵を保持しなけ
ればならない問題がある。
On the other hand, in a plurality of groups having a hierarchical structure, it is common that upper-level group members have authority to encrypt / decrypt information of lower-level groups. For example, in a model in which a department manager group, a section manager group, and a section manager group exist in a corporate organization as shown in FIG. Can generally encrypt / decrypt the information of the section manager group and the section manager group. In the case of the method of dispensing keys for each group, there is a problem that members of each group must hold lower-level group keys in addition to their own group keys.

【0009】上述したように、従来のグループ毎にグル
ープ鍵を払い出す方式においては、(1)グループ鍵が
更新されると、最新のグループ鍵の他に過去のグループ
鍵も保持しなければならない、(2)新規にグループに
加わったメンバは最新のグループ鍵の他に過去のグルー
プ鍵も入手しなければならない、(3)階層構造を持っ
た複数のグループの各々のメンバは自身のグループ鍵の
他に下位階級のグループ鍵も保持しなければならないと
いう問題がある。
As described above, in the conventional method of issuing a group key for each group, (1) when a group key is updated, a past group key must be held in addition to the latest group key. (2) A newly added member must obtain a past group key in addition to the latest group key. (3) Each member of a plurality of groups having a hierarchical structure has its own group key. In addition to the above, there is a problem that a lower-level group key must be held.

【0010】本発明は、上記に鑑みてなされたもので、
その目的とするところは、グループメンバは最新のグル
ープ鍵を保持するのみで過去に暗号化された情報の復号
化および下位階級のグループの情報の復号化/暗号化が
可能であるグループ鍵方法および装置とグループ鍵プロ
グラムを記録した記録媒体を提供することにある。
[0010] The present invention has been made in view of the above,
The purpose is to provide a group key method in which a group member can decrypt information encrypted in the past and decrypt / encrypt information of a lower class group only by holding the latest group key, and It is an object of the present invention to provide a recording medium in which an apparatus and a group key program are recorded.

【0011】[0011]

【課題を解決するための手段】上記目的を達成するた
め、請求項1記載の本発明は、複数の利用者からなるグ
ループの共有情報をグループ鍵で暗号化してグループで
共有し、利用者は暗号化された共有情報をグループ鍵で
復号化して利用するグループ鍵方法であって、グループ
鍵が、共通鍵暗号方式の鍵であって、秘密情報Sから公
開された一方向性関数fを用いて作成されるn個の各値
n =f(S),…,tk+1 =f(tk+2),tk =f
(tk+1 ),…,t1 =f(t2 )から導出される鍵
(GKn ,…,GKk+1 ,GKk ,…,GK1 )であ
り、該グループ鍵を更新する度に、鍵(GK1 ,…,G
k+1 ,GKk ,…,GKn )の順に利用し、グループ
鍵GKkの更新時には、新たなグループ鍵GKk+1 を生
成し、利用者が、更新された最新のグループ鍵GKk
みを保持し、この最新のグループ鍵を用いて、グループ
の共有情報を暗号化し、グループ鍵で暗号化された共有
情報をグループ鍵で復号化し、過去のグループ鍵で暗号
化された共有情報は、利用者自身が保持する最新のグル
ープ鍵GKk から一方向性関数を用いて導出したグルー
プ鍵を用いて復号化することを要旨とする。
In order to achieve the above object, according to the present invention, the shared information of a group of a plurality of users is encrypted with a group key and shared by the group. A group key method in which encrypted shared information is decrypted with a group key and used, wherein the group key is a key of a common key cryptosystem and uses a one-way function f published from secret information S. each value of n to be created Te t n = f (S), ..., t k + 1 = f (t k + 2), t k = f
(T k + 1), ... , key derived from t 1 = f (t 2) (, GK n ..., GK k + 1, GK k, ..., GK 1) is, to update the group key Each time, the key (GK 1, ..., G
K k + 1, GK k, ..., to use in the order of GK n), at the time of update of the group key GK k, it generates a new group key GK k + 1, the user, the updated latest of the group key GK holding only k , encrypts the shared information of the group using this latest group key, decrypts the shared information encrypted with the group key with the group key, and encrypts the shared information encrypted with the past group key. The gist is that decryption is performed using a group key derived from the latest group key GK k held by the user using a one-way function.

【0012】請求項1記載の本発明にあっては、グルー
プ鍵は共通鍵暗号方式の鍵であって、秘密情報Sから公
開された一方向性関数fを用いて作成さされるn個の各
値tn =f(S),…,tk+1 =f(tk+2 ),tk
f(tk+1 ),…,t1 =f(t2 )から導出される鍵
(GKn ,…,GKk+1 ,GKk ,…,GK1 )であ
り、グループ鍵を更新する度に鍵(GK1 ,…,GK
k+1 ,GKk ,…,GKn)の順に利用し、グループ鍵
GKk の更新時には新たなグループ鍵GKk+1 を生成
し、利用者は最新のグループ鍵GKk のみを保持し、こ
の最新のグループ鍵を用いて、グループの共有情報を暗
号化し、グループ鍵で暗号化された共有情報をグループ
鍵で復号化し、過去のグループ鍵で暗号化された共有情
報は利用者自身が保持する最新のグループ鍵GKk から
一方向性関数を用いて導出したグループ鍵を用いて復号
化するため、利用者は従来のように過去のグループ鍵を
保持する必要がないとともに、また新規にグループに加
わったメンバも最新のグループ鍵のみを入手すればよ
く、過去のグループ鍵を入手する必要がない。
According to the first aspect of the present invention, the group key is a key of the common key cryptosystem, and each of the n group keys is created by using a one-way function f published from the secret information S. Value t n = f (S),..., T k + 1 = f (t k + 2 ), t k =
f (t k + 1 ),..., t 1 = key (GK n ,..., GK k + 1 , GK k ,..., GK 1 ) derived from f (t 2 ), and updates the group key Each time the key (GK 1 , ..., GK
k + 1, GK k, ... , to use in the order of GK n), at the time of update of the group key GK k generates a new group key GK k + 1, the user holds only the most recent of the group key GK k, This latest group key is used to encrypt the shared information of the group, the shared information encrypted with the group key is decrypted with the group key, and the shared information encrypted with the past group key is retained by the user himself The decryption is performed using the group key derived from the latest group key GK k using a one-way function, so that the user does not need to retain the past group key as in the related art, and also needs to newly create the group. The members who have joined need only obtain the latest group key, and do not need to obtain the past group key.

【0013】なお、ここで、グループ鍵とは、例えば共
有情報を暗号化/復号化するための鍵であり、グループ
で共有する鍵のことである。
Here, the group key is, for example, a key for encrypting / decrypting shared information, and is a key shared by the group.

【0014】また、請求項2記載の本発明は、複数の利
用者からなるグループの共有情報をグループ鍵で暗号化
してグループで共有し、利用者は暗号化された共有情報
をグループ鍵で復号化して利用するグループ鍵方法であ
って、グループ鍵が、公開鍵暗号方式の鍵であって、秘
密情報Sから公開された一方向性関数fを用いて作成さ
れるn個の各値tn =f(S),…,tk+1 =f(t
k+2 ),tk =f(tk+ 1 ),…,t1 =f(t2 )か
ら導出される秘密鍵(SGKn ,…,SGKk+1,SG
k ,…,SGK1 )および公開鍵(PGKn ,…,P
GKk+1 ,PGKk ,…,PGK1 )のペアであり、該
グループ鍵を更新する度に、鍵(SGK1,PG
1 ),…,(SGKk+1 ,PGKk+1 ),(SG
k ,PGKk ),…,(SGKn ,PGKn )の順に
利用し、グループ鍵(SGKk ,PGKk )の更新時に
は、新たなグループ鍵(SGKk+1 ,PGKk+1 )を生
成し、利用者が、更新された最新のグループ鍵(SGK
k ,PGKk )のみを保持し、この最新のグループ鍵の
公開鍵PGKk を用いて、グループの共有情報を暗号化
し、グループ鍵の公開鍵PGKk で暗号化された共有情
報をグループ鍵の秘密鍵SGKkで復号化し、過去のグ
ループ鍵で暗号化された共有情報については、最新のグ
ループ鍵の秘密鍵SGKk から一方向性関数を用いて導
出した秘密鍵を用いて復号化すること要旨とする。
According to a second aspect of the present invention, shared information of a group consisting of a plurality of users is encrypted with a group key and shared by the group, and the user decrypts the encrypted shared information with the group key. A group key method, wherein the group key is a key of a public key cryptosystem, and each of n values t n created using a one-way function f published from the secret information S. = F (S), ..., t k + 1 = f (t
k + 2 ), t k = f (t k + 1 ),..., t 1 = f (t 2 ) derived secret keys (SGK n ,..., SGK k + 1 , SG
K k ,..., SGK 1 ) and the public key (PGK n ,.
GK k + 1 , PGK k ,..., PGK 1 ). Each time the group key is updated, the key (SGK 1 , PGK 1 ,
K 1 ),..., (SGK k + 1 , PGK k + 1 ), (SG
K k, PGK k), ... , the (SGK n, used in the order of PGK n), a group key (SGK k, at the time of update of the PGK k), a new group key (SGK k + 1, PGK k + 1) The user generates and updates the latest group key (SGK
k , PGK k ), and encrypts the shared information of the group using the latest public key PGK k of the group key. The shared information encrypted with the public key PGK k of the group key is used For shared information decrypted with the secret key SGK k and encrypted with the past group key, decryption is performed using a secret key derived from the latest group key secret key SGK k using a one-way function. Make a summary.

【0015】請求項2記載の本発明にあっては、グルー
プ鍵は公開鍵暗号方式の鍵であって、秘密情報Sから公
開された一方向性関数fを用いて作成されるn個の各値
n=f(S),…,tk+1 =f(tk+2 ),tk =f
(tk+1 ),…,t1 =f(t2 )から導出される秘密
鍵(SGKn ,…,SGKk+1 ,SGKk ,…,SGK
1 )および公開鍵(PGKn ,…,PGKk+1 ,PGK
k ,…,PGK1 )のペアであり、該グループ鍵を更新
する度に、鍵(SGK1 ,PGK1 ),…,(SGK
k+1 ,PGKk+1 ),(SGKk ,PGKk ),…,
(SGKn ,PGKn )の順に利用し、グループ鍵(S
GKk ,PGKk )の更新時には、新たなグループ鍵
(SGKk+1 ,PGKk+1 )を生成し、利用者は更新さ
れた最新のグループ鍵(SGKk ,PGKk )のみを保
持し、この最新のグループ鍵の公開鍵PGKk を用いて
グループの共有情報を暗号化し、グループ鍵の公開鍵P
GKk で暗号化された共有情報をグループ鍵の秘密鍵S
GKk で復号化し、過去のグループ鍵で暗号化された共
有情報は最新のグループ鍵の秘密鍵SGKk から一方向
性関数を用いて導出した秘密鍵を用いて復号化するた
め、利用者は従来のように過去のグループ鍵を保持する
必要がないとともに、また新規にグループに加わったメ
ンバも最新のグループ鍵のみを入手すればよく、過去の
グループ鍵を入手する必要がない。
According to the second aspect of the present invention, the group key is a key of a public key cryptosystem, and each of n group keys created by using a one-way function f published from the secret information S. Value t n = f (S),..., T k + 1 = f (t k + 2 ), t k = f
(T k + 1), ... , t 1 = secret key that is derived from f (t 2) (SGK n , ..., SGK k + 1, SGK k, ..., SGK
1 ) and public keys (PGK n ,..., PGK k + 1 , PGK)
k, ..., is a pair of PGK 1), each time you update the group key, key (SGK 1, PGK 1), ..., (SGK
k + 1, PGK k + 1 ), (SGK k, PGK k), ...,
(SGK n , PGK n ) in this order and use the group key (S
When updating GK k , PGK k , a new group key (SGK k + 1 , PGK k + 1 ) is generated, and the user holds only the updated latest group key (SGK k , PGK k ). , Using the latest group key public key PGK k to encrypt the group shared information,
The shared information encrypted by GK k is used as the secret key S of the group key.
Since the shared information decrypted with GK k and encrypted with the past group key is decrypted using a secret key derived from the latest secret key SGK k of the group key using a one-way function, the user must Unlike the related art, it is not necessary to hold the past group key, and a member newly joining the group only needs to obtain the latest group key, and does not need to obtain the past group key.

【0016】更に、請求項3記載の本発明は、複数の階
級からなる階層構造を持ち、複数の利用者からなるグル
ープの共有情報をグループ鍵で暗号化してグループで共
有し、利用者は暗号化された共有情報をグループ鍵で復
号化して利用するとともに、各利用者は自身の階級およ
び自身の階級より下位の階級の情報を暗号化/復号化す
ることができるグループ鍵方法であって、グループ鍵
が、共通鍵暗号方式の鍵であって、秘密情報Sから公開
された一方向性関数gを用いて作成されるm個の各値y
m =g(S),…,yk+1 =g(yk+2 ),yk =g
(yk+1 ),…,y1 =g(y2 )から導出される鍵
(GKm ,…,GKk+1 ,GKk ,…,GK1)であ
り、階級毎に上位から各階級のグループ鍵として、(G
1 ,…,GKk+ 1 ,GKk ,…,GKm )の順に利用
者に割り当て、利用者が、割り当てられた最新のグルー
プ鍵GKk のみを保持し、このグループ鍵を用いて、グ
ループの共有情報を暗号化するとともに自身の階級のグ
ループ鍵で暗号化された共有情報を復号化し、自身より
下位の階級のグループ鍵で暗号化された情報を復号化す
るには、利用者自身が自身のグループ鍵GKk から一方
向性関数を用いて導出された鍵を用いることを要旨とす
る。
Further, the present invention according to claim 3 has a hierarchical structure composed of a plurality of classes, encrypts shared information of a group of a plurality of users with a group key, and shares the information with the group. A group key method capable of decrypting and using the shared information with a group key and encrypting / decrypting each user's own class and information of a class lower than the own class, The group key is a key of a common key cryptosystem, and m values y each created using a one-way function g disclosed from the secret information S
m = g (S),..., y k + 1 = g (y k + 2 ), y k = g
(Y k + 1 ),..., Y 1 = g (y 2 ) derived keys (GK m ,..., GK k + 1 , GK k ,..., GK 1 ). (G
K 1, ..., GK k + 1, GK k, ..., assigned to the user in the order of GK m), user, holds only the latest of the group key GK k assigned, using the group key, group In order to encrypt the shared information and decrypt the encrypted shared information with the group key of its own class, and to decrypt the information encrypted with the group key of the lower class, the user himself The gist is to use a key derived from its own group key GK k using a one-way function.

【0017】請求項3記載の本発明にあっては、階層構
造を持った複数のグループにおいてグループ鍵は共通鍵
暗号方式の鍵であって、秘密情報Sから公開された一方
向性関数gを用いて作成されるm個の各値ym =g
(S),…,yk+1 =g(yk+2),yk =g
(yk+1 ),…,y1 =g(y2 )から導出される鍵
(GKm ,…,GKk+1 ,GKk ,…,GK1 )であ
り、階級毎に上位から各階級のグループ鍵として、(G
1 ,…,GKk+1 ,GKk ,…,GKm )の順に利用
者に割り当て、利用者は最新のグループ鍵GKk のみを
保持し、このグループ鍵を用いてグループの共有情報を
暗号化するとともに自身の階級のグループ鍵で暗号化さ
れた共有情報を復号化し、自身より下位の階級のグルー
プ鍵で暗号化された情報を復号化するには、利用者自身
が自身のグループ鍵GKk から一方向性関数を用いて導
出された鍵を用いるため、利用者は従来のように過去の
グループ鍵を保持する必要がないとともに、各グループ
のメンバは自身のグループ鍵の他に下位の階級のグルー
プ鍵を保持する必要もない。
According to the third aspect of the present invention, in a plurality of groups having a hierarchical structure, the group key is a key of a common key cryptosystem, and the one-way function g disclosed from the secret information S is M values y m = g created using
(S),..., Y k + 1 = g (y k + 2 ), y k = g
(Y k + 1 ),..., Y 1 = g (y 2 ) derived keys (GK m ,..., GK k + 1 , GK k ,..., GK 1 ). (G
K 1, ..., GK k + 1, GK k, ..., order on allocation to the user of the GK m), the user holds only the most recent of the group key GK k, the shared information of the group using the group key In order to encrypt and decrypt the shared information encrypted with the group key of its own class, and to decrypt the information encrypted with the group key of a lower class than itself, the user himself / herself must use his / her own group key. Since a key derived from GK k using a one-way function is used, the user does not need to retain a past group key as in the past, and members of each group have a lower level in addition to their own group key. It is not necessary to hold the group key of the class.

【0018】請求項4記載の本発明は、複数の階級から
なる階層構造を持ち、複数の利用者からなるグループの
共有情報をグループ鍵で暗号化してグループで共有し、
利用者は暗号化された共有情報をグループ鍵で復号化し
て利用するとともに、利用者は自身の階級および自身の
階級より下位の階級の情報を暗号化/復号化することが
できるグループ鍵方法であって、グループ鍵が、公開鍵
暗号方式の鍵であって、秘密情報Sから公開された一方
向性関数gを用いて作成されるm個の各値ym=g
(S),…,yk+1 =g(yk+2 ),yk =g
(yk+1 ),…,y1 =g(y2 )から導出される秘密
鍵(SGKm ,…,SGKk+1 ,SGKk ,…,SGK
1 )および公開鍵(PGKm ,…,PGKk+1 ,PGK
k ,…,PGK1 )であり、階級毎に上位から各階級の
グループ鍵として、(SGK1 ,PGK1 ),…,(S
GKk+1 ,PGKk+1 ),(SGKk ,PGKk ),
…,(SGKm ,PGKm )のペアを順に利用者に割り
当て、利用者が、割り当てられた最新のグループ鍵(S
GKk ,PGKk )のみを保持し、このグループ鍵の公
開鍵PGKk を用いて、グループの共有情報を暗号化
し、秘密鍵SGKk を用いて、自身の階級のグループ鍵
の公開鍵PGKk で暗号化された共有情報を復号化し、
自身より下位の階級のグループ鍵で暗号化された情報を
復号化するには、利用者自身が自身の秘密鍵SGKk
ら一方向性関数を用いて導出された鍵を用いることを要
旨とする。
According to a fourth aspect of the present invention, there is provided a hierarchical structure including a plurality of classes, wherein shared information of a group of a plurality of users is encrypted with a group key and shared by the group.
A user decrypts and uses the encrypted shared information with a group key, and the user uses a group key method capable of encrypting / decrypting his / her class and information of a class lower than his / her class. Then, the group key is a key of a public key cryptosystem, and m values y m = g created using a one-way function g published from the secret information S
(S),..., Y k + 1 = g (y k + 2 ), y k = g
, SGK m , SGK k + 1 , SGK k , SGK m derived from (y k + 1 ),..., Y 1 = g (y 2 )
1 ) and public keys (PGK m ,..., PGK k + 1 , PGK
k, ..., is a PGK 1), as a group key from the top of each class in each class, (SGK 1, PGK 1) , ..., (S
GK k + 1 , PGK k + 1 ), (SGK k , PGK k ),
, (SGK m , PGK m ) are sequentially assigned to the user, and the user assigns the latest group key (S
GK k, holds the PGK k) only, using the public key PGK k of this group key, to encrypt the shared information of the group, using a secret key SGK k, public key PGK k of the group key to the class of its own Decrypts the shared information encrypted with
In order to decrypt information encrypted with a group key of a class lower than itself, it is essential that the user himself uses a key derived from his own secret key SGK k using a one-way function. .

【0019】請求項4記載の本発明にあっては、階層構
造を持った複数のグループにおいてグループ鍵は公開鍵
暗号方式の鍵であって、秘密情報Sから公開された一方
向性関数gを用いて作成されるm個の各値ym =g
(S),…,yk+1 =g(yk+2),yk =g
(yk+1 ),…,y1 =g(y2 )から導出される秘密
鍵(SGKm ,…,SGKk+1 ,SGKk ,…,SGK
1 )および公開鍵(PGKm ,…,PGKk+1 ,PGK
k ,…,PGK1 )であり、階級毎に上位から各階級の
グループ鍵として、(SGK1 ,PGK1 ),…,(S
GKk+1 ,PGKk+1 ),(SGKk ,PGKk ),
…,(SGKm ,PGKm )のペアを順に利用者に割り
当て、利用者は割り当てられた最新のグループ鍵(SG
k ,PGKk )のみを保持し、このグループ鍵の公開
鍵PGKk を用いて、グループの共有情報を暗号化し、
秘密鍵SGKk を用いて、自身の階級のグループ鍵の公
開鍵PGKk で暗号化された共有情報を復号化し、自身
より下位の階級のグループ鍵で暗号化された情報を復号
化するには、利用者自身が自身の秘密鍵SGKk から一
方向性関数を用いて導出された鍵を用いるため、利用者
は従来のように過去のグループ鍵を保持する必要がない
とともに、各グループのメンバは自身のグループ鍵の他
に下位の階級のグループ鍵を保持する必要もない。
According to the fourth aspect of the present invention, in a plurality of groups having a hierarchical structure, the group key is a key of a public key cryptosystem, and the one-way function g disclosed from the secret information S is M values y m = g created using
(S),..., Y k + 1 = g (y k + 2 ), y k = g
, SGK m , SGK k + 1 , SGK k , SGK m derived from (y k + 1 ),..., Y 1 = g (y 2 )
1 ) and public keys (PGK m ,..., PGK k + 1 , PGK
k, ..., is a PGK 1), as a group key from the top of each class in each class, (SGK 1, PGK 1) , ..., (S
GK k + 1 , PGK k + 1 ), (SGK k , PGK k ),
, (SGK m , PGK m ) are sequentially assigned to the user, and the user assigns the latest group key (SG
K k , PGK k ) and encrypts the group's shared information using the public key PGK k of this group key,
To decrypt the shared information encrypted with the public key PGK k of the own class key using the secret key SGK k and to decrypt the information encrypted with the group key of a lower class than itself Since the user himself / herself uses a key derived from his / her own secret key SGK k using a one-way function, the user does not need to hold the past group key as in the related art, and the member of each group Does not need to hold lower-level group keys in addition to its own group key.

【0020】また、請求項5記載の本発明は、複数の階
級からなる階層構造を持ち、複数の利用者からなるグル
ープの共有情報をグループ鍵で暗号化してグループで共
有し、利用者は暗号化された共有情報をグループ鍵で復
号化して利用するとともに、各利用者は自身の階級およ
び自身の階級より下位の階級の情報を暗号化/復号化す
ることができるグループ鍵方法であって、グループ鍵
が、共通鍵暗号方式の鍵であって、秘密情報S1から公
開された一方向性関数fを用いて作成されるn個の各値
n =f(S1),…,tk+1 =f(tk+2 ),tk
f(tk+1 ),…,t1 =f(t2 )および秘密情報S
2から公開された一方向性関数gを用いて作成されるm
個の各値ym =g(S2),…,yk+1 =g
(yk+2 ),yk =g(yk+1 ),…,y1 =g
(y2 )から導出される鍵(GKr ,…,GKk+1 ,G
k ,…,GK1 )であり、グループ鍵GKk の更新時
には、新たなグループ鍵GKk+1 を生成し、利用者が、
更新された最新のグループ鍵GKk のみを保持し、この
最新のグループ鍵を用いて、グループの共有情報を暗号
化するとともに自身の階級のグループ鍵で暗号化された
共有情報を復号化し、過去のグループ鍵で暗号化された
共有情報については、利用者自身が保持する最新のグル
ープ鍵GKk から一方向性関数fを用いて導出したグル
ープ鍵を用いて復号化され、自身より下位の階級のグル
ープ鍵で暗号化された情報については、利用者自身が自
身のグループ鍵から一方向性関数gで導出した鍵を用い
て復号化されることを要旨とする。
The present invention according to claim 5 has a hierarchical structure composed of a plurality of classes, encrypts shared information of a group of a plurality of users with a group key, and shares the information with the group. A group key method for decrypting and using the shared information with a group key, and enabling each user to encrypt / decrypt information of its own class and information of a class lower than its own class, The group key is a key of a common key cryptosystem, and each of n values t n = f (S1),..., Tk + created using a one-way function f disclosed from the secret information S1. 1 = f (t k + 2 ), t k =
f (t k + 1 ),..., t 1 = f (t 2 ) and secret information S
M using the one-way function g published from
Values y m = g (S2),..., Y k + 1 = g
(Y k + 2 ), y k = g (y k + 1 ),..., Y 1 = g
(GK r ,..., GK k + 1 , G) derived from (y 2 )
Kk ,..., GK 1 ). When the group key GK k is updated, a new group key GK k + 1 is generated, and the user
Only the updated latest group key GK k is retained, the shared information of the group is encrypted using the updated group key, and the shared information encrypted with the group key of its own class is decrypted. The shared information encrypted with the group key is decrypted using the group key derived by using the one-way function f from the latest group key GK k held by the user himself, and is classified into a lower class than itself. The gist is that the information encrypted with the group key is decrypted by the user using a key derived from the own group key with the one-way function g.

【0021】請求項5記載の本発明にあっては、階層構
造を持った複数のグループにおいてグループ鍵は共通鍵
暗号方式の鍵であって、秘密情報S1から公開された一
方向性関数gを用いて作成されるn個の各値tn =f
(S1),…,tk+1 =f(tk+2 ),tk =f(t
k+1 ),…,t1 =f(t2 )および秘密情報S2から
公開された一方向性関数gを用いて作成されるm個の各
値ym =g(S2),…,yk+1 =g(yk+2 ),yk
=g(yk+1 ),…,y1 =g(y2 )から導出される
鍵(GKr ,…,GKk+1 ,GKk ,…,GK1 )であ
り、グループ鍵GKk の更新時には、新たなグループ鍵
GKk+1 を生成し、利用者は最新のグループ鍵GKk
みを保持し、この最新のグループ鍵を用いて、グループ
の共有情報を暗号化するとともに自身の階級のグループ
鍵で暗号化された共有情報を復号化し、過去のグループ
鍵で暗号化された共有情報は、利用者自身が保持する最
新のグループ鍵GKk から一方向性関数fを用いて導出
したグループ鍵を用いて復号化され、自身より下位の階
級のグループ鍵で暗号化された情報は利用者自身が自身
のグループ鍵から一方向性関数gで導出した鍵を用いて
復号化されるため、利用者は従来のように過去のグルー
プ鍵を保持する必要がなく、また新規にグループに加わ
ったメンバも最新のグループ鍵のみを入手すればよく、
過去のグループ鍵を入手する必要がないとともに、更に
各グループのメンバは自身のグループ鍵の他に下位の階
級のグループ鍵を保持する必要もない。
According to the fifth aspect of the present invention, in a plurality of groups having a hierarchical structure, the group key is a key of a common key cryptosystem, and the one-way function g disclosed from the secret information S1 is N values t n = f created using
(S1), ..., t k + 1 = f (t k + 2), t k = f (t
k + 1 ),..., t 1 = f (t 2 ) and m values y m = g (S2),..., y created using the one-way function g disclosed from the secret information S2. k + 1 = g (y k + 2 ), y k
= G (y k + 1 ),..., Y 1 = keys (GK r ,..., GK k + 1 , GK k ,..., GK 1 ) derived from g (y 2 ), and the group key GK k At the time of updating, a new group key GK k + 1 is generated, and the user holds only the latest group key GK k , encrypts the shared information of the group using this latest group key, The shared information encrypted with the group key of the class is decrypted, and the shared information encrypted with the past group key is derived from the latest group key GK k held by the user using the one-way function f. The information encrypted with the group key of the lower level and the information encrypted with the group key of a lower level than itself is decrypted with the key derived by the user himself from the own group key with the one-way function g. Therefore, the user needs to keep the past group key as before. Ku, also members joined the new group it is sufficient to obtain only the latest of the group key,
There is no need to obtain a past group key, and furthermore, each group member does not need to hold a lower-level group key in addition to its own group key.

【0022】更に、請求項6記載の本発明は、複数の階
級からなる階層構造を持ち、複数の利用者からなるグル
ープの共有情報をグループ鍵で暗号化してグループで共
有し、利用者は暗号化された共有情報をグループ鍵で復
号化して利用するとともに、各利用者は自身の階級およ
び自身の階級より下位の階級の情報を暗号化/復号化す
ることができるグループ鍵方法であって、グループ鍵
が、公開鍵暗号方式の鍵であって、秘密情報S1から公
開された一方向性関数fを用いて作成されるn個の各値
n =f(S1),…,tk+1 =f(tk+2 ),tk
f(tk+1 ),…,t1 =f(t2 )および秘密情報S
2から公開された一方向性関数gを用いて作成されるm
個の各値ym =g(S2),…,yk+1 =g
(yk+2 ),yk =g(yk+1 ),…,y1 =g
(y2 )から導出される秘密鍵(SGKr ,…,SGK
k+1 ,SGKk ,…,SGK1 )および公開鍵(PGK
r ,…,PGKk+1 ,PGKk ,…,PGK1 )のペア
であり、グループ鍵(SGKk ,PGKk )の更新時に
は、新たなグループ鍵(SGKk+1 ,PGKk+1 )を生
成し、利用者が、最新のグループ鍵(SGKk ,PGK
k )のみを保持し、この最新のグループ鍵の公開鍵PG
k を用いて、グループの共有情報を暗号化し、グルー
プ鍵の公開鍵PGKk で暗号化された共有情報をグルー
プ鍵の秘密鍵SGKk で復号化し、過去のグループ鍵で
暗号化された共有情報にあっては、最新のグループ鍵の
秘密鍵SGKk から一方向性関数fを用いて導出した秘
密鍵を用いて復号化し、自身より下位の階級のグループ
鍵で暗号化された情報にあっては、利用者自身が自身の
グループ鍵から一方向性関数gで導出した秘密鍵を用い
て復号化されることを要旨とする。
Furthermore, the present invention according to claim 6 has a hierarchical structure composed of a plurality of classes, encrypts shared information of a group of a plurality of users with a group key, and shares the information with the group. A group key method for decrypting and using the shared information with a group key, and enabling each user to encrypt / decrypt information of its own class and information of a class lower than its own class, The group key is a key of the public key cryptosystem, and each of n values t n = f (S1),..., Tk + created using the one-way function f disclosed from the secret information S1. 1 = f (t k + 2 ), t k =
f (t k + 1 ),..., t 1 = f (t 2 ) and secret information S
M using the one-way function g published from
Values y m = g (S2),..., Y k + 1 = g
(Y k + 2 ), y k = g (y k + 1 ),..., Y 1 = g
Secret key (SGK r ,..., SGK) derived from (y 2 )
k + 1 , SGK k ,..., SGK 1 ) and the public key (PGK
r, ..., PGK k + 1 , PGK k, ..., is a pair of PGK 1), a group key (SGK k, at the time of renewal of the PGK k), a new group key (SGK k + 1, PGK k + 1) Is generated, and the user enters the latest group key (SGK k , PGK
k ) only, and the public key PG of this latest group key
The shared information of the group is encrypted using K k , the shared information encrypted with the public key PGK k of the group key is decrypted with the secret key SGK k of the group key, and the shared information encrypted with the past group key is encrypted. The information is decrypted using the secret key derived from the latest secret key SGK k of the group key using the one-way function f, and the information encrypted with the group key of a lower class than itself is obtained. In other words, the gist is that the user himself is decrypted using a secret key derived from his / her own group key with the one-way function g.

【0023】請求項6記載の本発明にあっては、グルー
プ鍵は公開鍵暗号方式の鍵であって、秘密情報S1から
公開された一方向性関数fを用いて作成されるn個の各
値tn =f(S1),…,tk+1 =f(tk+2 ),tk
=f(tk+1 ),…,t1 =f(t2 )および秘密情報
S2から公開された一方向性関数gを用いて作成される
m個の各値ym =g(S2),…,yk+1 =g
(yk+2 ),yk =g(yk+1),…,y1 =g
(y2 )から導出される秘密鍵(SGKr ,…,SGK
k+1 ,SGKk ,…,SGK1 )および公開鍵(PGK
r ,…,PGKk+1 ,PGKk,…,PGK1 )のペア
であり、グループ鍵(SGKk ,PGKk )の更新時に
は、新たなグループ鍵(SGKk+1 ,PGKk+1 )を生
成し、利用者は最新のグループ鍵(SGKk ,PG
k )のみを保持し、この最新のグループ鍵の公開鍵P
GKk を用いて、グループの共有情報を暗号化し、グル
ープ鍵の公開鍵PGKk で暗号化された共有情報をグル
ープ鍵の秘密鍵SGKk で復号化し、過去のグループ鍵
で暗号化された共有情報は最新のグループ鍵の秘密鍵S
GKk から一方向性関数fを用いて導出した秘密鍵を用
いて復号化し、自身より下位の階級のグループ鍵で暗号
化された情報は利用者自身が自身のグループ鍵から一方
向性関数gで導出した秘密鍵を用いて復号化されるた
め、利用者は従来のように過去のグループ鍵を保持する
必要がなく、また新規にグループに加わったメンバも最
新のグループ鍵のみを入手すればよく、過去のグループ
鍵を入手する必要がないとともに、更に各グループのメ
ンバは自身のグループ鍵の他に下位の階級のグループ鍵
を保持する必要もない。
According to the sixth aspect of the present invention, the group key is a key of a public key cryptosystem, and each of the n group keys is created by using a one-way function f published from the secret information S1. Value t n = f (S1),..., T k + 1 = f (t k + 2 ), t k
= F (t k + 1 ),..., T 1 = f (t 2 ) and m values y m = g (S2) created using the one-way function g published from the secret information S2 , ..., y k + 1 = g
(Y k + 2 ), y k = g (y k + 1 ),..., Y 1 = g
Secret key (SGK r ,..., SGK) derived from (y 2 )
k + 1 , SGK k ,..., SGK 1 ) and the public key (PGK
r, ..., PGK k + 1 , PGK k, ..., is a pair of PGK 1), a group key (SGK k, at the time of renewal of the PGK k), a new group key (SGK k + 1, PGK k + 1) Is generated, and the user receives the latest group key (SGK k , PG
K k ) and the public key P of this latest group key
Using GK k , the shared information of the group is encrypted, the shared information encrypted with the public key PGK k of the group key is decrypted with the secret key SGK k of the group key, and the shared information encrypted with the past group key is encrypted. Information is the secret key S of the latest group key
Information decrypted using a secret key derived from GK k using a one-way function f and encrypted with a group key of a lower class than itself is used by the user himself to obtain a one-way function g from his own group key. Since it is decrypted using the secret key derived in the above, the user does not need to keep the past group key as in the past, and if newly added members only get the latest group key Often, there is no need to obtain a past group key, and furthermore, each group member does not need to hold a lower-level group key in addition to its own group key.

【0024】請求項7記載の本発明は、請求項3乃至6
のいずれかに記載の発明において、前記グループ鍵が、
階層組織を表す公開情報Y1 ,Y2 ,…,Ym を用い
て、前記一方向性関数gで作成されるm個の各値ym
g(S‖Ym ),…,yk+1 =g(y′k+1
k+1 ),yk =g(y′k ‖Yk ),…,y1 =g
(y′1 ‖Y1 )から導出され、ここでy′k はyk
上位階層の値であることを要旨とする。
The present invention according to claim 7 provides the invention according to claims 3 to 6
In the invention according to any one of the above,
Using the public information Y 1 , Y 2 ,..., Y m representing the hierarchical organization, m values y m =
g (S‖Y m ),..., y k + 1 = g (y ′ k + 1
Y k + 1 ), y k = g (y ′ k ‖Y k ),..., Y 1 = g
It is derived from (y ′ 1 ‖Y 1 ), where y ′ k is a gist that is a value of an upper layer of y k .

【0025】請求項7記載の本発明にあっては、グルー
プ鍵は階層組織を表す公開情報Y1,Y2 ,…,Ym
用いて、一方向性関数gで作成されるm個の各値ym
g(S‖Ym ),…,yk+1 =g(y′k+1
k+1 ),yk =g(y′k ‖Yk ),…,y1 =g
(y′1 ‖Y1 )から導出される。
[0025] In the present invention according to claim 7, group key public information Y 1, Y 2 representing the hierarchical organization, ..., using the Y m, m-number of which is created by the one-way function g Each value y m =
g (S‖Y m ),..., y k + 1 = g (y ′ k + 1
Y k + 1 ), y k = g (y ′ k ‖Y k ),..., Y 1 = g
(Y ′ 1 ‖Y 1 ).

【0026】また、請求項8記載の本発明は、請求項1
乃至7のいずれかに記載の発明において、共有情報を利
用者が生成した任意の鍵で暗号化し、当該鍵をグループ
鍵で暗号化したものを添付情報として暗号化された共有
情報に添付することを要旨とする。
The present invention according to claim 8 provides the present invention according to claim 1.
In the invention according to any one of the first to seventh aspects, the shared information is encrypted with an arbitrary key generated by a user, and the key is encrypted with a group key and attached to the encrypted shared information as attached information. Is the gist.

【0027】請求項8記載の本発明にあっては、共有情
報を利用者生成の任意の鍵で暗号化し、この鍵をグルー
プ鍵で暗号化したものを添付情報として暗号化された共
有情報に添付する。
According to the present invention as set forth in claim 8, the shared information is encrypted with an arbitrary key generated by the user, and this key is encrypted with a group key, and the encrypted shared information is added as attached information to the encrypted shared information. Attach.

【0028】更に、請求項9記載の本発明は、請求項8
記載の発明において、グループ鍵が更新される度に、前
記添付情報を最新のグループ鍵で暗号化することを要旨
とする。
Further, the present invention described in claim 9 is based on claim 8.
In the invention described above, the gist is that the attached information is encrypted with the latest group key every time the group key is updated.

【0029】請求項9記載の本発明にあっては、グルー
プ鍵が更新される度に、添付情報を最新のグループ鍵で
暗号化する。
According to the ninth aspect of the present invention, each time the group key is updated, the attached information is encrypted with the latest group key.

【0030】請求項10記載の本発明は、複数の利用者
からなるグループの共有情報をグループ鍵で暗号化して
グループで共有し、利用者は暗号化された共有情報をグ
ループ鍵で復号化して利用するグループ鍵装置であっ
て、共通鍵暗号方式の鍵であって、秘密情報Sから公開
された一方向性関数fを用いて作成されるn個の各値t
n =f(S),…,tk+1 =f(tk+2 ),tk =f
(tk+1 ),…,t1 =f(t2 )から導出されるグル
ープ鍵(GKn ,…,GKk+1 ,GKk ,…,GK1
を生成するグループ鍵生成手段と、この生成されたグル
ープ鍵を更新する度に、鍵(GK1 ,…,GKk+1 ,G
k ,…,GKn )の順に利用し、グループ鍵GKk
更新時には、新たなグループ鍵GKk+1 を生成するグル
ープ鍵更新手段と、利用者端末に設けられ、更新された
最新のグループ鍵GKk のみを利用者自身のグループ鍵
として保持するグループ鍵保持手段と、このグループ鍵
保持手段に保持された最新のグループ鍵を用いて、グル
ープの共有情報を暗号化するとともに、グループ鍵で暗
号化された共有情報をグループ鍵で復号化する暗号化/
復号化手段と、過去のグループ鍵で暗号化された共有情
報を復号化するためのグループ鍵を前記グループ鍵保持
手段に保持されている利用者自身の最新のグループ鍵G
k から一方向性関数を用いて導出する過去情報用グル
ープ鍵導出手段とを有することを要旨とする。
According to a tenth aspect of the present invention, shared information of a group including a plurality of users is encrypted with a group key and shared by the group, and the user decrypts the encrypted shared information with the group key. A group key device to be used, which is a key of a common key cryptosystem, and each of n values t created by using a one-way function f disclosed from secret information S
n = f (S), ... , t k + 1 = f (t k + 2), t k = f
Group keys (GK n ,..., GK k + 1 , GK k ,..., GK 1 ) derived from (t k + 1 ),..., T 1 = f (t 2 )
.., GK k + 1 , GK 1 each time the generated group key is updated.
K k, ..., to use in the order of GK n), at the time of update of the group key GK k, and the group key update means for generating a new group key GK k + 1, provided to the user terminal, the updated latest Using the group key holding means for holding only the group key GK k as the user's own group key and the latest group key held in the group key holding means, the shared information of the group is encrypted, and the group key is encrypted. Encryption to decrypt shared information encrypted with
A decryption means, and a user's own latest group key G stored in the group key storage means, for storing a group key for decrypting the shared information encrypted with the past group key.
The key point is to have a past information group key deriving unit that derives from K k using a one-way function.

【0031】請求項10記載の本発明にあっては、グル
ープ鍵は共通鍵暗号方式の鍵であって、秘密情報Sから
公開された一方向性関数fを用いて作成されるn個の各
値tn =f(S),…,tk+1 =f(tk+2 ),tk
f(tk+1 ),…,t1 =f(t2 )から導出される鍵
(GKn ,…,GKk+1 ,GKk ,…,GK1 )であ
り、グループ鍵を更新する度に鍵(GK1 ,…,GK
k+1 ,GKk ,…,GKn)の順に利用し、グループ鍵
GKk の更新時には新たなグループ鍵GKk+1 を生成
し、利用者は最新のグループ鍵GKk のみを保持し、こ
の最新のグループ鍵を用いて、グループの共有情報を暗
号化し、グループ鍵で暗号化された共有情報をグループ
鍵で復号化し、過去のグループ鍵で暗号化された共有情
報は利用者自身が保持する最新のグループ鍵GKk から
一方向性関数を用いて導出したグループ鍵を用いて復号
化するため、利用者は従来のように過去のグループ鍵を
保持する必要がないとともに、また新規にグループに加
わったメンバも最新のグループ鍵のみを入手すればよ
く、過去のグループ鍵を入手する必要がない。
According to the tenth aspect of the present invention, the group key is a key of a common key cryptosystem, and each of the n group keys is generated by using a one-way function f published from the secret information S. Value t n = f (S),..., T k + 1 = f (t k + 2 ), t k =
f (t k + 1 ),..., t 1 = key (GK n ,..., GK k + 1 , GK k ,..., GK 1 ) derived from f (t 2 ), and updates the group key Each time the key (GK 1 , ..., GK
k + 1, GK k, ... , to use in the order of GK n), at the time of update of the group key GK k generates a new group key GK k + 1, the user holds only the most recent of the group key GK k, This latest group key is used to encrypt the shared information of the group, the shared information encrypted with the group key is decrypted with the group key, and the shared information encrypted with the past group key is retained by the user himself The decryption is performed using the group key derived from the latest group key GK k using a one-way function, so that the user does not need to retain the past group key as in the related art, and also needs to newly create the group. The members who have joined need only obtain the latest group key, and do not need to obtain the past group key.

【0032】また、請求項11記載の本発明は、複数の
利用者からなるグループの共有情報をグループ鍵で暗号
化してグループで共有し、利用者は暗号化された共有情
報をグループ鍵で復号化して利用するグループ鍵装置で
あって、公開鍵暗号方式の鍵であって、秘密情報Sから
公開された一方向性関数fを用いて作成されるn個の各
値tn =f(S),…,tk+1 =f(tk+2 ),tk
f(tk+1 ),…,t1 =f(t2 )から導出される秘
密鍵(SGKn ,…,SGKk+1 ,SGKk ,…,SG
1 )および公開鍵(PGKn ,…,PGKk+1 ,PG
k ,…,PGK1 )のペアを生成するグループ鍵用秘
密鍵/公開鍵生成手段と、前記グループ鍵を更新する度
に、鍵(SGKk ,PGK1 ),…,(SGKk+1 ,P
GKk+1),(SGKk ,PGKk ),…,(SG
n ,PGKn )の順に利用し、グループ鍵(SG
k ,PGKk )の更新時には、新たなグループ鍵(S
GKk+1 ,PGKk+1 )を生成するグループ鍵更新手段
と、利用者端末に設けられ、更新された最新のグループ
鍵(SGKk ,PGKk )のみを保持するグループ鍵保
持手段と、このグループ鍵保持手段に保持された最新の
グループ鍵の公開鍵PGKkを用いて、グループの共有
情報を暗号化するとともに、グループ鍵の公開鍵PGK
k で暗号化された共有情報をグループ鍵の秘密鍵SGK
k で復号化する暗号化/復号化手段と、過去のグループ
鍵で暗号化された共有情報を復号化するためのグループ
鍵の秘密鍵を前記グループ鍵保持手段で保持されている
最新のグループ鍵の秘密鍵SGKk から一方向性関数を
用いて導出する過去情報用グループ鍵導出手段とを有す
ることを要旨とする。
Further, according to the present invention, the shared information of a group consisting of a plurality of users is encrypted with a group key and shared by the group, and the user decrypts the encrypted shared information with the group key. A group key device that is used in the form of a key, and is a key of a public key cryptosystem, and each of n values t n = f (S (S) created using a one-way function f published from secret information S ),..., T k + 1 = f (t k + 2 ), t k =
secret keys (SGK n ,..., SGK k + 1 , SGK k ,..., SG) derived from f (t k + 1 ),..., t 1 = f (t 2 )
K 1 ) and public keys (PGK n ,..., PGK k + 1 , PG
K k, ..., and a private key / public key generation means for the group key to generate a pair of PGK 1), each time you update the group key, key (SGK k, PGK 1), ..., (SGK k + 1 , P
GK k + 1 ), (SGK k , PGK k ), ..., (SG
K n , PGK n ) in order, and the group key (SG
K k , PGK k ), the new group key (S
Group key updating means for generating GK k + 1 , PGK k + 1 ), and group key holding means provided in the user terminal and holding only the updated latest group key (SGK k , PGK k ); Using the latest group key public key PGK k held in the group key holding means, the group shared information is encrypted, and the group key public key PGK
The shared information encrypted with k is used as the secret key SGK of the group key.
an encryption / decryption means for decrypting with k , and a secret key of a group key for decrypting the shared information encrypted with the past group key, the latest group key held by the group key holding means. and summarized in that and a past information for the group key derivation means for deriving by using a one-way function from the secret key SGK k of.

【0033】請求項11記載の本発明にあっては、グル
ープ鍵は公開鍵暗号方式の鍵であって、秘密情報Sから
公開された一方向性関数fを用いて作成されるn個の各
値tn =f(S),…,tk+1 =f(tk+2 ),tk
f(tk+1 ),…,t1 =f(t2 )から導出される秘
密鍵(SGKn ,…,SGKk+1 ,SGKk ,…,SG
1 )および公開鍵(PGKn ,…,PGKk+1 ,PG
k ,…,PGK1 )のペアであり、該グループ鍵を更
新する度に、鍵(SGK1 ,PGK1 ),…,(SGK
k+1 ,PGKk+1 ),(SGKk ,PGKk ),…,
(SGKn ,PGKn )の順に利用し、グループ鍵(S
GKk ,PGKk )の更新時には、新たなグループ鍵
(SGKk+1 ,PGKk+1 )を生成し、利用者は更新さ
れた最新のグループ鍵(SGKk ,PGKk )のみを保
持し、この最新のグループ鍵の公開鍵PGKk を用いて
グループの共有情報を暗号化し、グループ鍵の公開鍵P
GKkで暗号化された共有情報をグループ鍵の秘密鍵S
GKk で復号化し、過去のグループ鍵で暗号化された共
有情報は最新のグループ鍵の秘密鍵SGKk から一方向
性関数を用いて導出した秘密鍵を用いて復号化するた
め、利用者は従来のように過去のグループ鍵を保持する
必要がないとともに、また新規にグループに加わったメ
ンバも最新のグループ鍵のみを入手すればよく、過去の
グループ鍵を入手する必要がない。
According to the eleventh aspect of the present invention, the group key is a key of a public key cryptosystem, and each of the n keys generated using a one-way function f published from the secret information S is used. Value t n = f (S),..., T k + 1 = f (t k + 2 ), t k =
secret keys (SGK n ,..., SGK k + 1 , SGK k ,..., SG) derived from f (t k + 1 ),..., t 1 = f (t 2 )
K 1 ) and public keys (PGK n ,..., PGK k + 1 , PG
K k, ..., is a pair of PGK 1), each time you update the group key, key (SGK 1, PGK 1), ..., (SGK
k + 1, PGK k + 1 ), (SGK k, PGK k), ...,
(SGK n , PGK n ) in this order and use the group key (S
When updating GK k , PGK k , a new group key (SGK k + 1 , PGK k + 1 ) is generated, and the user holds only the updated latest group key (SGK k , PGK k ). , Using the latest group key public key PGK k to encrypt the group shared information,
The shared information encrypted by GK k is used as the secret key S of the group key.
Since the shared information decrypted with GK k and encrypted with the past group key is decrypted using a secret key derived from the latest secret key SGK k of the group key using a one-way function, the user must Unlike the related art, it is not necessary to hold the past group key, and a member newly joining the group only needs to obtain the latest group key, and does not need to obtain the past group key.

【0034】更に、請求項12記載の本発明は、複数の
階級からなる階層構造を持ち、複数の利用者からなるグ
ループの共有情報をグループ鍵で暗号化してグループで
共有し、利用者は暗号化された共有情報をグループ鍵で
復号化して利用するとともに、各利用者は自身の階級お
よび自身の階級より下位の階級の情報を暗号化/復号化
することができるグループ鍵装置であって、共通鍵暗号
方式の鍵であって、秘密情報Sから公開された一方向性
関数gを用いて作成されるm個の各値ym =g(S),
…,yk+1 =g(yk+2 ),yk =g(yk+1 ),…,
1 =g(y2)から導出される鍵(GKm ,…,GK
k+1 ,GKk ,…,GK1 )を生成するグループ鍵生成
手段と、階級毎に上位から各階級のグループ鍵として、
(GK1,…,GKk+1 ,GKk ,…,GKm )の順に
利用者に割り当てるグループ鍵割当手段と、利用者端末
に設けられ、利用者に割り当てられた最新のグループ鍵
GKk のみを保持するグループ鍵保持手段と、このグル
ープ鍵保持手段に保持されたグループ鍵を用いて、グル
ープの共有情報を暗号化するとともに自身の階級のグル
ープ鍵で暗号化された共有情報を復号化する暗号化/復
号化手段と、自身より下位の階級のグループ鍵で暗号化
された情報を復号化するための鍵を前記グループ鍵保持
手段に保持されている利用者自身のグループ鍵GKk
ら一方向性関数を用いて導出する下位階級情報用鍵導出
手段とを有することを要旨とする。
Further, the invention according to claim 12 has a hierarchical structure composed of a plurality of classes, encrypts shared information of a group of a plurality of users with a group key, and shares the information with the group. A group key device capable of decrypting and using the shared information with a group key and encrypting / decrypting each user's own class and information of a class lower than the own class, M values y m = g (S), which are keys of a common key cryptosystem and are created using a one-way function g disclosed from secret information S
.., Y k + 1 = g (y k + 2 ), y k = g (y k + 1 ),.
keys (GK m ,..., GK) derived from y 1 = g (y 2 )
k + 1 , GK k ,..., GK 1 ), and a group key of each class from the top for each class.
(GK 1 ,..., GK k + 1 , GK k ,..., GK m ) and a group key assigning means assigned to the user in the order, and the latest group key GK k provided in the user terminal and assigned to the user Using the group key holding means holding only the group key and the group key held in the group key holding means, the shared information of the group is encrypted and the shared information encrypted with the group key of its own class is decrypted. Encryption / decryption means, and a user's own group key GK k held in the group key holding means for obtaining a key for decoding information encrypted with a group key of a lower rank than the own. A key deriving unit for deriving lower-class information using a one-way function.

【0035】請求項12記載の本発明にあっては、階層
構造を持った複数のグループにおいてグループ鍵は共通
鍵暗号方式の鍵であって、秘密情報Sから公開された一
方向性関数gを用いて作成されるm個の各値ym =g
(S),…,yk+1 =g(yk+ 2 ),yk =g
(yk+1 ),…,y1 =g(y2 )から導出される鍵
(GKm ,…,GKk+1 ,GKk ,…,GK1 )であ
り、階級毎に上位から各階級のグループ鍵として、(G
1 ,…,GKk+1 ,GKk ,…,GKm )の順に利用
者に割り当て、利用者は最新のグループ鍵GKk のみを
保持し、このグループ鍵を用いてグループの共有情報を
暗号化するとともに自身の階級のグループ鍵で暗号化さ
れた共有情報を復号化し、自身より下位の階級のグルー
プ鍵で暗号化された情報を復号化するには、利用者自身
が自身のグループ鍵GKk から一方向性関数を用いて導
出された鍵を用いるため、利用者は従来のように過去の
グループ鍵を保持する必要がないとともに、グループの
メンバは自身のグループ鍵の他に下位の階級のグループ
鍵を保持する必要もない。
According to the twelfth aspect of the present invention, in a plurality of groups having a hierarchical structure, the group key is a key of a common key cryptosystem, and the one-way function g disclosed from the secret information S is M values y m = g created using
(S),..., Y k + 1 = g (y k + 2 ), y k = g
(Y k + 1 ),..., Y 1 = g (y 2 ) derived keys (GK m ,..., GK k + 1 , GK k ,..., GK 1 ). (G
K 1, ..., GK k + 1, GK k, ..., order on allocation to the user of the GK m), the user holds only the most recent of the group key GK k, the shared information of the group using the group key In order to encrypt and decrypt the shared information encrypted with the group key of its own class, and to decrypt the information encrypted with the group key of a lower class than itself, the user himself / herself must use his / her own group key. Since a key derived from GK k by using a one-way function is used, the user does not need to retain the past group key as in the past, and the members of the group are not limited to their own group key but also the lower group keys. There is no need to keep class keys.

【0036】請求項13記載の本発明は、複数の階級か
らなる階層構造を持ち、複数の利用者からなるグループ
の共有情報をグループ鍵で暗号化してグループで共有
し、利用者は暗号化された共有情報をグループ鍵で復号
化して利用するとともに、利用者は自身の階級および自
身の階級より下位の階級の情報を暗号化/復号化するこ
とができるグループ鍵装置であって、公開鍵暗号方式の
鍵であって、秘密情報Sから公開された一方向性関数g
を用いて作成されるm個の各値ym =g(S),…,y
k+1 =g(yk+2 ),yk =g(yk+1 ),…,y1
g(y2 )から導出される秘密鍵(SGKm ,…,SG
k+1 ,SGKk ,…,SGK1 )および公開鍵(PG
m ,…,PGKk+1 ,PGKk ,…,PGK1 )を生
成するグループ鍵用秘密鍵/公開鍵生成手段と、階級毎
に上位から各階級のグループ鍵として、(SGK1 ,P
GK1 ),…,(SGKk+1 ,PGKk+1 ),(SGK
k ,PGKk ),…,(SGKm ,PGKm )のペアを
順に利用者に割り当るグループ鍵割当手段と、利用者端
末に設けられ、利用者に割り当てられたグループ鍵(S
GKk ,PGKk )のみを保持するグループ鍵保持手段
と、このグループ鍵保持手段に保持されたグループ鍵の
公開鍵PGKk を用いて、グループの共有情報を暗号化
し、秘密鍵SGKk を用いて、自身の階級のグループ鍵
の公開鍵PGKk で暗号化された共有情報を復号化する
暗号化/復号化手段と、自身より下位の階級のグループ
鍵で暗号化された情報を復号化するための鍵を前記グル
ープ鍵保持手段で保持された利用者自身が秘密鍵SGK
k から一方向性関数を用いて導出する下位階級情報用鍵
導出手段とを有することを要旨とする。
According to a thirteenth aspect of the present invention, a shared structure of a group of a plurality of users is encrypted with a group key and shared by the group, and the users are encrypted. A group key device capable of decrypting and using shared information with a group key and allowing a user to encrypt / decrypt information of his / her own class and classes lower than his / her own class. Key of the scheme, a one-way function g published from secret information S
M values y m = g (S),..., Y created using
k + 1 = g (y k + 2), y k = g (y k + 1), ..., y 1 =
secret key (SGK m ,..., SG) derived from g (y 2 )
K k + 1 , SGK k ,..., SGK 1 ) and the public key (PG
K m, ..., PGK k + 1, PGK k, ..., and a private key / public key generation means for the group key to generate a PGK 1), as a group key of each class from the upper level to each class, (SGK 1, P
GK 1 ),..., (SGK k + 1 , PGK k + 1 ), (SGK
k, PGK k), ..., (SGK m, and the group key assignment means hitting assigned to the user a pair of PGK m) in the order, provided to the user terminal, the group key assigned to the user (S
GK k , PGK k ) and the public key PGK k of the group key held in the group key holding means, encrypts the shared information of the group, and uses the secret key SGK k . Encrypting / decrypting means for decrypting the shared information encrypted with the public key PGK k of the own group key, and decrypting the information encrypted with the group key of a lower class than itself. The user himself / herself holds a key for the secret key SGK by the group key holding means.
and a key deriving means for lower-class information derived from k using a one-way function.

【0037】請求項13記載の本発明にあっては、階層
構造を持った複数のグループにおいてグループ鍵は公開
鍵暗号方式の鍵であって、秘密情報Sから公開された一
方向性関数gを用いて作成されるm個の各値ym =g
(S),…,yk+1 =g(yk+ 2 ),yk =g
(yk+1 ),…,y1 =g(y2 )から導出される秘密
鍵(SGKm ,…,SGKk+1 ,SGKk ,…,SGK
1 )および公開鍵(PGKm ,…,PGKk+1 ,PGK
k ,…,PGK1 )であり、階級毎に上位から各階級の
グループ鍵として、(SGK1 ,PGK1 ),…,(S
GKk+1 ,PGKk+1 ),(SGKk ,PGKk ),
…,(SGKm ,PGKm )のペアを順に利用者に割り
当て、利用者は割り当てられたグループ鍵(SGKk
PGKk )のみを保持し、このグループ鍵の公開鍵PG
k を用いて、グループの共有情報を暗号化し、秘密鍵
SGKk を用いて、自身の階級のグループ鍵の公開鍵P
GKk で暗号化された共有情報を復号化し、自身より下
位の階級のグループ鍵で暗号化された情報を復号化する
には、利用者自身が自身の秘密鍵SGKk から一方向性
関数を用いて導出された鍵を用いるため、利用者は従来
のように過去のグループ鍵を保持する必要がないととも
に、各グループのメンバは自身のグループ鍵の他に下位
の階級のグループ鍵を保持する必要もない。
According to the thirteenth aspect of the present invention, in a plurality of groups having a hierarchical structure, the group key is a key of a public key cryptosystem, and a one-way function g published from the secret information S is used. M values y m = g created using
(S),..., Y k + 1 = g (y k + 2 ), y k = g
, SGK m , SGK k + 1 , SGK k , SGK m derived from (y k + 1 ),..., Y 1 = g (y 2 )
1 ) and public keys (PGK m ,..., PGK k + 1 , PGK
k, ..., is a PGK 1), as a group key from the top of each class in each class, (SGK 1, PGK 1) , ..., (S
GK k + 1 , PGK k + 1 ), (SGK k , PGK k ),
, (SGK m , PGK m ) are sequentially assigned to the user, and the user assigns the assigned group key (SGK k ,
PGK k ) and the public key PG of this group key
Using K k , the group shared information is encrypted, and the private key SGK k is used to encrypt the public key P of the own group key.
In order to decrypt shared information encrypted with GK k and decrypt information encrypted with a group key of a lower class than itself, the user himself / herself obtains a one-way function from his / her own secret key SGK k. The user does not need to retain the past group keys as in the past, and the members of each group retain the lower-level group keys in addition to their own group keys because the derived keys are used. No need.

【0038】また、請求項14記載の本発明は、複数の
階級からなる階層構造を持ち、複数の利用者からなるグ
ループの共有情報をグループ鍵で暗号化してグループで
共有し、利用者は暗号化された共有情報をグループ鍵で
復号化して利用するとともに、各利用者は自身の階級お
よび自身の階級より下位の階級の情報を暗号化/復号化
することができるグループ鍵装置であって、共通鍵暗号
方式の鍵であって、秘密情報S1から公開された一方向
性関数fを用いて作成されるn個の各値tn =f(S
1),…,tk+1 =f(tk+2 ),tk =f
(tk+1 ),…,t1 =f(t2 )および秘密情報S2
から公開された一方向性関数gを用いて作成されるm個
の各値ym =g(S2),…,yk+1 =g(yk+2 ),
k =g(yk+1 ),…,y1 =g(y2 )から導出さ
れるグループ鍵(GKr ,…,GKk+1 ,GKk ,…,
GK1 )を生成し、グループ鍵GKk の更新時は、新た
なグループ鍵GKk+1 を生成するグループ鍵生成手段
と、利用者端末に設けられ、更新された最新のグループ
鍵GKk のみを利用者自身のグループ鍵として保持する
グループ鍵保持手段と、このグループ鍵保持手段に保持
されている最新のグループ鍵を用いて、グループの共有
情報を暗号化するとともに自身の階級のグループ鍵で暗
号化された共有情報を復号化する暗号化/復号化手段
と、過去のグループ鍵で暗号化された共有情報を復号化
するためのグループ鍵を前記グループ鍵保持手段に保持
されている利用者自身の最新のグループ鍵GKk から一
方向性関数fを用いて導出する過去情報用グループ鍵導
出手段と、自身より下位の階級のグループ鍵で暗号化さ
れた情報を復号化するための鍵を前記グループ鍵保持手
段に保持されている利用者自身のグループ鍵から一方向
性関数gで導出する下位階級情報用グループ鍵導出手段
とを有することを要旨とする。
The present invention according to claim 14 has a hierarchical structure composed of a plurality of classes, encrypts shared information of a group of a plurality of users with a group key, and shares the information with the group. A group key device capable of decrypting and using the shared information with a group key and encrypting / decrypting each user's own class and information of a class lower than the own class, A key of the common key cryptosystem, and each of n values t n = f (S (S) created using a one-way function f published from the secret information S1
1), ..., t k + 1 = f (t k + 2), t k = f
(T k + 1 ),..., T 1 = f (t 2 ) and secret information S2
, Each value y m = g (S2),..., Y k + 1 = g (y k + 2 ), created using the one-way function g published from
The group keys (GK r ,..., GK k + 1 , GK k ,...) derived from y k = g (y k + 1 ),..., y 1 = g (y 2 )
GK 1) generates, when updating the group key GK k includes a group key generating means for generating a new group key GK k + 1, is provided to the user terminal, the updated latest group key GK k only Using the latest group key held by the group key holding means for holding the group information as the user's own group key, encrypting the shared information of the group, and using the group key of its own class. An encryption / decryption unit for decrypting the encrypted shared information, and a user holding a group key for decrypting the shared information encrypted with the past group key in the group key holding unit. A past information group key deriving unit that derives from the latest group key GK k of the own device using a one-way function f, and a device that decrypts information encrypted with a group key of a lower rank than the own device. And a group key deriving unit for lower class information that derives the key from the user's own group key held in the group key holding unit by a one-way function g.

【0039】請求項14記載の本発明にあっては、階層
構造を持った複数のグループにおいてグループ鍵は共通
鍵暗号方式の鍵であって、秘密情報S1から公開された
一方向性関数fを用いて作成されるn個の各値tn =f
(S1),…,tk+1 =f(tk+2 ),tk =f(t
k+1 ),…,t1 =f(t2 )および秘密情報S2から
公開された一方向性関数gを用いて作成されるm個の各
値ym =g(S2),…,yk+1 =g(yk+2 ),yk
=g(yk+1 ),…,y1 =g(y2 )から導出される
鍵(GKr ,…,GKk+1 ,GKk ,…,GK1 )であ
り、グループ鍵GKk の更新時は、新たなグループ鍵G
k+1 を生成し、利用者は最新のグループ鍵GKk のみ
を保持し、この最新のグループ鍵を用いて、グループの
共有情報を暗号化するとともに自身の階級のグループ鍵
で暗号化された共有情報を復号化し、過去のグループ鍵
で暗号化された共有情報は、利用者自身が保持する最新
のグループ鍵GKk から一方向性関数fを用いて導出し
たグループ鍵を用いて復号化され、自身より下位の階級
のグループ鍵で暗号化された情報は利用者自身が自身の
グループ鍵から一方向性関数gで導出した鍵を用いて復
号化されるため、利用者は従来のように過去のグループ
鍵を保持する必要がなく、また新規にグループに加わっ
たメンバも最新のグループ鍵のみを入手すればよく、過
去のグループ鍵を入手する必要がないとともに、更に各
グループのメンバは自身のグループ鍵の他に下位の階級
のグループ鍵を保持する必要もない。
According to the fourteenth aspect of the present invention, in a plurality of groups having a hierarchical structure, the group key is a key of a common key cryptosystem, and the one-way function f disclosed from the secret information S1 is N values t n = f created using
(S1), ..., t k + 1 = f (t k + 2), t k = f (t
k + 1 ),..., t 1 = f (t 2 ) and m values y m = g (S2),..., y created using the one-way function g disclosed from the secret information S2. k + 1 = g (y k + 2 ), y k
= G (y k + 1 ),..., Y 1 = keys (GK r ,..., GK k + 1 , GK k ,..., GK 1 ) derived from g (y 2 ), and the group key GK k Is updated, a new group key G
After generating K k + 1 , the user holds only the latest group key GK k , encrypts the shared information of the group using the latest group key, and encrypts the information with the group key of its own class. The shared information encrypted with the past group key is decrypted using the group key derived using the one-way function f from the latest group key GK k held by the user. Then, the information encrypted with the group key of a lower class than itself is decrypted by the user himself using the key derived from the own group key by the one-way function g, so that the user can It is not necessary to retain the past group key, and newly joined members need only obtain the latest group key. There is no need to hold the group key of the lower class in addition to the group key only.

【0040】請求項15記載の本発明は、複数の階級か
らなる階層構造を持ち、複数の利用者からなるグループ
の共有情報をグループ鍵で暗号化してグループで共有
し、利用者は暗号化された共有情報をグループ鍵で復号
化して利用するとともに、各利用者は自身の階級および
自身の階級より下位の階級の情報を暗号化/復号化する
ことができるグループ鍵装置であって、公開鍵暗号方式
の鍵であって、秘密情報S1から公開された一方向性関
数fを用いて作成されるn個の各値tn =f(S1),
…,tk+1 =f(tk+2 ),tk =f(tk+1 ),…,
1 =f(t2 )および秘密情報S2から公開された一
方向性関数gを用いて作成されるm個の各値ym =g
(S2),…,yk+1 =g(yk+2 ),yk =g(y
k+1 ),…,y1 =g(y2 )から導出される秘密鍵
(SGKr ,…,SGKk+1 ,SGKk ,…,SG
1 )および公開鍵(PGKr ,…,PGKk+1 ,PG
k ,…,PGK1 )のペアを生成し、グループ鍵(S
GKk ,PGKk )の更新時には、新たなグループ鍵
(SGKk+1 ,PGKk+1 )を生成するグループ鍵用秘
密鍵/公開鍵生成手段と、利用者端末に設けられ、更新
された最新のグループ鍵(SGKk,PGKk )のみを
利用者自身のグループ鍵として保持するグループ鍵保持
手段と、このグループ鍵保持手段に保持された最新のグ
ループ鍵の公開鍵PGKk を用いて、グループの共有情
報を暗号化し、グループ鍵の公開鍵PGKk で暗号化さ
れた共有情報をグループ鍵の秘密鍵SGKk で復号化す
る暗号化/復号化手段と、過去のグループ鍵で暗号化さ
れた共有情報を復号化するための秘密鍵を前記グループ
鍵保持手段に保持されている利用者自身の最新のグルー
プ鍵の秘密鍵SGKk から一方向性関数fを用いて導出
する過去情報用秘密鍵導出手段と、自身より下位の階級
のグループ鍵で暗号化された情報を復号化するための秘
密鍵を前記グループ鍵保持手段に保持されている利用者
自身のグループ鍵から一方向性関数gで導出する下位階
級情報用秘密鍵導出手段とを有することを要旨とする。
According to a fifteenth aspect of the present invention, there is provided a hierarchical structure including a plurality of classes, wherein shared information of a group of a plurality of users is encrypted with a group key and shared by the group. A group key device for decrypting and using shared information with a group key, and allowing each user to encrypt / decrypt information of his / her own class and classes lower than his / her own class. N values t n = f (S1), which are keys of an encryption method and are created using a one-way function f published from secret information S1,
..., t k + 1 = f (t k + 2), t k = f (t k + 1), ...,
m values y m = g created using t 1 = f (t 2 ) and the one-way function g published from the secret information S2
(S2),..., Y k + 1 = g (y k + 2 ), y k = g (y
k + 1), ..., y 1 = g ( secret key that is derived from y 2) (SGK r, ... , SGK k + 1, SGK k, ..., SG
K 1 ) and public keys (PGK r ,..., PGK k + 1 , PG
K k ,..., PGK 1 ) and generates a group key (S
When updating the GK k , PGK k ), a group key secret key / public key generation means for generating a new group key (SGK k + 1 , PGK k + 1 ) and a user terminal are provided and updated. Using a group key holding unit that holds only the latest group key (SGK k , PGK k ) as a user's own group key and a public key PGK k of the latest group key held in the group key holding unit, Encrypting / decrypting means for encrypting the shared information of the group, decrypting the shared information encrypted with the public key PGK k of the group key with the secret key SGK k of the group key, and encrypting with the past group key; A past information secret derived by using a one-way function f from a secret key SGK k of the latest group key of the user held by the group key holding means, for obtaining a secret key for decrypting the shared information. Key leader Means and a secret key for decrypting information encrypted with a group key of a lower rank than itself, is derived by a one-way function g from the user's own group key held in said group key holding means. And a secret key deriving means for lower class information.

【0041】請求項15記載の本発明にあっては、グル
ープ鍵は公開鍵暗号方式の鍵であって、秘密情報S1か
ら公開された一方向性関数fを用いて作成されるn個の
各値tn =f(S1),…,tk+1 =f(tk+2 ),t
k =f(tk+1 ),…,t1=f(t2 )および秘密情
報S2から公開された一方向性関数gを用いて作成され
るm個の各値ym =g(S2),…,yk+1 =g(y
k+2 ),yk =g(yk+ 1 ),…,y1 =g(y2 )か
ら導出される秘密鍵(SGKr ,…,SGKk+1,SG
k ,…,SGK1 )および公開鍵(PGKr ,…,P
GKk+1 ,PGKk ,…,PGK1 )のペアであり、グ
ループ鍵(SGKk ,PGKk )の更新時には、新たな
グループ鍵(SGKk+1 ,PGKk+1 )を生成し、利用
者は最新のグループ鍵(SGKk ,PGKk )のみを保
持し、この最新のグループ鍵の公開鍵PGKk を用い
て、グループの共有情報を暗号化し、グループ鍵の公開
鍵PGKk で暗号化された共有情報をグループ鍵の秘密
鍵SGKk で復号化し、過去のグループ鍵で暗号化され
た共有情報は最新のグループ鍵の秘密鍵SGKk から一
方向性関数fを用いて導出した秘密鍵を用いて復号化
し、自身より下位の階級のグループ鍵で暗号化された情
報は利用者自身が自身のグループ鍵から一方向性関数g
で導出した秘密鍵を用いて復号化されるため、利用者は
従来のように過去のグループ鍵を保持する必要がなく、
また新規にグループに加わったメンバも最新のグループ
鍵のみを入手すればよく、過去のグループ鍵を入手する
必要がないとともに、更に各グループのメンバは自身の
グループ鍵の他に下位の階級のグループ鍵を保持する必
要もない。
According to the fifteenth aspect of the present invention, the group key is a key of the public key cryptosystem, and each of the n group keys created by using the one-way function f published from the secret information S1. Value t n = f (S1),..., T k + 1 = f (t k + 2 ), t
k = f (t k + 1 ),..., t 1 = f (t 2 ) and m values y m = g (S 2) created using the one-way function g published from the secret information S 2. ),..., Y k + 1 = g (y
k + 2 ), y k = g (y k + 1 ),..., y 1 = g (y 2 ) derived secret keys (SGK r ,..., SGK k + 1 , SG
K k ,..., SGK 1 ) and the public key (PGK r ,.
GK k + 1 , PGK k ,..., PGK 1 ). When the group key (SGK k , PGK k ) is updated, a new group key (SGK k + 1 , PGK k + 1 ) is generated. The user holds only the latest group key (SGK k , PGK k ), encrypts the group's shared information using the latest group key's public key PGK k , and encrypts it with the group key's public key PGK k . The encrypted shared information is decrypted with the secret key SGK k of the group key, and the shared information encrypted with the past group key is used as the secret derived by using the one-way function f from the secret key SGK k of the latest group key. The user decrypts the information using the key, and encrypts the information encrypted with the group key of a lower class than the user.
Since it is decrypted using the secret key derived in, the user does not need to retain the past group key as in the past,
Also, newly added members need only obtain the latest group key, and do not need to obtain the past group key. In addition, members of each group have their own group key as well as lower-level groups. There is no need to keep keys.

【0042】請求項16記載の本発明は、請求項12乃
至15のいずれかに記載の発明において、前記グループ
鍵が、階層組織を表す公開情報Y1 ,Y2 ,…,Ym
用いて、前記一方向性関数gで作成されるm個の各値y
m =g(S‖Ym ),…,yk+1 =g(y′k+1 ‖Y
k+1 ),yk =g(y′k ‖Yk ),…,y1 =g
(y′1 ‖Y1 )から導出され、ここでy′k はyk
上位階層の値であることを要旨とする。
The invention of claim 16 is the invention according to any one of claims 12 to 15, wherein the group key, public information Y 1, Y 2 representing the hierarchical organization, ..., using the Y m , M values y produced by the one-way function g
m = g (S‖Y m ),..., y k + 1 = g (y ′ k + 1 ‖Y
k + 1 ), y k = g (y ′ k ‖Y k ),..., y 1 = g
It is derived from (y ′ 1 ‖Y 1 ), where y ′ k is a gist that is a value of an upper layer of y k .

【0043】請求項16記載の本発明にあっては、グル
ープ鍵は階層組織を表す公開情報Y1 ,Y2 ,…,Ym
を用いて、一方向性関数gで作成されるm個の各値ym
=g(S‖Ym ),…,yk+1 =g(y′k+1
k+1 ),yk =g(y′k ‖Yk),…,y1 =g
(y′1 ‖Y1 )から導出される。
According to the present invention, the group key is public information Y 1 , Y 2 ,..., Y m representing a hierarchical organization.
And m values y m created by the one-way function g
= G (S‖Y m ),..., Y k + 1 = g (y ′ k + 1
Y k + 1 ), y k = g (y ′ k ‖Y k ),..., Y 1 = g
(Y ′ 1 ‖Y 1 ).

【0044】また、請求項17記載の本発明は、請求項
10乃至16のいずれかに記載の発明において、共有情
報を利用者が生成した任意の鍵で暗号化し、当該鍵をグ
ループ鍵で暗号化したものを添付情報として暗号化され
た共有情報に添付することを要旨とする。
According to a seventeenth aspect of the present invention, in the invention according to any one of the tenth to sixteenth aspects, the shared information is encrypted with an arbitrary key generated by a user, and the key is encrypted with a group key. The gist is to attach the encrypted information as attached information to the encrypted shared information.

【0045】請求項17記載の本発明にあっては、共有
情報を利用者生成の任意の鍵で暗号化し、この鍵をグル
ープ鍵で暗号化したものを添付情報として暗号化された
共有情報に添付する。
According to the seventeenth aspect of the present invention, the shared information is encrypted with an arbitrary key generated by the user, and this key is encrypted with the group key, and the encrypted shared information is added as the attached information to the encrypted shared information. Attach.

【0046】更に、請求項18記載の本発明は、請求項
17記載の発明において、グループ鍵が更新される度
に、前記添付情報を最新のグループ鍵で暗号化すること
を要旨とする。
Further, the present invention according to claim 18 is characterized in that, in the invention according to claim 17, every time the group key is updated, the attached information is encrypted with the latest group key.

【0047】請求項18記載の本発明にあっては、グル
ープ鍵が更新される度に、添付情報を最新のグループ鍵
で暗号化する。
According to the present invention, each time the group key is updated, the attached information is encrypted with the latest group key.

【0048】請求項19記載の本発明は、複数の利用者
からなるグループの共有情報をグループ鍵で暗号化して
グループで共有し、利用者は暗号化された共有情報をグ
ループ鍵で復号化して利用するグループ鍵プログラムを
記録した記録媒体であって、グループ鍵が、共通鍵暗号
方式の鍵であって、秘密情報Sから公開された一方向性
関数fを用いて作成されるn個の各値tn =f(S),
…,tk+1 =f(tk+ 2 ),tk =f(tk+1 ),…,
1 =f(t2 )から導出される鍵(GKn ,…,GK
1 ,GKk ,…,GK1 )であり、該グループ鍵を更新
する度に、鍵(GK1 ,…,GKk+1 ,GKk ,…,G
n )の順に利用し、グループ鍵GKkの更新時には、
新たなグループ鍵GKk+1 を生成し、利用者が、更新さ
れた最新のグループ鍵GKk のみを保持し、この最新の
グループ鍵を用いて、グループの共有情報を暗号化し、
グループ鍵で暗号化された共有情報をグループ鍵で復号
化し、過去のグループ鍵で暗号化された共有情報にあっ
ては、利用者自身が保持する最新のグループ鍵GKk
ら一方向性関数を用いて導出したグループ鍵を用いて復
号化するグループ鍵プログラムを記録媒体に記録するこ
とを要旨とする。
According to a nineteenth aspect of the present invention, shared information of a group consisting of a plurality of users is encrypted with a group key and shared by the group, and the user decrypts the encrypted shared information with the group key. A recording medium on which a group key program to be used is recorded, wherein the group key is a key of a common key cryptosystem, and each of n pieces of keys generated by using a one-way function f disclosed from the secret information S. Value t n = f (S),
..., t k + 1 = f (t k + 2), t k = f (t k + 1), ...,
Keys (GK n ,..., GK) derived from t 1 = f (t 2 )
1, GK k, ..., is a GK 1), each time you update the group key, key (GK 1, ..., GK k + 1, GK k, ..., G
K n ), and when updating the group key GK k ,
A new group key GK k + 1 is generated, and the user holds only the updated latest group key GK k , encrypts the shared information of the group using the updated group key,
The shared information encrypted with the group key is decrypted with the group key. For the shared information encrypted with the past group key, a one-way function is calculated from the latest group key GK k held by the user himself / herself. The gist of the invention is to record a group key program to be decrypted using a group key derived by using the recording medium on a recording medium.

【0049】請求項19記載の本発明にあっては、グル
ープ鍵は共通鍵暗号方式の鍵であって、秘密情報Sから
公開された一方向性関数fを用いて作成されるn個の各
値tn =f(S),…,tk+1 =f(tk+2 ),tk
f(tk+1 ),…,t1 =f(t2 )から導出される鍵
(GKn ,…,GKk+1 ,GKk ,…,GK1 )であ
り、グループ鍵を更新する度に鍵(GK1 ,…,GK
k+1 ,GKk ,…,GKn)の順に利用し、グループ鍵
GKk の更新時には新たなグループ鍵GKk+1 を生成
し、利用者は最新のグループ鍵GKk のみを保持し、こ
の最新のグループ鍵を用いて、グループの共有情報を暗
号化し、グループ鍵で暗号化された共有情報をグループ
鍵で復号化し、過去のグループ鍵で暗号化された共有情
報は利用者自身が保持する最新のグループ鍵GKk から
一方向性関数を用いて導出したグループ鍵を用いて復号
化するグループ鍵プログラムを記録媒体に記録している
ため、該記録媒体を用いて、その流通性を高めることが
できる。
According to the nineteenth aspect of the present invention, the group key is a key of a common key cryptosystem, and each of the n group keys is created using a one-way function f published from the secret information S. Value t n = f (S),..., T k + 1 = f (t k + 2 ), t k =
f (t k + 1 ),..., t 1 = key (GK n ,..., GK k + 1 , GK k ,..., GK 1 ) derived from f (t 2 ), and updates the group key Each time the key (GK 1 , ..., GK
k + 1, GK k, ... , to use in the order of GK n), at the time of update of the group key GK k generates a new group key GK k + 1, the user holds only the most recent of the group key GK k, Using this latest group key, the group shared information is encrypted, the shared information encrypted with the group key is decrypted with the group key, and the shared information encrypted with the past group key is retained by the user himself. Since the group key program for decrypting using the group key derived from the latest group key GK k using the one-way function is recorded on the recording medium, the distribution medium is improved by using the recording medium. be able to.

【0050】また、請求項20記載の本発明は、複数の
利用者からなるグループの共有情報をグループ鍵で暗号
化してグループで共有し、利用者は暗号化された共有情
報をグループ鍵で復号化して利用するグループ鍵プログ
ラムを記録した記録媒体であって、グループ鍵が、公開
鍵暗号方式の鍵であって、秘密情報Sからなる公開され
た一方向性関数fを用いて作成されるn個の各値tn
f(S),…,tk+1=f(tk+2 ),tk =f(t
k+1 ),…,t1 =f(t2 )から導出される秘密鍵
(SGKn ,…,SGKk+1 ,SGKk ,…,SG
1 )および公開鍵(PGKn ,…,PGKk+1 ,PG
k ,…,PGK1 )のペアであり、該グループ鍵を更
新する度に、鍵(SGK1 ,PGK1 ),…,(SGK
k+1 ,PGKk+1),(SGKk ,PGKk ),…,
(SGKn ,PGKn )の順に利用し、グループ鍵(S
GKk ,PGKk )の更新時には、新たなグループ鍵
(SGKk+1 ,PGKk+1 )を生成し、利用者が、更新
された最新のグループ鍵(SGKk ,PGKk )のみを
保持し、この最新のグループ鍵の公開鍵PGKk を用い
て、グループの共有情報を暗号化し、グループ鍵の公開
鍵PGKk で暗号化された共有情報をグループ鍵の秘密
鍵SGKk で復号化し、過去のグループ鍵で暗号化され
た共有情報は、最新のグループ鍵の秘密密鍵SGKk
ら一方向性関数を用いて導出した秘密鍵を用いて復号化
するグループ鍵プログラムを記録媒体に記録することを
要旨とする。
Further, according to the present invention, the shared information of a group consisting of a plurality of users is encrypted with a group key and shared by the group, and the user decrypts the encrypted shared information with the group key. A recording medium that stores a group key program to be used after conversion, wherein the group key is a key of a public key cryptosystem and is created using a public one-way function f composed of secret information S. Values t n =
f (S), ..., t k + 1 = f (t k + 2), t k = f (t
k + 1), ..., t 1 = secret key that is derived from f (t 2) (SGK n , ..., SGK k + 1, SGK k, ..., SG
K 1 ) and public keys (PGK n ,..., PGK k + 1 , PG
K k, ..., is a pair of PGK 1), each time you update the group key, key (SGK 1, PGK 1), ..., (SGK
k + 1, PGK k + 1 ), (SGK k, PGK k), ...,
(SGK n , PGK n ) in this order and use the group key (S
When GK k , PGK k ) is updated, a new group key (SGK k + 1 , PGK k + 1 ) is generated, and the user holds only the updated latest group key (SGK k , PGK k ). Then, the shared information of the group is encrypted using the latest public key PGK k of the group key, and the shared information encrypted with the public key PGK k of the group key is decrypted with the secret key SGK k of the group key. For the shared information encrypted with the past group key, a group key program for decrypting with the secret key derived from the latest secret key SGK k of the group key using a one-way function is recorded on the recording medium. That is the gist.

【0051】請求項20記載の本発明にあっては、グル
ープ鍵は公開鍵暗号方式の鍵であって、秘密情報Sから
公開された一方向性関数fを用いて作成されるn個の各
値tn =f(S),…,tk+1 =f(tk+2 ),tk
f(tk+1 ),…,t1 =f(t2 )から導出される秘
密鍵(SGKn ,…,SGKk+1 ,SGKk ,…,SG
1 )および公開鍵(PGKn ,…,PGKk+1 ,PG
k ,…,PGK1 )のペアであり、該グループ鍵を更
新する度に、鍵(SGKk ,PGK1 ),…,(SGK
k+1 ,PGKk+1 ),(SGKk ,PGKk ),…,
(SGKn ,PGKn )の順に利用し、グループ鍵(S
GKk ,PGKk )の更新時には、新たなグループ鍵
(SGKk+1 ,PGKk+1 )を生成し、利用者は更新さ
れた最新のグループ鍵(SGKk ,PGKk )のみを保
持し、この最新のグループ鍵の公開鍵PGKk を用いて
グループの共有情報を暗号化し、グループ鍵の公開鍵P
GKkで暗号化された共有情報をグループ鍵の秘密鍵S
GKk で復号化し、過去のグループ鍵で暗号化された共
有情報は最新のグループ鍵の秘密鍵SGKk から一方向
性関数を用いて導出した秘密鍵を用いて復号化するグル
ープ鍵プログラムを記録媒体に記録しているため、該記
録媒体を用いて、その流通性を高めることができる。
According to the twentieth aspect of the present invention, the group key is a key of a public key cryptosystem, and each of the n group keys is created by using a one-way function f published from the secret information S. Value t n = f (S),..., T k + 1 = f (t k + 2 ), t k =
secret keys (SGK n ,..., SGK k + 1 , SGK k ,..., SG) derived from f (t k + 1 ),..., t 1 = f (t 2 )
K 1 ) and public keys (PGK n ,..., PGK k + 1 , PG
K k, ..., is a pair of PGK 1), each time you update the group key, key (SGK k, PGK 1), ..., (SGK
k + 1, PGK k + 1 ), (SGK k, PGK k), ...,
(SGK n , PGK n ) in this order and use the group key (S
When updating GK k , PGK k , a new group key (SGK k + 1 , PGK k + 1 ) is generated, and the user holds only the updated latest group key (SGK k , PGK k ). , Using the latest group key public key PGK k to encrypt the group shared information,
The shared information encrypted by GK k is used as the secret key S of the group key.
The shared information decrypted with GK k and encrypted with the past group key records a group key program to be decrypted using a secret key derived from the latest secret key SGK k of the group key using a one-way function. Since the information is recorded on a medium, the distribution of the medium can be improved by using the recording medium.

【0052】更に、請求項21記載の本発明は、複数の
階級からなる階層構造を持ち、複数の利用者からなるグ
ループの共有情報をグループ鍵で暗号化してグループで
共有し、利用者は暗号化された共有情報をグループ鍵で
復号化して利用するとともに、各利用者は自身の階級お
よび自身の階級より下位の階級の情報を暗号化/復号化
することができるグループ鍵プログラムを記録した記録
媒体であって、グループ鍵が、共通鍵暗号方式の鍵であ
って、秘密情報Sから公開された一方向性関数gを用い
て作成されるm個の各値ym =g(S),…,yk+1
g(yk+2 ),yk =g(yk+1 ),…,y1 =g(y
2 )から導出される鍵(GKm ,…,GKk+1 ,G
k ,…,GK1 )であり、階級毎に上位から各階級の
グループ鍵として、(GK1 ,…,GKk+1 ,GKk
…,GKm )の順に利用者に割り当て、利用者が、割り
当てられた最新のグループ鍵GKk のみを保持し、この
グループ鍵を用いて、グループの共有情報を暗号化する
とともに自身の階級のグループ鍵で暗号化された共有情
報を復号化し、自身より下位の階級のグループ鍵で暗号
化された情報を復号化するには、利用者自身が自身のグ
ループ鍵GKk から一方向性関数を用いて導出された鍵
を用いるグループ鍵プログラムを記録媒体に記録するこ
とを要旨とする。
Further, the present invention according to claim 21 has a hierarchical structure composed of a plurality of classes, encrypts shared information of a group of a plurality of users with a group key, and shares the information with the group. A record that records a group key program that can use the decrypted shared information by decrypting it with a group key and encrypt / decrypt each user's own class and information of a class lower than the own class. Medium, wherein the group key is a key of a common key cryptosystem, and m values y m = g (S), which are created using a one-way function g disclosed from the secret information S, …, Y k + 1 =
g (y k + 2 ), y k = g (y k + 1 ),..., y 1 = g (y
2 ) derived keys (GK m ,..., GK k + 1 , G
K k, ..., is a GK 1), as a group key of each class from the upper level to each class, (GK 1, ..., GK k + 1, GK k,
.., GK m ) in this order, the user holds only the latest assigned group key GK k , uses this group key to encrypt the shared information of the group, In order to decrypt the shared information encrypted with the group key and decrypt the information encrypted with the lower group key, the user himself / herself obtains a one-way function from his / her own group key GK k. The gist of the present invention is to record a group key program using a key derived by using the recording medium on a recording medium.

【0053】請求項21記載の本発明にあっては、階層
構造を持った複数のグループにおいてグループ鍵は共通
鍵暗号方式の鍵であって、秘密情報Sから公開された一
方向性関数gを用いて作成されるm個の各値ym =g
(S),…,yk+1 =g(yk+ 2 ),yk =g
(yk+1 ),…,y1 =g(y2 )から導出される鍵
(GKm ,…,GKk+1 ,GKk ,…,GK1 )であ
り、階級毎に上位から各階級のグループ鍵として、(G
1 ,…,GKk+1 ,GKk ,…,GKm )の順に利用
者に割り当て、利用者は最新のグループ鍵GKk のみを
保持し、このグループ鍵を用いてグループの共有情報を
暗号化するとともに自身の階級のグループ鍵で暗号化さ
れた共有情報を復号化し、自身より下位の階級のグルー
プ鍵で暗号化された情報を復号化するには、利用者自身
が自身のグループ鍵GKk から一方向性関数を用いて導
出された鍵を用いるグループ鍵プログラムを記録媒体に
記録しているため、該記録媒体を用いて、その流通性を
高めることができる。
According to the twenty-first aspect of the present invention, in a plurality of groups having a hierarchical structure, the group key is a key of a common key cryptosystem, and the one-way function g disclosed from the secret information S is M values y m = g created using
(S),..., Y k + 1 = g (y k + 2 ), y k = g
(Y k + 1 ),..., Y 1 = g (y 2 ) derived keys (GK m ,..., GK k + 1 , GK k ,..., GK 1 ). (G
K 1, ..., GK k + 1, GK k, ..., order on allocation to the user of the GK m), the user holds only the most recent of the group key GK k, the shared information of the group using the group key In order to encrypt and decrypt the shared information encrypted with the group key of its own class, and to decrypt the information encrypted with the group key of a lower class than itself, the user himself / herself must use his / her own group key. Since a group key program using a key derived from GK k using a one-way function is recorded on a recording medium, the distribution can be enhanced using the recording medium.

【0054】請求項22記載の本発明は、複数の階級か
らなる階層構造を持ち、複数の利用者からなるグループ
の共有情報をグループ鍵で暗号化してグループで共有
し、利用者は暗号化された共有情報をグループ鍵で復号
化して利用するとともに、利用者は自身の階級および自
身の階級より下位の階級の情報を暗号化/復号化するこ
とができるグループ鍵プログラムを記録した記録媒体で
あって、グループ鍵が、公開鍵暗号方式の鍵であって、
秘密情報Sから公開された一方向性関数gを用いて作成
されるm個の各値ym =g(S),…,yk+1 =g(y
k+2 ),yk =g(yk+1 ),…,y1 =g(y2 )か
ら導出される秘密鍵(SGKm ,…,SGKk+1 ,SG
k ,…,SGK1 )および公開鍵(PGKm ,…,P
GKk+1 ,PGKk ,…,PGK1 )であり、階級毎に
上位から各階級のグループ鍵として、(SGK1 ,PG
1 ),…,(SGKk+1 ,PGKk+1 ),(SG
k ,PGKk ),…,(SGKm ,PGKm )のペア
を順に利用者に割り当て、利用者が、割り当てられたグ
ループ鍵(SGKk ,PGKk )のみを保持し、このグ
ループ鍵の公開鍵PGKk を用いて、グループの共有情
報を暗号化し、秘密鍵SGKk を用いて、自身の階級の
グループ鍵の公開鍵PGKk で暗号化された共有情報を
復号化し、自身より下位の階級のグループ鍵で暗号化さ
れた情報を復号化するには、利用者自身が自身の秘密鍵
SGKk から一方向性関数を用いて導出された鍵を用い
るグループ鍵プログラムを記録媒体に記録することを要
旨とする。
The invention according to claim 22 has a hierarchical structure composed of a plurality of classes, encrypts shared information of a group of a plurality of users with a group key, and shares the information with the group. The shared medium is decrypted with a group key and used, and the user is a recording medium that records a group key program capable of encrypting / decrypting his / her own class and information of a class lower than his / her own class. The group key is a public key encryption key,
Each of the m values y m = g (S),..., Y k + 1 = g (y) created using the one-way function g published from the secret information S
k + 2 ), y k = g (y k + 1 ),..., y 1 = g (y 2 ), derived from secret keys (SGK m ,..., SGK k + 1 , SG
K k ,..., SGK 1 ) and the public key (PGK m ,.
GK k + 1 , PGK k ,..., PGK 1 ), and (SGK 1 , PGK 1 , PGK 1 )
K 1 ),..., (SGK k + 1 , PGK k + 1 ), (SG
K k, PGK k), ... , assigned to the user to order a pair of (SGK m, PGK m), user, group assigned key (SGK k, holds the PGK k) only, of this group key Using the public key PGK k , the shared information of the group is encrypted. Using the secret key SGK k , the shared information encrypted with the public key PGK k of the own group key is decrypted. To decrypt the information encrypted with the class key of the class, the user himself records a group key program using a key derived from his own secret key SGK k using a one-way function on a recording medium. That is the gist.

【0055】請求項22記載の本発明にあっては、階層
構造を持った複数のグループにおいてグループ鍵は公開
鍵暗号方式の鍵であって、秘密情報Sから公開された一
方向性関数gを用いて作成されるm個の各値ym =g
(S),…,yk+1 =g(yk+ 2 ),yk =g
(yk+1 ),…,y1 =g(y2 )から導出される秘密
鍵(SGKm ,…,SGKk+1 ,SGKk ,…,SGK
1 )および公開鍵(PGKm ,…,PGKk+1 ,PGK
k ,…,PGK1 )であり、階級毎に上位から各階級の
グループ鍵として、(SGK1 ,PGK1 ),…,(S
GKk+1 ,PGKk+1 ),(SGKk ,PGKk ),
…,(SGKm ,PGKm )のペアを順に利用者に割り
当て、利用者は割り当てられたグループ鍵(SGKk
PGKk )のみを保持し、このグループ鍵の公開鍵PG
k を用いて、グループの共有情報を暗号化し、秘密鍵
SGKk を用いて、自身の階級のグループ鍵の公開鍵P
GKk で暗号化された共有情報を復号化し、自身より下
位の階級のグループ鍵で暗号化された情報を復号化する
には、利用者自身が自身の秘密鍵SGKk から一方向性
関数を用いて導出された鍵を用いるグループ鍵プログラ
ムを記録媒体に記録しているため、該記録媒体を用い
て、その流通性を高めることができる。
According to the twenty-second aspect of the present invention, in a plurality of groups having a hierarchical structure, a group key is a key of a public key cryptosystem, and a one-way function g disclosed from secret information S is M values y m = g created using
(S),..., Y k + 1 = g (y k + 2 ), y k = g
, SGK m , SGK k + 1 , SGK k , SGK m derived from (y k + 1 ),..., Y 1 = g (y 2 )
1 ) and public keys (PGK m ,..., PGK k + 1 , PGK
k, ..., is a PGK 1), as a group key from the top of each class in each class, (SGK 1, PGK 1) , ..., (S
GK k + 1 , PGK k + 1 ), (SGK k , PGK k ),
, (SGK m , PGK m ) are sequentially assigned to the user, and the user assigns the assigned group key (SGK k ,
PGK k ) and the public key PG of this group key
Using K k , the group shared information is encrypted, and the private key SGK k is used to encrypt the public key P of the own group key.
In order to decrypt shared information encrypted with GK k and decrypt information encrypted with a group key of a lower class than itself, the user himself / herself obtains a one-way function from his / her own secret key SGK k. Since the group key program using the key derived using the recording medium is recorded on the recording medium, the distribution can be improved by using the recording medium.

【0056】また、請求項23記載の本発明は、複数の
階級からなる階層構造を持ち、複数の利用者からなるグ
ループの共有情報をグループ鍵で暗号化してグループで
共有し、利用者は暗号化された共有情報をグループ鍵で
暗号して利用するとともに、各利用者は自身の階級およ
び自身の階級より下位の階級の情報を暗号化/復号化す
ることができるグループ鍵プログラムを記録した記録媒
体であって、グループ鍵が、共通鍵暗号方式の鍵であっ
て、秘密情報S1から公開された一方向性関数fを用い
て作成されるn個の各値tn =f(S1),…,tk+1
=f(tk+2 ),tk =f(tk+1 ),…,t1 =f
(t2 )および秘密情報S2から公開された一方向性関
数gを用いて作成されるm個の各値ym =g(S2),
…,yk+1=g(yk+2 ),yk =g(yk+1 ),…,
1 =g(y2 )から導出される鍵(GKr ,…,GK
k+1 ,GKk ,…,GK1 )であり、グループ鍵GKk
の更新時には、新たなグループ鍵GKk+1 を生成し、利
用者が、更新された最新のグループ鍵GKk のみを保持
し、この最新のグループ鍵を用いて、グループの共有情
報を暗号化するとともに自身の階級のグループ鍵で暗号
化された共有情報を復号化し、過去のグループ鍵で暗号
化された共有情報にあっては、利用者自身が保持する最
新のグループ鍵GKk から一方向性関数fを用いて導出
したグループ鍵を用いて復号化され、自身より下位の階
級のグループ鍵で暗号化された情報にあっては、利用者
自身が自身のグループ鍵から一方向性関数gで導出した
鍵を用いて復号化されるグループ鍵プログラムを記録媒
体に記録することを要旨とする。
The present invention according to claim 23 has a hierarchical structure composed of a plurality of classes, encrypts shared information of a group of a plurality of users with a group key, and shares the information with the group. A record that records a group key program capable of encrypting and using encrypted shared information with a group key and allowing each user to encrypt / decrypt information of his / her own class and information of a class lower than his / her own class. A medium, wherein the group key is a key of a common key cryptosystem, and each of n values t n = f (S1), which is created using a one-way function f disclosed from the secret information S1, …, T k + 1
= F (t k + 2) , t k = f (t k + 1), ..., t 1 = f
(T 2 ) and m values y m = g (S 2) created using the one-way function g published from the secret information S 2,
.., Y k + 1 = g (y k + 2 ), y k = g (y k + 1 ),.
Keys (GK r ,..., GK) derived from y 1 = g (y 2 )
k + 1 , GK k ,..., GK 1 ) and the group key GK k
At the time of updating, a new group key GK k + 1 is generated, and the user holds only the updated latest group key GK k and encrypts the group shared information using the updated group key. In addition, the shared information encrypted with the group key of the own class is decrypted, and the shared information encrypted with the past group key is one-way from the latest group key GK k held by the user. For information that has been decrypted using a group key derived using the gender function f and has been encrypted with a group key of a lower rank than itself, the user himself / herself uses the one-way function g from his / her own group key. The gist of the present invention is to record a group key program decrypted using the key derived in the above on a recording medium.

【0057】請求項23記載の本発明にあっては、階層
構造を持った複数のグループにおいてグループ鍵は共通
鍵暗号方式の鍵であって、秘密情報S1から公開された
一方向性関数fを用いて作成されるn個の各値tn =f
(S1),…,tk+1 =f(tk+2 ),tk =f(t
k+1 ),…,t1 =f(t2 )および秘密情報S2から
公開された一方向性関数gを用いて作成されるm個の各
値ym =g(S2),…,yk+1 =g(yk+2 ),yk
=g(yk+1 ),…,y1 =g(y2 )から導出される
鍵(GKr ,…,GKk+1 ,GKk ,…,GK1 )であ
り、グループ鍵GKk の更新時には、新たなグループ鍵
GKk+1 を生成し、利用者は最新のグループ鍵GKk
みを保持し、この最新のグループ鍵を用いて、グループ
の共有情報を暗号化するとともに自身の階級のグループ
鍵で暗号化された共有情報を復号化し、過去のグループ
鍵で暗号化された共有情報は、利用者自身が保持する最
新のグループ鍵GKk から一方向性関数fを用いて導出
したグループ鍵を用いて復号化され、自身より下位の階
級のグループ鍵で暗号化された情報は利用者自身が自身
のグループ鍵から一方向性関数gで導出した鍵を用いて
復号化されるグループ鍵プログラムを記録媒体に記録し
ているため、該記録媒体を用いて、その流通性を高める
ことができる。
According to the twenty-third aspect of the present invention, in a plurality of groups having a hierarchical structure, the group key is a key of a common key cryptosystem, and the one-way function f disclosed from the secret information S1 is Each of the n values t n = f created using
(S1), ..., t k + 1 = f (t k + 2), t k = f (t
k + 1 ),..., t 1 = f (t 2 ) and m values y m = g (S2),..., y created using the one-way function g disclosed from the secret information S2. k + 1 = g (y k + 2 ), y k
= G (y k + 1 ),..., Y 1 = keys (GK r ,..., GK k + 1 , GK k ,..., GK 1 ) derived from g (y 2 ), and the group key GK k At the time of updating, a new group key GK k + 1 is generated, and the user holds only the latest group key GK k , encrypts the shared information of the group, and The shared information encrypted with the group key of the class is decrypted, and the shared information encrypted with the past group key is derived from the latest group key GK k held by the user using the one-way function f. Is decrypted using the group key obtained by the user, and the information encrypted by the group key of a lower class than the user is decrypted by the user using the key derived from the own group key by the one-way function g. Since the group key program is recorded on the recording medium, With, it is possible to enhance the flow properties.

【0058】更に、請求項24記載の本発明は、複数の
階級からなる階層構造を持ち、複数の利用者からなるグ
ループの共有情報をグループ鍵で暗号化してグループで
共有し、利用者は暗号化された共有情報をグループ鍵で
暗号して利用するとともに、各利用者は自身の階級およ
び自身の階級より下位の階級の情報を暗号化/復号化す
ることができるグループ鍵プログラムを記録した記録媒
体であって、グループ鍵が、公開鍵暗号方式の鍵であっ
て、秘密情報S1から公開された一方向性関数fを用い
て作成されるn個の各値tn =f(S1),…,tk+1
=f(tk+2 ),tk =f(tk+1 ),…,t1 =f
(t2 )および秘密情報S2から公開された一方向性関
数gを用いて作成されるm個の各値ym =g(S2),
…,yk+1=g(yk+2 ),yk =g(yk+1 ),…,
1 =g(y2 )から導出される秘密鍵(SGKr
…,SGKk+1 ,SGKk ,…,SGK1 )および公開
鍵(PGKr ,…,PGKk+1 ,PGKk ,…,PGK
1 )のペアであり、グループ鍵(SGKk ,PGKk
の更新時には、新たなグループ鍵(SGKk+1 ,PGK
k+1 )を生成し、利用者が、更新された最新のグループ
鍵(SGKk ,PGKk)のみを保持し、この最新のグ
ループ鍵の公開鍵PGKk を用いて、グループの共有情
報を暗号化し、グループ鍵の公開鍵PGKk で暗号化さ
れた共有情報をグループ鍵の秘密鍵SGKk で復号化
し、過去のグループ鍵で暗号化された共有情報にあって
は、最新のグループ鍵の秘密鍵SGKk から一方向性関
数fを用いて導出した秘密鍵を用いて復号化し、自身よ
り下位の階級のグループ鍵で暗号化された情報にあって
は、利用者自身が自身のグループ鍵から一方向性関数g
で導出した秘密鍵を用いて復号化されるグループ鍵プロ
グラムを記録媒体に記録することを要旨とする。
Further, the present invention according to claim 24 has a hierarchical structure composed of a plurality of classes, encrypts shared information of a group of a plurality of users with a group key, and shares the information with the group. A record that records a group key program capable of encrypting and using encrypted shared information with a group key and allowing each user to encrypt / decrypt information of his / her own class and a class lower than his / her own class. Medium, wherein the group key is a key of a public key cryptosystem, and each of n values t n = f (S1) created using a one-way function f published from the secret information S1; …, T k + 1
= F (t k + 2) , t k = f (t k + 1), ..., t 1 = f
(T 2 ) and m values y m = g (S 2) created using the one-way function g published from the secret information S 2,
.., Y k + 1 = g (y k + 2 ), y k = g (y k + 1 ),.
secret key (SGK r , derived from y 1 = g (y 2 ))
..., SGK k + 1, SGK k, ..., SGK 1) and the public key (PGK r, ..., PGK k + 1, PGK k, ..., PGK
1 ) and a group key (SGK k , PGK k )
Is updated, a new group key (SGK k + 1 , PGK
k + 1 ), the user holds only the updated latest group key (SGK k , PGK k ), and uses the public key PGK k of the updated group key to divide the group shared information. The shared information encrypted with the public key PGK k of the group key is decrypted with the secret key SGK k of the group key, and the shared information encrypted with the past group key is replaced with the latest group key. decrypted by using a secret key that is derived using a one-way function f from the secret key SGK k, in the information that has been encrypted with a group key of a lower class than its own, the group key is the user himself own From the one-way function g
The gist of the present invention is to record a group key program decrypted using the secret key derived in the above on a recording medium.

【0059】請求項24記載の本発明にあっては、グル
ープ鍵は公開鍵暗号方式の鍵であって、秘密情報S1か
ら公開された一方向性関数fを用いて作成されるn個の
各値tn =f(S1),…,tk+1 =f(tk+2 ),t
k =f(tk+1 ),…,t1=f(t2 )および秘密情
報S2から公開された一方向性関数gを用いて作成され
るm個の各値ym =g(S2),…,yk+1 =g(y
k+2 ),yk =g(yk+ 1 ),…,y1 =g(y2 )か
ら導出される秘密鍵(SGKr ,…,SGKk+1,SG
k ,…,SGK1 )および公開鍵(PGKr ,…,P
GKk+1 ,PGKk ,…,PGK1 )のペアであり、グ
ループ鍵(SGKk ,PGKk )の更新時には、新たな
グループ鍵(SGKk+1 ,PGKk+1 )を生成し、利用
者は最新のグループ鍵(SGKk ,PGKk )のみを保
持し、この最新のグループ鍵の公開鍵PGKk を用い
て、グループの共有情報を暗号化し、グループ鍵の公開
鍵PGKk で暗号化された共有情報をグループ鍵の秘密
鍵SGKk で復号化し、過去のグループ鍵で暗号化され
た共有情報は最新のグループ鍵の秘密鍵SGKk から一
方向性関数fを用いて導出した秘密鍵を用いて復号化
し、自身より下位の階級のグループ鍵で暗号化された情
報は利用者自身が自身のグループ鍵から一方向性関数g
で導出した秘密鍵を用いて復号化されるグループ鍵プロ
グラムを記録媒体に記録しているため、該記録媒体を用
いて、その流通性を高めることができる。
According to the twenty-fourth aspect of the present invention, the group key is a key of a public key cryptosystem, and each of n group keys is created by using a one-way function f published from the secret information S1. Value t n = f (S1),..., T k + 1 = f (t k + 2 ), t
k = f (t k + 1 ),..., t 1 = f (t 2 ) and m values y m = g (S 2) created using the one-way function g published from the secret information S 2. ),..., Y k + 1 = g (y
k + 2 ), y k = g (y k + 1 ),..., y 1 = g (y 2 ) derived secret keys (SGK r ,..., SGK k + 1 , SG
K k ,..., SGK 1 ) and the public key (PGK r ,.
GK k + 1 , PGK k ,..., PGK 1 ). When the group key (SGK k , PGK k ) is updated, a new group key (SGK k + 1 , PGK k + 1 ) is generated. The user holds only the latest group key (SGK k , PGK k ), encrypts the group's shared information using the latest group key's public key PGK k , and encrypts it with the group key's public key PGK k . The encrypted shared information is decrypted with the secret key SGK k of the group key, and the shared information encrypted with the past group key is used as the secret derived by using the one-way function f from the secret key SGK k of the latest group key. The user decrypts the information using the key, and encrypts the information encrypted with the group key of a lower class than the user.
Since the group key program that is decrypted using the secret key derived in step (1) is recorded on the recording medium, the distribution of the program can be improved using the recording medium.

【0060】請求項25記載の本発明は、請求項21乃
至24のいずれかに記載の発明において、前記グループ
鍵が、階層組織を表す公開情報Y1 ,Y2 ,…,Ym
用いて、前記一方向性関数gで作成されるm個の各値y
m =g(S‖Ym ),…,yk+1 =g(y′k+1 ‖Y
k+1 ),yk =g(y′k ‖Yk ),…,y1 =g
(y′1 ‖Y1 )から導出され、ここでy′k はyk
上位階層の値であるグループ鍵プログラムを記録媒体に
記録することを要旨とする。
[0060] The present invention of claim 25 is the invention according to any one of claims 21 to 24, wherein the group key, public information Y 1, Y 2 representing the hierarchical organization, ..., using the Y m , M values y produced by the one-way function g
m = g (S‖Y m ),..., y k + 1 = g (y ′ k + 1 ‖Y
k + 1 ), y k = g (y ′ k ‖Y k ),..., y 1 = g
It is derived from (y ′ 1 ‖Y 1 ), where y ′ k is the gist of recording the group key program, which is the value of the upper layer of y k , on the recording medium.

【0061】請求項25記載の本発明にあっては、グル
ープ鍵は階層組織を表す公開情報Y1 ,Y2 ,…,Ym
を用いて、一方向性関数gで作成されるm個の各値ym
=g(S‖Ym ),…,yk+1 =g(y′k+1
k+1 ),yk =g(y′k ‖Yk),…,y1 =g
(y′1 ‖Y1 )から導出されるグループ鍵プログラム
を記録媒体に記録しているため、該記録媒体を用いて、
その流通性を高めることができる。
According to the present invention, the group key is public information Y 1 , Y 2 ,..., Y m representing a hierarchical organization.
And m values y m created by the one-way function g
= G (S‖Y m ),..., Y k + 1 = g (y ′ k + 1
Y k + 1 ), y k = g (y ′ k ‖Y k ),..., Y 1 = g
Since the group key program derived from (y ′ 1 ‖Y 1 ) is recorded on a recording medium, using the recording medium,
Its distribution can be improved.

【0062】また、請求項26記載の本発明は、請求項
19乃至25のいずれかに記載の発明において、共有情
報を利用者が生成した任意の鍵で暗号化し、当該鍵をグ
ループ鍵で暗号化したものを添付情報として暗号化され
た共有情報に添付するグループ鍵プログラムを記録媒体
に記録することを要旨とする。
According to a twenty-sixth aspect of the present invention, in the invention according to any one of the nineteenth to twenty-fifth aspects, the shared information is encrypted with an arbitrary key generated by a user, and the key is encrypted with a group key. The gist of the present invention is to record a group key program for attaching the encrypted information as attached information to the encrypted shared information on a recording medium.

【0063】請求項26記載の本発明にあっては、共有
情報を利用者生成の任意の鍵で暗号化し、この鍵をグル
ープ鍵で暗号化したものを添付情報として暗号化された
共有情報に添付するグループ鍵プログラムを記録媒体に
記録しているため、該記録媒体を用いて、その流通性を
高めることができる。
According to the twenty-sixth aspect of the present invention, shared information is encrypted with an arbitrary key generated by a user, and this key is encrypted with a group key, and the encrypted shared information is converted into attached information as attached information. Since the attached group key program is recorded on the recording medium, it is possible to enhance the distribution of the program by using the recording medium.

【0064】更に、請求項27記載の本発明は、請求項
26記載の発明において、グループ鍵が更新される度
に、前記添付情報を最新のグループ鍵で暗号化するグル
ープ鍵プログラムを記録媒体に記録することを要旨とす
る。
According to a twenty-seventh aspect of the present invention, in the invention according to the twenty-sixth aspect, a group key program for encrypting the attached information with the latest group key every time the group key is updated is recorded on a recording medium. It shall be recorded.

【0065】請求項27記載の本発明にあっては、グル
ープ鍵が更新される度に、添付情報を最新のグループ鍵
で暗号化するグループ鍵プログラムを記録媒体に記録し
ているため、該記録媒体を用いて、その流通性を高める
ことができる。
According to the present invention, a group key program for encrypting the attached information with the latest group key is recorded on the recording medium every time the group key is updated. The medium can be used to enhance its distribution.

【0066】[0066]

【発明の実施の形態】本発明のグループ鍵方法では、グ
ループ鍵を生成するのに秘密情報から公開された一方向
性関数を用いて作成されるn個の各値からグループ鍵を
導出しているが、図2に示すように初期値Sに一方向性
関数fをk+1回適用した値をhn-kとすると、一方向
性関数の特徴によりhn-k からhn-k-1 を計算すること
は容易であるが、hn-k+1 を計算することは困難であ
る。
DESCRIPTION OF THE PREFERRED EMBODIMENTS In a group key method according to the present invention, a group key is derived from each of n values created using a one-way function published from secret information to generate a group key. are but a value of the one-way function f is applied k + 1 times the initial value S as shown in FIG. 2 When h nk, is easy to compute the h nk-1 from h nk by the features of the one-way function However, it is difficult to calculate hn-k + 1 .

【0067】本発明では、上述したような特徴を利用
し、グループ鍵の管理を利用者にとって容易にしてい
る。なお、一方向性関数としては、上記特性を有する一
方向性関数であれば、どのような方法のものでもよい。
The present invention makes use of the above-described features to make it easier for the user to manage the group key. As the one-way function, any method may be used as long as it is a one-way function having the above characteristics.

【0068】まず、本発明の第1の実施形態に係るグル
ープ鍵方法を実施する装置構成について説明する。図1
は、本実施形態のグループ鍵方法を実施するグループ鍵
装置の構成を示す図であり、同図に示すグループ鍵装置
は、複数の利用者からなるグループの共有情報をグルー
プ鍵で暗号化してグループで共有し、利用者は暗号化さ
れた共有情報をグループ鍵で復号化して利用するもので
あり、グループ鍵を生成するグループ鍵生成機関1とこ
の生成されたグループ鍵を使用して、グループの共有情
報を暗号化/復号化して利用する複数の利用者端末3a
〜3nから構成されている。
First, a description will be given of an apparatus configuration for implementing the group key method according to the first embodiment of the present invention. FIG.
FIG. 3 is a diagram illustrating a configuration of a group key device that implements a group key method according to the present embodiment. The group key device illustrated in FIG. The user decrypts the encrypted shared information with the group key and uses the encrypted shared information. A plurality of user terminals 3a for encrypting / decrypting and using shared information
To 3n.

【0069】グループ鍵生成機関1は、グループ鍵を生
成するグループ鍵生成部11およびこの生成したグルー
プ鍵を各利用者端末3a〜3nに送信するグループ鍵送
信部13から構成されている。また、複数の利用者端末
3a〜3nの各々は、グループ鍵生成機関1のグループ
鍵送信部13から送信されてくるグループ鍵を受信する
グループ鍵受信部31、利用者自身が保持する最新のグ
ループ鍵から一方向性関数を用いて、過去のグループ鍵
で暗号化された共有情報を復号化するためのグループ鍵
を導出するグループ鍵導出部33、グループ鍵で共有情
報を暗号化する暗号化部35、およびグループ鍵で暗号
化された共有情報を復号化する復号化部37から構成さ
れている。
The group key generator 1 includes a group key generator 11 for generating a group key and a group key transmitter 13 for transmitting the generated group key to each of the user terminals 3a to 3n. Further, each of the plurality of user terminals 3a to 3n includes a group key receiving unit 31 that receives a group key transmitted from the group key transmitting unit 13 of the group key generating organization 1, a latest group held by the user himself / herself. A group key deriving unit 33 that derives a group key for decrypting shared information encrypted with a past group key using a one-way function from a key, an encrypting unit that encrypts shared information with a group key 35, and a decryption unit 37 for decrypting the shared information encrypted with the group key.

【0070】次に、このように構成される本実施形態の
グループ鍵装置によるグループ鍵方法について説明す
る。この実施形態では、グループ毎にグループ鍵を払い
出し、グループメンバは最新の鍵を保持するのみで、過
去に暗号化された文書の復号化を可能にするものであ
る。
Next, a group key method by the group key device of the present embodiment configured as described above will be described. In this embodiment, a group key is paid out for each group, and a group member can decrypt a document encrypted in the past only by holding the latest key.

【0071】グループ毎に秘密情報Sを生成し、Sから
公開された一方向性関数fを用いて、n個の値(tn
f(S),…,tk+1 =f(tk+2 ),tk =f(t
k+1 ),…,t1 =f(t2 ))を生成する。関数G1
により各値を変換したGKn ,…,GKk+1 ,GKk
…,GK1 をグループ鍵として用い、グループ鍵の更新
毎にGK1 ,…,GKk+1 ,GKk ,…,GKn の順に
利用する。なお、関数G1は恒等関数でもよい。
The secret information S is generated for each group, and n values (t n =
f (S), ..., t k + 1 = f (t k + 2), t k = f (t
k + 1), ..., t 1 = f (t 2)) to generate. Function G1
GK n ,..., GK k + 1 , GK k ,
..., using the GK 1 as a group key, GK 1 for each update of the group key, ..., GK k + 1, GK k, ..., for use in the order of GK n. Note that the function G1 may be an identity function.

【0072】ある時点のグループ鍵がGKk だとする
と、グループ鍵生成機関は、グループ鍵の更新時には新
たにGKk+1 を生成する。一方、利用者は最新のグルー
プ鍵GKk+1 を入手し、その鍵のみを保持する。GKk
で暗号化された過去の文書を復号化するには、次のよう
に行う。
Assuming that the group key at a certain point in time is GK k , the group key generator newly generates GK k + 1 when updating the group key. On the other hand, the user obtains the latest group key GK k + 1 and holds only that key. GK k
In order to decrypt the past document encrypted by the above, the following is performed.

【0073】(1)GKk+1 から関数G1によりtk+1
に変換する。
(1) t k + 1 from GK k + 1 by the function G1
Convert to

【0074】(2)一方向性関数fによりtk を求める
(tk =f(tk+1 ))。
[0074] (2) determine the t k by one-way function f (t k = f (t k + 1)).

【0075】(3)tk から関数G1-1によりGKk
変換する。
[0075] (3) converting from t k by a function G1 -1 to GK k.

【0076】(4)GKk を用いて復号化する。(4) Decoding is performed using GK k .

【0077】GK1 ,…,GKk-1 で暗号化された文書
も同様の処理で復号化する。
The document encrypted with GK 1 ,..., GK k−1 is also decrypted by the same processing.

【0078】次に、本発明の第2の実施形態に係るグル
ープ鍵方法について説明する。この実施形態では、階層
構造を持ったグループにおいて、自身のグループ鍵を保
持するのみで、下位階級のグループの情報の暗号化/復
号化も可能にするものである。
Next, a group key method according to the second embodiment of the present invention will be described. In this embodiment, in a group having a hierarchical structure, it is possible to encrypt / decrypt information of a lower class group only by holding its own group key.

【0079】秘密情報Sを生成し、Sから公開された一
方向性関数gを用いて、n個の値(yn =g(S),
…,yk+1 =g(yk+2 ),yk =g(yk+1 ),…,
1 =g(y2 ))を生成する。関数G2により各値を
変換したGKn ,…,GKk+1,GKk ,…,GK1
各階級のグループ鍵として階級毎に上位から割り当て
る。なお、関数G2は恒等関数でもよい。
The secret information S is generated, and n values (yn = g (S), n ) are obtained using the one-way function g published from S.
.., Y k + 1 = g (y k + 2 ), y k = g (y k + 1 ),.
y 1 = g (y 2 )). GK n obtained by converting the values by the function G2, ..., GK k + 1 , GK k, ..., allocated from the upper every class of GK 1 as a group key for each class. Note that the function G2 may be an identity function.

【0080】ある階級の利用者は自身のグループ鍵(G
k )のみを保持し、自分のグループ共有情報を暗号化
/復号化するにはGKk を利用する。また、GKk-1
暗号化された自分より下位のグループの情報を復号化す
るには、次のように行う。
A user of a certain class has his own group key (G
Kk ) only, and GKk is used to encrypt / decrypt own group shared information. In order to decrypt the information of the group lower than the self encrypted by GK k−1 , the following is performed.

【0081】(1)GKk から関数G2によりyk に変
換する。
[0081] (1) converting the GK k by the function G2 to y k.

【0082】(2)一方向性関数gによりyk-1 を求め
る(yk-1 =g(yk ))。
(2) y k -1 is obtained from the one- way function g (y k -1 = g (y k )).

【0083】(3)yk-1 から関数G2-1によりGK
k-1 に変換する。
(3) GK is obtained from y k−1 by the function G2 −1
Convert to k-1 .

【0084】(4)GKk-1 を用いて復号化する。(4) Decoding is performed using GK k−1 .

【0085】GK1 ,…,GKk-2 で暗号化された共有
情報も同様の処理で復号化する。
The shared information encrypted by GK 1 ,..., GK k-2 is also decrypted by the same processing.

【0086】次に、本発明の第3の実施形態に係るグル
ープ鍵方法について説明する。この実施形態では、階層
構造を持ったグループにおいて、グループメンバは自身
の最新の鍵を保持するのみで、下位階級のグループの情
報および過去に暗号化された文書の暗号化/復号化も可
能にするものである。
Next, a group key method according to the third embodiment of the present invention will be described. In this embodiment, in a group having a hierarchical structure, group members only hold their latest keys, and can also encrypt / decrypt information of lower-level groups and documents encrypted in the past. Is what you do.

【0087】各階級毎に秘密情報S1を生成し、S1か
ら公開された一方向性関数fを用いてn個の値(tn
f(S1),…,tk+1 =f(tk+2 ),tk =f(t
k+1),…,t1 =f(t2 ))を生成する。
The secret information S1 is generated for each class, and n values (t n =
f (S1), ..., t k + 1 = f (t k + 2), t k = f (t
k + 1), ..., t 1 = f (t 2)) to generate.

【0088】更に、秘密情報S2を生成し、S2から公
開された一方向性関数gを用いてm個の値(ym =g
(S2),…,yK+1 =g(yk+2 ),yk =g(y
k+1 ),…,y1 =g(y2 ))を生成する。
Further, secret information S2 is generated, and m values (y m = g
(S2),..., Y K + 1 = g (y k + 2 ), y k = g (y
k + 1), ..., to generate a y 1 = g (y 2) ).

【0089】各階級のグループ鍵は一方向性関数f,g
から得られた値を組み合わせて関数G3により変換した
ものとする。なお、関数G3は恒等関数でもよい。図6
のモデルの場合、図3に示す交点からグループ鍵が計算
される。ある時点の部長グループのグループ鍵がGK1
だとすると、部長グループのメンバは斜線の部分のグル
ープ鍵で暗号化された文書をGK1 から生成した鍵で復
号化する。
The group key of each class is a one-way function f, g
Are converted by a function G3 by combining the values obtained from. Note that the function G3 may be an identity function. FIG.
In the case of this model, the group key is calculated from the intersection shown in FIG. The group key of the manager group at a certain point is GK 1
Datosuruto, director group member decrypts the key which generated the encrypted document group key of the oblique line portion from the GK 1.

【0090】ある特定グループでグループ鍵の更新を繰
り返すと、そのグループより上位のグループからは導出
できないグループ鍵を保持する可能性がある(図4中の
課長グループのグループ鍵を参照のこと)。本処理は常
に上位のグループが下位のグループのグループ鍵を導出
可能となるようにグループ鍵を割り当てることを含む。
If the update of the group key is repeated in a certain specific group, there is a possibility that a group key that cannot be derived from a group higher than the group is held (see the group key of the section manager group in FIG. 4). This process involves allocating group keys so that the upper group can always derive the group key of the lower group.

【0091】次に、具体例について説明する。なお、こ
こでは、次の場合について説明する。
Next, a specific example will be described. Here, the following case will be described.

【0092】(1)最新のグループ鍵のみで過去の暗号
文を復号化することが可能である。
(1) It is possible to decrypt a past cipher text using only the latest group key.

【0093】(2)グループ鍵は公開鍵暗号方式(ElGa
mal 方式を例にして記述)とする。
(2) The group key is a public key cryptosystem (ElGa
mal method is described as an example).

【0094】(3)共有文書は一時的な鍵SKで暗号化
し、更にSKをグループ鍵で暗号化し暗号文に添付す
る。
(3) The shared document is encrypted with the temporary key SK, and the SK is further encrypted with the group key and attached to the ciphertext.

【0095】グループ鍵生成機関は秘密情報(S)から
一方向性関数fをn回適用し、t1を計算する。
The group key generating organization applies the one-way function f from the secret information (S) n times to calculate t 1 .

【0096】t1 =fn (S) 次に、素数pと乗法群Zp* の原始元gを生成し、t1
をグループ鍵の秘密鍵とし、(gt1(mod p),p,
g)をグループ鍵の公開鍵とする。秘密鍵はグループメ
ンバに配布してもよいし、更新の度に配布するのではな
く、グループ鍵生成機関に保管しておき、グループメン
バからのグループ鍵取得要求時にメンバに配布してもよ
い。
T 1 = f n (S) Next, a primitive element g of the prime number p and the multiplicative group Zp * is generated, and t 1
Is the secret key of the group key, and ( gt 1 (mod p), p,
g) is the public key of the group key. The secret key may be distributed to the group members or may not be distributed every time it is updated, but may be stored in a group key generation organization and distributed to the members when a group key is requested from the group members.

【0097】グループメンバが脱退したなどの理由でグ
ループ鍵を更新する際には、グループ鍵生成機関は再び
秘密情報(S)から一方向性関数fをn−1回適用し、
2を計算し、 t2 =fn-1 (S) 秘密鍵t2 、公開鍵(gt2(mod p),p,g)を作成
する。
When the group key is updated, for example, because a group member has left, the group key generating organization applies the one-way function f from the secret information (S) again n-1 times.
the t 2 is calculated, t 2 = f n-1 (S) secret key t 2, the public key (g t2 (mod p), p, g) to create.

【0098】ある時点のグループ鍵の秘密鍵がtk 、公
開鍵が(gtk(mod p),p,g)だとすると、グルー
プメンバは以下のように暗号操作を行う。
Assuming that the secret key of the group key at a certain time is t k and the public key is (g tk (mod p), p, g), the group members perform cryptographic operations as follows.

【0099】暗号化: (1)一時的な鍵SKを作成し、文書を暗号化する。Encryption: (1) Create a temporary key SK and encrypt the document.

【0100】(2)グループ鍵の公開鍵をグループ鍵生
成機関より入手する。
(2) Obtain the public key of the group key from the group key generating organization.

【0101】(3)SKをグループ鍵の公開鍵で暗号化
し、暗号文に添付する。
(3) SK is encrypted with the public key of the group key and attached to the ciphertext.

【0102】復号化: (1)必要であれば、グループ鍵の秘密鍵tk をグルー
プ鍵生成機関より入手する。
[0102] decryption: (1) if necessary, to obtain the secret key t k of the group key from the group key generation institutions.

【0103】(2)添付情報中のSKがgtkで暗号化さ
れている場合、グループ鍵の秘密鍵tk を用いて復号化
する。gtkより以前のgtk-rで暗号化されている場合、
グループ鍵の秘密鍵tk に一方向性関数fをr回適用す
ることによりtk-r を計算し、tk-r を用いて復号化す
る。
[0103] (2) If the SK of the accompanying information is encrypted with g tk, be decrypted using the private key t k of the group key. If encrypted with g tk-r earlier than g tk ,
The secret key t k to the one-way function f of the group key to t kr is calculated by applying r times, be decrypted using the t kr.

【0104】また、グループメンバが追加された時には
最新のグループ鍵のみを新規メンバに割り当てる。
When a group member is added, only the latest group key is assigned to the new member.

【0105】次に、別の具体例として、階層構造を持つ
グループで自身のグループ鍵を保持するのみで、下位の
グループで暗号化した文書を復号化するとともに、グル
ープ鍵が共通鍵暗号方式の場合について図5を参照して
説明する。
Next, as another specific example, a group having a hierarchical structure only holds its own group key, decrypts an encrypted document in a lower group, and uses a group key of a common key encryption method. The case will be described with reference to FIG.

【0106】図5において、グループ鍵生成機関は秘密
情報Sから一方向性関数gを適用し、各階級のグループ
鍵y1 ,…,y5 を生成する。
In FIG. 5, the group key generator applies a one-way function g from the secret information S to generate group keys y 1 ,..., Y 5 for each class.

【0107】 開発部グループ鍵:y1 =g(S‖″開発部″) 第1課グループ鍵:y2 =g(y1 ‖″第1課″) 第2課グループ鍵:y3 =g(y2 ‖″第2課″) 第1係グループ鍵:y4 =g(y2 ‖″第1係″) 第2係グループ鍵:y5 =g(y2 ‖″第2係″) なお、″開発部″などの文字列は階層組織を表す公開情
報とする。
Development department group key: y 1 = g (S‖ “development department”) Section 1 group key: y 2 = g (y 1 ‖ “section 1”) Section 2 group key: y 3 = g (Y 2 ‖ “second section”) First engagement group key: y 4 = g (y 2 ‖ “first engagement”) Second engagement group key: y 5 = g (y 2 ‖ “second engagement”) Note that a character string such as “development department” is public information indicating a hierarchical organization.

【0108】各部署に属している利用者にグループ鍵を
割り当てる。この時、グループメンバに配布してもよい
し、更新の度に配布するのではなく、グループ鍵生成機
関に保管しておき、グループメンバからのグループ鍵取
得要求時にメンバに配布してもよい。
A group key is assigned to a user belonging to each department. At this time, it may be distributed to the group members, or may be stored in the group key generating organization and distributed to the members at the time of a group key acquisition request from the group members, instead of being distributed every time an update is performed.

【0109】グループメンバは以下のように暗号操作を
行う。
The group members perform cryptographic operations as follows.

【0110】暗号化: (1)自身のグループ鍵で本文を暗号化する。Encryption: (1) Encrypt the text with its own group key.

【0111】復号化: (1)必要であれば、グループ鍵をグループ鍵生成機関
より入手する。
Decryption: (1) If necessary, obtain a group key from a group key generation organization.

【0112】(2)暗号文が自身の所属するグループ鍵
で暗号化されている場合、自身のグループ鍵を用いて復
号化する。
(2) If the ciphertext is encrypted with the group key to which the ciphertext belongs, decryption is performed using the group key of the ciphertext.

【0113】下位の階級のグループ鍵で暗号化されてい
る場合、階層構造を表す公開情報により下位のグループ
鍵を計算し復号化する。
If the data is encrypted with the lower-level group key, the lower-level group key is calculated and decrypted based on the public information representing the hierarchical structure.

【0114】なお、上記実施形態の処理をプログラムと
して記録媒体に記録することにより該記録媒体を用い
て、その流通性を高めることができる。
By recording the processing of the above-described embodiment as a program on a recording medium, it is possible to use the recording medium to enhance its circulation.

【0115】[0115]

【発明の効果】以上説明したように、本発明によれば、
利用者は最新のグループ鍵GKk のみを保持し、この最
新のグループ鍵を用いてグループの共有情報を暗号化
し、グループ鍵で暗号化された共有情報をグループ鍵で
復号化し、過去のグループ鍵で暗号化された共有情報は
利用者自身が保持する最新のグループ鍵GKk から一方
向性関数を用いて導出したグループ鍵を用いて復号化す
るので、利用者は従来のように過去のグループ鍵を保持
する必要がないとともに、また新規にグループに加わっ
たメンバも最新のグループ鍵のみを入手すればよく、過
去のグループ鍵を入手する必要がない。
As described above, according to the present invention,
The user holds only the latest group key GK k , encrypts the shared information of the group using the latest group key, decrypts the shared information encrypted with the group key with the group key, and stores the past group key. Is decrypted using the group key derived from the latest group key GK k held by the user using a one-way function, so that the user can use the past group as in the past. There is no need to hold the key, and members newly joining the group need only obtain the latest group key, and do not need to obtain a past group key.

【0116】また、本発明によれば、利用者は最新のグ
ループ鍵GKk のみを保持し、このグループ鍵を用いて
グループの共有情報を暗号化するとともに自身の階級の
グループ鍵で暗号化された共有情報を復号化し、利用者
自身のグループ鍵GKk から一方向性関数を用いて導出
された鍵を用いて、自身より下位の階級のグループ鍵で
暗号化された情報を復号化するので、利用者は従来のよ
うに過去のグループ鍵を保持する必要がないとともに、
各グループのメンバは自身のグループ鍵の他に下位の階
級のグループ鍵を保持する必要もない。
Further, according to the present invention, the user holds only the latest group key GK k , encrypts the shared information of the group using the group key, and encrypts the information with the group key of the own class. Decrypts the shared information, and decrypts the information encrypted with the group key of a lower class than itself using a key derived from the user's own group key GK k using a one-way function. , The user does not need to retain the past group key as in the past,
Members of each group do not need to hold lower-level group keys in addition to their own group keys.

【0117】更に、本発明によれば、利用者は最新のグ
ループ鍵GKk のみを保持し、この最新のグループ鍵を
用いてグループの共有情報を暗号化するとともに自身の
階級のグループ鍵で暗号化された共有情報を復号化し、
また過去のグループ鍵で暗号化された共有情報は利用者
自身が保持する最新のグループ鍵GKk から一方向性関
数fを用いて導出したグループ鍵を用いて復号化され、
自身より下位の階級のグループ鍵で暗号化された情報は
利用者自身が保持するグループ鍵から一方向性関数gで
導出した鍵を用いて復号化されるので、利用者は従来の
ように過去のグループ鍵を保持する必要がなく、また新
規にグループに加わったメンバも最新のグループ鍵のみ
を入手すればよく、過去のグループ鍵を入手する必要が
ないとともに、更に各グループのメンバは自身のグルー
プ鍵の他に下位の階級のグループ鍵を保持する必要もな
い。
Further, according to the present invention, the user holds only the latest group key GK k , encrypts the shared information of the group using the latest group key, and encrypts the shared information with the group key of the own class. Decrypts the shared information
Further, the shared information encrypted with the past group key is decrypted using the group key derived from the latest group key GK k held by the user using the one-way function f,
Information encrypted with a group key of a lower class than itself is decrypted using a key derived by a one-way function g from a group key held by the user himself / herself. It is not necessary to keep the group key of the group, and members newly joining the group only need to obtain the latest group key, and it is not necessary to obtain the group key of the past. There is no need to hold a lower-level group key in addition to the group key.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の第1の実施形態に係るグループ鍵方法
を実施するグループ鍵装置の構成を示す図である。
FIG. 1 is a diagram illustrating a configuration of a group key device that performs a group key method according to a first embodiment of the present invention.

【図2】本発明のグループ鍵方法に使用される一方向性
関数の性質を説明するための説明図である。
FIG. 2 is an explanatory diagram for explaining properties of a one-way function used in the group key method of the present invention.

【図3】本発明の第3の実施形態における部長が復号化
し得る範囲を示す図である。
FIG. 3 is a diagram illustrating a range in which a section length can be decoded in a third embodiment of the present invention.

【図4】本発明の第3の実施形態においてグループ鍵の
更新を繰り返した場合に上位のグループから導出できな
くなるグループ鍵を説明するための図である。
FIG. 4 is a diagram for explaining a group key that cannot be derived from a higher-level group when a group key is repeatedly updated in a third embodiment of the present invention.

【図5】本発明の第2の実施形態の具体例として階層構
造を有するグループの構成を示す説明図である。
FIG. 5 is an explanatory diagram showing a configuration of a group having a hierarchical structure as a specific example of the second embodiment of the present invention.

【図6】部長、課長、係長からなる階層構造を有する複
数のグループを示す説明図である。
FIG. 6 is an explanatory diagram showing a plurality of groups having a hierarchical structure including a manager, a section manager, and a section manager.

【符号の説明】[Explanation of symbols]

1 グループ鍵生成機関 3a〜3n 利用者端末 11 グループ鍵生成部 13 グループ鍵送信部 31 グループ鍵受信部 33 グループ鍵導出部 35 暗号化部 37 復号化部 DESCRIPTION OF SYMBOLS 1 Group key generation organization 3a-3n User terminal 11 Group key generation part 13 Group key transmission part 31 Group key reception part 33 Group key derivation part 35 Encryption part 37 Decryption part

フロントページの続き (72)発明者 関野 公彦 東京都新宿区西新宿三丁目19番2号 日本 電信電話株式会社内 Fターム(参考) 5J104 AA16 EA07 EA16 EA19 MA06 NA02 NA11 NA12 Continued on the front page (72) Inventor Kimihiko Sekino F-term (reference) in Nippon Telegraph and Telephone Corporation 3-19-2 Nishishinjuku, Shinjuku-ku, Tokyo 5J104 AA16 EA07 EA16 EA19 MA06 NA02 NA11 NA12

Claims (27)

【特許請求の範囲】[Claims] 【請求項1】 複数の利用者からなるグループの共有情
報をグループ鍵で暗号化してグループで共有し、利用者
は暗号化された共有情報をグループ鍵で復号化して利用
するグループ鍵方法であって、 グループ鍵は、共通鍵暗号方式の鍵であって、秘密情報
Sから公開された一方向性関数fを用いて作成されるn
個の各値tn =f(S),…,tk+1 =f(tk+2 ),
k =f(tk+1 ),…,t1 =f(t2 )から導出さ
れる鍵(GKn,…,GKk+1 ,GKk ,…,GK1
であり、 該グループ鍵を更新する度に、鍵(GK1 ,…,GK
k+1 ,GKk ,…,GKn )の順に利用し、 グループ鍵GKk の更新時には、新たなグループ鍵GK
k+1 を生成し、 利用者は、更新された最新のグループ鍵GKk のみを保
持し、この最新のグループ鍵を用いて、グループの共有
情報を暗号化し、 グループ鍵で暗号化された共有情報をグループ鍵で復号
化し、 過去のグループ鍵で暗号化された共有情報は、利用者自
身が保持する最新のグループ鍵GKk から一方向性関数
を用いて導出したグループ鍵を用いて復号化することを
特徴とするグループ鍵方法。
1. A group key method in which shared information of a group of a plurality of users is encrypted with a group key and shared by the group, and the user decrypts and uses the encrypted shared information with a group key. The group key is a key of a common key cryptosystem, and is created using a one-way function f disclosed from the secret information S.
, Each value t n = f (S),..., T k + 1 = f (t k + 2 ),
Keys (GK n ,..., GK k + 1 , GK k ,..., GK 1 ) derived from t k = f (t k + 1 ),..., t 1 = f (t 2 )
Each time the group key is updated, the key (GK 1 ,..., GK
k + 1 , GK k ,..., GK n ), and when the group key GK k is updated, a new group key GK is used.
k + 1 is generated, and the user holds only the updated latest group key GK k , encrypts the shared information of the group using the updated group key, and uses the shared key encrypted with the group key. The information is decrypted with the group key, and the shared information encrypted with the past group key is decrypted using the group key derived from the latest group key GK k held by the user using a one-way function. A group key method.
【請求項2】 複数の利用者からなるグループの共有情
報をグループ鍵で暗号化してグループで共有し、利用者
は暗号化された共有情報をグループ鍵で復号化して利用
するグループ鍵方法であって、 グループ鍵は、公開鍵暗号方式の鍵であって、秘密情報
Sから公開された一方向性関数fを用いて作成されるn
個の各値tn =f(S),…,tk+1 =f(tk+2 ),
k =f(tk+1 ),…,t1 =f(t2 )から導出さ
れる秘密鍵(SGKn ,…,SGKk+1 ,SGKk
…,SGK1 )および公開鍵(PGKn ,…,PGK
k+1 ,PGKk ,…,PGK1 )のペアであり、 該グループ鍵を更新する度に、鍵(SGKk ,PG
1 ),…,(SGKk+1,PGKk+1 ),(SG
k ,PGKk ),…,(SGKn ,PGKn )の順に
利用し、 グループ鍵(SGKk ,PGKk )の更新時には、新た
なグループ鍵(SGKk+1 ,PGKk+1 )を生成し、 利用者は、更新された最新のグループ鍵(SGKk ,P
GKk )のみを保持し、この最新のグループ鍵の公開鍵
PGKk を用いて、グループの共有情報を暗号化し、 グループ鍵の公開鍵PGKk で暗号化された共有情報を
グループ鍵の秘密鍵SGKk で復号化し、 過去のグループ鍵で暗号化された共有情報は、最新のグ
ループ鍵の秘密鍵SGKk から一方向性関数を用いて導
出した秘密鍵を用いて復号化することを特徴とするグル
ープ鍵方法。
2. A group key method in which shared information of a group of a plurality of users is encrypted with a group key and shared by the group, and the users decrypt the encrypted shared information with a group key and use the same. The group key is a key of the public key cryptosystem, and is generated using a one-way function f published from the secret information S.
, Each value t n = f (S),..., T k + 1 = f (t k + 2 ),
secret keys (SGK n ,..., SGK k + 1 , SGK k , derived from t k = f (t k + 1 ),..., t 1 = f (t 2 )
..., SGK 1 ) and the public key (PGK n , ..., PGK)
k + 1 , PGK k ,..., PGK 1 ), and each time the group key is updated, a key (SGK k , PGK k ,
K 1 ),..., (SGK k + 1 , PGK k + 1 ), (SG
K k, PGK k), ... , the (SGK n, used in the order of PGK n), a group key (SGK k, at the time of update of the PGK k), a new group key (SGK k + 1, PGK k + 1) The user generates and updates the latest group key (SGK k , P
GK k ), encrypts the shared information of the group using the latest public key PGK k of the group key, and converts the shared information encrypted with the public key PGK k of the group key to the secret key of the group key. The shared information decrypted with the SGK k and encrypted with the past group key is decrypted using a secret key derived from the secret key SGK k of the latest group key using a one-way function. Group key method to do.
【請求項3】 複数の階級からなる階層構造を持ち、複
数の利用者からなるグループの共有情報をグループ鍵で
暗号化してグループで共有し、利用者は暗号化された共
有情報をグループ鍵で復号化して利用するとともに、各
利用者は自身の階級および自身の階級より下位の階級の
情報を暗号化/復号化することができるグループ鍵方法
であって、 グループ鍵は、共通鍵暗号方式の鍵であって、秘密情報
Sから公開された一方向性関数gを用いて作成されるm
個の各値ym =g(S),…,yk+1 =g(yk+2 ),
k =g(yk+1 ),…,y1 =g(y2 )から導出さ
れる鍵(GKm,…,GKk+1 ,GKk ,…,GK1
であり、 階級毎に上位から各階級のグループ鍵として、(G
1 ,…,GKk+1 ,GKk ,…,GKm )の順に利用
者に割り当て、 利用者は、割り当てられた最新のグループ鍵GKk のみ
を保持し、このグループ鍵を用いて、グループの共有情
報を暗号化するとともに自身の階級のグループ鍵で暗号
化された共有情報を復号化し、 自身より下位の階級のグループ鍵で暗号化された情報を
復号化するには、利用者自身が自身のグループ鍵GKk
から一方向性関数を用いて導出された鍵を用いることを
特徴とするグループ鍵方法。
3. It has a hierarchical structure of a plurality of classes, encrypts shared information of a group of a plurality of users with a group key and shares the information with the group, and the user shares the encrypted shared information with the group key. A group key method in which each user can encrypt / decrypt information of his / her own class and a class lower than his / her own class while using by decrypting. M, which is a key and is created using a one-way function g published from the secret information S
, Each value y m = g (S),..., Y k + 1 = g (y k + 2 ),
Keys (GK m ,..., GK k + 1 , GK k ,..., GK 1 ) derived from y k = g (y k + 1 ),..., y 1 = g (y 2 )
And as a group key of each class from the higher rank for each class, (G
K 1 ,..., GK k + 1 , GK k ,..., GK m ) in this order. The user holds only the latest group key GK k assigned, and uses this group key. To encrypt the shared information of the group, decrypt the encrypted shared information with the group key of its own class, and decrypt the information encrypted with the group key of the lower class, Is their own group key GK k
A key method using a key derived using a one-way function from.
【請求項4】 複数の階級からなる階層構造を持ち、複
数の利用者からなるグループの共有情報をグループ鍵で
暗号化してグループで共有し、利用者は暗号化された共
有情報をグループ鍵で復号化して利用するとともに、利
用者は自身の階級および自身の階級より下位の階級の情
報を暗号化/復号化することができるグループ鍵方法で
あって、 グループ鍵は、公開鍵暗号方式の鍵であって、秘密情報
Sから公開された一方向性関数gを用いて作成されるm
個の各値ym =g(S),…,yk+1 =g(yk+2 ),
k =g(yk+1 ),…,y1 =g(y2 )から導出さ
れる秘密鍵(SGKm ,…,SGKk+1 ,SGKk
…,SGK1 )および公開鍵(PGKm ,…,PGK
k+1 ,PGKk ,…,PGK1 )であり、 階級毎に上位から各階級のグループ鍵として、(SGK
1 ,PGK1 ),…,(SGKk+1 ,PGKk+1 ),
(SGKk ,PGKk ),…,(SGKm ,PGKm
のペアを順に利用者に割り当て、 利用者は、割り当てられたグループ鍵(SGKk ,PG
k )のみを保持し、このグループ鍵の公開鍵PGKk
を用いて、グループの共有情報を暗号化し、秘密鍵SG
k を用いて、自身の階級のグループ鍵の公開鍵PGK
k で暗号化された共有情報を復号化し、 自身より下位の階級のグループ鍵で暗号化された情報を
復号化するには、利用者自身が自身の秘密鍵SGKk
ら一方向性関数を用いて導出された鍵を用いることを特
徴とするグループ鍵方法。
4. It has a hierarchical structure of a plurality of classes, encrypts shared information of a group of a plurality of users with a group key and shares the information with the group, and the user shares the encrypted shared information with the group key. A group key method in which a user can encrypt and decrypt information of his / her own class and a class lower than his / her own class while using by decrypting. The group key is a key of a public key cryptosystem. And m created using a one-way function g published from the secret information S
, Each value y m = g (S),..., Y k + 1 = g (y k + 2 ),
The secret keys (SGK m ,..., SGK k + 1 , SGK k , derived from y k = g (y k + 1 ),..., y 1 = g (y 2 )
.., SGK 1 ) and the public key (PGK m ,.
k + 1 , PGK k ,..., PGK 1 ), and (SGK
1 , PGK 1 ), ..., (SGK k + 1 , PGK k + 1 ),
(SGK k , PGK k ),..., (SGK m , PGK m )
Are sequentially assigned to the user, and the user assigns the assigned group key (SGK k , PG
K k ) and the public key PGK k of this group key
Is used to encrypt the shared information of the group, and the secret key SG
Using K k , the public key PGK of the own group key
In order to decrypt shared information encrypted with k and decrypt information encrypted with a group key of a lower class than itself, the user himself uses a one-way function from his private key SGK k. A key method using a key derived from the group key.
【請求項5】 複数の階級からなる階層構造を持ち、複
数の利用者からなるグループの共有情報をグループ鍵で
暗号化してグループで共有し、利用者は暗号化された共
有情報をグループ鍵で復号化して利用するとともに、各
利用者は自身の階級および自身の階級より下位の階級の
情報を暗号化/復号化することができるグループ鍵方法
であって、 グループ鍵は、共通鍵暗号方式の鍵であって、秘密情報
S1から公開された一方向性関数fを用いて作成される
n個の各値tn =f(S1),…,tk+1 =f
(tk+2 ),tk =f(tk+1 ),…,t1 =f
(t2 )および秘密情報S2から公開された一方向性関
数gを用いて作成されるm個の各値ym =g(S2),
…,yk+1 =g(yk+2 ),yk =g(yk+1 ),…,
1 =g(y2 )から導出される鍵(GKr ,…,GK
k+1 ,GKk ,…,GK1 )であり、 グループ鍵GKk の更新時には、新たなグループ鍵GK
k+1 を生成し、 利用者は、更新された最新のグループ鍵GKk のみを保
持し、この最新のグループ鍵を用いて、グループの共有
情報を暗号化するとともに自身の階級のグループ鍵で暗
号化された共有情報を復号化し、 過去のグループ鍵で暗号化された共有情報は、利用者自
身が保持する最新のグループ鍵GKk から一方向性関数
fを用いて導出したグループ鍵を用いて復号化され、 自身より下位の階級のグループ鍵で暗号化された情報
は、利用者自身が自身のグループ鍵から一方向性関数g
で導出した鍵を用いて復号化されることを特徴とするグ
ループ鍵方法。
5. It has a hierarchical structure consisting of a plurality of classes, encrypts shared information of a group of a plurality of users with a group key and shares the information with the group, and the user shares the encrypted shared information with the group key. A group key method in which each user can encrypt / decrypt information of his / her own class and a class lower than his / her own class while using by decrypting. a key, each value of n which is created using a one-way function f, which is published by the secret information S1 t n = f (S1) , ..., t k + 1 = f
(T k + 2 ), t k = f (t k + 1 ),..., T 1 = f
(T 2 ) and m values y m = g (S 2) created using the one-way function g published from the secret information S 2,
.., Y k + 1 = g (y k + 2 ), y k = g (y k + 1 ),.
Keys (GK r ,..., GK) derived from y 1 = g (y 2 )
k + 1 , GK k ,..., GK 1 ), and when the group key GK k is updated, a new group key GK
k + 1 , the user holds only the updated latest group key GK k , encrypts the shared information of the group using the updated group key, and uses the group key of its own class. The encrypted shared information is decrypted, and the shared information encrypted with the past group key uses a group key derived from the latest group key GK k held by the user using a one-way function f. The information that has been decrypted by the user and encrypted with the group key of a lower class than itself is used by the user himself to obtain the one-way function g
A group key method characterized by being decrypted using the key derived in (1).
【請求項6】 複数の階級からなる階層構造を持ち、複
数の利用者からなるグループの共有情報をグループ鍵で
暗号化してグループで共有し、利用者は暗号化された共
有情報をグループ鍵で復号化して利用するとともに、各
利用者は自身の階級および自身の階級より下位の階級の
情報を暗号化/復号化することができるグループ鍵方法
であって、 グループ鍵は、公開鍵暗号方式の鍵であって、秘密情報
S1から公開された一方向性関数fを用いて作成される
n個の各値tn =f(S1),…,tk+1 =f
(tk+2 ),tk =f(tk+1 ),…,t1 =f
(t2 )および秘密情報S2から公開された一方向性関
数gを用いて作成されるm個の各値ym =g(S2),
…,yk+1 =g(yk+2 ),yk =g(yk+1 ),…,
1 =g(y2 )から導出される秘密鍵(SGKr
…,SGKk+1 ,SGKk ,…,SGK1 )および公開
鍵(PGKr ,…,PGKk+1 ,PGKk ,…,PGK
1 )のペアであり、 グループ鍵(SGKk ,PGKk )の更新時には、新た
なグループ鍵(SGKk+1 ,PGKk+1 )を生成し、 利用者は、更新された最新のグループ鍵(SGKk ,P
GKk )のみを保持し、この最新のグループ鍵の公開鍵
PGKk を用いて、グループの共有情報を暗号化し、 グループ鍵の公開鍵PGKk で暗号化された共有情報を
グループ鍵の秘密鍵SGKk で復号化し、 過去のグループ鍵で暗号化された共有情報は、最新のグ
ループ鍵の秘密鍵SGKk から一方向性関数fを用いて
導出した秘密鍵を用いて復号化し、 自身より下位の階級のグループ鍵で暗号化された情報
は、利用者自身が自身のグループ鍵から一方向性関数g
で導出した秘密鍵を用いて復号化されることを特徴とす
るグループ鍵方法。
6. A hierarchical structure including a plurality of classes, wherein shared information of a group of a plurality of users is encrypted with a group key and shared by the group, and the users share the encrypted shared information with a group key. A group key method in which each user can encrypt / decrypt information of his / her own class and a class lower than his / her own class while using it by decryption. a key, each value of n which is created using a one-way function f, which is published by the secret information S1 t n = f (S1) , ..., t k + 1 = f
(T k + 2 ), t k = f (t k + 1 ),..., T 1 = f
(T 2 ) and m values y m = g (S 2) created using the one-way function g published from the secret information S 2,
.., Y k + 1 = g (y k + 2 ), y k = g (y k + 1 ),.
secret key (SGK r , derived from y 1 = g (y 2 ))
..., SGK k + 1, SGK k, ..., SGK 1) and the public key (PGK r, ..., PGK k + 1, PGK k, ..., PGK
1 ), and when the group key (SGK k , PGK k ) is updated, a new group key (SGK k + 1 , PGK k + 1 ) is generated, and the user updates the updated group key. (SGK k , P
GK k ), encrypts the shared information of the group using the latest public key PGK k of the group key, and converts the shared information encrypted with the public key PGK k of the group key to the secret key of the group key. The shared information decrypted with SGK k and encrypted with the past group key is decrypted using the secret key derived from the latest secret key SGK k of the group key using the one-way function f, The information encrypted with the group key of the class is obtained by the user using the one-way function g
A group key method characterized by being decrypted using a secret key derived in (1).
【請求項7】 前記グループ鍵は、階層組織を表す公開
情報Y1 ,Y2 ,…,Ym を用いて、前記一方向性関数
gで作成されるm個の各値ym =g(S‖Ym ),…,
k+1 =g(y′k+1 ‖Yk+1 ),yk =g(y′k
k ),…,y1 =g(y′1 ‖Y1 )から導出され、
ここでy′k はyk の上位階層の値であることを特徴と
する請求項3乃至6のいずれかに記載のグループ鍵方
法。
7. The group key is obtained by using public information Y 1 , Y 2 ,..., Y m representing a hierarchical organization, and each of m values y m = g (g) created by the one-way function g. S‖Y m ),…,
y k + 1 = g (y ′ k + 1 ‖Y k + 1 ), y k = g (y ′ k
Y k ),..., Y 1 = g (y ′ 1 ‖Y 1 )
Here y 'k is group key method according to any one of claims 3 to 6, characterized in that the value of the upper hierarchy of y k.
【請求項8】 共有情報を利用者が生成した任意の鍵で
暗号化し、当該鍵をグループ鍵で暗号化したものを添付
情報として暗号化された共有情報に添付することを特徴
とする請求項1乃至7のいずれかに記載のグループ鍵方
法。
8. The shared information is encrypted with an arbitrary key generated by a user, and the key encrypted with a group key is attached to the encrypted shared information as attached information. 8. The group key method according to any one of 1 to 7.
【請求項9】 グループ鍵が更新される度に、前記添付
情報を最新のグループ鍵で暗号化することを特徴とする
請求項8記載のグループ鍵方法。
9. The group key method according to claim 8, wherein each time the group key is updated, the attached information is encrypted with the latest group key.
【請求項10】 複数の利用者からなるグループの共有
情報をグループ鍵で暗号化してグループで共有し、利用
者は暗号化された共有情報をグループ鍵で復号化して利
用するグループ鍵装置であって、 共通鍵暗号方式の鍵であって、秘密情報Sから公開され
た一方向性関数fを用いて作成されるn個の各値tn
f(S),…,tk+1 =f(tk+2 ),tk =f(t
k+1 ),…,t1 =f(t2 )から導出されるグループ
鍵(GKn ,…,GKk+1 ,GKk ,…,GK1 )を生
成するグループ鍵生成手段と、 この生成されたグループ鍵を更新する度に、鍵(G
1 ,…,GKk+1 ,GKk ,…,GKn )の順に利用
し、グループ鍵GKk の更新時には、新たなグループ鍵
GKk+1 を生成するグループ鍵更新手段と、 利用者端末に設けられ、更新された最新のグループ鍵G
k のみを利用者自身のグループ鍵として保持するグル
ープ鍵保持手段と、 このグループ鍵保持手段に保持された最新のグループ鍵
を用いて、グループの共有情報を暗号化するとともに、
グループ鍵で暗号化された共有情報をグループ鍵で復号
化する暗号化/復号化手段と、 過去のグループ鍵で暗号化された共有情報を復号化する
ためのグループ鍵を前記グループ鍵保持手段に保持され
ている利用者自身の最新のグループ鍵GKk から一方向
性関数を用いて導出する過去情報用グループ鍵導出手段
とを有することを特徴とするグループ鍵装置。
10. A group key device that encrypts shared information of a group of a plurality of users with a group key and shares the information with the group, and decrypts the encrypted shared information with a group key for use. And n values t n = n , which are keys of the common key cryptosystem and are created using the one-way function f disclosed from the secret information S,
f (S), ..., t k + 1 = f (t k + 2), t k = f (t
k + 1), ..., t 1 = f ( a group key derived from t 2) (GK n, ... , GK k + 1, GK k, ..., and a group key generating means for generating a GK 1), the Each time the generated group key is updated, the key (G
K 1, ..., GK k + 1, GK k, ..., to use in the order of GK n), at the time of update of the group key GK k, and the group key update means for generating a new group key GK k + 1, the user The latest group key G provided and updated in the terminal
A group key holding unit that holds only K k as a user's own group key, and a group shared information is encrypted using the latest group key held by the group key holding unit,
An encryption / decryption means for decrypting the shared information encrypted with the group key with the group key; and a group key for decrypting the shared information encrypted with the past group key to the group key holding means. A group key deriving means for deriving a past information group key deriving from a held user's own latest group key GK k using a one-way function.
【請求項11】 複数の利用者からなるグループの共有
情報をグループ鍵で暗号化してグループで共有し、利用
者は暗号化された共有情報をグループ鍵で復号化して利
用するグループ鍵装置であって、 公開鍵暗号方式の鍵であって、秘密情報Sから公開され
た一方向性関数fを用いて作成されるn個の各値tn
f(S),…,tk+1 =f(tk+2 ),tk =f(t
k+1 ),…,t1 =f(t2 )から導出される秘密鍵
(SGKn ,…,SGKk+1 ,SGKk ,…,SG
1 )および公開鍵(PGKn ,…,PGKk+1,PG
k ,…,PGK1 )のペアを生成するグループ鍵用秘
密鍵/公開鍵生成手段と、 前記グループ鍵を更新する度に、鍵(SGK1 ,PGK
1 ),…,(SGKk+ 1 ,PGKk+1 ),(SGKk
PGKk ),…,(SGKn ,PGKn )の順に利用
し、グループ鍵(SGKk ,PGKk )の更新時には、
新たなグループ鍵(SGKk+1 ,PGKk+1 )を生成す
るグループ鍵更新手段と、 利用者端末に設けられ、更新された最新のグループ鍵
(SGKk ,PGKk )のみを保持するグループ鍵保持
手段と、 このグループ鍵保持手段に保持された最新のグループ鍵
の公開鍵PGKk を用いて、グループの共有情報を暗号
化するとともに、グループ鍵の公開鍵PGKkで暗号化
された共有情報をグループ鍵の秘密鍵SGKk で復号化
する暗号化/復号化手段と、 過去のグループ鍵で暗号化された共有情報を復号化する
ためのグループ鍵の秘密鍵を前記グループ鍵保持手段で
保持されている最新のグループ鍵の秘密鍵SGKk から
一方向性関数を用いて導出する過去情報用グループ鍵導
出手段とを有することを特徴とするグループ鍵装置。
11. A group key device that encrypts shared information of a group of a plurality of users with a group key and shares the information with the group, and decrypts the encrypted shared information with a group key for use. Then, each of the n values t n = n , which is a key of the public key cryptosystem and is created using the one-way function f published from the secret information S,
f (S), ..., t k + 1 = f (t k + 2), t k = f (t
k + 1), ..., t 1 = secret key that is derived from f (t 2) (SGK n , ..., SGK k + 1, SGK k, ..., SG
K 1 ) and public keys (PGK n ,..., PGK k + 1 , PG
K k ,..., PGK 1 ) private key / public key generating means for generating a pair of keys (SGK 1 , PGK 1 , PGK 1)
1 ),..., (SGK k + 1 , PGK k + 1 ), (SGK k ,
PGK k ),..., (SGK n , PGK n ) in order, and when updating the group key (SGK k , PGK k ),
A group key updating means for generating a new group key (SGK k + 1 , PGK k + 1 ); and a group provided in the user terminal and holding only the updated latest group key (SGK k , PGK k ) Using the key holding means and the latest group key public key PGK k held in the group key holding means, the shared information of the group is encrypted, and the shared information encrypted with the group key public key PGK k is encrypted. An encryption / decryption means for decrypting information with a secret key SGK k of a group key, and a secret key of a group key for decrypting shared information encrypted with a past group key by the group key holding means. A group key deriving means for deriving a past information group key deriving means from a held latest secret key SGK k of the group key using a one-way function.
【請求項12】 複数の階級からなる階層構造を持ち、
複数の利用者からなるグループの共有情報をグループ鍵
で暗号化してグループで共有し、利用者は暗号化された
共有情報をグループ鍵で復号化して利用するとともに、
各利用者は自身の階級および自身の階級より下位の階級
の情報を暗号化/復号化することができるグループ鍵装
置であって、 共通鍵暗号方式の鍵であって、秘密情報Sから公開され
た一方向性関数gを用いて作成されるm個の各値ym
g(S),…,yk+1 =g(yk+2 ),yk =g(y
k+1 ),…,y1 =g(y2 )から導出される鍵(GK
m ,…,GKk+1,GKk ,…,GK1 )を生成するグ
ループ鍵生成手段と、 階級毎に上位から各階級のグループ鍵として、(G
1 ,…,GKk+1 ,GKk ,…,GKm )の順に利用
者に割り当てるグループ鍵割当手段と、 利用者端末に設けられ、利用者に割り当てられた最新の
グループ鍵GKk のみを保持するグループ鍵保持手段
と、 このグループ鍵保持手段に保持されたグループ鍵を用い
て、グループの共有情報を暗号化するとともに自身の階
級のグループ鍵で暗号化された共有情報を復号化する暗
号化/復号化手段と、 自身より下位の階級のグループ鍵で暗号化された情報を
復号化するための鍵を前記グループ鍵保持手段に保持さ
れている利用者自身のグループ鍵GKk から一方向性関
数を用いて導出する下位階級情報用鍵導出手段とを有す
ることを特徴とするグループ鍵装置。
12. It has a hierarchical structure consisting of a plurality of classes,
The shared information of the group consisting of multiple users is encrypted with the group key and shared by the group, and the user decrypts and uses the encrypted shared information with the group key,
Each user is a group key device capable of encrypting / decrypting information of his / her own class and classes lower than his / her own class, and is a key of a common key cryptosystem and is disclosed from secret information S. and each value of m which is created using a one-way function g y m =
g (S),..., y k + 1 = g (y k + 2 ), y k = g (y
k + 1), ..., key derived from y 1 = g (y 2) (GK
m ,..., GK k + 1 , GK k ,..., GK 1 ), and (G)
K 1 ,..., GK k + 1 , GK k ,..., GK m ) and only the latest group key GK k provided in the user terminal and assigned to the user. Using the group key held by the group key holding means, and encrypting the shared information of the group and decrypting the shared information encrypted by the group key of its own class. An encryption / decryption means, and a key for decrypting information encrypted with a group key of a lower rank than itself, from a user's own group key GK k held in the group key holding means. A key deriving means for deriving lower-class information using a direction function.
【請求項13】 複数の階級からなる階層構造を持ち、
複数の利用者からなるグループの共有情報をグループ鍵
で暗号化してグループで共有し、利用者は暗号化された
共有情報をグループ鍵で復号化して利用するとともに、
利用者は自身の階級および自身の階級より下位の階級の
情報を暗号化/復号化することができるグループ鍵装置
であって、 公開鍵暗号方式の鍵であって、秘密情報Sから公開され
た一方向性関数gを用いて作成されるm個の各値ym
g(S),…,yk+1 =g(yk+2 ),yk =g(y
k+1 ),…,y1 =g(y2 )から導出される秘密鍵
(SGKm ,…,SGKk+1 ,SGKk ,…,SG
1 )および公開鍵(PGKm ,…,PGKk+1,PG
k ,…,PGK1 )を生成するグループ鍵用秘密鍵/
公開鍵生成手段と、 階級毎に上位から各階級のグループ鍵として、(SGK
1 ,PGK1 ),…,(SGKk+1 ,PGKk+1 ),
(SGKk ,PGKk ),…,(SGKm ,PGKm
のペアを順に利用者に割り当てるグループ鍵割当手段
と、 利用者端末に設けられ、利用者に割り当てられたグルー
プ鍵(SGKk ,PGKk )のみを保持するグループ鍵
保持手段と、 このグループ鍵保持手段に保持されたグループ鍵の公開
鍵PGKk を用いて、グループの共有情報を暗号化し、
秘密鍵SGKk を用いて、自身の階級のグループ鍵の公
開鍵PGKk で暗号化された共有情報を復号化する暗号
化/復号化手段と、 自身より下位の階級のグループ鍵で暗号化された情報を
復号化するための鍵を前記グループ鍵保持手段に保持さ
れた利用者自身の秘密鍵SGKk から一方向性関数を用
いて導出する下位階級情報用鍵導出手段とを有すること
を特徴とするグループ鍵装置。
13. It has a hierarchical structure consisting of a plurality of classes,
The shared information of the group consisting of multiple users is encrypted with the group key and shared by the group, and the user decrypts and uses the encrypted shared information with the group key,
The user is a group key device capable of encrypting / decrypting information of his / her own class and a class lower than his / her own class, and is a key of a public key cryptosystem and is disclosed from secret information S. Each of m values ym = created using the one-way function g =
g (S),..., y k + 1 = g (y k + 2 ), y k = g (y
k + 1), ..., y 1 = g ( secret key that is derived from y 2) (SGK m, ... , SGK k + 1, SGK k, ..., SG
K 1 ) and public keys (PGK m ,..., PGK k + 1 , PG
K k ,... PGK 1 )
Public key generation means, and a group key of each class from the higher rank (SGK
1 , PGK 1 ), ..., (SGK k + 1 , PGK k + 1 ),
(SGK k , PGK k ),..., (SGK m , PGK m )
Group key assigning means for sequentially assigning pairs of users to a user, group key holding means provided in a user terminal and holding only group keys (SGK k , PGK k ) assigned to the user, and group key holding means Using the public key PGK k of the group key held in the means, the shared information of the group is encrypted,
Encrypting / decrypting means for decrypting shared information encrypted with the public key PGK k of the own group key using the secret key SGK k ; Key deriving means for deriving a key for decrypting the decrypted information from the user's own private key SGK k held in the group key holding means using a one-way function. Group key device.
【請求項14】 複数の階級からなる階層構造を持ち、
複数の利用者からなるグループの共有情報をグループ鍵
で暗号化してグループで共有し、利用者は暗号化された
共有情報をグループ鍵で復号化して利用するとともに、
各利用者は自身の階級および自身の階級より下位の階級
の情報を暗号化/復号化することができるグループ鍵装
置であって、 共通鍵暗号方式の鍵であって、秘密情報S1から公開さ
れた一方向性関数fを用いて作成されるn個の各値tn
=f(S1),…,tk+1 =f(tk+2 ),tk =f
(tk+1 ),…,t1 =f(t2 )および秘密情報S2
から公開された一方向性関数gを用いて作成されるm個
の各値ym =g(S2),…,yk+1 =g(yk+2 ),
k =g(yk+1 ),…,y1 =g(y2 )から導出さ
れるグループ鍵(GKr ,…,GKk+1 ,GKk ,…,
GK1 )を生成し、グループ鍵GKk の更新時には、新
たなグループ鍵GKk+1 を生成するグループ鍵生成手段
と、 利用者端末に設けられ、更新された最新のグループ鍵G
k のみを利用者自身のグループ鍵として保持するグル
ープ鍵保持手段と、 このグループ鍵保持手段に保持されている最新のグルー
プ鍵を用いて、グループの共有情報を暗号化するととも
に自身の階級のグループ鍵で暗号化された共有情報を復
号化する暗号化/復号化手段と、 過去のグループ鍵で暗号化された共有情報を復号化する
ためのグループ鍵を前記グループ鍵保持手段に保持され
ている利用者自身の最新のグループ鍵GKk から一方向
性関数fを用いて導出する過去情報用グループ鍵導出手
段と、 自身より下位の階級のグループ鍵で暗号化された情報を
復号化するための鍵を前記グループ鍵保持手段に保持さ
れている利用者自身のグループ鍵から一方向性関数gで
導出する下位階級情報用グループ鍵導出手段とを有する
ことを特徴とするグループ鍵装置。
14. It has a hierarchical structure consisting of a plurality of classes,
The shared information of the group consisting of multiple users is encrypted with the group key and shared by the group, and the user decrypts and uses the encrypted shared information with the group key,
Each user is a group key device capable of encrypting / decrypting information of his / her own class and classes lower than his / her own class. The user is a key of a common key cryptosystem and is disclosed from secret information S1. N values t n created using the one-way function f
= F (S1), ..., t k + 1 = f (t k + 2), t k = f
(T k + 1 ),..., T 1 = f (t 2 ) and secret information S2
, Each value y m = g (S2),..., Y k + 1 = g (y k + 2 ), created using the one-way function g published from
The group keys (GK r ,..., GK k + 1 , GK k ,...) derived from y k = g (y k + 1 ),..., y 1 = g (y 2 )
GK 1 ), and at the time of updating the group key GK k , a group key generating means for generating a new group key GK k + 1, and an updated latest group key G provided at the user terminal.
Group key holding means for holding only K k as a user's own group key, and using the latest group key held in the group key holding means to encrypt shared information of the group and An encryption / decryption unit for decrypting the shared information encrypted with the group key, and a group key for decrypting the shared information encrypted with the past group key, held in the group key holding unit. A past information group key deriving means for deriving from a user's own latest group key GK k using a one-way function f, and for decrypting information encrypted with a group key of a lower class than the user And a group key deriving means for lower class information, which derives a key from the user's own group key held in the group key holding means by a one-way function g. Group key device to do.
【請求項15】 複数の階級からなる階層構造を持ち、
複数の利用者からなるグループの共有情報をグループ鍵
で暗号化してグループで共有し、利用者は暗号化された
共有情報をグループ鍵で暗号して利用するとともに、各
利用者は自身の階級および自身の階級より下位の階級の
情報を暗号化/復号化することができるグループ鍵装置
であって、 公開鍵暗号方式の鍵であって、秘密情報S1から公開さ
れた一方向性関数fを用いて作成されるn個の各値tn
=f(S1),…,tk+1 =f(tk+2 ),tk =f
(tk+1 ),…,t1 =f(t2 )および秘密情報S2
から公開された一方向性関数gを用いて作成されるm個
の各値ym =g(S2),…,yk+1 =g(yk+2 ),
k =g(yk+1 ),…,y1 =g(y2 )から導出さ
れる秘密鍵(SGKr ,…,SGKk+1 ,SGKk
…,SGK1 )および公開鍵(PGKr ,…,PGK
k+1 ,PGKk ,…,PGK1 )のペアを生成し、グル
ープ鍵(SGKk ,PGKk )の更新時には、新たなグ
ループ鍵(SGKk+1 ,PGKk+ 1 )を生成するグルー
プ鍵用秘密鍵/公開鍵生成手段と、 利用者端末に設けられ、更新された最新のグループ鍵
(SGKk ,PGKk )のみを利用者自身のグループ鍵
として保持するグループ鍵保持手段と、 このグループ鍵保持手段に保持された最新のグループ鍵
の公開鍵PGKk を用いて、グループの共有情報を暗号
化し、グループ鍵の公開鍵PGKk で暗号化された共有
情報をグループ鍵の秘密鍵SGKk で復号化する暗号化
/復号化手段と、 過去のグループ鍵で暗号化された共有情報を復号化する
ための秘密鍵を前記グループ鍵保持手段に保持されてい
る利用者自身の最新のグループ鍵の秘密鍵SGKk から
一方向性関数fを用いて導出する過去情報用秘密鍵導出
手段と、 自身より下位の階級のグループ鍵で暗号化された情報を
復号化するための秘密鍵を前記グループ鍵保持手段に保
持されている利用者自身のグループ鍵から一方向性関数
gで導出する下位階級情報用秘密鍵導出手段とを有する
ことを特徴とするグループ鍵装置。
15. It has a hierarchical structure consisting of a plurality of classes,
The shared information of the group consisting of multiple users is encrypted with the group key and shared by the group, the users use the encrypted shared information by encrypting it with the group key, and each user uses his or her own class and A group key device capable of encrypting / decrypting information of a class lower than its own class, using a one-way function f which is a key of a public key cryptosystem and is disclosed from secret information S1. N values t n created by
= F (S1), ..., t k + 1 = f (t k + 2), t k = f
(T k + 1 ),..., T 1 = f (t 2 ) and secret information S2
, Each value y m = g (S2),..., Y k + 1 = g (y k + 2 ), created using the one-way function g published from
The secret keys (SGK r ,..., SGK k + 1 , SGK k , derived from y k = g (y k + 1 ),..., y 1 = g (y 2 )
.., SGK 1 ) and the public key (PGK r ,.
k + 1 , PGK k ,..., PGK 1 ), and a group key for generating a new group key (SGK k + 1 , PGK k + 1 ) when updating the group key (SGK k , PGK k ) Secret key / public key generating means, group key holding means provided in the user terminal, and holding only the updated latest group key (SGK k , PGK k ) as the user's own group key; The shared information of the group is encrypted using the latest public key PGK k of the group key held in the key holding means, and the shared information encrypted with the public key PGK k of the group key is converted to the secret key SGK k of the group key. Encryption / decryption means for decrypting the shared information, and a user's own latest group key stored in said group key storage means for storing a secret key for decrypting shared information encrypted with a past group key. the secret of Said group key holding means a secret key for decrypting the past information secret key derivation means for deriving the information encrypted by the group key of the lower ranks than own using SGK k from one-way function f And a means for deriving a secret key for lower-class information derived from the user's own group key held by the one-way function g.
【請求項16】 前記グループ鍵は、階層組織を表す公
開情報Y1 ,Y2 ,…,Ym を用いて、前記一方向性関
数gで作成されるm個の各値ym =g(S‖Ym ),
…,yk+1 =g(y′k+1 ‖Yk+1 ),yk =g(y′
k ‖Yk ),…,y1 =g(y′1 ‖Y1 )から導出さ
れ、ここでy′k はyk の上位階層の値であることを特
徴とする請求項12乃至15のいずれかに記載のグルー
プ鍵装置。
16. The group key, public information Y 1, Y 2 representing the hierarchical organization, ..., Y m using the one-way function values of the m created by g y m = g ( S‖Y m ),
.., Y k + 1 = g (y ′ k + 1 ‖Y k + 1 ), y k = g (y ′
k ‖Y k), ..., 'derived from 1 ‖Y 1), where y' y 1 = g (y k is the claims 12 to 15, characterized in that the value of the upper hierarchy of y k The group key device according to any one of the above.
【請求項17】 共有情報を利用者が生成した任意の鍵
で暗号化し、当該鍵をグループ鍵で暗号化したものを添
付情報として暗号化された共有情報に添付することを特
徴とする請求項10乃至16のいずれかに記載のグルー
プ鍵装置。
17. The shared information is encrypted with an arbitrary key generated by a user, and the key encrypted with a group key is attached to the encrypted shared information as attached information. 17. The group key device according to any one of 10 to 16.
【請求項18】 グループ鍵が更新される度に、前記添
付情報を最新のグループ鍵で暗号化することを特徴とす
る請求項17記載のグループ鍵装置。
18. The group key device according to claim 17, wherein each time the group key is updated, the attached information is encrypted with the latest group key.
【請求項19】 複数の利用者からなるグループの共有
情報をグループ鍵で暗号化してグループで共有し、利用
者は暗号化された共有情報をグループ鍵で復号化して利
用するグループ鍵プログラムを記録した記録媒体であっ
て、 グループ鍵は、共通鍵暗号方式の鍵であって、秘密情報
Sから公開された一方向性関数fを用いて作成されるn
個の各値tn =f(S),…,tk+1 =f(tk+2 ),
k =f(tk+1 ),…,t1 =f(t2 )から導出さ
れる鍵(GKn,…,GKk+1 ,GKk ,…,GK1
であり、 該グループ鍵を更新する度に、鍵(GK1 ,…,GK
k+1 ,GKk ,…,GKn )の順に利用し、 グループ鍵GKk の更新時には、新たなグループ鍵GK
k+1 を生成し、 利用者は、更新された最新のグループ鍵GKk のみを保
持し、この最新のグループ鍵を用いて、グループの共有
情報を暗号化し、 グループ鍵で暗号化された共有情報をグループ鍵で復号
化し、 過去のグループ鍵で暗号化された共有情報は、利用者自
身が保持する最新のグループ鍵GKk から一方向性関数
を用いて導出したグループ鍵を用いて復号化することを
特徴とするグループ鍵プログラムを記録した記録媒体。
19. The shared information of a group including a plurality of users is encrypted with a group key and shared by the group, and the user records a group key program to be used by decrypting the encrypted shared information with a group key. The group key is a key of a common key cryptosystem, and is created using a one-way function f published from the secret information S.
, Each value t n = f (S),..., T k + 1 = f (t k + 2 ),
Keys (GK n ,..., GK k + 1 , GK k ,..., GK 1 ) derived from t k = f (t k + 1 ),..., t 1 = f (t 2 )
Each time the group key is updated, the key (GK 1 ,..., GK
k + 1 , GK k ,..., GK n ), and when the group key GK k is updated, a new group key GK is used.
k + 1 is generated, and the user holds only the updated latest group key GK k , encrypts the shared information of the group using the updated group key, and uses the shared key encrypted with the group key. The information is decrypted with the group key, and the shared information encrypted with the past group key is decrypted using the group key derived from the latest group key GK k held by the user using a one-way function. A recording medium on which a group key program is recorded.
【請求項20】 複数の利用者からなるグループの共有
情報をグループ鍵で暗号化してグループで共有し、利用
者は暗号化された共有情報をグループ鍵で復号化して利
用するグループ鍵プログラムを記録した記録媒体であっ
て、 グループ鍵は、公開鍵暗号方式の鍵であって、秘密情報
Sから公開された一方向性関数fを用いて作成されるn
個の各値tn =f(S),…,tk+1 =f(tk+2 ),
k =f(tk+1 ),…,t1 =f(t2 )から導出さ
れる秘密鍵(SGKn ,…,SGKk+1 ,SGKk
…,SGK1 )および公開鍵(PGKn ,…,PGK
k+1 ,PGKk ,…,PGK1 )のペアであり、 該グループ鍵を更新する度に、鍵(SGK1 ,PG
1 ),…,(SGKk+1,PGKk+1 ),(SG
k ,PGKk ),…,(SGKn ,PGKn )の順に
利用し、 グループ鍵(SGKk ,PGKk )の更新時には、新た
なグループ鍵(SGKk+1 ,PGKk+1 )を生成し、 利用者は、更新された最新のグループ鍵(SGKk ,P
GKk )のみを保持し、この最新のグループ鍵の公開鍵
PGKk を用いて、グループの共有情報を暗号化し、 グループ鍵の公開鍵PGKk で暗号化された共有情報を
グループ鍵の秘密鍵SGKk で復号化し、 過去のグループ鍵で暗号化された共有情報は、最新のグ
ループ鍵の秘密鍵SGKk から一方向性関数を用いて導
出した秘密鍵を用いて復号化することを特徴とするグル
ープ鍵プログラムを記録した記録媒体。
20. Encrypt shared information of a group of a plurality of users with a group key and share the group, and the user records a group key program to be used by decrypting the encrypted shared information with a group key. The group key is a key of the public key cryptosystem, and is created using a one-way function f published from the secret information S.
, Each value t n = f (S),..., T k + 1 = f (t k + 2 ),
secret keys (SGK n ,..., SGK k + 1 , SGK k , derived from t k = f (t k + 1 ),..., t 1 = f (t 2 )
..., SGK 1 ) and the public key (PGK n , ..., PGK)
k + 1 , PGK k ,..., PGK 1 ). Each time the group key is updated, the key (SGK 1 , PGK 1 ,
K 1 ),..., (SGK k + 1 , PGK k + 1 ), (SG
K k, PGK k), ... , the (SGK n, used in the order of PGK n), a group key (SGK k, at the time of update of the PGK k), a new group key (SGK k + 1, PGK k + 1) The user generates and updates the latest group key (SGK k , P
GK k ), encrypts the shared information of the group using the latest public key PGK k of the group key, and converts the shared information encrypted with the public key PGK k of the group key to the secret key of the group key. The shared information decrypted with the SGK k and encrypted with the past group key is decrypted using a secret key derived using a one-way function from the secret key SGK k of the latest group key. A recording medium on which a group key program to be recorded is recorded.
【請求項21】 複数の階級からなる階層構造を持ち、
複数の利用者からなるグループの共有情報をグループ鍵
で暗号化してグループで共有し、利用者は暗号化された
共有情報をグループ鍵で復号化して利用するとともに、
各利用者は自身の階級および自身の階級より下位の階級
の情報を暗号化/復号化することができるグループ鍵プ
ログラムを記録した記録媒体であって、 グループ鍵は、共通鍵暗号方式の鍵であって、秘密情報
Sから公開された一方向性関数gを用いて作成されるm
個の各値ym =g(S),…,yk+1 =g(yk+2 ),
k =g(yk+1 ),…,y1 =g(y2 )から導出さ
れる鍵(GKm,…,GKk+1 ,GKk ,…,GK1
であり、 階級毎に上位から各階級のグループ鍵として、(G
1 ,…,GKk+1 ,GKk ,…,GKm )の順に利用
者に割り当て、 利用者は、割り当てられた最新のグループ鍵GKk のみ
を保持し、このグループ鍵を用いて、グループの共有情
報を暗号化するとともに自身の階級のグループ鍵で暗号
化された共有情報を復号化し、 自身より下位の階級のグループ鍵で暗号化された情報を
復号化するには、利用者自身が自身のグループ鍵GKk
から一方向性関数を用いて導出された鍵を用いることを
特徴とするグループ鍵プログラムを記録した記録媒体。
21. It has a hierarchical structure consisting of a plurality of classes,
The shared information of the group consisting of multiple users is encrypted with the group key and shared by the group, and the user decrypts and uses the encrypted shared information with the group key,
Each user is a recording medium recording a group key program capable of encrypting / decrypting information of his / her own class and classes lower than his / her own class. The group key is a key of a common key cryptosystem. And m created using the one-way function g published from the secret information S
, Each value y m = g (S),..., Y k + 1 = g (y k + 2 ),
Keys (GK m ,..., GK k + 1 , GK k ,..., GK 1 ) derived from y k = g (y k + 1 ),..., y 1 = g (y 2 )
And as a group key of each class from the higher rank for each class, (G
K 1 ,..., GK k + 1 , GK k ,..., GK m ) in this order. The user holds only the latest group key GK k assigned, and uses this group key. To encrypt the shared information of the group, decrypt the encrypted shared information with the group key of its own class, and decrypt the information encrypted with the group key of the lower class, Is their own group key GK k
A recording medium recording a group key program, characterized in that a key derived using a one-way function from is used.
【請求項22】 複数の階級からなる階層構造を持ち、
複数の利用者からなるグループの共有情報をグループ鍵
で暗号化してグループで共有し、利用者は暗号化された
共有情報をグループ鍵で復号化して利用するとともに、
利用者は自身の階級および自身の階級より下位の階級の
情報を暗号化/復号化することができるグループ鍵プロ
グラムを記録した記録媒体であって、 グループ鍵は、公開鍵暗号方式の鍵であって、秘密情報
Sから公開された一方向性関数gを用いて作成されるm
個の各値ym =g(S),…,yk+1 =g(yk+2 ),
k =g(yk+1 ),…,y1 =g(y2 )から導出さ
れる秘密鍵(SGKm ,…,SGKk+1 ,SGKk
…,SGK1 )および公開鍵(PGKm ,…,PGK
k+1 ,PGKk ,…,PGK1 )であり、 階級毎に上位から各階級のグループ鍵として、(SGK
1 ,PGK1 ),…,(SGKk+1 ,PGKk+1 ),
(SGKk ,PGKk ),…,(SGKm ,PGKm
のペアを順に利用者に割り当て、 利用者は、割り当てられたグループ鍵(SGKk ,PG
k )のみを保持し、このグループ鍵の公開鍵PGKk
を用いて、グループの共有情報を暗号化し、秘密鍵SG
k を用いて、自身の階級のグループ鍵の公開鍵PGK
k で暗号化された共有情報を復号化し、 自身より下位の階級のグループ鍵で暗号化された情報を
復号化するには、利用者自身が自身の秘密鍵SGKk
ら一方向性関数を用いて導出された鍵を用いることを特
徴とするグループ鍵プログラムを記録した記録媒体。
22. It has a hierarchical structure consisting of a plurality of classes,
The shared information of the group consisting of multiple users is encrypted with the group key and shared by the group, and the user decrypts and uses the encrypted shared information with the group key,
The user is a recording medium storing a group key program capable of encrypting / decrypting his / her own class and information of a class lower than his / her own class. The group key is a key of a public key cryptosystem. M using the one-way function g published from the secret information S
, Each value y m = g (S),..., Y k + 1 = g (y k + 2 ),
The secret keys (SGK m ,..., SGK k + 1 , SGK k , derived from y k = g (y k + 1 ),..., y 1 = g (y 2 )
.., SGK 1 ) and the public key (PGK m ,.
k + 1 , PGK k ,..., PGK 1 ), and (SGK
1 , PGK 1 ), ..., (SGK k + 1 , PGK k + 1 ),
(SGK k , PGK k ),..., (SGK m , PGK m )
Are sequentially assigned to the user, and the user assigns the assigned group key (SGK k , PG
K k ) and the public key PGK k of this group key
Is used to encrypt the shared information of the group, and the secret key SG
Using K k , the public key PGK of the own group key
In order to decrypt the shared information encrypted with k and decrypt the information encrypted with the group key of a lower rank than itself, the user himself uses a one-way function from his own secret key SGK k. A recording medium on which a group key program is recorded, using a key derived in such a manner.
【請求項23】 複数の階級からなる階層構造を持ち、
複数の利用者からなるグループの共有情報をグループ鍵
で暗号化してグループで共有し、利用者は暗号化された
共有情報をグループ鍵で復号化して利用するとともに、
各利用者は自身の階級および自身の階級より下位の階級
の情報を暗号化/復号化することができるグループ鍵プ
ログラムを記録した記録媒体であって、 グループ鍵は、共通鍵暗号方式の鍵であって、秘密情報
S1から公開された一方向性関数fを用いて作成される
n個の各値tn =f(S1),…,tk+1 =f
(tk+2 ),tk =f(tk+1 ),…,t1 =f
(t2 )および秘密情報S2から公開された一方向性関
数gを用いて作成されるm個の各値ym =g(S2),
…,yk+1 =g(yk+2 ),yk =g(yk+1 ),…,
1 =g(y2 )から導出される鍵(GKr ,…,GK
k+1 ,GKk ,…,GK1 )であり、 グループ鍵GKk の更新時には、新たなグループ鍵GK
k+1 を生成し、 利用者は、更新された最新のグループ鍵GKk のみを保
持し、この最新のグループ鍵を用いて、グループの共有
情報を暗号化するとともに自身の階級のグループ鍵で暗
号化された共有情報を復号化し、 過去のグループ鍵で暗号化された共有情報は、利用者自
身が保持する最新のグループ鍵GKk から一方向性関数
fを用いて導出したグループ鍵を用いて復号化され、 自身より下位の階級のグループ鍵で暗号化された情報
は、利用者自身が自身のグループ鍵から一方向性関数g
で導出した鍵を用いて復号化されることを特徴とするグ
ループ鍵プログラムを記録した記録媒体。
23. It has a hierarchical structure consisting of a plurality of classes,
The shared information of the group consisting of multiple users is encrypted with the group key and shared by the group, and the user decrypts and uses the encrypted shared information with the group key,
Each user is a recording medium recording a group key program capable of encrypting / decrypting information of his / her own class and classes lower than his / her own class. The group key is a key of a common key cryptosystem. Then, each of the n values t n = f (S1),..., T k + 1 = f created using the one-way function f published from the secret information S1
(T k + 2 ), t k = f (t k + 1 ),..., T 1 = f
(T 2 ) and m values y m = g (S 2) created using the one-way function g published from the secret information S 2,
.., Y k + 1 = g (y k + 2 ), y k = g (y k + 1 ),.
Keys (GK r ,..., GK) derived from y 1 = g (y 2 )
k + 1 , GK k ,..., GK 1 ), and when the group key GK k is updated, a new group key GK
k + 1 , the user holds only the updated latest group key GK k , encrypts the shared information of the group using the updated group key, and uses the group key of its own class. The encrypted shared information is decrypted, and the shared information encrypted with the past group key uses a group key derived from the latest group key GK k held by the user using a one-way function f. The information that has been decrypted by the user and encrypted with the group key of a lower class than itself is used by the user himself to obtain the one-way function g
A recording medium recording a group key program, wherein the group key program is decrypted by using the key derived in the above.
【請求項24】 複数の階級からなる階層構造を持ち、
複数の利用者からなるグループの共有情報をグループ鍵
で暗号化してグループで共有し、利用者は暗号化された
共有情報をグループ鍵で復号化して利用するとともに、
各利用者は自身の階級および自身の階級より下位の階級
の情報を暗号化/復号化することができるグループ鍵プ
ログラムを記録した記録媒体であって、 グループ鍵は、公開鍵暗号方式の鍵であって、秘密情報
S1から公開された一方向性関数fを用いて作成される
n個の各値tn =f(S1),…,tk+1 =f
(tk+2 ),tk =f(tk+1 ),…,t1 =f
(t2 )および秘密情報S2から公開された一方向性関
数gを用いて作成されるm個の各値ym =g(S2),
…,yk+1 =g(yk+2 ),yk =g(yk+1 ),…,
1 =g(y2 )から導出される秘密鍵(SGKr
…,SGKk+1 ,SGKk ,…,SGK1 )および公開
鍵(PGKr ,…,PGKk+1 ,PGKk ,…,PGK
1 )のペアであり、 グループ鍵(SGKk ,PGKk )の更新時には、新た
なグループ鍵(SGKk+1 ,PGKk+1 )を生成し、 利用者は、更新された最新のグループ鍵(SGKk ,P
GKk )のみを保持し、この最新のグループ鍵の公開鍵
PGKk を用いて、グループの共有情報を暗号化し、 グループ鍵の公開鍵PGKk で暗号化された共有情報を
グループ鍵の秘密鍵SGKk で復号化し、 過去のグループ鍵で暗号化された共有情報は、最新のグ
ループ鍵の秘密鍵SGKk から一方向性関数fを用いて
導出した秘密鍵を用いて復号化し、 自身より下位の階級のグループ鍵で暗号化された情報
は、利用者自身が自身のグループ鍵から一方向性関数g
で導出した秘密鍵を用いて復号化されることを特徴とす
るグループ鍵プログラムを記録した記録媒体。
24. It has a hierarchical structure consisting of a plurality of classes,
The shared information of the group consisting of multiple users is encrypted with the group key and shared by the group, and the user decrypts and uses the encrypted shared information with the group key,
Each user is a recording medium recording a group key program capable of encrypting / decrypting information of his / her own class and classes lower than his / her own class. The group key is a key of a public key cryptosystem. Then, each of the n values t n = f (S1),..., T k + 1 = f created using the one-way function f published from the secret information S1
(T k + 2 ), t k = f (t k + 1 ),..., T 1 = f
(T 2 ) and m values y m = g (S 2) created using the one-way function g published from the secret information S 2,
.., Y k + 1 = g (y k + 2 ), y k = g (y k + 1 ),.
secret key (SGK r , derived from y 1 = g (y 2 ))
..., SGK k + 1, SGK k, ..., SGK 1) and the public key (PGK r, ..., PGK k + 1, PGK k, ..., PGK
1 ), and when the group key (SGK k , PGK k ) is updated, a new group key (SGK k + 1 , PGK k + 1 ) is generated, and the user updates the updated group key. (SGK k , P
GK k ), encrypts the shared information of the group using the latest public key PGK k of the group key, and converts the shared information encrypted with the public key PGK k of the group key to the secret key of the group key. The shared information decrypted with SGK k and encrypted with the past group key is decrypted using the secret key derived from the latest secret key SGK k of the group key using the one-way function f, The information encrypted with the group key of the class is obtained by the user using the one-way function g
A recording medium on which a group key program is recorded, wherein the group key program is decrypted using the secret key derived in the above.
【請求項25】 前記グループ鍵は、階層組織を表す公
開情報Y1 ,Y2 ,…,Ym を用いて、前記一方向性関
数gで作成されるm個の各値ym =g(S‖Ym ),
…,yk+1 =g(y′k+1 ‖Yk+1 ),yk =g(y′
k ‖Yk ),…,y1 =g(y′1 ‖Y1 )から導出さ
れ、ここでy′k はyk の上位階層の値であることを特
徴とする請求項21乃至24のいずれかに記載のグルー
プ鍵プログラムを記録した記録媒体。
25. The group key, public information Y 1, Y 2 representing the hierarchical organization, ..., Y m using the one-way function values of the m created by g y m = g ( S‖Y m ),
.., Y k + 1 = g (y ′ k + 1 ‖Y k + 1 ), y k = g (y ′
k ‖Y k), ..., 'derived from 1 ‖Y 1), where y' y 1 = g (y k is the claims 21 to 24, characterized in that the value of the upper hierarchy of y k A recording medium on which any of the group key programs described above is recorded.
【請求項26】 共有情報を利用者が生成した任意の鍵
で暗号化し、当該鍵をグループ鍵で暗号化したものを添
付情報として暗号化された共有情報に添付することを特
徴とする請求項19乃至25のいずれかに記載のグルー
プ鍵プログラムを記録した記録媒体。
26. The shared information is encrypted with an arbitrary key generated by a user, and the key encrypted with a group key is attached to the encrypted shared information as attached information. A recording medium recording the group key program according to any one of 19 to 25.
【請求項27】 グループ鍵が更新される度に、前記添
付情報を最新のグループ鍵で暗号化することを特徴とす
る請求項26記載のグループ鍵プログラムを記録した記
録媒体。
27. The recording medium according to claim 26, wherein the attached information is encrypted with the latest group key every time the group key is updated.
JP11040319A 1999-02-18 1999-02-18 Group key method, device therefor and recording medium recorded with group key program Pending JP2000244474A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11040319A JP2000244474A (en) 1999-02-18 1999-02-18 Group key method, device therefor and recording medium recorded with group key program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11040319A JP2000244474A (en) 1999-02-18 1999-02-18 Group key method, device therefor and recording medium recorded with group key program

Publications (1)

Publication Number Publication Date
JP2000244474A true JP2000244474A (en) 2000-09-08

Family

ID=12577303

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11040319A Pending JP2000244474A (en) 1999-02-18 1999-02-18 Group key method, device therefor and recording medium recorded with group key program

Country Status (1)

Country Link
JP (1) JP2000244474A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002366030A (en) * 2001-06-04 2002-12-20 Cognitive Research Laboratories Inc Method and device and recording medium for hierarchical enciphering/decoding
JP2005539423A (en) * 2002-09-16 2005-12-22 サムスン エレクトロニクス カンパニー リミテッド Metadata encryption / decryption method, encrypted metadata management method and system
JP2008199639A (en) * 2008-03-17 2008-08-28 Hitachi Kokusai Electric Inc Video image distributing system
WO2014034018A1 (en) * 2012-08-30 2014-03-06 日本電気株式会社 Re-encryption system, re-encryption method and re-encryption program
WO2023162232A1 (en) * 2022-02-28 2023-08-31 楽天グループ株式会社 Communication system, communication method, and program

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002366030A (en) * 2001-06-04 2002-12-20 Cognitive Research Laboratories Inc Method and device and recording medium for hierarchical enciphering/decoding
JP2005539423A (en) * 2002-09-16 2005-12-22 サムスン エレクトロニクス カンパニー リミテッド Metadata encryption / decryption method, encrypted metadata management method and system
JP2008199639A (en) * 2008-03-17 2008-08-28 Hitachi Kokusai Electric Inc Video image distributing system
WO2014034018A1 (en) * 2012-08-30 2014-03-06 日本電気株式会社 Re-encryption system, re-encryption method and re-encryption program
US9455828B2 (en) 2012-08-30 2016-09-27 Nec Corporation Re-encryption system, re-encryption method and re-encryption program
WO2023162232A1 (en) * 2022-02-28 2023-08-31 楽天グループ株式会社 Communication system, communication method, and program
JP7358659B1 (en) 2022-02-28 2023-10-10 楽天グループ株式会社 Communication system, communication method, and program

Similar Documents

Publication Publication Date Title
Wan et al. HASBE: A hierarchical attribute-based solution for flexible and scalable access control in cloud computing
EP1714423B1 (en) Secret information management scheme based on secret sharing scheme
JP3657396B2 (en) Key management system, key management apparatus, information encryption apparatus, information decryption apparatus, and storage medium storing program
US8270615B2 (en) Key-updating method, encryption processing method, key-insulated cryptosystem and terminal device
JP2003501877A (en) Method and apparatus for secure distribution of public / private key pairs
US20010014156A1 (en) Common key generating method, common key generator, cryptographic communication method and cryptographic communication system
JP6049914B2 (en) Cryptographic system, key generation device, and re-encryption device
CN113411323B (en) Medical record data access control system and method based on attribute encryption
JPH11317734A (en) Data ciphering and deciphering method and network system using the method
JP2005252384A (en) Encrypted data storage server system, encrypted data storage method, and re-encryption method
JP2000244474A (en) Group key method, device therefor and recording medium recorded with group key program
JPH11143359A (en) Enciphering device, decoding device, information sharing device, enciphering method, decoding method, information processing method, and recording medium
US20010009583A1 (en) Secret key registration method, secret key register, secret key issuing method, cryptographic communication method and cryptographic communication system
JP2000174746A (en) Method and device for deciphering data
JP2003036231A (en) Electronic certificate management device and program
US7231047B2 (en) Private retrieval of digital objects
Nusrat et al. Simplified FADE with sharing feature (SFADE+): A overlay approach for cloud storage system
JP4598437B2 (en) Decryption information generation device and program thereof, distribution content generation device and program thereof, and content decryption device and program thereof
JP7043203B2 (en) Cryptographic device, decryption device, encryption system, encryption method and encryption program
JP4875481B2 (en) Encrypted information generating device and program thereof, secret key generating device and program thereof, distribution content generating device and program thereof, and content decrypting device and program thereof
JP7350220B2 (en) Search execution device, search execution method, search execution program, and secret search system
JP2001125481A (en) Cryptographic communication terminal, cryptographic communication center device, cryptographic communication system, and recording medium
JP2014017763A (en) Encryption update system, encryption update request device, encryption update device, decryption device, encryption update method, and computer program
JP2009171016A (en) Encrypted information generation device, its program, content generation device for distribution, its program, and content decoding device, and its program
Kamakshaiah et al. SABE: efficient and scalable-filtered access control in distributed cloud data storage