CN103004130B - 密码系统、密码通信方法、加密装置、密钥生成装置、解密装置、内容服务器装置 - Google Patents

密码系统、密码通信方法、加密装置、密钥生成装置、解密装置、内容服务器装置 Download PDF

Info

Publication number
CN103004130B
CN103004130B CN201180035439.2A CN201180035439A CN103004130B CN 103004130 B CN103004130 B CN 103004130B CN 201180035439 A CN201180035439 A CN 201180035439A CN 103004130 B CN103004130 B CN 103004130B
Authority
CN
China
Prior art keywords
mentioned
information
transformation rule
attribute
key
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.)
Active
Application number
CN201180035439.2A
Other languages
English (en)
Other versions
CN103004130A (zh
Inventor
小林铁太郎
竹内格
知加良盛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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
Publication of CN103004130A publication Critical patent/CN103004130A/zh
Application granted granted Critical
Publication of CN103004130B publication Critical patent/CN103004130B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/083Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
    • H04L9/0833Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key
    • H04L9/0836Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key using tree structure or hierarchical structure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0847Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving identity based encryption [IBE] schemes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/085Secret sharing or secret splitting, e.g. threshold schemes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
    • H04L9/3073Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves involving pairings, e.g. identity based encryption [IBE], bilinear mappings or bilinear pairings, e.g. Weil or Tate pairing

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Algebra (AREA)
  • Physics & Mathematics (AREA)
  • Storage Device Security (AREA)
  • Computer And Data Communications (AREA)

Abstract

提供一种能够灵活运用且依赖于函数密码的密码通信技术。预先规定了变换规则信息对,该变换规则信息对是规定了用于将属性指定信息变换为在函数密码算法中使用的属性信息的变换规则的属性用变换规则信息与规定了用于将逻辑式指定信息变换为在函数密码算法中使用的逻辑信息的变换规则的逻辑式用变换规则信息的对。利用该变换规则信息对所包含的一个变换规则信息,从输入信息获得第1属性信息或者第1逻辑信息。该信息被用于加密处理。在解密处理中,使用通过利用第2属性信息或者第2逻辑信息而生成的解密密钥,进行密码信息的解密处理,其中,第2属性信息或者第2逻辑信息是利用另一个变换规则信息从用户信息获得的。

Description

密码系统、密码通信方法、加密装置、密钥生成装置、解密装置、内容服务器装置
技术领域
本发明涉及密码通信技术,更详细地说,涉及依据函数密码的密码通信技术。 
背景技术
至今为止作为密码技术,例如已知公共密钥密码、公开密钥密码等。 
公共密钥密码是消息的发送者采用公共密钥对消息进行加密从而求加密消息,接收者使用与发送者相同的公共密钥对加密消息进行解密从而获得消息的方式。因此,需要在发送者和接收者之间安全地拥有公共密钥的手续。 
公开密钥密码是,(1)接收者准备唯一的公开密钥和与其对应的唯一的秘密密钥,(2)发送者采用接收者的公开密钥对消息进行加密从而求加密消息,(3)接收者采用其秘密密钥对加密消息进行解密从而获得消息的方式。因此,发送者需要在对消息进行加密之前获取接收者的公开密钥。即,如果接收者不生成公开密钥则无法加密。 
此外,近年来提出了谓语密码。谓语密码是在发送者进行加密的过程中密码消息中被编入某一信息X,具有与该信息X满足特定的关系的信息Y的接收者能够取得有关消息的信息而不知道密码消息的解密或消息的方式。发送者在加密时不一定要知道接收者持有的信息Y。此外,发送者不一定要在进行加密前确定接收者。发送者可以自由地、主动地、持有主导权而决定信息X。教学上,信息X作为属性l(变量)表示,信息Y作为谓语f(命题函数、布尔函数)表示。在解密时,信息X和信息Y应满足的特定的关系例如是f(l)=True。 
现有技术文献 
非专利文献 
非专利文献1:NTT情報流通ぷたつとフオ一ム研究所情報セキユリテイプロジエクト,“NTTの暗号要素技術”,互联网<URL: 
http://info.isl.ntt.co.jp/crypt/camellia/techology.html>[平成22年7月15日检索] 
非专利文献2:J.Katz,A.Sahai and B.Waters,"Predicate Encryption Supporting Disjunction,Polynomial Equations,and Inner Products",EUROCRYPT2008,146-162. 
发明内容
发明要解决的课题 
本发明的目的在于提供一种能够灵活运用的、依据函数密码的密码通信技术。 
用于解决课题的方案 
基于第1观点的本发明的概要如下。 
利用函数密码的密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置。 
并且,对各个密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥。 
此外,预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对。 
此外,预先规定了用于确定是属性用变换规则信息和逻辑式用变换规则信息中的哪一个的政策信息。 
加密装置进行如下处理:在从变换规则信息对中选择的一个变换规则信息对所包含的属性用变换规则信息和逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与政策信息一同选择的其中一个变换规则信息,从该输入信息获得属性信息(以下,称为第1属性信息)或者逻辑信息(以下,称为第1逻辑信息)的第1命题逻辑信息取得处理;利用第1属性信息或者第1逻辑信息、以及密钥生成装置的公开密钥,按照函数密码算法,求公共密钥、以及与该公共密钥或者在该公共密钥的生成中使用的信息对应的密码信息的加密处理。 
密钥生成装置进行如下处理:利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属性信息)或者逻辑信息(以下,称为第2逻辑信息)的第2命题逻辑信息取得处理;利用第2属性信息或者第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在密码信息的解密中使用的解密密钥的密钥生成处理。 
解密装置利用解密密钥,按照函数密码算法进行对于密码信息的解密处理。 
或者,基于第1观点的本发明的概要如下。 
利用函数密码的密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置。 
并且,对各个密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥。 
此外,预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对。 
此外,预先规定了用于确定是属性用变换规则信息和逻辑式用变换规则信息中的哪一个的政策信息。 
加密装置进行如下处理:在从变换规则信息对中选择的一个变换规则信息对所包含的属性用变换规则信息和逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与政策信息一同选择的其中一个变换规则信息,从该输入信息获得属性信息(以下,称为第1属性信息)或者逻辑信息(以下,称为第1逻辑信息)的第1命题逻辑信息取得处理;利用第1属性信息或者第1逻辑信息、以及密钥生成装置的公开密钥,按照函数密码算法,求公共密钥、以及与该公共密钥或者在该公共密钥的生成中使用的信息对应的密码信息的加密处理。 
解密装置进行如下处理:利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与该解密装置的用户对应的属 性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属性信息)或者逻辑信息(以下,称为第2逻辑信息)的第2命题逻辑信息取得处理;利用从密钥生成装置送来的解密密钥,按照函数密码算法进行对于密码信息的解密处理。 
密钥生成装置进行如下处理:利用第2属性信息或者第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在密码信息的解密中使用的解密密钥的密钥生成处理。 
或者,基于第1观点的本发明的概要如下。 
利用函数密码的密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置。 
并且,对各个密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥。 
此外,预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对。 
此外,预先规定了用于确定是属性用变换规则信息和逻辑式用变换规则信息中的哪一个的政策信息。 
加密装置进行如下处理:在从变换规则信息对中选择的一个变换规则信息对所包含的属性用变换规则信息和逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与政策信息一同选择的其中一个变换规则信息,从该输入信息获得属性信息(以下,称为第1属性信息)或者逻辑信息(以下,称为第1逻辑信息)的第1命题逻辑信息取得处理;利用第1属性信息或者第1逻辑信息、密钥生成装置的公开密钥、以及明文,按照函数密码算法,求与该明文对应的密码信息的加密处理。 
密钥生成装置进行如下处理:利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属性信 息)或者逻辑信息(以下,称为第2逻辑信息)的第2命题逻辑信息取得处理;利用第2属性信息或者第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在密码信息的解密中使用的解密密钥的密钥生成处理。 
解密装置利用解密密钥,按照函数密码算法进行对于密码信息的解密处理。 
或者,基于第1观点的本发明的概要如下。 
利用函数密码的密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置。 
并且,对各个密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥。 
此外,预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对。 
此外,预先规定了用于确定是属性用变换规则信息和逻辑式用变换规则信息中的哪一个的政策信息。 
加密装置进行如下处理:在从变换规则信息对中选择的一个变换规则信息对所包含的属性用变换规则信息和逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与政策信息一同选择的其中一个变换规则信息,从该输入信息获得属性信息(以下,称为第1属性信息)或者逻辑信息(以下,称为第1逻辑信息)的第1命题逻辑信息取得处理;利用第1属性信息或者第1逻辑信息、密钥生成装置的公开密钥、以及明文,按照函数密码算法,求与该明文对应的密码信息的加密处理。 
解密装置进行如下处理:利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与该解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属性信息)或者逻辑信息(以下,称为第2逻辑信息)的第2命题逻辑信息取得处理;利用从密钥生成装置送来的解密密钥,按照函数密码算法进行对于密码信息 的解密处理。 
密钥生成装置进行如下处理:利用第2属性信息或者第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在密码信息的解密中使用的解密密钥的密钥生成处理。 
基于第2观点的本发明的概要如下。 
在至少包含一个或者多个加密装置、一个或者多个密钥生成装置、多个解密装置,并且利用函数密码的密码系统中,对各个密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥,并且,预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对,并且,预先规定了用于确定是属性用变换规则信息和逻辑式用变换规则信息中的哪一个的政策信息。 
并且,加密装置进行如下处理:在从变换规则信息对中选择的一个变换规则信息对所包含的属性用变换规则信息和逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与政策信息一同选择的其中一个变换规则信息,从该输入信息获得属性信息(以下,称为第1属性信息)或者逻辑信息(以下,称为第1逻辑信息)的第1命题逻辑信息取得处理;利用第1属性信息或者第1逻辑信息、以及密钥生成装置的公开密钥,按照函数密码算法,求公共密钥、以及与该公共密钥或者在该公共密钥的生成中使用的信息对应的密码信息的加密处理。 
此外,密钥生成装置进行如下处理:利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属性信息)或者逻辑信息(以下,称为第2逻辑信息)的第2命题逻辑信息取得处理;利用第2属性信息或者第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在密码信息的解密中使用的解密密钥的密钥生成处理。 
此外,解密装置利用解密密钥,按照函数密码算法进行对于密码信息的解密处理。并且,该解密装置还进行将密码信息转发给另一解密装置的转发 处理。转发的密码信息可以是从加密装置送来的密码信息,也可以是从另一解密装置转发来的密码信息。密码系统所包含的解密装置中的至少一部分解密装置具有进行转发处理的功能,但不要求所有的解密装置具有该转发功能。接收到被转发的密码信息的解密装置根据需要从密钥生成装置生成解密密钥,并进行上述解密处理。 
或者,基于第2观点的本发明的概要如下。 
在至少包含一个或者多个加密装置、一个或者多个密钥生成装置、多个解密装置,并且利用函数密码的密码系统中,对各个密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥,并且,预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对,并且,预先规定了用于确定是属性用变换规则信息和逻辑式用变换规则信息中的哪一个的政策信息。 
并且,加密装置进行如下处理:在从变换规则信息对中选择的一个变换规则信息对所包含的属性用变换规则信息和逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与政策信息一同选择的其中一个变换规则信息,从该输入信息获得属性信息(以下,称为第1属性信息)或者逻辑信息(以下,称为第1逻辑信息)的第1命题逻辑信息取得处理;利用第1属性信息或者第1逻辑信息、以及密钥生成装置的公开密钥,按照函数密码算法,求公共密钥、以及与该公共密钥或者在该公共密钥的生成中使用的信息对应的密码信息的加密处理。 
此外,解密装置进行如下处理:利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与该解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属性信息)或者逻辑信息(以下,称为第2逻辑信息)的第2命题逻辑信息取得处理;利用从密钥生成装置送来的解密密钥,按照函数密码算法进行对于密码信息的解密处理。 
此外,密钥生成装置进行如下处理:利用第2属性信息或者第2逻辑信 息、以及该密钥生成装置的秘密密钥,生成在密码信息的解密中使用的解密密钥的密钥生成处理。 
上述的解密装置还进行密码信息转发给另一解密装置的转发处理。转发的密码信息可以是从加密装置送来的密码信息,也可以是从另一解密装置转发来的密码信息。密码系统所包含的解密装置中的至少一部分解密装置具有进行转发处理的功能,但不要求所有的解密装置具有该转发功能。接收到被转发的密码信息的解密装置根据需要从密钥生成装置生成解密密钥,并进行上述解密处理。 
或者,基于第2观点的本发明的概要如下。 
在至少包含一个或者多个加密装置、一个或者多个密钥生成装置、多个解密装置,并且利用函数密码的密码系统中,对各个密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥,并且,预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对,并且,预先规定了用于确定是属性用变换规则信息和逻辑式用变换规则信息中的哪一个的政策信息。 
并且,加密装置进行如下处理:在从上述变换规则信息对中选择的一个变换规则信息对所包含的属性用变换规则信息和逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与政策信息一同选择的其中一个变换规则信息,从该输入信息获得属性信息(以下,称为第1属性信息)或者逻辑信息(以下,称为第1逻辑信息)的第1命题逻辑信息取得处理;利用第1属性信息或者第1逻辑信息、密钥生成装置的公开密钥、以及明文,按照函数密码算法,求与该明文对应的密码信息的加密处理。 
此外,密钥生成装置进行如下处理:利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属性信息)或者逻辑信息(以下,称为第2逻辑信息)的第2命题逻辑信息 取得处理;利用第2属性信息或者第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在密码信息的解密中使用的解密密钥的密钥生成处理。 
此外,解密装置利用解密密钥,按照函数密码算法进行对于密码信息的解密处理。并且,该解密装置还进行将密码信息转发给另一解密装置的转发处理。转发的密码信息可以是从加密装置送来的密码信息,也可以是从另一解密装置转发来的密码信息。密码系统所包含的解密装置中的至少一部分解密装置具有进行转发处理的功能,但不要求所有的解密装置具有该转发功能。接收到被转发的密码信息的解密装置根据需要从密钥生成装置生成解密密钥,并进行上述解密处理。 
或者,基于第2观点的本发明的概要如下。 
在至少包含一个或者多个加密装置、一个或者多个密钥生成装置、多个解密装置,并且利用函数密码的密码系统中,对各个密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥,并且,预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对,并且,预先规定了用于确定是属性用变换规则信息和逻辑式用变换规则信息中的哪一个的政策信息。 
并且,加密装置进行如下处理:在从上述变换规则信息对中选择的一个变换规则信息对所包含的属性用变换规则信息和逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与政策信息一同选择的其中一个变换规则信息,从该输入信息获得属性信息(以下,称为第1属性信息)或者逻辑信息(以下,称为第1逻辑信息)的第1命题逻辑信息取得处理;利用第1属性信息或者第1逻辑信息、密钥生成装置的公开密钥、以及明文,按照函数密码算法,求与该明文对应的密码信息的加密处理。 
此外,解密装置进行如下处理:利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与该解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属 性信息)或者逻辑信息(以下,称为第2逻辑信息)的第2命题逻辑信息取得处理;利用从密钥生成装置送来的解密密钥,按照函数密码算法进行对于密码信息的解密处理。 
此外,密钥生成装置进行如下处理:利用第2属性信息或者第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在密码信息的解密中使用的解密密钥的密钥生成处理。 
上述的解密装置还进行密码信息转发给另一解密装置的转发处理。转发的密码信息可以是从加密装置送来的密码信息,也可以是从另一解密装置转发来的密码信息。密码系统所包含的解密装置中的至少一部分解密装置具有进行转发处理的功能,但不要求所有的解密装置具有该转发功能。接收到被转发的密码信息的解密装置根据需要从密钥生成装置生成解密密钥,并进行上述解密处理。 
基于第3观点的本发明的概要如下。 
利用函数密码的密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置、一个或者多个内容服务器装置。 
并且,对各个密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥。 
此外,预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对。 
此外,预先规定了用于确定是属性用变换规则信息和逻辑式用变换规则信息中的哪一个的政策信息。 
加密装置进行如下处理:在从变换规则信息对中选择的一个变换规则信息对所包含的属性用变换规则信息和逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与政策信息一同选择的其中一个变换规则信息,从该输入信息获得属性信息(以下,称为第1属性信息)或者逻辑信息(以下,称为第1逻辑信息)的第1命题逻辑信息取得处理;利用第1属性信息或者第1逻辑信息、密钥生成装 置的公开密钥、以及内容,按照函数密码算法,求公共密钥、与该公共密钥或者在该公共密钥的生成中使用的信息对应的密码信息、以及通过该公共密钥对该内容进行了加密的加密内容的加密处理。 
内容服务器装置进行如下处理:存储从各个加密装置送来的密码信息以及加密内容的处理;根据来自解密装置的请求,将密内容和与其对应的密码信息发送到该解密装置的发送处理。 
密钥生成装置进行如下处理:利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属性信息)或者逻辑信息(以下,称为第2逻辑信息)的第2命题逻辑信息取得处理;利用第2属性信息或者第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在密码信息的解密中使用的解密密钥的密钥生成处理。 
解密装置进行如下处理:对于内容服务器装置的加密内容的取得请求处理;利用解密密钥且按照函数密码算法,对于从内容服务器装置取得的密码信息的解密处理;利用通过该解密处理获得的公共密钥,对从内容服务器装置取得的加密内容进行解密的内容取得处理;显示从加密内容解密后的内容的处理。 
或者,基于第3观点的本发明的概要如下。 
利用函数密码的密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置、一个或者多个内容服务器装置。 
并且,对各个密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥。 
此外,预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对。 
此外,预先规定了用于确定是属性用变换规则信息和逻辑式用变换规则信息中的哪一个的政策信息。 
加密装置进行如下处理:在从变换规则信息对中选择的一个变换规则信 息对所包含的属性用变换规则信息和逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与政策信息一同选择的其中一个变换规则信息,从该输入信息获得属性信息(以下,称为第1属性信息)或者逻辑信息(以下,称为第1逻辑信息)的第1命题逻辑信息取得处理;利用第1属性信息或者第1逻辑信息、密钥生成装置的公开密钥、以及内容,按照函数密码算法,求公共密钥、与该公共密钥或者在该公共密钥的生成中使用的信息对应的密码信息、以及通过该公共密钥对该内容进行了加密的加密内容的加密处理。 
内容服务器装置进行如下处理:存储从各个加密装置送来的密码信息以及加密内容的处理;根据来自解密装置的请求,将加密内容和与其对应的密码信息发送到该解密装置的发送处理。 
解密装置进行如下处理:对于内容服务器装置的加密内容的取得请求处理;利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与该解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属性信息)或者逻辑信息(以下,称为第2逻辑信息)的第2命题逻辑信息取得处理;利用解密密钥且按照函数密码算法,对于从内容服务器装置取得的密码信息的解密处理;利用通过该解密处理获得的公共密钥,对从内容服务器装置取得的加密内容进行解密的内容取得处理;显示从加密内容解密后的内容的处理。 
密钥生成装置进行如下处理:利用第2属性信息或者第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在密码信息的解密中使用的解密密钥的密钥生成处理。 
或者,基于第3观点的本发明的概要如下。 
利用函数密码的密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置、一个或者多个内容服务器装置。 
并且,对各个密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥。 
此外,预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换 为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对。 
此外,预先规定了用于确定是属性用变换规则信息和逻辑式用变换规则信息中的哪一个的政策信息。 
加密装置进行如下处理:在从变换规则信息对中选择的一个变换规则信息对所包含的属性用变换规则信息和逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与政策信息一同选择的其中一个变换规则信息,从该输入信息获得属性信息(以下,称为第1属性信息)或者逻辑信息(以下,称为第1逻辑信息)的第1命题逻辑信息取得处理;利用第1属性信息或者第1逻辑信息、密钥生成装置的公开密钥、以及内容,按照函数密码算法,求对该内容进行了加密的加密内容的加密处理。 
内容服务器装置进行如下处理:存储从各个加密装置送来的加密内容的处理;根据来自解密装置的请求,将加密内容发送到该解密装置的发送处理。 
密钥生成装置进行如下处理:利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属性信息)或者逻辑信息(以下,称为第2逻辑信息)的第2命题逻辑信息取得处理;利用第2属性信息或者第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在加密内容的解密中使用的解密密钥的密钥生成处理。 
解密装置进行如下处理:对于内容服务器装置的加密内容的取得请求处理;利用解密密钥且按照函数密码算法,对从内容服务器装置取得的加密内容进行解密的解密处理;显示从加密内容解密后的内容的处理。 
或者,基于第3观点的本发明的概要如下。 
利用函数密码的密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置、一个或者多个内容服务器装置。 
并且,对各个密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥。 
此外,预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信 息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对。 
此外,预先规定了用于确定是属性用变换规则信息和逻辑式用变换规则信息中的哪一个的政策信息。 
加密装置进行如下处理:在从变换规则信息对中选择的一个变换规则信息对所包含的属性用变换规则信息和逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与政策信息一同选择的其中一个变换规则信息,从该输入信息获得属性信息(以下,称为第1属性信息)或者逻辑信息(以下,称为第1逻辑信息)的第1命题逻辑信息取得处理;利用第1属性信息或者第1逻辑信息、密钥生成装置的公开密钥、以及内容,按照函数密码算法,求对该内容进行了加密的加密内容的加密处理。 
内容服务器装置进行如下处理:存储从各个加密装置送来的加密内容的处理;根据来自解密装置的请求,将加密内容发送到该解密装置的发送处理。 
解密装置进行如下处理:对于内容服务器装置的加密内容的取得请求处理;利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与该解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属性信息)或者逻辑信息(以下,称为第2逻辑信息)的第2命题逻辑信息取得处理;利用解密密钥且按照函数密码算法,对从内容服务器装置取得的加密内容进行解密的解密处理;显示从加密内容解密后的内容的处理。 
密钥生成装置进行如下处理:利用第2属性信息或者第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在加密内容的解密中使用的解密密钥的密钥生成处理。 
发明效果 
根据本发明,在从变换规则信息对中选择的一个变换规则信息对所包含的属性用变换规则信息和逻辑式用变换规则信息中,利用根据加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而选择的其中一个变换规则信息,从该输入信息获得属性信息或者逻辑信息,因此能够灵活运用依赖于函数密码的密码通信。 
附图说明
图1是第1观点的各实施方式相关的密码系统的结构图。 
图2是表示第1观点的各实施方式相关的密码通信方法的处理步骤的图(其一)。 
图3是表示第1观点的各实施方式相关的密码通信方法的处理步骤的图(其二)。 
图4是表示第1观点的各实施方式相关的密码通信方法的处理步骤的图(其三)。 
图5是第1观点的第1实施方式相关的加密装置的功能方框图。 
图6是表示第1观点的第1实施方式相关的加密处理的处理步骤的细节的图。 
图7是第1观点的第1实施方式相关的解密装置的功能方框图。 
图8是表示第1观点的第1实施方式相关的解密处理的处理步骤的细节的图。 
图9是第1观点的第1实施方式相关的密钥生成装置的功能方框图。 
图10是表示第1观点的第1实施方式相关的密钥生成处理的处理步骤的细节的图。 
图11是对利用与政策(policy)对应的方案(schema)从输入信息或者利用者信息中得到属性信息或者谓语信息的情况进行图解的图。 
图12是对利用属性用方案从属性指定信息得到属性信息的情况进行图解的图。 
图13是对利用谓语用方案从谓语指定信息得到谓语信息的情况进行图解的图。 
图14是表示政策的例子的图。 
图15是表示解密密钥表的例子的图。 
图16是表示认证表的例子的图。 
图17是表示利用者信息表的例子的图。 
图18是第1观点的第2实施方式相关的解密装置的功能方框图。 
图19是表示第1观点的第2实施方式相关的解密处理的处理步骤的细节的图。 
图20是第1观点的第2实施方式相关的密钥生成装置的功能方框图。 
图21是表示第1观点的第2实施方式相关的密钥生成处理的处理步骤的细节的图。 
图22是第1观点的第3实施方式相关的加密装置的功能方框图。 
图23是表示第1观点的第3实施方式相关的加密处理的处理步骤的细节的图。 
图24是第1观点的第3实施方式相关的解密装置的功能方框图。 
图25是表示第1观点的第3实施方式相关的解密处理的处理步骤的细节的图。 
图26是第1观点的第4实施方式相关的解密装置的功能方框图。 
图27是表示第1观点的第4实施方式相关的解密处理的处理步骤的细节的图。 
图28是第2观点的各实施方式相关的密码系统的结构图。 
图29表示第2观点的各实施方式相关的密码通信方法的处理步骤的图(其一)。 
图30是表示第2观点的各实施方式相关的密码通信方法的处理步骤的图(其二)。 
图31是表示第2观点的各实施方式相关的密码通信方法的处理步骤的图(其三)。 
图32是表示第2观点的各实施方式相关的密码通信方法的处理步骤的图(其四)。 
图33是第2观点的第1实施方式相关的加密装置的功能方框图。 
图34是表示第2观点的第1实施方式相关的加密处理的处理步骤的细节的图。 
图35是第2观点的第1实施方式相关的第1解密装置的功能方框图。 
图36是表示第2观点的第1实施方式相关的第1解密处理的处理步骤的细节的图。 
图37是第2观点的第1实施方式相关的第2解密装置的功能方框图。 
图38是表示第2观点的第1实施方式相关的第2解密处理的处理步骤的细节的图。 
图39是第2观点的第1实施方式相关的密钥生成装置的功能方框图。 
图40是表示第2观点的第1实施方式相关的密钥生成处理的处理步骤(与第1解密装置对应)的细节的图。 
图41是表示第2观点的第1实施方式相关的密钥生成处理的处理步骤(与第2解密装置对应)的细节的图。 
图42是第2观点的第2实施方式相关的第1解密装置的功能方框图。 
图43是表示第2观点的第2实施方式相关的第1解密处理的处理步骤的细节的图。 
图44是第2观点的第2实施方式相关的第2解密装置的功能方框图。 
图45是表示第2观点的第2实施方式相关的第2解密处理的处理步骤的细节的图。 
图46是第2观点的第2实施方式相关的密钥生成装置的功能方框图。 
图47是表示第2观点的第2实施方式相关的密钥生成处理的处理步骤(与第1解密装置对应)的细节的图。 
图48是表示第2观点的第2实施方式相关的密钥生成处理的处理步骤(与第2解密装置对应)的细节的图。 
图49是第2观点的第3实施方式相关的加密装置的功能方框图。 
图50是表示第2观点的第3实施方式相关的加密处理的处理步骤的细节的图。 
图51是第2观点的第3实施方式相关的第1解密装置的功能方框图。 
图52是表示第2观点的第3实施方式相关的第1解密处理的处理步骤的细节的图。 
图53是第2观点的第3实施方式相关的第2解密装置的功能方框图。 
图54是表示第2观点的第3实施方式相关的第2解密处理的处理步骤的细节的图。 
图55是第2观点的第4实施方式相关的第1解密装置的功能方框图。 
图56是表示第2观点的第4实施方式相关的第1解密处理的处理步骤的细节的图。 
图57是第2观点的第4实施方式相关的第2解密装置的功能方框图。 
图58是表示第2观点的第4实施方式相关的第2解密处理的处理步骤的细节的图。 
图59是表示作为电子邮件系统或即时通讯系统(instant messaging  system)实施的情况下的、发送接收的数据的结构的例子的图。 
图60是第3观点的各实施方式相关的密码系统的结构图。 
图61是表示第3观点的各实施方式相关的密码通信方法的处理步骤的图(其一)。 
图62是表示第3观点的各实施方式相关的密码通信方法的处理步骤的图(其二)。 
图63是表示第3观点的各实施方式相关的密码通信方法的处理步骤的图(其三)。 
图64是表示第3观点的各实施方式相关的密码通信方法的处理步骤的图(其四)。 
图65是第3观点的第1实施方式相关的加密装置的功能方框图。 
图66是表示第3观点的第1实施方式相关的加密处理的处理步骤的细节的图。 
图67是第3观点的第1实施方式相关的内容服务器装置的功能方框图。 
图68是第3观点的第1实施方式相关的解密装置的功能方框图。 
图69是表示第3观点的第1实施方式相关的解密处理的处理步骤的细节的图。 
图70是第3观点的第1实施方式相关的密钥生成装置的功能方框图。 
图71是表示第3观点的第1实施方式相关的密钥生成处理的处理步骤的细节的图。 
图72是第3观点的第2实施方式相关的解密装置的功能方框图。 
图73是表示第3观点的第2实施方式相关的解密处理的处理步骤的细节的图。 
图74是第3观点的第2实施方式相关的密钥生成装置的功能方框图。 
图75是表示第3观点的第2实施方式相关的密钥生成处理的处理步骤的细节的图。 
图76是第3观点的第3实施方式相关的加密装置的功能方框图。 
图77是表示第3观点的第3实施方式相关的加密处理的处理步骤的细节的图。 
图78是第3观点的第3实施方式相关的解密装置的功能方框图。 
图79是表示第3观点的第3实施方式相关的解密处理的处理步骤的细节 的图。 
图80是第3观点的第4实施方式相关的解密装置的功能方框图。 
图81是表示第3观点的第4实施方式相关的解密处理的处理步骤的细节的图。 
图82是表示作为内容发布系统实施的情况下的、发送接收的数据的结构的例子的图。 
图83是例示用于表现包含命题变量PRO(1),PRO(2)和命题变量PRO(3)的“非”和逻辑符号∧,∨的标准型逻辑式的树构造数据的图。 
图84是例示用于表现包含命题变量PRO(1),PRO(2),PRO(3),PRO(6),PRO(7)和命题变量PRO(4),PRO(5)的“非”和逻辑符号∧,∨的标准型逻辑式 的树构造数据的图。 
具体实施方式
<函数密码的概要> 
近年来,被称为函数密码的基于ID的密码的扩展密码成为话题。函数密码由下述的4个算法(Setup,KeyGen,Enc,Dec)构成。协议的概略如下所述。 
《协议FE》 
·Setup(1λ)→(pk,sk):设置算法 
以安全参数1λ作为输入,输出公开参数pk和主密钥sk的概率性多项式时间算法 
·KeyGen(sk,i)→ski:密钥生成算法 
以主密钥sk和密钥识别符i作为输入,输出与该密钥识别符i对应的秘密密钥ski的概率性多项式时间算法 
·Enc(pk,j,x)→cj:加密算法 
以公开参数pk和接收者识别符j和加密对象的信息(明文)x作为输入,输出密码文cj的概率性多项式时间算法 
·Dec(pk,ski,cj)→y:解密算法 
以公开参数pk和秘密密钥ski和密码文cj作为输入,输出明文y的概率 性多项式时间算法 
在函数密码中,基于ID的密码的正当性被扩展,密码文的接收者能够根据持有密钥识别符i的秘密密钥和持有接收者识别符j的密码文来评价与明文x有关的一些函数fi,j(x)。即,存在某一函数fi,j(x),对于由式(A)表示的概率Pr关于λ为绝对多数(与1的差异能够忽视)时,说其函数密码(Setup,KeyGen,Enc,Dec)是正当的。另外,poly(λ)表示由λ决定的多项式长度。 
[数1] 
Pr [ y = f i , j ( x ) ( pk , sk ) &LeftArrow; Setup ( 1 &lambda; ) s k i &LeftArrow; KeyGen ( sk , i ) c j &LeftArrow; Enc ( pk , j , x ) y &LeftArrow; Dec ( pk , sk i , c j ) . . . ( A )
尤其,存在某一函数R(·,·),具有由式(B)表示的类型的函数fi,j(x)的函数密码包含各种各样的密码(⊥是表示无法正常解密的情况的符号)。 
[数2] 
f i , j ( x ) = x ( R ( i , j ) : True ) &perp; ( R ( i , j ) : False ) . . . ( B )
例如,基于ID的密码能够定义为具有由式(C)表示的函数fi,j(x)的函数密码。 
[数3] 
f i , j ( x ) = x ( i = j ) &perp; ( i &NotEqual; j ) . . . ( C )
具有更高度的关系R(·,·)的各种密码函数正在被研究。该类型的函数密码中通用性最高的函数密码被称为基于属性的密码(attribute-based encryption,ABE)或者谓语密码(predicate encryption,PE)等,正在被认真研究。2010年冈本龙明等对应于多项式大小的谓语以及谓语变量的集合,提出了在标准的密码学假设下对于适应性识别符攻击能够证明CCA安全的比较实用的该类型的函数密码(参照参考文献R1)。 
(参考文献R1)Tatsuaki Okamoto and Katsuyuki Takashima,"Fully Secure Functional Encryption with General Relations from the Decisional Linear  Assumption,"In:Advances in Cryptology--CRYPTO2010,Lecture Notes in Computer Science,Volume6223,191-208,Springer-Verlag,2010,Full paper:http://eprint.iacr.org/2010/563/ 
将密钥识别符i作为谓语,将接收者识别符j作为谓语变量的实例(instance),具有由式(D)表示的关系R(·,·)的函数密码被称为密钥政策函数密码。这时,密码文不仅隐藏明文x,还隐藏谓语变量的实例j,将其称为属性隐藏。 
[数4] 
将密钥识别符i作为谓语变量,将接收者识别符j作为谓语的实例,具有由式(E)表示的关系R(·,·)的函数密码被称为密码文政策函数密码。这时,密码文不仅隐藏明文x,还隐藏谓语j,将其称为谓语隐藏。 
[数5] 
将具有属性隐藏的密钥政策函数密码或者具有谓语隐藏的密码文政策函数密码称为谓语密码(参照参考文献R2)。 
(参考文献R2)Tatsuaki Okamoto and Katsuyuki Takashima,"Hierarchical Predicate Encryptionfor Inner-Products,"ASIACRYPT2009:pp.214-231,2009. 
<阈值门(gate)> 
函数密码中的阈值门的结构利用阈值秘密分散方式即t-out-of-N秘密分散方式来实现,该阈值秘密分散方式是指,若提供N个分散信息中的任意t个则能够还原秘密,但即使提供了任意的t-1个以下的分散信息也无法还原秘密的秘密分散方式。关于t-out-of-N秘密分散方式,请参照参考文献R3等。利用了t-out-of-N秘密分散方式的阈值门被称为t-out-of-N阈值门。t-out-of-N阈值门具有在输入的N个条件式中t个以上的条件成立则输出真,除此以外则输出假的门结构。t-out-of-N阈值门的(输出的)“非”等价于(全部输入的)“非”的(N-t+1)-out-of-N阈值门。 
(参考文献R3)A.Shamir,"How to Share a Secret",Communications of the ACM,November1979,Volume22,Number11,pp.612-613. 
<秘密密钥可验证函数密码> 
函数密码中,可理解为秘密密钥ski相对于密钥识别符i正确生成的函数密码被称为秘密密钥可验证函数密码。通过将用于证明密钥生成手续正确进行的非对话零知识证明(参照参考文献R4)附加到秘密密钥,从而能够构成秘密密钥可验证函数密码。若利用秘密密钥可验证函数密码,则能够理解秘密密钥ski相对于密钥识别符i正确生成。 
(参考文献R4)Jens Groth and Amit Sahai,"Efficient Non-interactive Proof Systemsfor Bilinear Groups,"Advances in Cryptology-EUROCRYPT2008,LNCS4965,pp.415-432,March2010. 
<密码文可公开验证函数密码> 
函数密码中,可理解为即使对于密码文不具有根据KeyGen算法获得的任何密钥也正确地生成密码文的情况的函数密码被称为密码文可公开验证函数密码。通过将用于证明加密手续正确进行的非对话零知识证明(参照上述参考文献R4)附加到密码文,从而能够构成密码文可公开验证函数密码。可理解为若利用密码文可公开验证函数密码,则即使对密码文使用可解密等密钥也可获得相同的结果。 
<电子署名> 
电子署名是指以下的3个算法(KeyGenΣ,SignΣ,VerifyΣ)。协议的概略如下。 
《协议ES》 
·KeyGenΣ(1λ)→(skΣ,pkΣ):密钥生成算法 
以安全参数1λ作为输入,输出电子署名验证用公开密钥pkΣ和电子署名用秘密密钥skΣ的概率性多项式时间算法 
·SignΣ(skΣ,m)→σ:署名算法 
以电子署名用秘密密钥skΣ和署名对象信息m作为输入,输出署名σ的概率性多项式时间算法 
·VerifyΣ(pkΣ,m,σ)→0/1:署名验证算法 
以电子署名验证用公开密钥pkΣ和署名对象信息m和署名σ作为输入,输出验证结果(拒绝(0)或者受理(1))的概率性多项式时间算法 
另外,在适当的密码学假设下,提出了对于适应性选择文档攻击能够证 明不可伪造存在性的电子署名方式(例如,RSA-PSS(参照参考文献R5))。 
(参考文献R5)藤冈淳,暗号アルゴリズム評価報告書RSA-PSS,日本电信电话株式会社,2001年 
下面,概略说明函数密码。在说明之前定义符号等。 
[定义] 
矩阵:“矩阵”表示将定义了运算的集合的元以矩形方式排列的形态。不仅将环的元作为元素的形态表现为“矩阵”,将群的元作为元素的形态也表现为“矩阵”。 
(·)T:(·)T表示.的转置矩阵。 
(·)-1:(·)-1表示·的逆矩阵。 
∧:∧是表示“与”(AND)的逻辑符号。 
∨:∨是表示“或”(OR)的逻辑符号。 
是表示“非”(NOT)的逻辑符号。 
命题变量:命题变量是以命题的“真”、“假”(“false”,“true”)为元素的集合{真,假}上的变量。将命题变量以及命题变量的“非”统称为文字(literal)。 
逻辑式:逻辑式意味着具有表示数学逻辑学中的命题的形式语法的式子。具体地,“真”以及“假”为逻辑式,命题变量为逻辑式,逻辑式的“非”为逻辑式,逻辑式和逻辑式的“与”为逻辑式,逻辑式和逻辑式的“或”为逻辑式。 
Z:Z表示整数集合。 
sec:sec表示安全参数(sec∈Z,sec>0)。 
0*:0*表示由*个0组成的列。 
1*:1*表示由*个1组成的列。 
Fq:Fq表示位数q的有限域。位数q为1以上的整数,例如将素数或素数的取幂值设为位数q。即,有限域Fq的例子是素域或将其作为基础域的扩展域。另外,有限域Fq为素域时的运算例如可通过将位数q作为除数的余数运算而容易构成。此外,有限域Fq为扩展域时的运算例如可通过将不可约多项式作为除数的余数运算而容易构成。有限域Fq的具体的构成方法例如在参考文献1“ISO/IEC18033-2:Information technology-Security techniques-Encryption algorithms-Part2:Asymmetric ciphers”中公开。 
0F:0F表示有限域Fq的加法单位元。 
1F:1F表示有限域Fq的乘法单位元。 
δ(i,j):δ(i,j)表示克罗内克符号函数,当i=j时满足δ(i,j)=1F,i≠j时满足δ(i,j)=0F。 
E:E表示在有限域Fq上定义的椭圆曲线。E被定义为在由满足仿射(affine)坐标版的韦氏(Weierstrass)方程式 
y2+a1·x·y+a3·y=x3+a2·x2+a4·x+a6
(其中,a1,a2,a3,a4,a6∈Fq)的x,y∈Fq组成的点(x,y)的集合上附加了被称为无限远点的特别的点O。对于椭圆曲线E上的任意两点能够定义被称为椭圆加法运算的二项运算+,对于椭圆曲线E上的任意一点能够定义被称为椭圆逆元的单项运算-。此外,普遍知晓由椭圆曲线E上的有理点组成的有限集合关于椭圆加法运算形成群、利用椭圆加法运算能够定义被称为椭圆标量倍算的运算、以及计算机上的椭圆加法运算等椭圆运算的具体运算方法(例如,参照参考文献1、参考文献2“RFC5091:Identity-Based Cryptography Standard (IBCS)#1:Supersingular Curve Implementations of the BF and BB1 Cryptosystems”、参考文献3“イアン·F·ブラケ、ガデイエル·セロツシ、ナイジエル·P·スマ一ト=著、「楕円曲線暗号」、出版=ピアソン·エデユケ一シヨン、ISBN4-89471-431-0”等)。 
此外,由椭圆曲线E上的有理点组成的有限集合具有位数p(p≥1)的部分群。例如,将由椭圆曲线E上的有理点组成的有限集合的元素数目设为#E,将p设为用于整除#E的大的素数的情况下,由椭圆曲线E的p等分点组成的有限集合E[p]构成由椭圆曲线E上的有理点组成的有限集合的部分群。另外,椭圆曲线E的p等分点是指,在椭圆曲线E上的点A中,椭圆曲线E上的椭圆标量倍算值p·A满足p·A=0的点。 
G1,G2,GT:G1,G2,GT表示位数q的循环群。循环群G1,G2的具体例为由椭圆曲线E的p等分点组成的有限集合E[p]或其部分群。可以是G1=G2,也可以是G1≠G2。此外,循环群GT的具体例为用于构成以有限域Fq作为基础域的扩展域的有限集合。其一例是,有限域Fq的代数闭包中的1的p次方根组成的有限集合。将循环群G1,G2,GT的位数和有限域Fq的位数设为相同,从而安全性提高。 
另外,在本方式中,以加法形式表现在循环群G1,G2上定义的运算,以 乘法形式表现在循环群GT上定义的运算。即,对于χ∈Fq以及Ω∈G1的χ·Ω∈G1表示,对Ω∈G1实施χ次在循环群G1上定义的运算,对于Ω12∈G1的Ω12∈G1表示,将Ω1∈G1和Ω2∈G1作为被运算符进行在循环群G1上定义的运算。同样地,对于χ∈Fq以及Ω∈G2的χ·Ω∈G2表示,对Ω∈G2实施χ次在循环群G2上定义的运算,对于Ω12∈G2的Ω12∈G2表示,将Ω1∈G2和Ω2∈G2作为被运算符进行在循环群G2上定义的运算。另一方面,对于χ∈Fq以及Ω∈GT的Ωχ∈GT表示,对Ω∈GT实施χ次在循环群GT上定义的运算,对于Ω12∈GT的Ω1·Ω2∈GT表示,将Ω1∈GT和Ω2∈GT作为被运算符进行在循环群GT上定义的运算。 
Ψ:Ψ表示1以上的整数。 
ψ:ψ表示0以上且Ψ以下的整数ψ=0,...,Ψ。 
λ:λ表示1以上且Ψ以下的整数λ=1,...,Ψ。 
n(ψ):n(ψ)表示1以上的整数。 
ζ(ψ):ζ(ψ)表示0以上的整数。 
G1 n(ψ)+ζ(ψ):G1 n(ψ)+ζ(ψ)表示n(ψ)+ζ(ψ)个循环群G1的直积。 
G2 n(ψ)+ζ(ψ):G2 n(ψ)+ζ(ψ)表示n(ψ)+ζ(ψ)个循环群G2的直积。 
g1,g2,gT:g1,g2,gT表示循环群G,G1,G2,GT的生成元。 
V(ψ):V(ψ)表示由n(ψ)+ζ(ψ)个循环群G1的直积组成的n(ψ)+ζ(ψ)维的向量空间。 
V*(ψ):V*(ψ)表示由n(ψ)+ζ(ψ)个循环群G2的直积组成的n(ψ)+ζ(ψ)维的向量空间。 
eψ:eψ表示将直积G1 n(ψ)+ζ(ψ)和直积G2 n(ψ)+ζ(ψ)的直积G1 n(ψ)+ζ(ψ)×G2 n(ψ)+ζ(ψ)映射到循环群GT的非退化的双线性映像(bilinear map)。双线性映像eψ以循环群G1的n(ψ)+ζ(ψ)个元γβ(β=1,…,n(ψ)+ζ(ψ))和循环群G2的n(ψ)+ζ(ψ)个元γβ *(β=1,…,n(ψ)+ζ(ψ))作为输入,输出循环群GT的一个元。 
eψ:G1 n(ψ)+ζ(ψ)×G2 n(ψ)+ζ(ψ)→GT…(1) 
双线性映像eψ满足以下的性质。 
[双线性性]关于所有的Γ1∈G1 n(ψ)+ζ(ψ),Γ2∈G2 n(ψ)+ζ(ψ)以及ν,κ∈Fq,满足以下的关系。 
eψ(ν·Γ1,κ·Γ2)=eψ12)ν·κ…(2) 
[非退化性]并非是将所有的Γ1∈G1 n(ψ)+ζ(ψ),Γ2∈G2 n(ψ)+ζ(ψ)映射到循环群GT 的单位元的映像。 
[计算可能性]存在关于所有的 
Γ1∈G1 n(ψ)+ζ(ψ),Γ2∈G2 n(ψ)+ζ(ψ)…(3) 
有效地计算eψ12)的算法。 
在本方式中,利用将循环群G1和循环群G2的直积G1×G2映射到循环群GT的非退化的双线性映像 
Pair:G1×G2→GT…(4) 
构成双线性映像eψ。本方式的双线性映像eψ对于由循环群G1的n(ψ)+ζ(ψ)个元γβ(β=1,...,n(ψ)+ζ(ψ))组成的n(ψ)+ζ(ψ)维向量(γ1,...,γn(ψ)+ζ(ψ))和由循环群G2的n(ψ)+ζ(ψ)个元γβ *(β=1,…,n(ψ)+ζ(ψ))组成的n(ψ)+ζ(ψ)维向量(γ1 *,...,γn(ψ)+ζ(ψ) *)的输入,输出循环群GT的一个元。 
eψ:Πβ=1 n(ψ)+ζ(ψ)Pair(γββ *)…(5) 
另外,双线性映像Pair将循环群G1的一个元和循环群G2的一个元的组作为输入,输出循环群GT的一个元。双线性映像Pair满足以下的性质。 
[双线性性]关于所有的Ω1∈G1,Ω2∈G2以及ν,κ∈Fq,满足以下的关系。 
Pair(ν·Ω1,κ·Ω2)=Pair(Ω12)ν·κ…(6) 
[非退化性]并非是将所有的 
Ω1∈G1,Ω2∈G2…(7) 
映射到循环群GT的单位元的映像。 
[计算可能性]存在关于所有的Ω1∈G1,Ω2∈G2有效地计算Pair(Ω12)的算法。 
双线性映像Pair的具体例是用于进行Weil配对或Tate配对等配对运算的函数(例如,参照参考文献4“Alfred.J.Menezes,ELLIPTIC CURVE PUBLIC KEY CRYPTOSYSTEMS,KLUWER ACADEMIC PUBLISHERS,ISBN0-7923-9368-6,pp.61-81”等)。此外,根据椭圆曲线E的种类,也可以将用于进行Tate配对等配对运算的函数和规定的函数phi进行组合后的变更配对函数e(Ω1,phi(Ω2))(Ω1∈G1,Ω2∈G2)作为双线性映像Pair来使用(例如,参照参考文献2等)。此外,作为用于在计算机上进行配对运算的算法,存在众所周知的Miller的算法(参考文献5“V. S.Miller,“Short Programsfor functions on Curves,”1986,互联网<http://crypto.stanford.edu/miller/mille r.pdf>”)等。此外,普遍知晓用于有效地进行配对运算的椭圆曲线和循环群的构 成方法(例如参照参考文献2、参考文献6“A.Miyaji,M.Nakabayashi,S.Takano,"New explicit conditions of elliptic curve Tracesfor FR-Reduction,"IEICE Trans.Fundamentals,vol.E84-A,no05,pp.1234-1243,May2001”、参考文献7“P.S.L.M.Barreto,B.Lynn,M.Scott,"Constructing elliptic curves with prescribed embedding degrees,"Proc.SCN'2002,LNCS2576,pp.257-267,Springer-Verlag.2003”、参考文献8“R.Dupont,A.Enge,F.Morain,"Building curves with arbitrary small MOV degree over finite prime fields,"http://eprint.iacr.org/2002/094/”等)。 
ai(ψ)(i=1,...,n(ψ)+ζ(ψ)):ai(ψ)表示以循环群G1的n(ψ)+ζ(ψ)个元作为元素的n(ψ)+ζ(ψ)维的基向量。基向量ai(ψ)的一例是,将κ1·g1∈G1作为第i维的元素,将剩余的n(ψ)+ζ(ψ)-1个元素作为循环群G1的单位元(加法上表现为“0”)的n(ψ)+ζ(ψ)维的基向量。这时,若分别列举表现n(ψ)+ζ(ψ)维的基向量ai(ψ)(i=1,...,n(ψ)+ζ(ψ))的各个元素,则如下。 
a1(ψ)=(κ1·g1,0,0,...,0) 
a2(ψ)=(0,κ1·g1,0,...,0)…(8) 
an(ψ)+ζ(ψ)(ψ)=(0,0,0,...,κ1·g1
这里,κ1是由加法单位元0F以外的有限域Fq的元组成的常数,κ1∈Fq的具体例为κ1=1F。基向量ai(ψ)为正交基,以循环群G1的n(ψ)+ζ(ψ)个元作为元素的所有的n(ψ)+ζ(ψ)维向量,通过n(ψ)+ζ(ψ)维的基向量ai(ψ)(i=1,...,n(ψ)+ζ(ψ))的线性和表示。即,n(ψ)+ζ(ψ)维的基向量ai(ψ)扩展前述的向量空间V(ψ)。 
ai *(ψ)(i=1,...,n(ψ)+ζ(ψ)):表示以循环群G2的n(ψ)+ζ(ψ)个元作为元素的n(ψ)+ζ(ψ)维的基向量。基向量ai *(ψ)的一例是,将κ2·g2∈G2作为第i维的元素,将剩余的n(ψ)+ζ(ψ)-1个元素作为循环群G2的单位元(加法上表现为“0”)的n(ψ)+ζ(ψ)维的基向量。这时,若分别列举表现ai *(ψ)(i=1,...,n(ψ)+ζ(ψ))的各个元素,则如下。 
a1 *(ψ)=(κ2·g2,0,0,...,0) 
a2 *(ψ)=(0,κ2·g2,0,...,0)…(9) 
an(ψ)+ζ(ψ) *(ψ)=(0,0,0,...,κ2·g2
这里,κ2是由加法单位元0F以外的有限域Fq的元组成的常数,κ2∈Fq的 具体例为κ2=1F。基向量ai *(ψ)为正交基,以循环群G2的n(ψ)+ζ(ψ)个元作为元素的所有的n(ψ)+ζ(ψ)维向量,通过n(ψ)+ζ(ψ)维的基向量ai*(ψ)(i=1,...,n(ψ)+ζ(ψ))的线性和表示。即,n(ψ)+ζ(ψ)维的基向量ai *(ψ)扩展前述的向量空间V*(ψ)。 
另外,基向量ai(ψ)和基向量ai *(ψ)关于除0F以外的有限域Fq的元τ=κ1·κ2满足以下关系。 
eψ(ai(ψ),aj *(ψ))=gT τ·δ(i,j)…(10) 
即,当i=j时,根据式(5)(6)的关系,满足以下关系。 
eψ(ai(ψ),aj *(ψ))=Pair(κ1·g12·g2)·Pair(0,0)·...·Pair(0,0) 
=Pair(g1,g2)κ1·κ2·Pair(g1,g2)0·0...·Pair(g1,g2)0·0
=Pair(g1,g2)κ1·κ2=gT τ
另外,上标的κ1,κ2分别表示κ1,κ2。另一方面,当i≠j时,eψ(ai(ψ),aj *(ψ))=Πi=1 n(ψ)+ζ(ψ)Pair(ai(ψ),aj *(ψ))的右边不包含Pair(κ1·g12·g2),成为Pair(κ1·g1,0)和Pair(0,κ2·g2)和Pair(0,0)的积。进而,根据式(6)的关系,满足Pair(g1,0)=Pair(0,g2)=Pair(g1,g2)0。因此,当i≠j时,满足以下关系。 
eψ(ai(ψ),aj *(ψ))=eψ(g1,g2)0=gT 0
尤其,当τ=κ1·κ2=1F时(例如,κ12=1F时),满足以下关系。 
e(ai(ψ),aj *(ψ))=gT δ(i,j)…(11) 
这里,gT 0=1是循环群GT的单位元,gT 1=gT是循环群GT的生成元。这时,基向量ai(ψ)和基向量ai *(ψ)是对偶标准正交基,向量空间V(ψ)和向量空间V*(ψ)是可构成双线性映像的对偶向量空间[对偶配对向量空间(DPVS:Dual Paring Vector space)]。 
A(ψ):表示以基向量ai(ψ)(i=1,...,n(ψ)+ζ(ψ))作为元素的n(ψ)+ζ(ψ)行n(ψ)+ζ(ψ)列的矩阵。例如,在通过式(8)表现基向量ai(ψ)(i=1,...,n(ψ)+ζ(ψ))时,矩阵A(ψ)成为如下。 
[数6] 
A*(ψ):表示以基向量ai *(ψ)(i=1,..,n(ψ)+ζ(ψ))作为元素的n(ψ)+ζ(ψ)行 n(ψ)+ζ(ψ)列的矩阵。例如,在通过式(9)表现基向量ai *(ψ)(i=1,...,n(ψ)+ζ(ψ))时,矩阵A*(ψ)成为如下。 
[数7] 
X(ψ):X(ψ)表示将有限域Fq的元作为元素的n(ψ)+ζ(ψ)行n(ψ)+ζ(ψ)列的矩阵。矩阵X(ψ)用于基向量ai(ψ)的坐标变换。若将矩阵X(ψ)的i行i列(i=1,...,n(ψ)+ζ(ψ),j=1,...,n(ψ)+ζ(ψ))的元素设为χi,j(ψ)∈Fq,则矩阵X(ψ)成为如下。 
[数8] 
另外,将矩阵X(ψ)的各元素χi,j(ψ)称为变换系数。 
X*(ψ):X*(ψ)和X(ψ)满足X*(ψ)=τ'·(X(ψ)-1)T的关系。其中,τ'∈Fq是属于有限域Fq的任意的常数,例如τ′=1F。矩阵X*(ψ)用于基向量ai *(ψ)的坐标变换。若将矩阵X*(ψ)的i行i列的元素设为χi,j *(ψ)∈Fq,则矩阵X*(ψ)成为如下。 
[数9] 
另外,将矩阵X*(ψ)的各元素χi,j *(ψ)称为变换系数。 
这时,若将n(ψ)+ζ(ψ)行n(ψ)+ζ(ψ)列的单位矩阵设为I(ψ),则满足X(ψ)·(X*(ψ))T=τ'·I(ψ)。即,对于单位矩阵 
[数10] 
满足下式。 
[数11] 
这里,定义n(ψ)+ζ(ψ)维向量。 
χi→(ψ)=(χi,1(ψ),...,χi,n(ψ)+ζ(ψ)(ψ))…(18) 
χj*(ψ)=(χj,1 *(ψ),...,χj,n(ψ)+ζ(ψ) *(ψ))…(19) 
那么,根据式(17)的关系,n(ψ)+ζ(ψ)维向量χi→(ψ)和xj →*(ψ)的内积成为如下。 
χi (ψ)·χj →*(ψ)=τ'·δ(i,j)…(20) 
bi(ψ):bi(ψ)表示将循环群G1的n(ψ)+ζ(ψ)个元作为元素的n(ψ)+ζ(ψ)维的基向量。bi(ψ)可通过利用矩阵X(ψ)对基向量ai(ψ)(i=1,...,n(ψ)+ζ(ψ))进行坐标变换而获得。具体地,基向量bi(ψ)可通过以下运算获得。 
bi(ψ)=∑j=1 n(ψ)+ζ(ψ)χij(ψ)·aj(ψ)…(21) 
例如,在通过式(8)表现基向量ai(ψ)(i=1,...,n(ψ)+ζ(ψ))时,若分别列举表现基向量bi(ψ)的各个元素,则如下。 
bi(ψ)=(χi,1(ψ)·κ1·g1i,2(ψ)·κ1·g1
...,χi,n(ψ)+ζ(ψ)(ψ)·κ1·g1)…(22) 
将循环群G1的n(ψ)+ζ(ψ)个元作为元素的所有的n(ψ)+ζ(ψ)维向量,通过n(ψ)+ζ(ψ)维的基向量bi(ψ)(i=1,...,n(ψ)+ζ(ψ))的线性和表示。即,n(ψ)+ζ(ψ)维的基向量bi(ψ)扩展前述的向量空间V(ψ)。 
bi *(ψ):bi *(ψ)表示将循环群G2的n(ψ)+ζ(ψ)个元作为元素的n(ψ)+ζ(ψ)维的基向量。bi *(ψ)可通过利用矩阵X*(ψ)对基向量ai *(ψ)(i=1,...,n(ψ)+ζ(ψ))进行坐标变换而获得。具体地,基向量bi *(ψ)可通过以下运算获得。 
bi *(ψ)=∑j=1 n(ψ)+ζ(ψ)χi,j *(ψ)·aj *(ψ)…(23) 
例如,在通过式(9)表现基向量aj *(ψ)(j=1,...,n(ψ)+ζ(ψ))时,若分别列举表现基向量bi *(ψ)的各个元素,则如下。 
bi *(ψ)=(χi,1 *(ψ)·κ2·g2i,2 *(ψ)·κ2·g2
...,χi,n(ψ)+ζ(ψ) *(ψ)·κ2·g2)…(24) 
将循环群G2的n(ψ)+ζ(ψ)个元作为元素的所有的n(ψ)+ζ(ψ)维向量,通过n(ψ)+ζ(ψ)维的基向量bi *(ψ)(i=1,...,n(ψ)+ζ(ψ))的线性和表示。即,n(ψ)+ζ(ψ)维的基向量bi *(ψ)扩展前述的向量空间V*(ψ)。 
另外,基向量bi(ψ)和基向量bi *(ψ)关于除0F以外的有限域Fq的元τ=κ1·κ2满足以下关系。 
eψ(bi(ψ),bj *(ψ))=gT τ·τ'·δ(i■)…(25) 
即,根据式(5)(20)(22)(24)的关系,满足下式。 
[数12] 
e &psi; ( b i ( &psi; ) , b j * ( &psi; ) ) = &Pi; &beta; = 1 n ( &psi; ) + &zeta; ( &psi; ) Pair ( &chi; i , &beta; ( &psi; ) &CenterDot; &kappa; 1 &CenterDot; g 1 , &chi; j , &beta; * ( &psi; ) &CenterDot; &kappa; 2 &CenterDot; g 2 )
= Pair ( g 1 , g 2 ) &kappa; 1 &CenterDot; &kappa; 2 &CenterDot; &chi; i &RightArrow; ( &psi; ) &CenterDot; &chi; j &RightArrow; * ( &psi; )
= Pair ( g 1 , g 2 ) &tau;&tau; &prime; &CenterDot; &delta; ( i , j ) = g T &tau; &CenterDot; &tau; &prime; &CenterDot; &delta; ( i , j )
尤其,在τ=κ1·κ2=1F(例如,κ12=1F)以及τ′=1F时,满足下式。 
eψ(bi(ψ),bj *(ψ))=gT δ(i,j)…(26) 
这时,基向量bi(ψ)和基向量bi *(ψ)是对偶配对向量空间(向量空间V(ψ)和向量空间V*(ψ))的对偶标准正交基。 
另外,只要满足式(25)的关系,就可以使用由式(8)(9)例示的以外的基向量ai(ψ)以及ai *(ψ)、由式(21)(23)例示的以外的基向量bi(ψ)以及bi *(ψ)。 
B(ψ):B(ψ)是将基向量bi(ψ)(i=1,...,n(ψ)+ζ(ψ))作为元素的n(ψ)+ζ(ψ)行n(ψ)+ζ(ψ)列的矩阵。满足B(ψ)=X(ψ)·A(ψ)。例如,在由式(22)表现基向量bi(ψ)时,矩阵B(ψ)成为如下。 
[数13] 
…(27) 
B*(ψ):B*(ψ)是将基向量bi *(ψ)(i=1,..,n(ψ)+ζ(ψ))作为元素的n(ψ)+ζ(ψ)行n(ψ)+ζ(ψ)列的矩阵。满足B*(ψ)=X*(ψ)·A*(ψ)。例如,在由式(24)表现基向量bi *(ψ)(i=1,...,n(ψ)+ζ(ψ))时,矩阵B*(ψ)成为如下。 
[数14] 
v(λ):v(λ)表示将有限域Fq的元作为元素的n(λ)维向量。 
v(λ)=(v1(λ),,vn(λ)(λ))∈Fq n(λ)…(29) 
vμ(λ):vμ(λ)表示n(λ)维向量v(λ)的第μ(μ=1,...,n(λ))个元素。 
w(λ):w(λ)表示将有限域Fq的元作为元素的n(λ)维向量。 
w(λ)=(w1(λ),,wn(λ)(λ))∈Fq n(λ)…(30) 
wμ(λ):wμ(λ)表示n(λ)维向量w(λ)的第μ(μ=1,...,n(λ))个元素。 
Enc:Enc表示示出公共密钥密码方式的加密处理的公共密钥密码函数。 
EncK(M):EncK(M)表示利用公共密钥K按照公共密钥密码函数Enc对明文M进行加密所获得的密码文。 
Dec:Dec表示示出公共密钥密码方式的解密处理的公共密钥解密函数。 
DecK(C):DecK(C)表示利用公共密钥K按照公共密钥解密函数Dec对密码文C进行解密所获得的解密结果。 
[函数密码方式] 
下面,说明函数密码方式的基本结构。 
函数密码方式是在通过第1信息和第2信息的组合所决定的逻辑式的真值成为“真”的情况下密码文被解密的方式。“第1信息”和“第2信息”的一方被嵌入密码文,另一方被嵌入密钥信息。例如,“"Predicate Encryption Supporting Disjunctions,Polynomial Equations,and Inner Products,"with Amit Sahai and Brent Waters One of4papers from Eurocrypt2008invited to the Journal of Cryptology”(参考文献9)所公开的谓语密码方式是函数密码方式的一种。 
除此以外也存在各种公知的函数密码方式,但以下说明未公开的新的函数密码方式。在以下说明的新的函数密码方式中,与秘密信息相应的值采用与规定的逻辑式相应的方式被分层地秘密分散。规定的逻辑式包含通过第1信息和第2信息的组合决定真值的命题变量,并根据需要还包含逻辑符号∧,∨,的其中一个或者全部。在通过确定各命题变量的真值所决定的该规定的逻辑式的真值成为“真”时,与秘密信息相应的值被还原,并基于此解密密码文。 
<逻辑式和分层的秘密分散的关系> 
说明上述的规定的逻辑式和分层的秘密分散的关系。 
秘密分散是指,将秘密信息分散到N(N≥2)个共享(share)信息,使得只有在能够获得阈值Kt(Kt≥1)个以上的共享信息时还原秘密信息。将满足Kt=N的秘密分散的方式(SSS:Secret Sharing Scheme)称为N-out-of-N分散方式(或者“N-out-of-N阈值分散方式”),将满足Kt<N的秘密分散的方式称为Kt-out-of-N分散方式(或者“Kt-out-of-N阈值分散方式”)(例如,参照参考文献10“黒沢馨、尾形わかは、“現代暗号の基礎数理(電子情報通信レクチヤ一シリ一ズ)”、コロナ社、2004年3月、p.116-119”、参考文献11“A.Shamir,"How to Share a Secret",Communications of the ACM,November 1979,Volume22,Number11,pp.612-613.”等)。 
N-out-of-N分散方式是指,如果提供所有的共享信息share(1),...,share(N)则能够还原秘密信息SE,但即使提供任意的N-1个共享信息 也完全无法获得秘密信息SE的信息的方式。以下,表示其一例。 
·随机选择SH1,...,SHN-1。 
·进行SHN=SE-(SH1+...+SHN-1)的计算。 
·将SH1,...,SHN设为各共享信息share(1),...,share(N)。 
·若提供所有的共享信息share(1),…,share(N),则通过 
SE=share(1)+...+share(N)…(31) 
的还原处理能够还原秘密信息SE。 
Kt-out-of-N分散方式是指,如果提供任意不同的Kt个共享信息 则能够还原秘密信息SE,但即使提供任意的Kt-1个共享信息也完全无法获得秘密信息SE的信息的方式。另外,下标的Kt表示Kt。以下表示Kt-out-of-N分散方式的一例。 
·随机选择满足f(0)=SE的Kt-1次的多项式f(x)=ξ01·x+ξ2·x2+...+ξKt-1·xKt-1。即,设为ξ0=SE,随机选择ξ1,...,ξKt-1。将共享信息设为share(ρ)=(ρ,f(ρ))(ρ=1,...,N)。另外,(ρ,f(ρ))是能够分别提取ρ以及f(ρ)的值的信息,例如ρ和f(ρ)的比特结合值。 
·在获得了任意不同的Kt个共享信息 的情况下,例如,利用拉格朗日(Lagrange)的插补公式,通过如下的还原处理可实现秘密信息SE的还原。 
[数15] 
LA &rho; ( x ) = ( x - &phi; 1 ) . . . v &rho; . . . ( x - &phi; K t ) ( &phi; &rho; - &phi; 1 ) . . . v &rho; . . . ( &phi; &rho; - &phi; K t ) &Element; F q . . . ( 33 )
另外,
表示从开头起第ρ个被运算符[分母的元素分子的元素不存在。即,式(33)的分母如下, 
式(33)的分子如下。 
上述的各秘密分散即使在体上也可执行。此外,还能够对这些进行扩展从而将与秘密信息SE相应的值秘密分散到共享信息share。与秘密信息SE相应的值是指秘密SE本身或秘密信息SE的函数值,与共享信息share相应的值是指共享信息share本身或共享信息的函数值。例如,还能够将与作为有 限域Fq的元的秘密信息SE∈Fq相应的循环群GT的元gT SE∈GT,秘密分散到与秘密信息SE的各共享信息share(1),share(2)相应的循环群GT的元gT share(1),gT share(2)∈GT。此外,上述的秘密信息SE成为共享信息share的线性结合(式(31)(32))。这样,将秘密信息SE成为共享信息share的线性结合的秘密分散方式称为线性秘密分散方式。 
上述的规定的逻辑式可通过将秘密信息分层地进行秘密分散所获得的树构造数据来表现。即,通过莫尔更(De Morgan)定理,上述的规定的逻辑式可通过文字(literal)组成的逻辑式或者由逻辑符号∧,∨的至少一部分和文字组成的逻辑式(将这些称为“标准型逻辑式”)来表现,该标准型逻辑式可通过将秘密信息分层地进行秘密分散所获得的树构造数据来表现。 
表现标准型逻辑式的树构造数据包含多个节点,至少一部分节点被设为一个以上的子节点的母节点,母节点的一个被设为根节点,子节点的至少一部分被设为叶节点。不存在根节点的母节点和叶节点的子节点。根节点中对应了与秘密信息相应的值,各母节点的子节点中对应了与将对应于该母节点的值秘密分散后的共享信息相应的值。各节点处的秘密分散形式(秘密分散方式或阈值)根据标准型逻辑式决定。此外,各叶节点中对应了构成标准型逻辑式的各文字,该各文字的真值通过第1信息和第2信息的组合所决定。 
这里,假设得到与真值成为真的文字对应的叶节点所对应的共享信息相应的值,但得不到与真值成为假的文字对应的叶节点所对应的共享信息相应的值。此外,根据上述的秘密分散的性质,对应于母节点的与共享信息相应的值(若该母节点为根节点则为与秘密信息相应的值),只有在对应于其子节点的与共享信息相应的值可获得对应于该母节点的阈值以上的个数的情况下被还原。因此,根据对应于哪个叶节点的文字的真值成为真以及树构造数据的结构(包含各节点处的秘密分散的形式),最终决定是否能够还原对应于根节点的与秘密信息相应的值。并且,在树构造数据构成为只有在对应于各叶节点的各文字的真值使标准型逻辑式的真值成为真的情况下才能最终还原对应于根节点的与秘密信息相应的值时,这样的树构造数据表现标准型逻辑式。表现这样的标准型逻辑式的树构造数据能够容易设定。以下表示具体例。 
图83是例示用于表现包含命题变量PRO(1),PRO(2)和命题变量PRO(3)的“非”和逻辑符号∧,∨的标准型逻辑式的树构造数据的图。图83例示的树构造数据包含多个节点N1,...,N5。节点N1 被设为节点N2,N5的母节点,节点N2被设为节点N3,N4的母节点,母节点的一个节点N1被设为根节点,作为子节点的一部分的节点N3,N4,N5被设为叶节点。节点N1中对应了与秘密信息SE相应的值,节点N1的子节点N2,N5中分别对应了与将与秘密信息SE相应的值通过1-out-of-2分散方式进行了秘密分散后的各共享信息SE,SE相应的值。节点N2的子节点N3,N4中分别对应了与将与秘密信息SE相应的值通过2-out-of-2分散方式进行了秘密分散后的各共享信息SE-SH1,SH1相应的值。即,叶节点N3中对应了与共享信息share(1)=SE-SH1相应的值,叶节点N4中对应了与共享信息share(2)=SH1相应的值,叶节点N5中对应了与共享信息share(3)=SE相应的值。此外,叶节点N3,N4,N5中分别对应了构成标准型逻辑式的各文字 该各文字的真值根据第1信息和第2信息的组合所决定。这里,假设能得到与真值成为真的文字对应的叶节点所对应的共享信息相应的值,但得不到与真值成为假的文字对应的叶节点所对应的共享信息相应的值。这时,只有在第1信息和第2信息的组合使标准型逻辑式的真值成为真的情况下,与秘密信息SE相应的值被还原。 
图84是例示用于表现包含命题变量PRO(1),PRO(2),PRO(3),PRO(6),PRO(7)和命题变量PRO(4),PRO(5)的“非”和逻辑符号∧,∨的标准型逻辑式 的树构造数据的图。 
图84例示的树构造数据包含多个节点N1,...,N11。节点N1被设为节点N2,N6,N7的母节点,节点N2被设为节点N3,N4,N5的母节点,节点N7被设为节点N8,N11的母节点,节点N8被设为节点N9,N10的母节点,母节点的一个节点N1被设为根节点,节点N3,N4,N5,N6,N9,N10,N11被设为叶节点。节点N1中对应了与秘密信息SE相应的值,节点N1的子节点N2,N6,N7中分别对应了与将与秘密信息SE相应的值通过1-out-of-3分散方式进行了秘密分散后的各共享信息SE,SE,SE相应的值。节点N2的子节点N3,N4,N5中分别对应了与将与秘密信息SE相应的值通过2-out-of-3分散方式进行了秘密分散后的各共享信息(1,f(1)),(2,f(2)),(3,f(3))相应的值。节点N7的子节点N8,N11中分别对应了与将与秘密信息SE相应的值通过2-out-of-2分散方式进行了秘密分散后的各共享信息SH4,SE-SH4相应的值。节点N8的子节点N9,N10中分别对应了与将与 共享信息SH4相应的值通过1-out-of-2分散方式进行了秘密分散后的各共享信息SH4,SH4相应的值。即,叶节点N3中对应了与共享信息share(1)=(1,f(2))对应的值,叶节点N4中对应了与共享信息share(2)=(2,f(2))对应的值,叶节点N5中对应了与共享信息share(3)=(3,f(3))对应的值,叶节点N6中对应了与共享信息share(4)=SE对应的值,叶节点N9中对应了与共享信息share(5)=SH4对应的值,叶节点N10中对应了与共享信息share(6)=SH4对应的值,叶节点N11中对应了与共享信息share(7)=SE-SH4对应的值。此外,作为叶节点的节点N3,N4,N5,N6,N9,N10,N11中分别对应了构成标准型逻辑式 的各文字 各文字 的真值根据第1信息和的2信息的组合决定。这里,可得到与真值成为真的文字对应的叶节点所对应的共享信息相应的值,但得不到与真值成为假的文字对应的叶节点所对应的共享信息相应的值。这时,只有在第1信息和第2信息的组合使标准型逻辑式  的真值成为真的情况下,与秘密信息SE相应的值被还原。 
<访问构造> 
在如上所述那样通过将秘密信息分层地秘密分散所获得的树构造数据来表现规定的逻辑式的情况下,能够根据以下条件来判定通过第1信息和第2信息的组合决定的逻辑式的真值成为“真”还是“假”,即是否能够根据相对于第1信息和第2信息的组合所获得的叶节点处的与共享信息相应的值来还原与秘密信息相应的值。以下,将在通过第1信息和第2信息的组合决定的逻辑式的真值成为“真”时接受第1信息和第2信息的组合,在成为“假”时拒绝第1信息和第2信息的组合的构造称为访问构造。 
将如上所述那样表现了规定的逻辑式的树构造数据的叶节点的总数设为Ψ,将对应于各叶节点的识别符设为λ=1,...,Ψ。将对应于各叶节点的n(λ)维向量v(λ)的集合{v(λ)}λ=1,...,Ψ设为第1信息,将n(λ)维向量w(λ)的集合{w(λ)}λ=1,...,Ψ设为第2信息。此外,将上述的树构造数据作为附带标签矩阵LMT(MT,LAB)来安装。 
附带标签矩阵LMT(MT,LAB)包含Ψ行COL列(COL≥1)的矩阵 
[数16] 
和矩阵MT的各行λ=1,...,Ψ相关联的标签LAB(λ)。 
矩阵MT的各元素mtλ,col(col=1,...,COL)满足以下的两个条件。第1,在如上所述那样表现了规定的逻辑式的树构造数据的根节点中对应了与秘密信息SE∈Fq相应的值的情况下,相对于将预先决定的有限域Fq的元作为元素的COL维向量 
GV=(gv1,...,gvCOL)∈Fq COL…(35) 
和将与秘密信息SE相应的有限域Fq的元作为元素的COL维向量 
CV=(cv1,...,cvCOL)∈Fq COL…(36) 
有以下关系成立。 
SE=GV·(CV)T…(37) 
COL维向量GV的具体例为 
GV=(1F,...,1F)∈Fq COL…(38) 
但也可以是GV=(1F,0F,...,0F)∈Fq COL等的其他的COL维向量。第2,在与识别符λ对应的叶节点中对应了与共享信息share(λ)∈Fq相应的值的情况下,有以下关系成立。 
(share(1),...,share(Ψ))T=MT·(CV)T…(39) 
若决定了如上所述那样表现了规定的逻辑式的树构造数据,则容易选择满足上述两个要件的矩阵MT。此外,就算秘密信息SE或共享信息share(λ)为变量,也容易选择满足上述两个要件的矩阵MT。即,也可以在决定了矩阵MT之后决定秘密信息SE或共享信息share(λ)的值。 
此外,矩阵MT的各行λ=1,...,Ψ所相关联的标签LAB(λ),对应于与叶节点对应的文字(PRO(λ)或者其中,该叶节点对应于识别符λ。这里,命题变量PRO(λ)的真值为“真”等价于,第1信息VSET1={λ,v(λ)|λ=1,...,Ψ}包含的v(λ)和第2信息VSET2={λ,w(λ)|λ=1,...,Ψ}包含的w(λ)的内积v(λ)·w(λ)成为0,命题变量PRO(λ)的真值为“假”等价于,内积v(λ)·w(λ)不成为0。并且,假设对应于PRO(λ)的标签LAB(λ)表示v(λ),对应于 的标签LAB(λ)表示另外,是表示v(λ)的“非”的逻辑式,能够根据来确定v(λ)。此外,将LAB(λ)表示v(λ)的情况记载为“LAB(λ)=v(λ)”,将LAB(λ)表示的情况记载为此外,将LAB(λ)(λ=1,...,Ψ)的集合{LAB(λ)}λ=1,...,Ψ记载为LAB。 
进而,定义Ψ维向量。 
TFV=(tfv(1),...,tfv(Ψ))…(40) 
元素tfv(λ)在内积v(λ)·w(λ)为0时成为tfv(λ)=1,在0以外的情况下成为tfv(λ)=0。 
tfv(λ)=1(PRO(λ)的为真)如果v(λ)·w(λ)=0…(41) 
tfv(λ)=0(PRO(λ)的为假)如果v(λ)·w(λ)≠0…(42) 
进而,在逻辑式 
的真值成为“真”时记载为LIT(λ)=1,成为“假”时记载为LIT(λ)=0。即,与对应于识别符λ的叶节点对应的文字的真值成为“真”时记载为LIT(λ)=1,成为“假”时记载为LIT(λ)=0。于是,矩阵MT包含的向量中仅由成为LIT(λ)=1的行向量mtλ =(mtλ,1,..,mtλ,COL)组成的部分矩阵MTTFV能够记载如下。 
MTTFV=(MT)LIT(λ)=1…(44) 
当上述的秘密分散方式为线性秘密分散方式时,能够根据对应于识别符λ的与共享信息share(λ)相应的值来还原与秘密信息SE相应的值等价于,COL维向量GV属于通过对应于识别符λ的行向量mtλ 所扩展的向量空间。即,通过判定COL维向量GV是否属于通过对应于识别符λ的行向量mtλ 所扩展的向量空间,从而能够判定是否能够根据对应于识别符λ的与共享信息share(λ)相应的值来还原与秘密信息SE相应的值。另外,通过行向量mtλ 所扩展的向量空间意味着能够通过行向量mtλ 的线性结合来表示的向量空间。 
这里,当COL维向量GV属于通过上述的部分矩阵MTTFV的各行向量mtλ 所扩展的向量空间span<MTTFV>时接受第1信息和第2信息的组合,否则拒绝第1信息和第2信息的组合。由此,上述的访问构造被具体化。另外,当如上所述那样附带标签矩阵LMT(MT,LAB)对应于第1信息的情况下,将访问构造接受第1信息和第2信息的组合的情况称为“访问构造接受第2信息”,将访问构造不接受第1信息和第2信息的组合的情况称为“访问构造拒绝第2信息”。 
接受如果GV∈span<MTTFV
拒绝如果
此外,当GV∈span<MTTFV>时,存在满足以下关系的系数const(μ),并且这样的系数const(μ)能够通过矩阵MT的大小的多项式时间来求得。 
SE = &Sigma; &mu; &Element; SET const ( &mu; ) &CenterDot; share ( &mu; ) . . . ( 45 )
{ const ( &mu; ) &Element; F q | &mu; &Element; SET } , SET &SubsetEqual; { 1 , . . . , &lambda; | LIT ( &lambda; ) = 1 }
<利用了访问构造的函数密码方式的基本结构> 
以下,例示在通过利用了访问构造的函数密码方式来构成密钥封装机构KEM(Key Encapsulation Mechanisms)的情况下的基本结构。该结构包含Setup(1sec,(Ψ;n(1),...,n(Ψ))、GenKey(PK,MSK,LMT(MT,LAB))、Enc(PK,M,{λ,v(λ)|λ=1,...,Ψ})(v1(λ)=1F)、Dec(PK,SKS,C)。此外,第2信息VSET2={λ,w(λ)|λ=1,...,Ψ}的第1个元素w1(λ)被设为1F。 
[Setup(1sec,(Ψ;n(1),...,n(Ψ)):设置] 
-输入:1sec、(Ψ;n(1),...,n(Ψ)) 
-输出:主密钥信息、公开参数PK 
在Setup中关于各ψ=0,...,Ψ执行以下处理。 
(Setup-1)以1sec作为输入,生成安全参数sec下的位数q、椭圆曲线E、循环群G1,G2,GT、双线性映像eψ(ψ=0,..,Ψ)(param=(q,E,G1,G2,GT,eψ))。 
(Setup-2)选择τ'∈Fq,选择满足X*(ψ)=τ'·(X(ψ)-1)T的矩阵X(ψ),X*(ψ)。 
(Setup-3)基向量ai(ψ)(i=1,...,n(ψ)+ζ(ψ))按照式(21)进行坐标变换,生成n(ψ)+ζ(ψ)维的基向量bi(ψ)(i=1,...,n(ψ)+ζ(ψ))。生成以基向量bi(ψ)(i=1,...,n(ψ)+ζ(ψ))作为元素的n(ψ)+ζ(ψ)行n(ψ)+ζ(ψ)列的矩阵B(ψ)。 
(Setup-4)基向量ai *(ψ)(i=1,...,n(ψ)+ζ(ψ))按照式(23)进行坐标变换,生成n(ψ)+ζ(ψ)维的基向量bi *(ψ)(i=1,...,n(ψ)+ζ(ψ))。生成以基向量bi *(ψ)(i=1,...,n(ψ)+ζ(ψ))作为元素的n(ψ)+ζ(ψ)行n(ψ)+ζ(ψ)列的矩阵B*(ψ)。 
(Setup-5)将B*(ψ)^的集合{B*(ψ)^}ψ=0,...,Ψ设为主密钥信息MSK={B*(ψ)^}ψ=0,...,Ψ。此外,将B(ψ)^的集合{B(ψ)^}ψ=0,...,Ψ和1sec和param设为公开参数PK。其中,B*(ψ)^为矩阵B*(ψ)或者其部分矩阵,B(ψ)^为矩阵B(ψ)或者其部分矩阵。此外,集合{B*(ψ)^}ψ=0,...,Ψ至少包含b1 *(0),b1 *(λ)…,bn(λ) *(λ)(λ=1,...,Ψ)。此外,集合{B(ψ)^}ψ=0,...,Ψ至少包含b1(0),b1(λ)...,bn(λ)(λ)(λ=1,...,Ψ)。以下表示一例。 
·n(0)+ζ(0)≥5,ζ(λ)=3·n(λ) 
·B(0)^=(b1(0)b3(0)b5(0))T
·B(λ)^=(b1(λ)…bn(λ)(λ)b3·n(λ)+1(λ)…b4·n(λ)(λ))T(λ=1,...,Ψ) 
·B*(0)^=(b1 *(0)b3 *(0)b4 *(0))T
·B*(λ)^=(b1 *(λ)…bn(λ) *(λ)b2·n(λ)+1 *(λ)…b3·n(λ) *(λ))T(λ=1,...,Ψ) 
[GenKey(PK,MSK,LMT(MT,LAB)):密钥信息生成] 
-输入:公开参数PK、主密钥信息MSK、对应于第1信息VSET1={λ,v(λ)|λ=1,...,Ψ}的附带标签矩阵LMT(M T,LAB) 
-输出:密钥信息SKS 
(GenKey-1)对于满足式(35)-(39)的秘密信息SE执行以下的处理。 
D*(0)=-SE·b1 *(0)+Σι=2 Icoefι(0)·bι *(0)…(46) 
其中,I是2以上且n(0)+ζ(0)以下的常数。coefι(0)∈Fq是常数或者随机数。“随机数”意味着本征随机数或伪随机数。以下表示D*(0)的一例。另外,式(47)的coef4(0)是随机数。 
D*(0)=-SE·b1 *(0)+b3 *(0)+coef4(0)·b4 *(0)…(47) 
(GenKey-2)对于满足式(35)-(39)的share(λ)(λ=1,...,Ψ)执行以下的处理。 
对于成为LAB(λ)=v(λ)的λ,生成 
D*(λ)=(share(λ)+coef(λ)·v1(λ))·b1 *(λ) 
ι=2 n(λ)coef(λ)·vι(λ)·bι *(λ) 
ι=n(λ)+1 n(λ)+ζ(λ)coefι(λ)·bι *(λ)…(48) 
对于成为生成 
D*(λ)=share(λ)·Σι=1 n(λ)vι(λ)·bι *(λ) 
ι=n(λ)+1 n(λ)+ζ(λ)coefι(λ)·bι *(λ)…(49) 
其中,coef9λ),coefι(λ)∈Fq是常数或者随机数。以下表示一例。 
对于成为LAB(λ)=v(λ)的λ,生成 
D*(λ)=(share(λ)+coef(λ)·v1(λ))·b1 *(λ) 
ι=2 n(λ)coef(λ)·vι(λ)·bι *(λ) 
ι=2·n(λ)+1 3·n(λ)coefι(λ)·bι *(λ)…(50) 
对于成为的λ,生成 
D*(λ)=share(λ)·Σι=1 n(λ)vι(λ)·bι *(λ) 
ι=2·n(λ)+1 3·n(λ)coefι(λ)·bι *(λ)…(51) 
另外,式(50)(51)的coef(λ)以及coefι(λ)是随机数。 
(GenKey-3)生成密钥信息。 
SKS=(LMT(MT,LAB),D*(0),D*(1),...,D(Ψ))…(52) 
[Enc(PK,M,VSET2):加密] 
-输入:公开参数PK、明文M、第2信息VSET2={λ,w(λ)|λ=1,...,Ψ}(w1(λ)=1F
-输出:密码文C 
(Enc-1)通过以下的处理生成公共密钥K的密码文C(ψ)(ψ=0,...,Ψ)。 
C(0)=υ·b1(0)+Σι=2 Iυι(0)·bι(0)…(53) 
C(λ)=υ·Σι=1 n(λ)wι(λ)·bι(λ)+Σι=n(λ)+1 n(λ)+ζ(λ)υι(λ)·bι(λ)…(54) 
其中,υ,υι(ψ)∈Fq(ψ=0,...,Ψ)是常数或者随机数,满足下式。 
(coef2(0),...,coefI(0))·(υ2(0),...,υI(0))=υ'…(55) 
coefι(λ)·υι(λ)=0F(ι=n(λ)+1,...,n(λ)+ζ(λ))…(56) 
υ'的例子υ2(0),...,υI(0)的其中一个。例如,υ,υ3(0),υ5(0),υ3·n(λ)+1(λ),...,υ4·n(λ)(λ)为随机数,ζ(λ)=3·n(λ),I=5,并且如下。 
2(0),...,υI(0))=(0F3(0),0F5(0)) 
υ′=υ3(0) 
n(λ)+1(λ),...,υ3·n(λ)(λ))=(0F,...,0F
(Enc-2)生成公共密钥。 
K=gT τ·τ'·υ'GT…(57) 
例如,当τ=τ'=1F时,如下。 
K=gT υ'∈GT…(58) 
(Enc-3)利用公共密钥K生成明文M的密码文。 
C(Ψ+1)=EncK(M)…(59) 
另外,公共密钥密码方式Enc可以是例如构成为能够利用公共密钥K进行加密的Camellia(注册商标)、AES、公共密钥和明文的“异或”等,但作为其他的简单的例子也可以如下生成EncK(M)。其中,在式(60)的例子中被设为M∈GT。 
C(Ψ+1)=gT υ'·M…(60) 
(Enc-4)生成密码文。 
C=(VSET2,C(0),{C(λ)}(λ,w(λ)→)∈VSET2,C(Ψ+1))…(61) 
其中,下标的“w(λ)→”表示“w(λ)”。 
[Dec(PK,SKS,C):解密] 
-输入:公开参数PK、密钥信息SKS、密码文C 
-输出:明文M' 
(Dec-1)针对λ=1,...,Ψ,判定密钥信息SKS包含的附带标签矩阵LMT(MT,LAB)的各标签LAB(λ)即n(λ)维向量v(λ)→与密码文C的VSET2包含的n(λ)维向量w(λ)的内积v(λ)·w(λ)是否成为0,由此判定是否为GV∈span<MTTFV>。如果不是GV∈span<MTTFV>则密码文C被拒绝,如果是GV∈span<MTTFV>则密码文C被接受。 
(Dec-2)如果密码文C被接受,则计算和满足式(45)的系数const(μ)(μ∈SET)。 
(Dec-3)生成公共密钥。 
[数17] 
…(62) 
这里,根据式(6)(25)(55),满足下式。 
[数18] 
e 0 ( C ( 0 ) , D * ( 0 ) )
= e 0 ( &upsi; &CenterDot; b 1 ( 0 ) + &Sigma; &iota; = 2 I &upsi; &iota; ( 0 ) &CenterDot; b &iota; ( 0 ) , - SE &CenterDot; b 1 * ( 0 ) + &Sigma; &iota; = 2 I coe f &iota; ( 0 ) &CenterDot; b &iota; * ( 0 ) )
= e 0 ( &upsi; &CenterDot; b 1 ( 0 ) , - SE &CenterDot; b 1 * ( 0 ) ) &CenterDot; &Pi; &iota; = 2 I e 0 ( &upsi; &iota; ( 0 ) &CenterDot; b &iota; ( 0 ) , coef &iota; ( 0 ) &CenterDot; b &iota; * ( 0 ) ) ) …(63) 
= e 0 ( b 1 ( 0 ) , b 1 * ( 0 ) ) - SE &CenterDot; &upsi; &CenterDot; &Pi; &iota; = 2 I e 0 ( b &iota; ( 0 ) , b &iota; * ( 0 ) ) &upsi; &iota; ( 0 ) &CenterDot; coe f &iota; ( 0 ) )
= g T &tau; &CenterDot; &tau; &prime; &CenterDot; &delta; ( 1,1 ) &CenterDot; ( - SE &CenterDot; &upsi; ) &CenterDot; &Pi; &iota; = 2 I g T &tau; &CenterDot; &tau; &prime; &delta; ( &iota; , &iota; ) &CenterDot; &upsi; &iota; ( 0 ) &CenterDot; coef &iota; ( 0 )
= g T &tau; &CenterDot; &tau; &prime; &CenterDot; ( - SE &CenterDot; &upsi; + &upsi; &prime; )
此外,根据式(6)(25)(41)(48)(54)(56)以及w1(λ)=1F,满足下式。 
[数19] 
此外,根据式(6)(25)(42)(49)(54)(56),满足下式。 
[数20] 
由此,根据式(45)(63)-(65),满足下式。 
[数21] 
例如,当τ=τ′=1F时,满足下式。 
K=gT υ'∈GT…(67) 
(Dec-4)利用公共密钥K生成明文。 
M'=DecK(C(Ψ+1))=DecK(C(Ψ+1))…(68) 
例如,在式(60)例示的公共密钥密码方式的情况下,通过下式生成明文M'。 
M′=C(Ψ+1)/K…(69) 
另外,也可以取代将gT作为GT的生成元,而是将gT τ或gT τ′或gT τ·τ′作为GT的生成元。此外,也可以利用用于确定密钥信息SKS的λ和密码文的λ的对应关系的映像来确定C(λ)与D*(λ)的组合,执行[Dec(PK,SKS,C):解密]的处理。此外,不仅是第2信息VSET2={λ,w(λ)|λ=1,...,Ψ}的第一个元素w1(λ)被设为1F,第1信息VSET1={λ,v(λ)|λ=1,...,Ψ}的第n(λ)个元素vn(λ)(λ)也可以被设为1F。此外,当元素w1(λ)不是1F时也可以取代w(λ)而利用w(λ)/w1(λ),当元素vn(λ)(λ)不是1F时也可以取代v(λ)而利用v(λ)/vn(λ)(λ)。此外,也可以取代第1信息VSET1={λ,v(λ)|λ=1,..,Ψ}而利用第2信息VSET2={λ,w(λ)|λ=1,...,Ψ},取代第2信息VSET2={λ,w(λ)|λ=1,...,Ψ}而利用第1信息VSET1={λ,v(λ)|λ=1,...,Ψ}。这时,第1信息VSET1={λ,v(λ)|λ=1,...,Ψ}的第一个元素v1(λ)被设为1F。 
下面,作为函数密码的一个方式即谓语密码的一例,说明利用了内积的谓语密码。另外,算术式的编号在本节中重新附加。此外,请注意,为了便于说明,即使是与在上述的说明中使用的语言或符号相同的语言或符号,有时其含义也不同。谓语密码相当于利用了1-out-of-1分散方式的函数密码。 
[定义] 
矩阵:“矩阵”表示将定义了运算的集合的元以矩形方式排列的形态。不仅将环的元作为元素的形态表现为“矩阵”,将群的元作为元素的形态也表现为“矩阵”。 
(·)T:(·)T表示.的转置矩阵。 
(·)-1:(·)-1表示·的逆矩阵。 
∧:∧是表示“与”。 
∨:∨是表示“或”。 
Z:Z表示整数集合。 
k:k表示安全参数(k∈Z,k>0)。 
{0,1}*:{0,1}*表示任意比特长的二进制序列。其一例是由整数0以及1组成的序列。但是,{0,1}*不限于由整数0以及1组成的序列。{0,1}*与位数2的有限域或者其扩展域同义。 
{0,1}ζ:{0,1}ζ表示比特长为ζ(ζ∈Z,ζ>0)的二进制序列。其一例是由整数0以及1组成的序列。但是,{0,1}ζ不限于由整数0以及1组成的序列。{0,1}ζ与位数2的有限域(ζ=1的情况)或者将其扩展了ζ维的扩展域(ζ>1的情况)同义。 
(+):(+)表示二进制序列之间的“异或”运算符。例如,满足10110011(+)11100001=01010010。 
Fq:Fq表示位数q的有限域。位数q为1以上的整数,例如将素数或素数的取幂值设为位数q。即,有限域Fq的例子是素域或将其作为基础域的扩展域。另外,有限域Fq为素域时的运算例如可通过将位数q作为除数的余数运算而容易构成。此外,有限域Fq为扩展域时的运算例如可通过将不可约多项式作为除数的余数运算而容易构成。有限域Fq的具体的构成方法例如在参考文献1“ISO/IEC18033-2:Information technology-Security techniques-Encryption algorithms-Part2:Asymmetric ciphers”中公开。 
0F:0F表示有限域Fq的加法单位元。 
1F:1F表示有限域Fq的乘法单位元。 
δ(i,j):δ(i,j)表示克罗内克符号函数。当i=j时满足δ(i,j)=1F,i≠j时满足δ(i,j)=0F。 
E:E表示在有限域Fq上定义的椭圆曲线。E被定义为在由满足仿射(affine)坐标版的韦氏(Weierstrass)方程式 
y2+a1·x·y+a3·y=x3+a2·x2+a4·x+a6…(1) 
(其中,a1,a2,a3,a4,a6∈Fq)的x,y∈Fq组成的点(x,y)的集合上附加了被称为无限远点的特别的点O。对于椭圆曲线E上的任意两点能够定义被称为椭圆 加法运算的二项运算+,对于椭圆曲线E上的任意一点能够定义被称为椭圆逆元的单项运算-。此外,普遍知晓由椭圆曲线E上的有理点组成的有限集合关于椭圆加法运算形成群、利用椭圆加法运算能够定义被称为椭圆标量倍算的运算、以及计算机上的椭圆加法运算等椭圆运算的具体运算方法(例如,参照参考文献1、参考文献2“RFC5091:Identity-Based Cryptography Standard(IBC S)#1:Supersingular Curve Implementations of the BF and BB1 Cryptosystems”、参考文献3“イアン·F·ブラケ、ガデイエル·セロツシ、ナイジエル·P·スマ一ト=著、「楕円曲線暗号」、出版=ピアソン·エデユケ一シヨン、ISBN4-89471-431-0”等)。 
此外,由椭圆曲线E上的有理点组成的有限集合具有位数p(p≥1)的部分群。例如,将由椭圆曲线E上的有理点组成的有限集合的元素数目设为#E,将p设为用于整除#E的大的素数的情况下,由椭圆曲线E的p等分点组成的有限集合E[p]构成由椭圆曲线E上的有理点组成的有限集合的部分群。另外,椭圆曲线E的p等分点是指,在椭圆曲线E上的点A中,椭圆曲线E上的椭圆标量倍算值p·A满足p·A=0的点。 
G1,G2,GT:G1,G2,GT表示位数q的循环群。循环群G1,G2的具体例为由椭圆曲线E的p等分点组成的有限集合E[p]或其部分群。可以是G1=G2,也可以是G1≠G2。此外,循环群GT的具体例为用于构成以有限域Fq作为基础域的扩展域的有限集合。其一例是,有限域Fq的代数闭包中的1的p次方根组成的有限集合。 
另外,在本方式中,以加法形式表现在循环群G1,G2上定义的运算,以乘法形式表现在循环群GT上定义的运算。即,对于χ∈Fq以及Ω∈G1的χ·Ω∈G1表示,对Ω∈G1实施χ次在循环群G1上定义的运算,对于Ω12∈G1的Ω12∈G1表示,将Ω1∈G1和Ω2∈G1作为被运算符进行在循环群G1上定义的运算。同样地,对于χ∈Fq以及Ω∈G2的χ·Ω∈G2表示,对Ω∈G2实施χ次在循环群G2上定义的运算,对于Ω12∈G2的Ω12∈G2表示,将Ω1∈G2和Ω2∈G2作为被运算符进行在循环群G2上定义的运算。另一方面,对于χ∈Fq以及Ω∈GT的Ωχ∈GT表示,对Ω∈GT实施χ次在循环群GT上定义的运算,对于Ω12∈GT的Ω1·Ω2∈GT表示,将Ω1∈GT和Ω2∈GT作为被运算符进行在循环群GT上定义的运算。 
G1 n+1:G1 n+1表示n+1(n≥1)个循环群G1的直积。 
G2 n+1:G2 n+1表示n+1个循环群G2的直积。 
g1,g2,gT:g1,g2,gT表示循环群G,G1,G2,GT的生成元。 
V:V表示由n+1个循环群G1的直积组成的n+1维的向量空间。 
V*:V*表示由n+1个循环群G2的直积组成的n+1维的向量空间。 
e:e表示用于计算将直积G1 n+1和直积G2 n+1的直积G1 n+1×G2 n+1映射到循环群GT的非退化的双线性映像(bilinear map)的函数(成为“双线性函数”)。双线性映像e以循环群G1的n+1个元γL(L=1,...,n+1)(n≥1)和循环群G2的n+1个元γL *(L=1,...,n+1)作为输入,输出循环群GT的一个元。 
e:G1 n+1×G2 n+1→GT…(2) 
双线性函数e满足以下性质。 
[双线性性]关于所有的Γ1∈G1 n+1,Γ2∈G2 n+1以及ν,κ∈Fq,满足以下的关系。 
e(ν·Γ1,κ·Γ2)=e(Γ12)ν·κ…(3) 
[非退化性]并非是将所有的 
Γ1∈G1 n+1,Γ2∈G2 n+1…(4) 
映射到循环群GT的单位元的函数。 
[计算可能性]存在关于所有的Γ1∈G1 n+1,Γ2∈G2 n+1有效地计算e(Γ12)的算法。 
在本方式中,利用用于计算将循环群G1和循环群G2的直积G1×G2映射到循环群GT的非退化的双线性映像的函数 
Pair:G1×G2→GT…(5) 
构成双线性函数e。本方式的双线性函数e是对于由循环群G1的n+1个元γL(L=1,...,n+1)组成的n+1维向量(γ1,...,γn+1)和由循环群G2的n+1个元γL *(L=1,...,n+1)组成的n+1维向量(γ1 *,...,γn+1 *)的输入,输出循环群GT的如下一个元的函数。 
e=ΠL=1 n+1Pair(γLL *)…(6) 
另外,双线性函数Pair是将循环群G1的一个元和循环群G2的一个元的组作为输入,输出循环群GT的一个元的函数,满足以下的性质。 
[双线性性]关于所有的Ω1∈G1,Ω2∈G2以及ν,κ∈Fq,满足以下的关系。 
Pair(ν·Ω1,κ·Ω2)=Pair(Ω12)ν·κ…(7) 
[非退化性]并非是将所有的 
Ω1∈G1,Ω2∈G2…(8) 
映射到循环群GT的单位元的函数。 
[计算可能性]存在关于所有的Ω1∈G1,Ω2∈G2有效地计算Pair(Ω12)的算法。 
另外,双线性函数Pair的具体例是用于进行Weil配对或Tate配对等配对运算的函数(例如,参照参考文献4“Alfred.J.Menezes,ELLIPTIC CURVE PUBLIC KEY CRYPTOSYSTEMS,KLUWER ACADEMIC PUBLISHERS,ISBN0-7923-9368-6,pp.61-81”等)。此外,根据椭圆曲线E的种类,也可以将用于进行Tate配对等配对运算的函数和规定的函数phi进行组合后的变更配对函数e(Ω1,phi(Ω2))(Ω1∈G1xΩ2∈G2)作为双线性函数Pair来使用(例如,参照参考文献2等)。此外,作为用于在计算机上进行配对运算的算法,存在众所周知的Miller的算法(参考文献5“V. S.Miller,“Short Programsfor functions on Curves,”1986,互联网<http://crypto.stanford.edu/miller/miller.pdf>”)等。此外,普遍知晓用于有效地进行配对运算的椭圆曲线和循环群的构成方法(例如参照参考文献2、参考文献6“A.Miyaji,M.Nakabayashi,S.Takano,"New explicit conditions of elliptic curve Tracesfor FR-Reduction,"IEICE Trans.Fundamentals,vol.E84-A,no05,pp.1234-1243,May2001”、参考文献7“P.S.L.M.Barreto,B.Lynn,M.Scott,"Constructing elliptic curves with prescribed embedding degrees,"Proc.SCN'2002,LNCS2576,pp.257-267,Springer-Verlag.2003”、参考文献8“R.Dupont,A.Enge,F.Morain,"Building curves with arbitrary small MOV degree over finite prime fields,"http://eprint.iacr.org/2002/094/”等)。 
ai(i=1,...,n+1):表示以循环群G1的n+1个元作为元素的n+1维的基向量。基向量ai的一例是,将κ1·g1∈G1作为第i维的元素,将剩余的n个元素作为循环群G1的单位元(加法上表现为“0”)的n+1维的基向量。这时,若分别列举表现n+1维的基向量ai(i=1,...,n+1)的各个元素,则如下。 
a1=(κ1·g1,0,0,...,0) 
a2=(0,κ1·g1,0,...,0)…(9) 
an+1=(0,0,0,...,κ1·g1
这里,κ1是由加法单位元0F以外的有限域Fq的元组成的常数,κ1∈Fq的 具体例为κ1=1F。基向量ai为正交基,以循环群G1的n+1个元作为元素的所有的n+1维向量,通过n+1维的基向量ai(i=1,...,n+1)的线性和表示。即,n+1维的基向量ai扩展前述的向量空间V。 
ai *(i=1,...,n+1):ai *表示以循环群G2的n+1个元作为元素的n+1维的基向量。基向量ai *的一例是,将κ2·g2∈G2作为第i维的元素,将剩余的n个元素作为循环群G2的单位元(加法上表现为“0”)的n+1维的基向量。这时,若分别列举表现ai *(i=1,...,n+1)的各个元素,则如下。 
a1 *=(κ2·g2,0,0,...,0) 
a2 *=(0,κ2·g2,0,...,0)…(10) 
an+1 *=(0,0,0,..,κ2·g2
这里,κ2是由加法单位元0F以外的有限域Fq的元组成的常数,κ2∈Fq的具体例为κ2=1F。基向量ai *为正交基,以循环群G2的n+1个元作为元素的所有的n+1维向量,通过n+1维的基向量ai *(i=1,...,n+1)的线性和表示。即,n+1维的基向量ai *扩展前述的向量空间V*。 
另外,基向量ai和基向量ai *关于除0F以外的有限域Fq的元τ=κ1·κ2满足以下关系。 
e(ai,aj *)=gT τ·δ(i,j)…(11) 
即,当i=j时,根据式(6)(7)的关系,满足以下关系。 
e(ai,aj *)=Pair(κ1·g12·g2)·Pair(0,0)·...·Pair(0,0) 
=Pair(g1,g2)κ1·κ2·Pair(g1,g2)0·0...·Pair(g1,g2)0·0
=Pair(g1,g2)κ1·κ2=gT τ
另一方面,当i≠j时,e(ai,aj *)不包含Pair(κ1·g12·g2),成为Pair(κ1·g1,0)和Pair(0,κ2·g2)和Pair(0,0)的积。进而,根据式(7)的关系,满足Pair(g1,0)=Pair(0,g2)=Pair(g1,g2)0。因此,当i≠j时,满足以下关系。 
e(ai,aj *)=e(g1,g2)0=gT 0
尤其,当τ=κ1·κ2=1F时(例如,κ12=1F时),满足以下关系。 
e(ai,aj *)=gT δ(i,j)…(12) 
这里,gT 0=1是循环群GT的单位元,gT 1=gT是循环群GT的生成元。这时,基向量ai和基向量ai *是对偶标准正交基,向量空间V和向量空间V*是可构成双线性映像的对偶向量空间[对偶配对向量空间(DPVS:Dual ParingVector  space)]。 
A:A表示以基向量ai(i=1,...,n+1)作为元素的n+1行n+1列的矩阵。例如,在通过式(9)表现基向量ai(i=1,...,n+1)时,矩阵A成为如下。 
[数22] 
A*:A*表示以基向量ai *(i=1,...,n+1)作为元素的n+1行n+1列的矩阵。例如,在通过式(10)表现基向量ai *(i=1,...,n+1)时,矩阵A*成为如下。 
[数23] 
X:X表示将有限域Fq的元作为元素的n+1行n+1列的矩阵。矩阵X用于基向量ai的坐标变换。若将矩阵X的i行i列(i=1,..,n+1,j=1,..,n+1)的元素设为χi,j∈Fq,则矩阵X成为如下。 
[数24] 
另外,将矩阵X的各元素χi,j称为变换系数。 
X*:X*表示矩阵X的逆矩阵的转置矩阵X*=(X-1)T。其中,矩阵X*用于基向量ai *的坐标变换。若将矩阵X*的i行i列的元素设为χi,j *∈Fq,则矩阵X*成为如下。 
[数25] 
另外,将矩阵X*的各元素χi,j *称为变换系数。 
这时,若将n+1行n+1列的单位矩阵设为I则满足X·(X*)T=I。即,对于单位矩阵 
[数26] 
满足下式。 
[数27] 
这里,定义n+1维向量。 
χi =(χi,1,...,χi,n+1)…(19) 
χj →*j,1 *,...,χj,n+1 *)…(20) 
于是,根据式(18)的关系,n+1维向量χi 和χj →*的内积成为如下。 
χi ·χj →*=δ(i,j)…(21) 
bi:bi表示将循环群G1的n+1个元作为元素的n+1维的基向量。基向量bi可通过利用矩阵X对基向量ai(i=1,...,n+1)进行坐标变换而获得。具体地,基向量bi可通过以下运算获得。 
bi=∑j=1 n+1χi,j·aj…(22) 
例如,在通过式(9)表现基向量ai(i=1,..,n+1)时,若分别列举表现基向量bi的各个元素,则如下。 
bi=(χi,1·κ1·g1i,2·κ1·g1,...,χi,n+1·κ1·g1)…(23) 
将循环群G1的n+1个元作为元素的所有的n+1维向量,通过n+1维的基向量bi(i=1,...,n+1)的线性和表示。即,n+1维的基向量bi扩展前述的向量空间V。 
bi *:bi *表示将循环群G2的n+1个元作为元素的n+1维的基向量。可通过利用矩阵X*对基向量ai *(i=1,...,n+1)进行坐标变换而获得。具体地,基向量bi *可通过以下运算获得。 
bi *=∑j=1n+1χi,j *·aj *…(24) 
例如,在通过式(10)表现基向量aj *(j=1,...,n+1)时,若分别列举表现基向量bi *的各个元素,则如下。 
bi *=(χi,1 *·κ2·g2i,2 *·κ2·g2,...,χi,n+1 *·κ2·g2)…(25) 
将循环群G2的n+1个元作为元素的所有的n+1维向量,通过n+1维的基向量bi *(i=1,...,n+1)的线性和表示。即,n+1维的基向量bi *扩展前述的向量空间V*。 
另外,基向量bi和基向量bi *关于除0F以外的有限域Fq的元τ=κ1·κ2满足以下关系。 
e(bi,bj *)=gT τ·δ(i,j)…(26) 
即,根据式(6)(21)(23)(25)的关系,满足下式。 
[数28] 
e ( b i , b j * ) = &Pi; L = 1 n + 1 Pair ( &chi; i , L &CenterDot; &kappa; 1 &CenterDot; g 1 , &chi; j , L * &CenterDot; &kappa; 2 &CenterDot; g 2 )
= Pair ( &chi; i , 1 &CenterDot; &kappa; 1 &CenterDot; g 1 , &chi; j , 1 * &CenterDot; &kappa; 2 &CenterDot; g 2 ) &CenterDot; . . . &CenterDot; ( &chi; i , n &CenterDot; &kappa; 1 &CenterDot; g 1 , &chi; j , n * &CenterDot; &kappa; 2 &CenterDot; g 2 )
&times; Pair ( &chi; j , n + 1 &CenterDot; &kappa; 1 &CenterDot; g 1 , &chi; j , n + 1 * &CenterDot; &kappa; 2 &CenterDot; g 2 )
= Pair ( g 1 , g 2 ) &kappa; 1 &CenterDot; &kappa; 2 &CenterDot; &chi; i , 1 &CenterDot; &chi; j , 1 * &CenterDot; . . . &CenterDot; Pair ( g 1 , g 2 ) &kappa; 1 &CenterDot; &kappa; 2 &CenterDot; &chi; i , 2 &CenterDot; &chi; j , 2 *
&times; Pair ( g 1 , g 2 ) &kappa; 1 &CenterDot; &kappa; 2 &CenterDot; &chi; i , n + 1 &CenterDot; &chi; j , n + 1 *
= Pair ( g 1 , g 2 ) &kappa; 1 &CenterDot; &kappa; 2 ( &chi; i , 1 &CenterDot; &chi; j , 1 * + &chi; i , 2 &CenterDot; &chi; j , 2 * + . . . + &chi; i , n + 1 &CenterDot; &chi; j , n + 1 * )
= Pair ( g 1 , g 2 ) &kappa; 1 &CenterDot; &kappa; 2 &CenterDot; &chi; i &RightArrow; &CenterDot; &chi; j &RightArrow; *
= Pair ( g 1 , g 2 ) &tau; &CenterDot; &delta; ( i , j ) = g T &tau; &CenterDot; &delta; ( i , j )
尤其,在τ=κ1·κ2=1F时(例如,κ12=1F),满足下式。 
e(bi,bj *)=gT δ(i,j)…(27) 
这时,基向量bi和基向量bi *是对偶配对向量空间(向量空间V和向量空间V*)的对偶标准正交基。 
另外,只要满足式(26)的关系,就可以使用由式(9)(10)例示的以外的基向量ai以及ai *、由式(22)(24)例示的以外的基向量bi以及bi *。 
B:B是将基向量bi(i=1,...,n+1)作为元素的n+1行n+1列的矩阵。满足B=X·A。例如,在由式(23)表现基向量bi时,矩阵B成为如下。 
[数29] 
…(28) 
B*:B*是将基向量bi *(i=1,...,n+1)作为元素的n+1行n+1列的矩阵。满足B*=X*·A*。例如,在由式(25)表现基向量bi *(i=1,...,n+1)时,矩阵B*成为如下。 
[数30] 
…(29) 
w:w表示将有限域Fq的元作为元素的n维向量。 
w=(w1,...,wn)∈Fq n…(30) 
wμ:wμ表示n维向量的第μ(μ=1,..,n)个元素。 
v:v表示将有限域Fq的元作为元素的n维向量。 
v=(v1,..,vn)∈Fq n…(31) 
vμ:vμ表示n维向量的第μ(μ=1,...,n)个元素。 
冲突困难的函数:“冲突困难的函数”是指对于充分大的安全参数k满足以下条件的函数h,或者表示视作它的函数。 
Pr[A(h)=(x,y)|h(x)=h(y)∧x≠y]<ε(k)…(32) 
其中,Pr[·]是事件[·]的概率,A(h)是用于计算对于函数h满足h(x)=h(y)的值x,y(x≠y)的概率性多项式时间算法,ε(k)是关于安全参数k的多项式。冲突困难的函数的例子是在参考文献1中公开的“cryptographic hash function”等的hash函数。 
单射函数:“单射函数”是指属于值域的每个元都作为其定义域的唯一元的像来表示的函数,或者表示视作它的函数。单射函数的例子是在参考文献1中公开的“KDF(Key Derivation Function)”等的hash函数。 
虚拟的随机函数:“虚拟的随机函数”是指任意的概率性多项式时间算法无法区分集合Φζ和其子集的情况下的、属于该子集的函数,或者表示视作它的函数。其中,集合Φζ是将集合{0,1}ζ的元映射到集合{0,1}ζ的元的所有函数的集合。虚拟的随机函数的例子是上述那样的hash函数。 
H1:H1表示将两个二进制序列(ω12)∈{0,1}k×{0,1}*作为输入,输出有限域Fq的两个元(ψ12)∈Fq×Fq的冲突困难的函数。 
H1:{0,1}k×{0,1}*→Fq×Fq…(33) 
这样的函数H1的例子是,将ω1和ω2的比特连接值ω1||ω2作为输入,进行参考文献1中公开的“cryptographic hash function”等的hash函数、“从二进制序列到整数的变换函数(Octet string/integer conversion)”、“从二进制序列到有限域的元的变换函数(Octet string and integer/finite field conversion)”的运算,输出有限域Fq的两个元(ψ12)∈Fq×Fq的函数。另外,希望函数H1为虚拟的随机函数。 
H2:H2表示将循环群GT的元和二进制序列(ξ,ω2)∈GT×{0,1}*作为输入,输出有限域Fq的一个元ψ∈Fq的冲突困难的函数。 
H2:GT×{0,1}*→Fq…(34) 
这样的函数H2的例子是,将循环群GT的元ξ∈GT和二进制序列ω2∈{0,1}*作为输入,将循环群GT的元ξ∈GT输入到参考文献1中公开的“从有限域的元到二进制序列的变换函数(Octet string and integer/finite fieldconversion)”从而求二进制序列,并对该二进制序列和二进制序列ω2∈{0,1}*的比特连接值进行在参考文献1中公开的“cryptographic hash function”等的hash函数运算,进而进行“从二进制序列到有限域的元的变换函数(Octet stringand integer/finite field conversion)”的运算,输出有限域Fq的一个元ψ∈Fq的函数。另外,从安全性的观点出发,更希望函数H2为虚拟的随机函数。 
R:R表示将一个循环群GT的元ξ∈GT作为输入,输出一个二进制序列ω∈{0,1}k的单射函数。 
R:GT→{0,1}k…(35) 
这样的单射函数R的例子是,将循环群GT的元ξ∈GT作为输入,进行在 参考文献1中公开的“从有限域的元到二进制序列的变换函数(Octet string and integer/finite field conversion)”、参考文献1中公开的“KDF(Key Derivation Function)”等的hash函数的运算,输出一个二进制序列ω∈{0,1}k的函数。另外,从安全性的观点出发,希望函数R为冲突困难的函数,更希望是虚拟的随机函数。 
Enc:Enc表示示出公共密钥密码方式的加密处理的公共密钥密码函数。公共密钥密码方式的具体例为Camellia(注册商标)、AES等。 
EncK(M):EncK(M)表示利用公共密钥K按照公共密钥密码函数Enc对明文M进行加密所获得的密码文。 
Dec:Dec表示示出公共密钥密码方式的解密处理的公共密钥解密函数。 
DecK(C):DecK(C)表示利用公共密钥K按照公共密钥解密函数Dec对密码文C进行解密所获得的解密结果。 
[内积谓语密码] 
下面,说明内积谓语密码的基本结构。 
<谓语密码> 
谓语密码(有时也称为“函数密码”)是指,当被称为“属性信息”的信息和被称为“谓语信息”的信息的组合使规定的逻辑式成为“真”的情况下能够对密码文进行解密的方式。“属性信息”和“谓语信息”的一方被嵌入密码文,另一方被嵌入密钥信息。以往的谓语密码的结构例如在参考文献9“"Predicate Encryption Supporting Disjunctions,Polynomial Equations,and Inner Products,"with Amit Sahai and Brent Waters One of4papers from Eurocrypt2008invited to the Journal of Cryptology”等中公开。 
<内积谓语密码> 
内积谓语密码是,作为属性信息和谓语信息而利用向量,在它们的内积成为0的情况下密码文被解密的谓语密码。在内积谓语密码中,内积成为0与逻辑式成为“真”等价。 
[逻辑式和多项式的关系] 
在内积谓语密码中,通过多项式来表现由“或”和“与”组成的逻辑式。 
首先,通过以下多项式表现“x是η1”的命题1和“x是η2”的命题2的“或”(x=η1)∨(x=η2)。 
(x-η1)·(x-η2)…(36) 
于是,各真值和式(36)的函数值的关系成为如下。 
[表1] 
根据[表1]可知,当“或”(x=η1)∨(x=η2)为真时,式(36)的函数值成为0,当“或”(x=η1)∨(x=η2)为假时,式(36)的函数值成为0以外的值。即,“或”(x=η1)∨(x=η2)为真等价于式(36)的函数值成为0。因此,“或”能够通过式(36)表现。 
此外,通过以下多项式表现“x是η1”的命题1和“x是η2”的命题2的“与”(x=η1)∧(x=η2)。 
ι1·(x-η1)+ι2·(x-η2)…(37) 
其中,ι1以及ι2是随机数。于是,真值和式(37)的函数值成为以下关系。 
[表2] 
根据[表2]可知,当“与”(x=η1)∧(x=η2)为真时,式(37)的函数值成为0,当“与”(x=η1)∧(x=η2)为假时,式(37)的函数值成为0以外的值。即,“与”(x=η1)∧(x=η2)为真等价于式(37)的函数值成为0。因此,“与”能够通过式(37)表现。 
如上所述,通过利用式(36)和式(37),能够采用多项式f(x)来表现由“或”和“与”组成的逻辑式。例如,逻辑式{(x=η1)∨(x=η2)∨(x=η3)}∧(x=η4)∧(x=η5),能够通过以下多项式来表现。 
f(x)=ι1·{(x-η1)·(x-η2)·(x-η3)}+ι2·(x-η4)+ι3·(x-η5)…(38) 
另外,在式(36)中,利用一个不定元x表现了“或”,但也可以利用多个不定元来表现“或”。例如,也可以利用两个不定元x0以及x1,通过如下的多项式来表现“x0是η0”的命题1和“x1是η1”的命题2的“或”(x00)∨(x11), 
(x00)·(x11
也可以利用3个以上的不定元以多项式来表现“或”。 
此外,在式(37)中,利用一个不定元x表现了“与”,但也可以利用多个不定元来表现“与”。例如,也可以利用如下的多项式来表现“x0是η0”的命题1和“x1是η1”的命题2的“与”(x00)∧(x11), 
ι0·(x00)+ι1·(x11
也可以利用3个以上的不定元以多项式来表现“与”。 
将包含“或”和/或“与”的逻辑式利用H(H≥1)种不定元x0,...,xH-1来表现的多项式表现为f(x0,...,xH-1)。此外,将与各不定元x0,...,xH-1对应的命题设为“xh为ηh”。其中,ηh(h=0,...H-1)是对每个命题决定的常数。这时,表示相应逻辑式的多项式f(x0,...,xH-1),通过取不定元xh和常数ηh之差的多项式来表现该不定元xh是常数ηh的命题,通过分别表现命题的多项式的积来表现该命题的“或”,通过分别表现命题或者命题的“或”的多项式的线性和来表现该命题或者命题的“或”的“与”,由此成为表现了逻辑式的多项式。例如,若利用5个不定元x0,...,x4将逻辑式{(x00)∨(x1=η1)∨(x22)}∧(x33)∧(x44)以多项式进行表现,则成为如下。 
f(x0,...,x4)=ι0·{(x00)·(x11)·(x22)}+ι1·(x3=-η3)+ι2·(x4=-η4
[多项式和内积的关系] 
表示逻辑式的多项式f(x0,...,xH-1)能够通过两个n维向量的内积来表现。即,多项式f(x0,...,xH-1)等于以该多项式f(x0,...,xH-1)的各项的不定元分量作为各个元素的向量 
v=(v1,...,vn
和以该多项式f(x0,...,xH-1)的各项的系数分量作为各个元素的向量 
w=(w1,...,wn
的内积。 
f(x0,...,xH-1)=w·v
即,表示逻辑式的多项式f(x0,...,xH-1)是否等于0,等价于以多项式f(x0,...,xH-1)的各项的不定元分量作为各个元素的向量v和以多项式f(x0,...,xH-1)的各项的系数分量作为各个元素的向量w的内积是否等于0。 
f(x0,...,xH-1)=0←→w·v=0 
例如,由一个不定元x表现的多项式f(x)=θ0·x01·x+...+θn-1·xn-1,能够通过两个n维向量 
w=(w1,..,wn)=(θ0,,θn-1)…(39) 
v=(v1,..,vn)=(x0,..,xn-1)…(40) 
的内积 
f(x)=w·v…(41) 
来表现。即,表示逻辑式的多项式f(x)是否等于0,等价于式(40)的内积是否等于0。 
f(x)=0←→w·v=0…(42) 
此外,即使将以多项式f(x0,...,xH-1)的各项的不定元分量作为各个元素的向量设为 
w=(w1,...,wn
将以多项式f(x0,...,x H-1)的各项的系数分量作为各个元素的向量设为 
v=(v1,...,vn
表示逻辑式的多项式f(x0,...,xH-1)是否等于0,也等价于向量w和向量v的内积是否等于0。 
例如,即使代替式(39)(40)而设为 
w=(w1,...,wn)=(x0,...,xn)…(43) 
v=(v1,...,vn)=(θ0,..,θn-1)…(44) 
表示逻辑式的多项式f(x)是否等于0,也等价于式(41)的内积是否等于0。 
在内积谓语密码中,将向量v=(v1,...,vn)以及w=(w1,...,wn)的其中一方作为属性信息,将另一方作为谓语信息,属性信息和谓语信息的一方被嵌入密码文,另一方被嵌入密钥信息。例如,n维向量(θ0,,θn-1)被设为谓语信息,n维向量(x0,...,xn-1)被设为属性信息,属性信息和谓语信息的一方被嵌入密码文,另一方被嵌入密钥信息。另外,在以下,将嵌入到密钥信息的n维向量设为w=(w1,...,wn),将嵌入到密码文的n维向量设为v=(v1,...,vn)。例如, 
谓语信息:w=(w1,...,wn)=(θ0,,θn-1
属性信息:v=(v1,...,vn)=(x0,...,xn-1
或者如下。 
谓语信息:v=(v1,...,vn)=(θ0,...,θn-1
属性信息:w=(w1,...,wn)=(x0,...,xn-1
[内积谓语密码的基本结构] 
以下,例示在利用内积谓语密码构成密钥封装机构KEM(Key Encapsulation Mechanisms)的情况下的基本结构。该结构包含Setup(1k)、GenKey(M SK,w)、Enc(PA,v)、Dec(SKw,C2)。 
《Setup(1k):设置》 
-输入:安全参数k 
-输出:主密钥信息MSK、公开参数PK 
在Setup(1k)的一例中,首先,将安全参数k作为n,选择以n+1维的基向量ai(i=1,...,n+1)作为元素的n+1行n+1列的矩阵A、以基向量ai *(i=1,...,n+1)作为元素的n+1行n+1列的矩阵A*、用于坐标变换的n+1行n+1列的矩阵X,X*。接着,计算按照式(22)进行了坐标变换的n+1维的基向量bi(i=1,...,n+1),计算按照式(24)进行了坐标变换的n+1维的基向量bi *(i=1,..,n+1)。然后,以基向量bi *(i=1,...,n+1)作为元素n+1行n+1列的矩阵B*作为主密钥信息MSK被输出,向量空间V,V*、以基向量bi(i=1,...,n+1)作为元素n+1行n+1列的矩阵B、安全参数k、有限域Fq、椭圆曲线E、循环群G1,G2,GT、生成元g1,g2,gT、双线性函数e等作为公开参数PK被输出。 
《GenKey(MSK,w):密钥信息生成》 
-输入:主密钥信息MSK、向量w
-输出:与向量w对应的密钥信息D*
在GenKey(MSK,w)的一例中,首先,从有限域Fq选择α∈Fq。然后,利用作为主密钥信息MSK的矩阵B*,生成并输出与向量w对应的密钥信息。 
D*=α·(Σμ=1 nwμ·bμ *)+bn+1 *∈G2 n+1…(45) 
另外,在循环群G2上的离散对数问题的求解困难的情况下,难以从密钥信息D*分离提取wμ·bμ *和bn+1 *的分量。 
《Enc(PA,v):加密》 
-输入:公开参数PK、向量v
-输出:密码文C2、公共密钥K 
在Enc(PA,v)的一例中,首先,生成公共密钥K和作为有限域Fq的元的随机数υ1。然后,利用矩阵B等的公开参数PK、与包含公共密钥K的值对 应的有限域Fq的元υ2、向量v、随机数υ1,生成密码文。 
C21·(Σμ=1 nvμ·bμ)+υ2·bn+1∈G1 n+1…(46) 
然后,输出密码文C2和公共密钥K。公共密钥K的一例是K=gT τ·υ2∈GT。这里,上标的υ2表示υ2。此外,如前述那样τ的一例是τ=1F。另外,在循环群G1上的离散对数问题的求解困难的情况下,难以从密码文C2分离提取vμ·bμ和υ2·bn+1的分量。 
《Dec(SKw,C2):解密和密钥共享》 
-输入:与向量w对应的密钥信息D1 *、密码文C2
-输出:公共密钥K 
在Dec(SKw,C2)的一例中,首先,密码文C2和密钥信息D1 *被输入到式(2)的双线性函数e。那么,根据式(3)(26)的性质,满足下式。 
[数31] 
e ( C 2 , D * ) = e ( &upsi; 1 &CenterDot; ( &Sigma; &mu; = 1 n v &mu; &CenterDot; b &mu; ) + &upsi; 2 &CenterDot; b n + 1 , &alpha; &CenterDot; ( &Sigma; &mu; = 1 n w &mu; &CenterDot; b &mu; * ) + b n + 1 * )
= e ( &upsi; 1 &CenterDot; v 1 &CenterDot; b 1 , &alpha; &CenterDot; w 1 &CenterDot; b 1 * ) &CenterDot; . . . &CenterDot; e ( &upsi; 1 &CenterDot; v n &CenterDot; b n , &alpha; &CenterDot; w n &CenterDot; b n * )
&times; e ( &upsi; 2 &CenterDot; b n + 1 , b n + 1 * ) …(47) 
= e ( b 1 , b 1 * ) &upsi; 1 &CenterDot; v 1 &CenterDot; &alpha; &CenterDot; w 1 &CenterDot; . . . &CenterDot; e ( b n , b n * ) &upsi; 1 &CenterDot; v n &CenterDot; &alpha; &CenterDot; w n &CenterDot; e ( b n + 1 , b n + 1 * ) &upsi; 2
= g T &tau; &CenterDot; &upsi; 1 &CenterDot; v 1 &CenterDot; &alpha; &CenterDot; w 1 &CenterDot; . . . &CenterDot; g T &tau; &CenterDot; &upsi; 1 &CenterDot; v n &CenterDot; &alpha; &CenterDot; w n &CenterDot; g T &tau; &CenterDot; &upsi; 2
= g T &tau; &CenterDot; &upsi; 1 &CenterDot; &alpha; &CenterDot; v &RightArrow; &CenterDot; w &RightArrow; &CenterDot; g T &tau; &CenterDot; &upsi; 2
这里,如果内积为,则式(47)可变形如下。 
[数32] 
e ( C 2 , D * ) = g T &tau; &CenterDot; &upsi; 1 &CenterDot; &alpha; &CenterDot; 0 &CenterDot; g T &tau; &CenterDot; &upsi; 2 …(48) 
= g T &tau; &CenterDot; &upsi; 2
根据该结果生成并输出公共密钥K。公共密钥K的一例是K=gT τ·υ2∈GT。 
这里示出了利用n+1维的基向量来构成算法的例子,但维数不限于n+1,也可以将设为2以上的规定的整数从而利用维的基向量来构成算法。这时,例如可以代替式(45)利用式(49),代替式(46)利用式(50)。这里,υι是常数或变量(随机数等)等。 
D * &alpha; &CenterDot; ( &Sigma; &mu; = 1 n w &mu; &CenterDot; b &mu; * ) + &Sigma; &iota; = n + 1 n + &Xi; &upsi; &iota; &CenterDot; b &iota; * &Element; G 2 n + &Xi; . . . ( 49 )
C 2 = &upsi; 1 &CenterDot; ( &Sigma; &mu; = 1 n v &mu; &CenterDot; b &mu; ) + &Sigma; &iota; = 2 &Xi; + 1 &upsi; &iota; &CenterDot; b &iota; + n - 1 &Element; G 1 n + &Xi; . . . ( 50 )
另外,式(45)也可以如下式。 
D*=α·(Σμ=1 nwμ·bμ *)+υn+1·bn+1 *∈G2 n+1
进而,也可以交换输入信息、即在式(45)中将w置换为v并且在式(46)中将v置换为w。 
下面,从第1观点出发,说明能够灵活运用的、依据函数密码(作为函数密码的一例而采用谓语密码)的密码通信技术相关的实施方式。另外,算术式的编号在本节中重新附加。 
[第1观点的第1实施方式] 
参照图1至图17说明第1观点的本发明的第1实施方式。 
如图1所示,密码系统1包含有多个客户机装置10、30、一个或者多个密钥生成装置20、一个或者多个用户信息管理装置40(以下,称为管理装置)、变换规则信息对管理装置50(以下,称为注册装置)、一个或者多个保全装置80、一个或者多个认证装置90。这些各个装置例如经由作为互联网的通信网5可相互通信。 
客户机装置根据处理目的,作为加密装置或者解密装置发挥作用。因此,从功能的观点出发,将客户机装置称为加密装置10或者解密装置30。此外,密码系统1也可以包含仅作为加密装置发挥作用的客户机装置和/或仅作为解密装置发挥作用的客户机装置。 
在密码系统1中进行利用了谓语密码的加密和解密。在第1观点的本发明中,使用的谓语密码算法没有限定,例如允许使用在上述非专利文献2中公开的谓语密码算法。在第1观点的第1实施方式中,示出利用了KEM(Key Encapsulation Mechanisms)类型的谓语密码算法的例子。 
参照图2、3、4、6、8、10叙述密码系统1中的密码通信方法。关于各装置的功能结构,请参照图5、7、9。 
《准备程序》 
密钥生成装置20的参数生成部(未图示)生成在谓语密码算法中使用的秘密密钥和条目(entry)(步骤S1)。条目中包含在谓语密码算法中使用的公开参数(在图中概略记载为公开P)、密钥生成装置20的地址、密钥生成装置20能够使用的政策列表、密钥生成装置20能够使用的方案(schema)列表。 
公开参数例如包含位数q的循环群G1,G2,GT的生成元g1,g2,gT、具有非退化性的双线性映像e:G1×G2→GT(其中,e(g1,g2)=gT)、位数q、(n+1)维的向量空间V的正交基B。秘密密钥包含对偶向量空间V*的正交 基B*。在将代数构造设为有限域Fq的情况下,q是素数或者素数的取幂值。双线性映像e例如是Tate配对或Weil配对。 
对正交基B以及正交基B*进行说明。设为(n+1)维的向量空间V的任意元如式(1)那样作为循环群G1的(n+1)维直积G1 n+1的元来表示。(n+1)维的向量空间V的任意元可以利用(n+1)维的向量空间V的标准基A如式(2)那样表示。其中,ai设为(n+1)维直积G1 n+1的元,zi设为(n+1)维直积Fq n+1的元。此外,1设为加法单位元。 
[数33] 
V : ( g 1 z 1 , . . . , g 1 z n + 1 ) &Element; G 1 n + 1 - - - ( 1 )
V : z 1 a 1 + . . . + z n + 1 a n + 1 - - - ( 2 )
z i &Element; F q n + 1
正交基B可以如式(3)那样,作为对标准基A作用(n+1)次正方矩阵X的结果而获得。符号T表示转置。另外,矩阵X与秘密密钥同样地被设为秘密。 
[数34] 
B=X·A   (3) 
B=T(b1,…,bn+1
X=T(x1,…,xL+1)=(χij)(n+1)×(n+1),χij∈FQ
xi=(χi1,…,χi(n+1)
b i = &Sigma; j = 1 n + 1 &chi; ij a j = ( g 1 x i 1 , . . . , g 1 x i ( n + 1 ) )
同样地,设为与向量空间V对偶的对偶向量空间V*的任意元如式(4)那样作为循环群G2的(n+1)维直积G2 n+1的元来表示。对偶向量空间V*的任意元还可以利用对偶向量空间V*的标准基A*如式(5)那样表示。其中,ai *设为(n+1)维直积G2 n+1的元,yi *设为(n+1)维直积Fq n+1的元。此外,1设为加法单位元。 
[数35] 
V * : ( g 2 y 1 , . . . , g 2 y n + 1 ) &Element; G 2 n + 1 - - - ( 4 )
V * : y 1 a 1 * + . . . + y n + 1 a n + 1 * - - - ( 5 )
y i &Element; F q n + 1
正交基B*可以如式(6)那样,作为对标准基A*作用(n+1)次正方矩阵 T(X-1)的结果而获得。符号E表示单位矩阵。 
[数36] 
B*T(X-1)·A*     (6) 
B * = T ( b 1 * , . . . , b n + 1 * )
b i * = ( g 2 x i 1 * , . . . , g 2 x i ( n + 1 ) * )
T(X*)=E,X*T(X-1
下面,说明方案(schema)列表。将规定了用于将指定属性的信息(属性指定信息;即,具体唯一地确定例如姓名、出生年月日等属性的信息,也称为属性值)变换为谓语密码算法所使用的属性信息的变换规则的信息(属性用变换规则信息;也成为属性用方案)、与规定了将指定谓语(逻辑式)的信息(谓语(逻辑式)指定信息;即,通过逻辑式等具体设定例如年龄、权限等属性相关的条件的信息,也称为命题函数)变换为该谓语密码算法所使用的谓语信息(逻辑信息)的变换规则的信息(谓语(逻辑式)用变换规则信息;也称为谓语(逻辑式)用方案)的对即变换规则信息对称为方案对(参照图11-图13)。一个或者多个方案对的集合体(数据列表)为方案列表。各个密钥生成装置20可以自由规定方案列表。方案列表所包含的各个方案的各个数据项目例如通过XML(eXtensible Markup Language)、ASN.1(Abstract Notation Number One)来记述。 
对图12所示的属性用方案的例子进行说明。用户的属性指定信息(属性值)与属性名以及数据型相关联。在图12所示的例子中,例如在属性名‘email1’中设定了数据型‘字符串’,属性名‘email1’以及数据型‘字符 串’与属性值‘XXXXXX.ntt.co.jp’相关联。 
属性用方案规定了对元素号码关联了属性名以及型变换函数的变换规则。在图12所示的例子中,例如在元素号码‘1’上关联了属性名‘血型’和型变换函数。与元素号码‘1’对应的型变换函数规定了如果属性值的血型为O型则变换为0,如果属性值的血型为A型则变换为1,如果属性值的血型为B型则变换为2,如果属性值的血型为AB型则变换为3。此外,在元素号码‘2’以及‘3’上关联了属性名‘出生年月日’和型变换函数。与元素号码‘2’以及‘3’对应的型变换函数规定了对于元素号码2变换为以属性值的出生年月日的年作为输入的Hash函数的值,对于元素号码3变换为以属性值的出生年月日的月日作为输入的Hash函数的值。 
对图12所示的用户的属性指定信息(属性值)的例子应用了图12所示的属性用方案的例子的结果,作为图12所示的属性信息(向量信息)的例子而示出。通过将属性用方案的元素号码视为向量的元素号码而排列型变换函数的输出值,从而能够将该属性信息想成向量。另外,一般,根据函数密码,在加密时能够指定多个属性信息。例如,通过将属性用方案应用到多个属性指定信息,从而能够获得多个属性信息。或者,也可以通过将多个属性用方案应用到一个属性指定信息,从而获得多个属性信息。 
另外,型变换函数的输出值在该说明中作为整数值或Hash函数的输出值而被例示,但实际上依据谓语密码算法,例如是有限域Fq的元。 
对图13所示的谓语用方案的例子进行说明。作为谓语指定信息而提供表示属性相关的条件的逻辑式。在图13所示的例子中,例如提供了将属性名‘姓名’的属性值设为‘田中太郎’,将属性名‘年龄’的属性值设为‘20岁以上’的谓语指定信息‘姓名=田中太郎并且年龄=20岁以上’。 
谓语用方案规定了对元素号码关联了属性名和型变换函数的变换规则。在图13所示的例子中,例如在元素号码‘1’上关联了属性名‘血型’和型变换函数。与元素号码‘1’对应的型变换函数规定了如果属性值的血型为O型则变换为0,如果属性值的血型为A型则变换为1,如果属性值的血型为B型则变换为2,如果属性值的血型为AB型则变换为3。此外,在元素号码‘2’以及‘3’上关联了属性名‘出生年月日’和型变换函数。与元素号码‘2’以及‘3’对应的型变换函数规定了对于元素号码2变换为以属性值的出生年月日的年作为输入的Hash函数的值,对于元素号码3变换为以属性值的出生 年月日的月日作为输入的Hash函数的值。 
对图13所示的谓语指定信息的例子应用了图13所示的谓语用方案的例子的结果,作为图13所示的谓语信息(向量信息)的例子而示出。具体地,在该例子中,通过将谓语用方案应用到谓语指定信息从而可获得具有与元素号码相应的变量的多变量多项式f,通过将该多变量多项式f变换为向量信息,从而可获得谓语信息(向量信息)。根据图13所示的谓语指定信息的例子进行说明。通过对谓语指定信息‘姓名=田中太郎并且年龄=20岁以上’应用谓语用方案,从而可获得对应于元素号码‘0’的型变换函数的输出值‘Hash(田中太郎)’以及对应于元素号码‘23’的型变换函数的输出值‘1’。然后,通过以对应于元素号码‘0’的型变换函数的输出值作为零点的对应于元素号码‘0’的变量X0的1次式、与以对应于元素号码‘23’的型变换函数的输出值‘1’作为零点的对应于元素号码‘23’的变量X23的1次式的线性结合,可获得多变量多项式f=r1(X0-H(田中太郎))+r2(X23-1)。这里,r1和r2是随机数。进而,展开该多变量多项式f并排列各项的系数,从而多变量多项式f变换为向量信息,可获得图13所示的谓语信息(向量信息)。另外,一般,根据函数密码,在加密时能够指定多个谓语信息。例如,通过将谓语用方案应用到多个谓语指定信息,从而能够获得多个谓语信息。或者,也可以通过将多个谓语用方案应用到一个谓语指定信息,从而获得多个谓语信息。 
另外,型变换函数的输出值在该说明中作为整数值或Hash函数的输出值进行了例示,但实际上依据谓语密码算法,例如是有限域Fq的元。 
此外,在构成方案对的两个方案之间,要求属性名和型变换函数的组合、成为输入的属性值的数据型等统一。 
下面参照图14说明政策列表。将用于确定是属性用方案和谓语用方案中的哪一个的信息称为政策信息(以下,称为政策)。记述了该政策的数据列表为政策列表。密钥生成装置20在使用属性用方案和谓语用方案的双方的情况下,作为政策而准备两种类型。那是Cipher_Text_Policy(密码文政策)和Key_Policy(密钥政策)。在密钥生成装置20仅使用属性用方案的情况下,作为政策而准备一种类型。那是Key_Policy。在密钥生成装置20仅使用谓语用方案的情况下,作为政策而准备一种类型。那是Cipher_Text_Policy。政策例如通过XML(eXtensible Markup Language)、ASN.1(Abstract Notation Number One)记述。密钥生成装置20可以自由地决定政策的确定对象为只有 属性用方案,或者,只有谓语用方案,或者,属性用方案以及谓语用方案。一般,根据函数密码,如上所述那样,通过将多个不同的属性用方案应用到一个属性指定信息,从而能够获得多个属性信息,因此在这样的情况下,作为政策而预先指定多个属性用方案。通过将多个不同的谓语用方案应用到一个谓语指定信息,从而能够获得多个谓语信息,因此在这样的情况下,作为政策而预先指定多个谓语用方案。 
接着步骤S1的处理,密钥生成装置20的发送部将条目发送到认证装置90,认证装置90的接收部接收条目(步骤S2)。认证装置90的署名附加部(未图示)例如以以往的方法对条目附加电子署名(步骤S3),认证装置90的发送部将附带署名条目发送到密钥生成装置20,密钥生成装置20的接收部接收附带署名条目(步骤S4)。然后,密钥生成装置20的发送部将附带署名条目发送到保全装置80,保全装置80的接收部接收附带署名条目(步骤S5)。 
保全装置80的发送部将包含用于确定密钥生成装置20的信息(例如地址)的检索查询(query)发送到注册装置50,注册装置50的接收部接收检索查询(步骤S6)。注册装置50的检索部(未图示)检索密钥生成装置20相关的注册内容(条目)(步骤S7),注册装置50的发送部将包含注册的有无和注册内容的检索结果发送到保全装置80,保全装置80的接收部接收检索结果(步骤S8)。 
保全装置80的检查部(未图示)比较在步骤S5的处理中接收的附带署名条目和在步骤S8的处理中接收的检索结果,检查重复的有无(步骤S9)。在能够确认没有重复时,保全装置80的发送部将附带署名条目发送到注册装置50,注册装置50的接收部接收附带署名条目(步骤S10)。注册装置50的注册部(未图示)将附带署名条目与密钥生成装置20关联地存储到注册装置50的存储部(步骤S11)。注册装置50的发送部将注册结果发送到保全装置80,保全装置的接收部接收注册结果(步骤S12)。保全装置80的发送部将注册结果发送到密钥生成装置20,密钥生成装置20接收注册结果(步骤S13)。 
当存在多个密钥生成装置20时,各密钥生成装置20独自进行从步骤S1到步骤S13的各个处理。例如,按照密钥生成装置规定公开参数和秘密密钥。但是,这并非是用于防止各个密钥生成装置具有公共的公开参数和秘密密钥。此外,各个密钥生成装置可以将条目注册到相同的注册装置50,各个密钥生 成装置也可以将条目注册到不同的注册装置50。 
在预先设定了秘密密钥、条目、对注册装置50的条目注册等时,允许省略从步骤S1到步骤S13的各个处理。 
此外,认证装置90和保全装置80也可以是相同的硬件实体。另外,在对条目注册不要求认证的情况、注册装置50所注册的条目的唯一性被确保的情况等,还许可密码系统1不具备保全装置80和/或认证装置90的系统结构。 
《准备程序》就此结束。 
《加密程序》 
加密装置10的发送部14接受未图示的控制部的控制,将检索查询发送到注册装置50,注册装置50的接收部接收检索查询(步骤S14)。注册装置50的检索部检索注册装置50的存储部所存储的条目的一部分或者全部从而选择任意一个条目(步骤S15),注册装置50的发送部将检索结果的条目发送到加密装置10,加密装置10的接收部接收条目(步骤S16)。该条目中包含有密钥生成装置的地址、该密钥生成装置的公开参数、该密钥生成装置可使用的政策列表、该密钥生成装置可使用的方案列表。接收到的条目被存储到加密装置10的存储器11。 
另外,当加密装置10预先持有各个密钥生成装置20的公开参数、方案列表、政策列表、地址的情况下,省略步骤S14-S16的处理。即,必须注意密码系统1不包含注册装置50的方式也被允许。 
加密装置10的第1谓语逻辑信息取得部12从存储器11读取输入信息和政策和方案,求属性信息(以下,称为第1属性信息)或者谓语信息(以下,称为第1谓语信息)(步骤S17)。对该处理的细节进行说明(参照图12、图13)。 
首先,在方案列表中记述了多个方案对的情况下,根据用途等选择一个方案对。可以是由加密装置10的用户选择方案对并输入其指示信息的情况,也可以按照规定的规则由第1谓语逻辑信息取得部12选择方案对。 
然后,根据输入信息是属性指定信息或者谓语指定信息的哪一个,与政策一起选择其中一方的方案。可以是由加密装置10的用户选择政策和其中一方的方案并输入其指示信息的情况,也可以是按照规定的规则由第1谓语逻辑信息取得部12选择政策和其中一方的方案的情况。另外,当密钥生成装置20的政策仅准备了一种类型的情况下,按照该政策选择方案对中的一个方案。 假如,在所选择的方案与输入信息的种类不对应的情况下,从方案列表再次选择方案对,或者从注册装置50再次接受条目的提供即可。 
输入信息也可以是由加密装置10的用户输入的信息或者由加密装置10的取得部(未图示)从例如IC卡39那样的存储介质取得的信息。 
然后,第1谓语逻辑信息取得部12利用按照政策从方案对中选择的方案,从输入信息获得第1属性信息或者第1谓语信息。当政策为Key_Policy且选择的方案为属性用方案的情况下可获得第1属性信息。当政策为Cipher_Text_Policy且选择的方案为谓语用方案的情况下可获得第1谓语信息。在第1观点的第1实施方式中,第1属性信息和第1谓语信息被设为以有限域Fq的元作为分量的一个或者多个向量信息(参照图11-13)。这时,利用方案从输入信息提取必要的属性值并进行排列。 
接着,加密装置10的加密部13利用第1属性信息v=(v1,...,vn)或者第1谓语信息w=(w1,...,wn)、来自存储器11的公开参数所包含的正交基B(实质性的公开密钥)和明文M,求公开密钥K和密码信息C1和密码文C2(步骤S17b、S17c)。关于这些处理的细节进行说明。其中,当第1观点的第1实施方式为专用于公共密钥K的发布的实施方式的情况下不需要生成密码文C2。 
首先,第1加密部13a根据谓语密码算法,生成作为有限域Fq的元的随机数r、ρ,如式(7)那样设定公共密钥K,并按照式(8)求密码信息C1(步骤S17b)。H例如是hash函数。在该例子中使用第1属性信息v,但在使用第1谓语信息的情况下在式(8)中将v替换为w即可。此外,在该例子中,密码信息C1是与用于生成公共密钥K的信息ρ对应的信息,但也可以将密码信息C1设为与公共密钥K对应的信息。 
[数37] 
K=H(gT ρ)   (7) 
C 1 = r &Sigma; i = 1 n v i b i + &rho; b n + 1 - - - ( 8 )
接着,第2加密部13b利用公开密钥K和明文M,按照式(9)求密码文C2(步骤S17c)。利用了公共密钥的加密方法EncK可以是众所周知的方法,例如是在上述非专利文献1中公开的方法。如前所述,当第1观点的第1实施方式为专用于公共密钥K的发布的实施方式的情况下,省略步骤S17c的处理。即,加密装置10即使具有第2加密部13b的功能也不进行步骤S17c 的处理。 
[数38] 
C2=EncK(M)   (9) 
接着,加密装置10的发送部14接受控制部的控制,生成聚集了密码信息C1、(根据需要)密码文C2、来自存储器11的方案对、政策、公开参数、密钥生成装置的地址的密码消息(步骤S17d)。然后,加密装置10的发送部14将密码消息发送到解密装置30,解密装置30的接收部接收密码消息(步骤S18)。 
《加密程序》到此结束。 
《解密程序》 
解密装置30的发送部34接受未图示的控制部的控制,将包含密码消息所包含的密钥生成装置的地址的检索查询发送到注册装置50,注册装置50的接收部接收检索查询(步骤S19)。注册装置50的检索部检索由地址所指定的密钥生成装置的条目并选择它(步骤S20),注册装置50的发送部将检索结果的条目发送到解密装置30,解密装置30的接收部接收条目(步骤S21)。该条目中包含有密钥生成装置的地址、该密钥生成装置的公开参数、该密钥生成装置可使用的政策、该密钥生成装置可使用的方案列表。接收到的条目被存储到解密装置30的存储器31。 
另外,当解密装置30预先持有各个密钥生成装置20的公开参数、方案列表、政策列表、地址的情况下,省略步骤S19-S21的处理。这时,解密装置30从自身的存储器31中检索与密码消息所包含的地址对应的密钥生成装置的条目并取得它。 
解密装置30的验证部(未图示)接受控制部的控制,验证密码消息所包含的方案对和政策是否包含在从注册装置50取得的条目所包含的政策列表和方案列表中(步骤S22a)。在该验证失败的情况下,作为解密处理失败而结束处理(步骤S22g)。 
在该验证成功的情况下,解密装置30的取得部32从例如IC卡39那样的存储介质读取与该解密装置30的用户对应的属性指定信息或者谓语指定信息(步骤S22f)。读取属性指定信息或者谓语指定信息中的哪一个是根据密码消息所包含的政策决定。即,所取得的信息是对应于用于确定与通过该政策确定的一个方案成对的另一个方案的政策的内容的指定信息。当政策为Cipher_Text_Policy时,取得部32从存储介质读取属性指定信息。当政策Key_Policy为时,取得部32从存储介质读取谓语指定信息。以下,将所读取的指定信息称为用户信息。此外,与后述的密钥生成装置20的处理《用户信息取得程序》同样地,也允许解密装置30的取得部32从管理装置40读取与该解密装置30的用户对应的属性指定信息或者谓语指定信息。另外,在第1观点的第1实施方式中,步骤S22f的处理任意进行。例如,当解密装置30预先持有与用户对应的属性指定信息和谓语指定信息的情况下,根据政策,属性指定信息或者谓语指定信息的其中一个成为用户信息。 
接着,解密装置30的验证部验证是否具有用于对密码消息所包含的密码信息进行解密的解密密钥(步骤S22b)。 
解密装置30在存储器31中存储解密密钥表。在解密密钥表中,例如如图15所示,对于密钥生成装置的识别符,关联了公开参数、方案对、解密密钥的对象、谓语指定信息、解密密钥。因此,验证部验证通过密码消息所包含的地址进行判定的密钥生成装置的识别符、公开参数、方案对、与解密密钥的对象(其中,解密密钥的对象对应于用于确定与通过密码消息所包含的政策确定的一个方案成对的另一个方案的政策的内容)对应的解密密钥的有无。如果解密密钥存在则进行步骤S29的处理。如果解密密钥不存在则进行步骤S23的处理。 
这里中断《解密程序》的说明,说明《密钥生成程序》。 
当如上所述那样解密密钥不存在时,解密装置30的发送部34接受控制部的控制,生成聚集了来自存储器31的公开参数、政策、方案对、(如果有的话)用户信息、认证信息的密钥请求消息。认证信息例如包含用户的ID和口令。然后,解密装置30的发送部34将密钥请求消息发送到具有来自存储器31的地址的密钥生成装置,该密钥生成装置20的接收部接收密钥请求消息(步骤S23)。接收到的密钥请求消息被存储到密钥生成装置20的存储器21。 
密钥生成装置20的验证部(未图示)接受控制部的控制,验证密钥请求消息所包含的方案对和政策是否包含在该密钥生成装置20具有的条目(例如是在步骤S1中生成的条目)所包含的政策列表和方案列表、以及密钥请求消息所包含的公开参数是否为该密钥生成装置20的公开参数(步骤S24a)。该验证失败的情况下,作为密钥生成处理失败而结束处理(步骤S24g)。另外,另外, 在步骤S24a的处理中,如果在密钥请求消息中包含认证信息,则还验证密钥请求消息所包含的认证信息。密钥生成装置20在存储器21中存储了认证表。在认证表中,例如如图16所示,对于用户ID关联了口令。因此,验证部验证密钥请求消息所包含的用户ID和口令与认证表所包含的用户ID和口令的匹配性。在该验证失败的情况下也进行步骤S24g的处理。 
该验证成功的情况下,密钥生成装置20的验证部验证在密钥请求消息中是否包含有用户信息(步骤S24b)。如果在密钥请求消息中包含用户信息则进行步骤S24c的处理,如果在密钥请求消息中不包含用户信息则进行步骤S25的处理。另外,在采用密钥请求消息中一定包含用户信息的方法的情况下,不需要步骤S24b的处理以及后述的《用户信息取得程序》。 
这里,中断《密钥生成程序》的说明,说明《用户信息取得程序》。 
密钥生成装置20的发送部将包含密钥请求消息所包含的政策和(如果有的话)认证信息在内的请求发送到管理装置40,管理装置40接收请求(步骤S25)。接收到的请求被存储到管理装置40的存储器。 
管理装置40在存储器中存储了认证表。在该认证表中,与上述的认证表同样地,对于用户的ID关联了口令(参照图16)。因此,管理装置40的验证部(未图示)验证请求所包含的用户ID和口令与认证表所包含的用户ID和口令的匹配性。 
如果该验证成功,则管理装置40的验证部(未图示)按照请求所包含的政策,从存储器所存储的用户信息表中检索属性指定信息或者谓语指定信息(步骤S26)。用户信息表例如包含由用户ID和与其相关联的属性名以及属性指定信息构成的第1表、由用户ID和与其相关联的谓语指定信息构成的第2表(参照图17)。读取属性指定信息或者谓语指定信息的哪一个根据请求所包含的政策而决定。即,所读取的信息是对应于用于确定与通过该政策确定的一个方案成对的另一个方案的政策的内容的指定信息。如果政策为Cipher_Text_Policy时,检索部从第1表取得与请求所包含的用户ID对应的属性指定信息。如果为政策Key_Policy时,检索部从第2表取得与请求所包含的用户ID对应的谓语指定信息。将读取的指定信息称为用户信息。 
管理装置40的发送部接受控制部的控制,将检索结果的用户信息发送到密钥生成装置20,密钥生成装置20的接收部接收用户信息(步骤S27)。接收到的用户信息被存储到密钥生成装置20的存储器21中。 
由此结束《用户信息取得程序》,重新回到《密钥生成程序》的说明。 
在已具有用户信息或者通过用户信息取得程序接收了用户信息的情况下(步骤S27),密钥生成装置20的第2谓语逻辑信息取得部23从存储器21读取政策、方案对、公开参数、用户信息,并从用户信息获得属性信息(称为第2属性信息)或者谓语信息(称为第2谓语信息)(步骤S24c)。在该处理中应用于用户信息的方案是与通过政策确定的一个方案成对的另一个方案。当政策为Cipher_Text_Policy时,利用与通过Cipher_Text_Policy确定的一个方案(谓语用方案)成对的另一个方案(属性用方案),从用户信息(属性指定信息)获得第2属性信息。当政策为Key_Policy时,利用与通过Key_Policy确定的一个方案(属性用方案)成对的另一个方案(谓语用方案),从用户信息(谓语指定信息)获得第2谓语信息。如此,必须注意在该处理中使用的方案是与在步骤S17a中使用的方案成对的方案。在第1观点的第1实施方式中,第2属性信息和第2谓语信息被设为以有限域Fq的元作为分量的一个或者多个向量信息(参照图11-13)。这时,利用方案从输入信息提取必要的属性值并进行排列。 
接着,密钥生成装置20的密钥生成部25根据谓语密码算法,基于公开参数的q而生成作为有限域Fq的元的随机数α,利用来自存储器21的第2属性信息v(p)=(v(p)1,...,v(p)n)或者第2谓语信息w(p)=(w(p)1,...,w(p)n)、该密钥生成装置的秘密密钥B*,按照式(10)求解密密钥R(步骤S24d)。对应于在加密处理中使用的输入信息为属性指定信息的情况,在该例子中使用第2谓语信息w(p),但在输入信息为谓语指定信息的情况下,第2属性信息v(p)相对应,因此在式(10)中将w(p)置换为v(p)即可。 
[数39] 
R = &alpha; &Sigma; i = 1 n w ( p ) i b i * + b n + 1 * - - - ( 10 )
接着,密钥生成装置20的发送部24接受控制部的控制,将解密密钥R发送到解密装置30,解密装置30的接收部接收解密密钥R(步骤S28)。接收到的解密密钥R被存储到解密装置30的存储器31。 
由此结束《密钥生成程序》,重新回到《解密程序》的说明。 
在已经具有解密密钥或者通过密钥生成程序接收了解密密钥的情况下(步骤S28),解密装置30的解密部33从存储器31读取公开参数和解密密 钥R和密码信息C1和(根据需要)密码文C2,求公共密钥K和(根据需要)明文M(步骤S29)。 
说明该步骤S29的处理的细节。第1解密部33a从存储器31读取公开参数和密码信息C1和解密密钥R,根据谓语密码算法求e(C1,R)。如式(11)所示,当输入信息为属性指定信息的情况下,该运算结果基于双线性性,依赖于从密码信息C1和解密密钥R取出的第1属性信息v和第2谓语信息w(p)的标准内积的结果。当输入信息为谓语指定信息的情况下,在式(11)中将v置换为v(p),将w(p)置换为w即可,运算结果基于双线性性,依赖于从密码信息C1和解密密钥R取出的第1谓语信息w和第2属性信息v(p)的标准内积的结果。其中,e(bi,bi *)被定义为如式(12)那样。δi,j是表示克罗内克符号标记。 
[数40] 
e ( C 1 , R ) = e ( r &Sigma; i = 1 n v i b i , R ) &CenterDot; e ( &rho;b n + 1 , R )
= &Pi; i = 1 n e ( b i , b i * ) r&alpha; v i w ( p ) i &CenterDot; e ( b n + 1 , b n + 1 * ) &rho;
= g T r&alpha; &Sigma; i = 1 n v i w ( p ) i &CenterDot; g T &rho;
= g T r&alpha;v &CenterDot; w ( p ) &CenterDot; g T &rho; - - - ( 11 )
e ( b i , b j * ) = &Pi; j = 1 n + 1 e ( g 1 &chi; ij , g 2 &chi; ij * )
= g T &Sigma; j = 1 n + 1 &chi; ij &chi; ij *
= g T x i &CenterDot; T x j *
= g T &delta; ij - - - ( 12 )
因此,当第1属性信息v和第2谓语信息w(p)的标准内积为0(或者第1谓语信息w和第2属性信息v(p)的标准内积为0)时,可获得式(11)的运算结果gT ρ。在获得了该运算结果gT ρ的情况下,解密装置30的第1解密部33a根据式(7)获得“正确的”公共密钥K(步骤S22c)。如果第1属性信息v和第2谓语信息w(p)的标准内积不是0(或者第1谓语信息w和第2属性信息v(p)的标准内积不是0)时,第1解密部33a根据式(7)获得“不正确的”值。在该例子中,假设hash函数H包含在系统公共的公开参数中。在该例子中,密码信息C1是与用于生成公共密钥K的信息ρ对应的信息,但在将密码信息C1设为与公共密钥K对应的信息的情况下,式(11)的运算结果成为公共密钥K (或者不正确的值)。即,解密装置30的正当的用户具有提供与第1属性信息v的标准内积成为0的第2谓语信息w(p)的谓语指示信息,或者具有提供与第1谓语信息w的标准内积成为0的第2属性信息v(p)的属性指示信息。 
接着,第2解密部33b利用公共密钥K和密码文C2,根据式(13)求明文M(步骤S22d)。利用了公共密钥的解密方法DecK对应于加密方法EncK。如前所述,当第1观点的第1实施方式为专用于公共密钥K的发布的实施方式的情况下省略步骤S22d的处理。即,解密装置30即使具有第2解密部33b的功能也不进行步骤S22d的处理。 
[数41] 
M=DecK(C2)    (13) 
如果根据式(11)的运算结果为不正确的值,则无法通过式(13)获得正确的明文M。 
另外,解密装置30也可以将解密密钥R存储到解密密钥表中。此外,也可以将公共密钥K添加到解密密钥表中进行存储。 
由此结束《解密程序》。 
[第1观点的第2实施方式] 
在第1观点的第2实施方式中,区别于第1观点的第1实施方式,解密装置30生成第2属性信息或者第2谓语信息。根据该区别,第1观点的第2实施方式在几个方面与第1观点的第1实施方式不同。因此,针对与第1观点的第1实施方式重复的部分省略重复说明(对相同的构成元素分配相同的参照编号),并参照图18-21说明与第1观点的第1实施方式不同的部分。 
从步骤S1到步骤S22b的处理与第1观点的第1实施方式相同。 
在步骤S22b的处理中不具有解密密钥的情况下,解密装置30的第2谓语逻辑信息取得部35从存储器31读取政策、方案对、公开参数和用户信息,并从用户信息获得属性信息(称为第2属性信息)或者谓语信息(称为第2谓语信息)(步骤S23g)。在该处理中应用于用户信息的方案是,与通过政策确定的一个方案成对的另一个方案。当政策为Cipher_Text_Policy时,利用与通过Cipher_Text_Policy确定的一个方案(谓语用方案)成对的另一个方案(属性用方案),从用户信息(属性指定信息)获得第2属性信息。当政策为Key_Policy时,利用与通过Key_Policy确定的一个方案(属性用方案)成对的另一个方案(谓语用方案),从用户信息(谓语指定信息)获得第2谓语信 息。如此,必须注意在该处理中使用的方案是与在步骤S17a中使用的方案成对的方案。在第1观点的第2实施方式中,第2属性信息和第2谓语信息被设为以有限域Fq的元作为分量的一个或者多个向量信息(参照图11-13)。 
在步骤S23g的处理之后,进行步骤S23的处理。其中,在该处理中,解密装置30的发送部34接受控制部的控制,生成聚集了来自存储器31的公开参数、政策、方案对、认证信息、第2属性信息或者第2谓语信息的密钥请求消息。然后,解密装置30的发送部34将密钥请求消息发送到具有来自存储器31的地址的密钥生成装置,该密钥生成装置20的接收部接收密钥请求消息。 
然后,在步骤S24a的处理中验证成功的情况下,进行步骤S24d的处理。密钥生成装置20由于从解密装置30接收了第2属性信息或者第2谓语信息,因此区别于第1观点的第1实施方式,不需要用于生成该信息的功能和处理。 
然后,步骤S24d的处理之后的步骤S28和步骤S29的各个处理与第1观点的第1实施方式相同。 
[第1观点的第3实施方式] 
在第1观点的第3实施方式中,区别于第1观点的第1实施方式,加密装置10的加密部13利用第1属性信息v=(v1,...,vn)或者第1谓语信息w=(w1,...,wn)、来自存储器11的公开参数所包含的公开密钥和明文M,求密码信息C1。即,在第1观点的第3实施方式中,例如使用上述非专利文献2所示的谓语密码算法。根据该区别,第1观点的第3实施方式在几个方面与第1观点的第1实施方式不同。因此,针对与第1观点的第1实施方式重复的部分省略重复说明(对相同的构成元素分配相同的参照编号),并参照图22-25说明与第1观点的第1实施方式不同的部分。 
从步骤S1到步骤S17a的处理与第1观点的第1实施方式相同。但是,公开参数等的信息被设为第1观点的第3实施方式的谓语密码算法所需的信息。关于具体的信息请参考例如上述非专利文献2等。 
在接着步骤S17a的处理的步骤S17b1的处理中,加密装置10的加密部13根据谓语密码算法,利用第1属性信息v=(v1,...,vn)或者第1谓语信息w=(w1,...,wn)、来自存储器11的公开参数所包含的公开密钥和明文M,求密码信息C1(步骤S17b1)。 
接着,在步骤S17b1的处理之后,进行步骤S17d的处理。其中,在该处 理中,加密装置10的发送部14接受控制部的控制,生成聚集了密码信息C1、来自存储器11的方案对、政策、公开参数、密钥生成装置的地址的密码消息(步骤S17d)。 
接着步骤S17d的处理的步骤S18到步骤S28为止的处理与第1观点的第1实施方式相同。 
在接着步骤S28的处理的步骤S22c1的处理中,解密装置30的解密部33根据谓语密码算法,从存储器31读取公开参数和解密密钥R和密码信息C1,求明文M(步骤S22c1)。 
[第1观点的第4实施方式] 
第1观点的第4实施方式相当于第1观点的第2实施方式和第1观点的第3实施方式的组合。即,第1观点的第4实施方式不同于第1观点的第1实施方式,(1)解密装置30生成第2属性信息或者第2谓语信息,(2)加密装置10的加密部13利用第1属性信息v=(v1,...,vn)或者第1谓语信息w=(w1,...,wn)、来自存储器11的公开参数所包含的公开密钥和明文M,求密码信息C1。根据该区别,第1观点的第4实施方式在几个方面与第1观点的第1实施方式不同。因此,针对与第1观点的第1实施方式重复的部分省略重复说明(对相同的构成元素分配相同的参照编号),并参照图26和图27说明与第1观点的第1实施方式不同的部分。 
从步骤S1到步骤S17a的处理与第1观点的第1实施方式相同。但是,公开参数等的信息被设为第1观点的第4实施方式的谓语密码算法所需的信息。关于具体的信息请参考例如上述非专利文献2等。 
在接着步骤S17a的处理的步骤S17b1的处理中,加密装置10的加密部13根据谓语密码算法,利用第1属性信息v=(v1,...,vn)或者第1谓语信息w=(w1,...,wn)、来自存储器11的公开参数所包含的公开密钥和明文M,求密码信息C1(步骤S17b1)。 
接着,在步骤S17b1的处理之后,进行步骤S17d的处理。其中,在该处理中,加密装置10的发送部14接受控制部的控制,生成聚集了密码信息C1、来自存储器11的方案对、政策、公开参数、密钥生成装置的地址的密码消息(步骤S17d)。 
在接着步骤S17d的处理的步骤S18到步骤S22b的处理中,与第1观点的第1实施方式相同。 
在步骤S22b的处理中不具有解密密钥的情况下,解密装置30的第2谓语逻辑信息取得部35从存储器31读取政策、方案对、公开参数和用户信息,并从用户信息获得属性信息(称为第2属性信息)或者谓语信息(称为第2谓语信息)(步骤S23g)。在该处理中应用于用户信息的方案是,与通过政策确定的一个方案成对的另一个方案。当政策为Cipher_Text_Policy时,利用与通过Cipher_Text_Policy确定的一个方案(谓语用方案)成对的另一个方案(属性用方案),从用户信息(属性指定信息)获得第2属性信息。当政策为Key_Policy时,利用与通过Key_Policy确定的一个方案(属性用方案)成对的另一个方案(谓语用方案),从用户信息(谓语指定信息)获得第2谓语信息。如此,必须注意在该处理中使用的方案是与在步骤S17a中使用的方案成对的方案。在第1观点的第4实施方式中,第2属性信息和第2谓语信息被设为以有限域Fq的元作为分量的一个或者多个向量信息(参照图11-13)。 
在步骤S23g的处理之后,进行步骤S23的处理。其中,在该处理中,解密装置30的发送部34接受控制部的控制,生成聚集了来自存储器31的公开参数、政策、方案对、认证信息、第2属性信息或者第2谓语信息的密钥请求消息。然后,解密装置30的发送部34将密钥请求消息发送到具有来自存储器31的地址的密钥生成装置,该密钥生成装置20的接收部接收密钥请求消息。 
然后,在步骤S24a的处理中验证成功的情况下,进行步骤S24d的处理。密钥生成装置20由于从解密装置30接收了第2属性信息或者第2谓语信息,因此区别于第1观点的第1实施方式,不需要用于生成该信息的功能和处理。 
然后,步骤S24d的处理之后的步骤S28的处理与第1观点的第1实施方式相同。 
在接着步骤S28的处理的步骤S22c1的处理中,解密装置30的解密部33根据谓语密码算法,从存储器31读取公开参数和解密密钥R和密码信息C1,求明文M(步骤S22c1)。 
下面,在留意上述的第1观点的密码通信技术的同时,从第2观点出发,说明能够灵活运用且能够使通过谓语密码进行加密后的密码信息流通的、依赖于谓语密码的密码通信技术相关的实施方式。根据该技术,解密装置具有转发功能,因此能够使通过谓语密码进行加密后的密码信息流通。 
第2观点的密码通信技术的说明包含大量与上述的第1观点的密码通信 技术的说明在实质上重复的部分,但为了可以不用参照第1观点的密码通信技术的说明,尽量不省略重复说明和重复附图而说明第2观点的密码通信技术。因此,算数式的编号、表示功能部的参照编号、表示步骤的参照编号等在两者中也有重复,但从文章的前后关系上不用担心会产生混乱。 
[第2观点的第1实施方式] 
参照图28至图41说明第2观点的本发明的第1实施方式。 
如图28所示,第2观点的密码系统1包含有多个客户机装置10、30-1、30-2、一个或者多个密钥生成装置20、一个或者多个用户信息管理装置40(以下,称为管理装置)、变换规则信息对管理装置50(以下,称为注册装置)、一个或者多个保全装置80、一个或者多个认证装置90。这些各个装置例如经由作为互联网的通信网5可相互通信。 
客户机装置根据处理目的,作为加密装置或者解密装置发挥作用。因此,从功能的观点出发,将客户机装置称为加密装置10或者解密装置。针对后述的密码消息的授受,在与加密装置10的关系上解密装置被分类为作为当事者的第1解密装置30-1和不是当事者的第2解密装置30-2。另外,第2观点的密码系统1也可以包含仅作为加密装置发挥作用的客户机装置和/或仅作为解密装置发挥作用的客户机装置。 
在第2观点的密码系统1中进行利用了谓语密码的加密和解密。在第2观点的本发明中,使用的谓语密码算法没有限定,例如允许使用在上述非专利文献2中公开的谓语密码算法。在第2观点的第1实施方式中,示出利用了KEM(Key Encapsulation Mechanisms)类型的谓语密码算法的例子。 
参照图29、30、31、32、34、36、38、40、41叙述第2观点的密码系统1中的密码通信方法。关于各装置的功能结构,请参照图33、35、37、39。 
《准备程序》 
将第1观点的发明的第1实施方式中的《准备程序》的全部说明引用到这里,省略重复说明。另外,作为与该《准备程序》的说明对应的图,请参照图29,关于方案对请参照图11-13,关于政策请参照图14。《准备程序》到此结束。 
《加密程序》 
加密装置10的发送部14接受未图示的控制部的控制,将检索查询发送到注册装置50,注册装置50的接收部接收检索查询(步骤S14)。注册装置 50的检索部检索注册装置50的存储部所注册的条目的一部分或者全部从而选择一个条目(步骤S15),注册装置50的发送部将检索结果的条目发送到加密装置10,加密装置10的接收部接收条目(步骤S16)。该条目中包含有密钥生成装置的地址、该密钥生成装置的公开参数、该密钥生成装置可使用的政策列表、该密钥生成装置可使用的方案列表。接收到的条目被存储到加密装置10的存储器11。 
另外,当加密装置10预先持有各个密钥生成装置20的公开参数、方案列表、政策列表、地址的情况下,省略步骤S14-S16的处理。即,必须注意密码系统1不包含注册装置50的方式也被允许。 
加密装置10的第1谓语逻辑信息取得部12从存储器11读取输入信息和政策和方案,求属性信息(以下,称为第1属性信息)或者谓语信息(以下,称为第1谓语信息)(步骤S17)。对该处理的细节进行说明(参照图12、图13)。 
首先,在方案列表中记述了多个方案对的情况下,根据用途等选择一个方案对。可以是由加密装置10的用户选择方案对并输入其指示信息的情况,也可以按照规定的规则由第1谓语逻辑信息取得部12选择方案对。 
然后,根据输入信息是属性指定信息或者谓语指定信息的哪一个,与政策一起选择其中一方的方案。可以是由加密装置10的用户选择政策和其中一方的方案并输入其指示信息的情况,也可以是按照规定的规则由第1谓语逻辑信息取得部12选择政策和其中一方的方案的情况。另外,当密钥生成装置20的政策仅准备了一种类型的情况下,按照该政策选择方案对中的一个方案。假如,在所选择的方案与输入信息的种类不对应的情况下,从方案列表再次选择方案对,或者从注册装置50再次接受条目的提供即可。 
输入信息也可以是由加密装置10的用户输入的信息或者由加密装置10的取得部(未图示)从例如IC卡39那样的存储介质取得的信息。 
然后,第1谓语逻辑信息取得部12利用按照政策从方案对中选择的方案,从输入信息获得第1属性信息或者第1谓语信息。当政策为Key_Policy且选择的方案为属性用方案的情况下可获得第1属性信息。当政策为Cipher_Text_Policy且选择的方案为谓语用方案的情况下可获得第1谓语信息。在第2观点的第1实施方式中,第1属性信息和第1谓语信息被设为以有限域Fq的元作为分量的一个或者多个向量信息(参照图11-13)。这时,利 用方案从输入信息提取必要的属性值并进行排列。 
接着,加密装置10的加密部13利用第1属性信息v=(v1,...,vn)或者第1谓语信息w=(w1,...,wn)、来自存储器11的公开参数所包含的正交基B(实质性的公开密钥)和明文M,求公开密钥K和密码信息C1和密码文C2(步骤S17b、S17c)。关于这些处理的细节进行说明。其中,当第2观点的第1实施方式为专用于公共密钥K的发布的实施方式的情况下不需要生成密码文C2。 
首先,第1加密部13a根据谓语密码算法,生成作为有限域Fq的元的随机数r、ρ,如式(7)那样设定公共密钥K,并按照上述式(8)求密码信息C1(步骤S17b)。H例如是hash函数。在该例子中使用第1属性信息v,但在使用第1谓语信息的情况下在式(8)中将v替换为w即可。此外,在该例子中,密码信息C1是与用于生成公共密钥K的信息ρ对应的信息,但也可以将密码信息C1设为与公共密钥K对应的信息。 
接着,第2加密部13b利用公开密钥K和明文M,按照上述式(9)求密码文C2(步骤S17c)。利用了公共密钥的加密方法EncK可以是众所周知的方法,例如是在上述非专利文献1中公开的方法。如前所述,当第2观点的第1实施方式为专用于公共密钥K的发布的实施方式的情况下,省略步骤S17c的处理。即,加密装置10即使具有第2加密部13b的功能也不进行步骤S17c的处理。 
接着,加密装置10的发送部14接受控制部的控制,生成聚集了密码信息C1、(根据需要)密码文C2、来自存储器11的方案对、政策、公开参数、密钥生成装置的地址的密码消息(步骤S17d)。然后,加密装置10的发送部14将密码消息发送到第1解密装置30-1,第1解密装置30-1的接收部接收密码消息(步骤S18)。另外,允许加密装置10对多个第1解密装置30-1发送密码消息。 
《加密程序》到此结束。 
《第1解密程序》 
第1解密装置30-1的发送部34接受未图示的控制部的控制,将包含密码消息所包含的密钥生成装置的地址的检索查询发送到注册装置50,注册装置50的接收部接收检索查询(步骤S19)。注册装置50的检索部检索由地址所指定的密钥生成装置的条目并选择它(步骤S20),注册装置50的发送部将检索结果的条目发送到第1解密装置30-1,第1解密装置30-1的接收部接 收条目(步骤S21)。该条目中包含有密钥生成装置的地址、该密钥生成装置的公开参数、该密钥生成装置可使用的政策列表、该密钥生成装置可使用的方案列表。接收到的条目被存储到第1解密装置30-1的存储器31。 
另外,当第1解密装置30-1预先持有各个密钥生成装置20的公开参数、方案列表、政策列表、地址的情况下,省略步骤S19-S21的处理。这时,第1解密装置30-1从自身的存储器31中检索与密码消息所包含的地址对应的密钥生成装置的条目并取得它。 
第1解密装置30-1的验证部(未图示)接受控制部的控制,验证密码消息所包含的方案对和政策是否包含在从注册装置50取得的条目所包含的政策列表和方案列表中(步骤S22a)。在该验证失败的情况下,作为解密处理失败而结束处理(步骤S22g)。 
在该验证成功的情况下,第1解密装置30-1的取得部32从例如IC卡39那样的存储介质读取与该第1解密装置30-1的用户对应的属性指定信息或者谓语指定信息(步骤S22f)。读取属性指定信息或者谓语指定信息中的哪一个是根据密码消息所包含的政策决定。即,所取得的信息是对应于用于确定与通过该政策确定的一个方案成对的另一个方案的政策的内容的指定信息。当政策为Cipher_Text_Policy时,取得部32从存储介质读取属性指定信息。当政策Key_Policy为时,取得部32从存储介质读取谓语指定信息。以下,将所读取的指定信息称为用户信息。此外,与后述的密钥生成装置20中的处理《用户信息取得程序》同样地,也允许第1解密装置30-1的取得部32从管理装置40读取与该第1解密装置30-1的用户对应的属性指定信息或者谓语指定信息。另外,在第2观点的第1实施方式中,步骤S22f的处理任意进行。例如,当第1解密装置30-1预先持有与用户对应的属性指定信息和谓语指定信息的情况下,根据政策,属性指定信息或者谓语指定信息的其中一个成为用户信息。 
接着,第1解密装置30-1的验证部验证是否具有用于对密码消息所包含的密码信息进行解密的解密密钥(步骤S22b)。 
第1解密装置30-1在存储器31中存储解密密钥表。在解密密钥表中,例如如图15所示,对于密钥生成装置的识别符,关联了公开参数、方案对、解密密钥的对象、谓语指定信息、解密密钥。因此,验证部验证通过密码消息所包含的地址进行判定的密钥生成装置的识别符、公开参数、方案对、与 解密密钥的对象(其中,解密密钥的对象对应于用于确定与通过密码消息所包含的政策确定的一个方案成对的另一个方案的政策的内容)对应的解密密钥的有无。如果解密密钥存在则进行步骤S29的处理。如果解密密钥不存在则进行步骤S23的处理。 
这里中断《解密程序》的说明,说明《密钥生成程序》。 
当如上所述那样解密密钥不存在时,第1解密装置30-1的发送部34接受控制部的控制,生成聚集了来自存储器31的公开参数、政策、方案对、(如果有的话)用户信息、认证信息的密钥请求消息。认证信息例如包含用户的ID和口令。然后,第1解密装置30-1的发送部34将密钥请求消息发送到具有来自存储器31的地址的密钥生成装置,该密钥生成装置20的接收部接收密钥请求消息(步骤S23)。接收到的密钥请求消息被存储到密钥生成装置20的存储器21。 
密钥生成装置20的验证部(未图示)接受控制部的控制,验证密钥请求消息所包含的方案对和政策是否包含在该密钥生成装置20具有的条目(例如是在步骤S1中生成的条目)所包含的政策列表和方案列表、以及密钥请求消息所包含的公开参数是否为该密钥生成装置20的公开参数(步骤S24a)。该验证失败的情况下,作为密钥生成处理失败而结束处理(步骤S24g)。另外,在步骤S24a的处理中,如果在密钥请求消息中包含认证信息,则还验证密钥请求消息所包含的认证信息。密钥生成装置20在存储器21中存储了认证表。在认证表中,例如如图16所示,对于用户ID关联了口令。因此,验证部验证密钥请求消息所包含的用户ID和口令与认证表所包含的用户ID和口令的匹配性。在该验证失败的情况下也进行步骤S24g的处理。 
该验证成功的情况下,密钥生成装置20的验证部验证在密钥请求消息中是否包含有用户信息(步骤S24b)。如果在密钥请求消息中包含用户信息则进行步骤S24c的处理,如果在密钥请求消息中不包含用户信息则进行步骤S25的处理。另外,在采用密钥请求消息中一定包含用户信息的方法的情况下,不需要步骤S24b的处理以及后述的《用户信息取得程序》。 
这里,中断《密钥生成程序》的说明,说明《用户信息取得程序》。 
密钥生成装置20的发送部将包含密钥请求消息所包含的政策和(如果有的话)认证信息在内的请求发送到管理装置40,管理装置40接收请求(步骤S25)。接收到的请求被存储到管理装置40的存储器。 
管理装置40在存储器中存储了认证表。在该认证表中,与上述的认证表同样地,对于用户的ID关联了口令(参照图16)。因此,管理装置40的验证部(未图示)验证请求所包含的用户ID和口令与认证表所包含的用户ID和口令的匹配性。 
如果该验证成功,则管理装置40的验证部(未图示)按照请求所包含的政策,从存储器所存储的用户信息表中检索属性指定信息或者谓语指定信息(步骤S26)。用户信息表例如包含由用户ID和与其相关联的属性名以及属性指定信息构成的第1表、由用户ID和与其相关联的谓语指定信息构成的第2表(参照图17)。读取属性指定信息或者谓语指定信息的哪一个根据请求所包含的政策而决定。即,所读取的信息是对应于用于确定与通过该政策确定的一个方案成对的另一个方案的政策的内容的指定信息。当政策为Cipher_Text_Policy时,检索部从第1表取得与请求所包含的用户ID对应的属性指定信息。当政策Key_Policy为时,检索部从第2表取得与请求所包含的用户ID对应的谓语指定信息。将读取的指定信息称为用户信息。 
管理装置40的发送部接受控制部的控制,将检索结果的用户信息发送到密钥生成装置20,密钥生成装置20的接收部接收用户信息(步骤S27)。接收到的用户信息被存储到密钥生成装置20的存储器21中。 
由此结束《用户信息取得程序》,重新回到《密钥生成程序》的说明。 
在已具有用户信息或者通过用户信息取得程序接收了用户信息的情况下(步骤S27),密钥生成装置20的第2谓语逻辑信息取得部23从存储器21读取政策、方案对、公开参数、用户信息,并从用户信息获得属性信息(称为第2属性信息)或者谓语信息(称为第2谓语信息)(步骤S24c)。在该处理中应用于用户信息的方案是与通过政策确定的一个方案成对的另一个方案。当政策为Cipher_Text_Policy时,利用与通过Cipher_Text_Policy确定的一个方案(谓语用方案)成对的另一个方案(属性用方案),从用户信息(属性指定信息)获得第2属性信息。当政策为Key_Policy时,利用与通过Key_Policy确定的一个方案(属性用方案)成对的另一个方案(谓语用方案),从用户信息(谓语指定信息)获得第2谓语信息。如此,必须注意在该处理中使用的方案是与在步骤S17a中使用的方案成对的方案。在第2观点的第1实施方式中,第2属性信息和第2谓语信息被设为以有限域Fq的元作为分量的一个或者多个向量信息(参照图11-13)。这时,利用方案从输入信息提取 必要的属性值并进行排列。 
接着,密钥生成装置20的密钥生成部25根据谓语密码算法,基于公开参数的q而生成作为有限域Fq的元的随机数α,利用来自存储器21的第2属性信息v(p)=(v(p)1,...,v(p)n)或者第2谓语信息w(p)=(w(p)1,...,w(p)n)、该密钥生成装置的秘密密钥B*,按照式(10)求解密密钥R(步骤S24d)。对应于在加密处理中使用的输入信息为属性指定信息的情况,在该例子中使用第2谓语信息w(p),但在输入信息为谓语指定信息的情况下,第2属性信息v(p)相对应,因此在上述式(10)中将w(p)置换为v(p)即可。 
接着,密钥生成装置20的发送部24接受控制部的控制,将解密密钥R发送到第1解密装置30-1,第1解密装置30-1的接收部接收解密密钥R(步骤S28)。接收到的解密密钥R被存储到第1解密装置30-1的存储器31。 
由此结束《密钥生成程序》,重新回到《解密程序》的说明。 
在已经具有解密密钥或者通过密钥生成程序接收了解密密钥的情况下(步骤S28),第1解密装置30-1的解密部33从存储器31读取公开参数和解密密钥R和密码信息C1和(根据需要)密码文C2,求公共密钥K和(根据需要)明文M(步骤S29)。 
说明该步骤S29的处理的细节。第1解密部33a从存储器31读取公开参数和密码信息C1和解密密钥R,根据谓语密码算法求e(C1,R)。如上述式(11)所示,当输入信息为属性指定信息的情况下,该运算结果基于双线性性,依赖于从密码信息C1和解密密钥R取出的第1属性信息v和第2谓语信息w(p)的标准内积的结果。当输入信息为谓语指定信息的情况下,在上述式(11)中将v置换为v(p),将w(p)置换为w即可,运算结果基于双线性性,依赖于从密码信息C1和解密密钥R取出的第1谓语信息w和第2属性信息v(p)的标准内积的结果。其中,e(bi,bi *)被定义为如上述式(12)那样。δi,j是表示克罗内克符号标记。 
因此,当第1属性信息v和第2谓语信息w(p)的标准内积为0(或者第1谓语信息w和第2属性信息v(p)的标准内积为0)时,可获得上述式(11)的运算结果gT ρ。在获得了该运算结果gT ρ的情况下,第1解密装置30-1的第1解密部33a根据上述式(7)获得“正确的”公共密钥K(步骤S22c)。当第1属性信息v和第2谓语信息w(p)的标准内积不是0(或者第1谓语信息w和第2属性信息v(p)的标准内积不是0)时,第1解密部33a根据上述式(7)获得“不 正确的”值。在该例子中,假设hash函数H包含在系统公共的公开参数中。在该例子中,密码信息C1是与用于生成公共密钥K的信息ρ对应的信息,但在将密码信息C1设为与公共密钥K对应的信息的情况下,上述式(11)的运算结果成为公共密钥K(或者不正确的值)。即,第1解密装置30-1的正当的用户具有提供与第1属性信息v的标准内积成为0的第2谓语信息w(p)的谓语指示信息,或者具有提供与第1谓语信息w的标准内积成为0的第2属性信息v(p)的属性指示信息。 
接着,第2解密部33b利用公共密钥K和密码文C2,根据上述式(13)求明文M(步骤S22d)。利用了公共密钥的解密方法DecK对应于加密方法EncK。如前所述,当第2观点的第1实施方式为专用于公共密钥K的发布的实施方式的情况下省略步骤S22d的处理。即,第1解密装置30-1即使具有第2解密部33b的功能也不进行步骤S22d的处理。 
如果根据上述式(11)的运算结果为不正确的值,则无法通过上述式(13)获得正确的明文M。 
另外,第1解密装置30-1也可以将解密密钥R存储到解密密钥表中。此外,也可以将公共密钥K添加到解密密钥表中进行存储。 
《第1解密程序》到此结束。 
《转发程序》 
第1解密装置30-1的转发部37将从加密装置10接收到的密码消息转发给第2解密装置30-2,第2解密装置30-2的接收部接收密码消息(步骤S30)。转发目的地的解密装置不限于第2解密装置(关于密码消息的授受,与加密装置不属于当事者的关系的解密装置),也可以是其他的第1解密装置(关于密码消息的授受,与加密装置属于当事者的关系的解密装置)。此外,为了便于说明,步骤S30的处理作为接着步骤S29的处理的处理进行说明,但只要是在第1解密装置30-1从加密装置10接收到密码消息之后则何时都可以。 
《转发程序》到此结束。 
说明第2解密装置30-2进行的第2解密程序(包含密钥生成程序,并且根据需要还包含用户信息取得程序)。该一连串的处理与第1解密程序实质上相同。此外,第2解密装置30-2的功能结构除了未必要具有转发部37之外,与第1解密装置30-1相同,因此针对共同的功能结构元素分配相同的参照编号。 
《第2解密程序》 
第2解密装置30-2的发送部34接受未图示的控制部的控制,将包含密码消息所包含的密钥生成装置的地址的检索查询发送到注册装置50,注册装置50的接收部接收检索查询(步骤S31)。注册装置50的检索部检索由地址所指定的密钥生成装置的条目并选择它(步骤S32),注册装置50的发送部将检索结果的条目发送到第2解密装置30-2,第2解密装置30-2的接收部接收条目(步骤S33)。该条目中包含有密钥生成装置的地址、该密钥生成装置的公开参数、该密钥生成装置可使用的政策列表、该密钥生成装置可使用的方案列表。接收到的条目被存储到第2解密装置30-2的存储器31。 
另外,当第2解密装置30-2预先持有各个密钥生成装置20的公开参数、方案列表、政策列表、地址的情况下,省略步骤S31-S33的处理。这时,第2解密装置30-2从自身的存储器31中检索与密码消息所包含的地址对应的密钥生成装置的条目并取得它。 
第2解密装置30-2的验证部(未图示)接受控制部的控制,验证密码消息所包含的方案对和政策是否包含在从注册装置50取得的条目所包含的政策列表和方案列表中(步骤S34a)。在该验证失败的情况下,作为解密处理失败而结束处理(步骤S34g)。 
在该验证成功的情况下,第2解密装置30-2的取得部32从例如IC卡39那样的存储介质读取与该第2解密装置30-2的用户对应的属性指定信息或者谓语指定信息(步骤S34f)。读取属性指定信息或者谓语指定信息中的哪一个是根据密码消息所包含的政策决定。即,所取得的信息是对应于用于确定与通过该政策确定的一个方案成对的另一个方案的政策的内容的指定信息。当政策为Cipher_Text_Policy时,取得部32从存储介质读取属性指定信息。当政策Key_Policy为时,取得部32从存储介质读取谓语指定信息。以下,将所读取的指定信息称为用户信息。此外,与后述的密钥生成装置20中的处理《用户信息取得程序》同样地,也允许第2解密装置30-2的取得部32从管理装置40读取与该第2解密装置30-2的用户对应的属性指定信息或者谓语指定信息。另外,在第2观点的第1实施方式中,步骤S34f的处理任意进行。例如,当第2解密装置30-2预先持有与用户对应的属性指定信息和谓语指定信息的情况下,根据政策,属性指定信息或者谓语指定信息的其中一个成为用户信息。 
接着,第2解密装置30-2的验证部验证是否具有用于对密码消息所包含的密码信息进行解密的解密密钥(步骤S34b)。 
第2解密装置30-2在存储器31中存储解密密钥表。在解密密钥表中,例如如图15所示,对于密钥生成装置的识别符,关联了公开参数、方案对、解密密钥的对象、谓语指定信息、解密密钥。因此,验证部验证通过密码消息所包含的地址进行判定的密钥生成装置的识别符、公开参数、方案对、与解密密钥的对象(其中,解密密钥的对象对应于用于确定与通过密码消息所包含的政策确定的一个方案成对的另一个方案的政策的内容)对应的解密密钥的有无。如果解密密钥存在则进行步骤S41的处理。如果解密密钥不存在则进行步骤S35的处理。 
这里中断《解密程序》的说明,说明《密钥生成程序》。 
当如上所述那样解密密钥不存在时,第2解密装置30-2的发送部34接受控制部的控制,生成聚集了来自存储器31的公开参数、政策、方案对、(如果有的话)用户信息、认证信息的密钥请求消息。认证信息例如包含用户的ID和口令。然后,第2解密装置30-2的发送部34将密钥请求消息发送到具有来自存储器31的地址的密钥生成装置,该密钥生成装置20的接收部接收密钥请求消息(步骤S35)。接收到的密钥请求消息被存储到密钥生成装置20的存储器21。该密钥生成装置20不必与第1解密装置30-1的对方的密钥生成装置20相同。 
密钥生成装置20的验证部(未图示)接受控制部的控制,验证密钥请求消息所包含的方案对和政策是否包含在该密钥生成装置20具有的条目(例如是在步骤S1中生成的条目)所包含的政策列表和方案列表、以及密钥请求消息所包含的公开参数是否为该密钥生成装置20的公开参数(步骤S36a)。该验证失败的情况下,作为密钥生成处理失败而结束处理(步骤S36g)。另外,在步骤S36a的处理中,如果在密钥请求消息中包含认证信息,则还验证密钥请求消息所包含的认证信息。密钥生成装置20在存储器21中存储了认证表。在认证表中,例如如图16所示,对于用户ID关联了口令。因此,验证部验证密钥请求消息所包含的用户ID和口令与认证表所包含的用户ID和口令的匹配性。在该验证失败的情况下也进行步骤S36g的处理。 
该验证成功的情况下,密钥生成装置20的验证部验证在密钥请求消息中是否包含有用户信息(步骤S36b)。如果在密钥请求消息中包含用户信息则 进行步骤S36c的处理,如果在密钥请求消息中不包含用户信息则进行步骤S37的处理。另外,在采用密钥请求消息中一定包含用户信息的方法的情况下,不需要步骤S36b的处理以及后述的《用户信息取得程序》。 
这里,中断《密钥生成程序》的说明,说明《用户信息取得程序》。 
密钥生成装置20的发送部将包含密钥请求消息所包含的政策和(如果有的话)认证信息在内的请求发送到管理装置40,管理装置40接收请求(步骤S37)。接收到的请求被存储到管理装置40的存储器。 
管理装置40在存储器中存储了认证表。在该认证表中,与上述的认证表同样地,对于用户的ID关联了口令(参照图16)。因此,管理装置40的验证部(未图示)验证请求所包含的用户ID和口令与认证表所包含的用户ID和口令的匹配性。 
如果该验证成功,则管理装置40的验证部(未图示)按照请求所包含的政策,从存储器所存储的用户信息表中检索属性指定信息或者谓语指定信息(步骤S38)。用户信息表例如包含由用户ID和与其相关联的属性名以及属性指定信息构成的第1表、由用户ID和与其相关联的谓语指定信息构成的第2表(参照图17)。读取属性指定信息或者谓语指定信息的哪一个根据请求所包含的政策而决定。即,所读取的信息是对应于用于确定与通过该政策确定的一个方案成对的另一个方案的政策的内容的指定信息。当政策为Cipher_Text_Policy时,检索部从第1表取得与请求所包含的用户ID对应的属性指定信息。当政策Key_Policy为时,检索部从第2表取得与请求所包含的用户ID对应的谓语指定信息。将读取的指定信息称为用户信息。 
管理装置40的发送部接受控制部的控制,将检索结果的用户信息发送到密钥生成装置20,密钥生成装置20的接收部接收用户信息(步骤S39)。接收到的用户信息被存储到密钥生成装置20的存储器21中。 
由此结束《用户信息取得程序》,重新回到《密钥生成程序》的说明。 
在已具有用户信息或者通过用户信息取得程序接收了用户信息的情况下(步骤S39),密钥生成装置20的第2谓语逻辑信息取得部23从存储器21读取政策、方案对、公开参数、用户信息,并从用户信息获得属性信息(称为第2属性信息)或者谓语信息(称为第2谓语信息)(步骤S36c)。一般,第1解密装置30-1的用户与第2解密装置30-2的用户不同,因此不保证在该处理中获得的第2属性信息或者第2谓语信息与在步骤S24c的处理中获得的 第2属性信息或者第2谓语信息相同。在该处理中应用于用户信息的方案是与通过政策确定的一个方案成对的另一个方案。当政策为Cipher_Text_Policy时,利用与通过Cipher_Text_Policy确定的一个方案(谓语用方案)成对的另一个方案(属性用方案),从用户信息(属性指定信息)获得第2属性信息。当政策为Key_Policy时,利用与通过Key_Policy确定的一个方案(属性用方案)成对的另一个方案(谓语用方案),从用户信息(谓语指定信息)获得第2谓语信息。如此,必须注意在该处理中使用的方案是与在步骤S17a中使用的方案成对的方案。在第2观点的第1实施方式中,第2属性信息和第2谓语信息被设为以有限域Fq的元作为分量的一个或者多个向量信息(参照图11-13)。这时,利用方案从输入信息提取必要的属性值并进行排列。 
接着,密钥生成装置20的密钥生成部25根据谓语密码算法,基于公开参数的q而生成作为有限域Fq的元的随机数ε,利用来自存储器21的第2属性信息v′(p)=(v′(p)1,...,v′(p)n)或者第2谓语信息w′(p)=(w′(p)1,...,w′(p)n)、该密钥生成装置的秘密密钥B*,按照式(14)求解密密钥R′(步骤S36d)。对应于在加密处理中使用的输入信息为属性指定信息的情况,在该例子中使用第2谓语信息w′(p),但在输入信息为谓语指定信息的情况下,第2属性信息v′(p)相对应,因此在式(14)中将w′(p)置换为v′(p)即可。 
[数42] 
R &prime; = &epsiv; &Sigma; i = 1 n w &prime; ( p ) i b i * + b n + 1 * - - - ( 14 )
接着,密钥生成装置20的发送部24接受控制部的控制,将解密密钥R′发送到第2解密装置30-2,第2解密装置30-2的接收部接收解密密钥R(步骤S40)。接收到的解密密钥R被存储到第2解密装置30-2的存储器31。 
由此结束《密钥生成程序》,重新回到《解密程序》的说明。 
在已经具有解密密钥或者通过密钥生成程序接收了解密密钥的情况下(步骤S40),第2解密装置30-2的解密部33从存储器31读取公开参数和解密密钥R′和密码信息C1和(根据需要)密码文C2,求公共密钥K和(根据需要)明文M(步骤S41)。 
说明该步骤S41的处理的细节。第1解密部33a从存储器31读取公开参数和密码信息C1和解密密钥R′,根据谓语密码算法求e(C1,R′)。如式(15)所示,当输入信息为属性指定信息的情况下,该运算结果基于双线性性,依赖 于从密码信息C1和解密密钥R′取出的第1属性信息v和第2谓语信息w′(p)的标准内积的结果。当输入信息为谓语指定信息的情况下,在式(15)中将v置换为v′(p),将w′(p)置换为w即可,运算结果基于双线性性,依赖于从密码信息C1和解密密钥R′取出的第1谓语信息w和第2属性信息v′(p)的标准内积的结果。其中,e(bi,bi *)被定义为如上述式(12)那样。 
[数43] 
e ( C 1 , R &prime; ) = e ( r &Sigma; i = 1 n v i b i , R &prime; ) &CenterDot; e ( &rho; b n + 1 , R &prime; )
= &Pi; i = 1 n e ( b i , b i * ) r&alpha; v i w &prime; ( p ) i &CenterDot; e ( b n + 1 , b n + 1 * ) &rho;
= g T r&alpha; &Sigma; i = 1 n v i w &prime; ( p ) i &CenterDot; g T &rho;
= g T r&alpha;v &CenterDot; w &prime; ( p ) &CenterDot; g T &rho; - - - ( 15 )
因此,当第1属性信息v和第2谓语信息w′(p)的标准内积为0(或者第1谓语信息w和第2属性信息v′(p)的标准内积为0)时,可获得式(15)的运算结果gT ρ。在获得了该运算结果gT ρ的情况下,第2解密装置30-2的第1解密部33a根据上述式(7)获得“正确的”公共密钥K(步骤S34c)。当第1属性信息v和第2谓语信息w′(p)的标准内积不是0(或者第1谓语信息w和第2属性信息v′(p)的标准内积不是0)时,第1解密部33a根据上述式(7)获得“不正确的”值。在该例子中,假设hash函数H包含在系统公共的公开参数中。在该例子中,密码信息C1是与用于生成公共密钥K的信息ρ对应的信息,但在将密码信息C1设为与公共密钥K对应的信息的情况下,式(15)的运算结果成为公共密钥K(或者不正确的值)。即,第2解密装置30-2的正当的用户具有提供与第1属性信息v的标准内积成为0的第2谓语信息w′(p)的谓语指示信息,或者具有提供与第1谓语信息w的标准内积成为0的第2属性信息v′(p)的属性指示信息。 
接着,第2解密部33b利用公共密钥K和密码文C2,根据上述式(13)求明文M(步骤S34d)。利用了公共密钥的解密方法DecK对应于加密方法EncK。如前所述,当第2观点的第1实施方式为专用于公共密钥K的发布的实施方式的情况下省略步骤S34d的处理。即,第2解密装置30-2即使具有第2解密部33b的功能也不进行步骤S34d的处理。 
如果根据式(15)的运算结果为不正确的值,则无法通过上述式(13)获得正确的明文M。 
另外,第2解密装置30-2也可以将解密密钥R存储到解密密钥表中。此外,也可以将公共密钥K添加到解密密钥表中进行存储。 
《第2解密程序》到此结束。 
在第2解密装置30-2具有转发部37的情况下,第2解密装置30-2可以将从第1解密装置30-1接收到的密码消息转发给其他的解密装置(关于密码消息的授受,与加密装置不属于当事者的关系的解密装置),也可以转发给第1解密装置(关于密码消息的授受,与加密装置属于当事者的关系的解密装置)。该转发处理只要是在第2解密装置30-2从第1解密装置30-1接收到密码消息之后则何时都可以。 
[第2观点的第2实施方式] 
在第2观点的第2实施方式中,区别于第2观点的第1实施方式,第1解密装置30-1和第2解密装置30-2生成第2属性信息或者第2谓语信息。根据该区别,第2观点的第2实施方式在几个方面与第2观点的第1实施方式不同。因此,针对与第2观点的第1实施方式重复的部分省略重复说明(对相同的构成元素分配相同的参照编号),并参照图42-图48说明与第1实施方式不同的部分。 
从步骤S1到步骤S22b的处理与第2观点的第1实施方式相同。 
在步骤S22b的处理中不具有解密密钥的情况下,第1解密装置30-1的第2谓语逻辑信息取得部35从存储器31读取政策、方案对、公开参数和用户信息,并从用户信息获得属性信息(称为第2属性信息)或者谓语信息(称为第2谓语信息)(步骤S23g)。在该处理中应用于用户信息的方案是,与通过政策确定的一个方案成对的另一个方案。当政策为Cipher_Text_Policy时,利用与通过Cipher_Text_Policy确定的一个方案(谓语用方案)成对的另一个方案(属性用方案),从用户信息(属性指定信息)获得第2属性信息。当政策为Key_Policy时,利用与通过Key_Policy确定的一个方案(属性用方案)成对的另一个方案(谓语用方案),从用户信息(谓语指定信息)获得第2谓语信息。如此,必须注意在该处理中使用的方案是与在步骤S17a中使用的方案成对的方案。在第2观点的第2实施方式中,第2属性信息和第2谓语信息被设为以有限域Fq的元作为分量的一个或者多个向量信息(参照图11-13)。 
在步骤S23g的处理之后,进行步骤S23的处理。其中,在该处理中,第1解密装置30-1的发送部34接受控制部的控制,生成聚集了来自存储器31的公开参数、政策、方案对、认证信息、第2属性信息或者第2谓语信息的密钥请求消息。然后,第1解密装置30-1的发送部34将密钥请求消息发送到具有来自存储器31的地址的密钥生成装置,该密钥生成装置20的接收部接收密钥请求消息。 
然后,在步骤S24a的处理中验证成功的情况下,进行步骤S24d的处理。密钥生成装置20由于从第1解密装置30-1接收到第2属性信息或者第2谓语信息,因此区别于第2观点的第1实施方式,不需要用于生成该信息的功能和处理。 
然后,步骤S24d的处理之后的步骤S28到步骤S34a为止的各个处理与第2观点的第1实施方式相同。 
在步骤S34b的处理中不具有解密密钥的情况下,第2解密装置30-2的第2谓语逻辑信息取得部35从存储器31读取政策、方案对、公开参数和用户信息,并从用户信息获得属性信息(称为第2属性信息)或者谓语信息(称为第2谓语信息)(步骤S35g)。在该处理中应用于用户信息的方案是,与通过政策确定的一个方案成对的另一个方案。当政策为Cipher_Text_Policy时,利用与通过Cipher_Text_Policy确定的一个方案(谓语用方案)成对的另一个方案(属性用方案),从用户信息(属性指定信息)获得第2属性信息。当政策为Key_Policy时,利用与通过Key_Policy确定的一个方案(属性用方案)成对的另一个方案(谓语用方案),从用户信息(谓语指定信息)获得第2谓语信息。如此,必须注意在该处理中使用的方案是与在步骤S17a中使用的方案成对的方案。在第2观点的第2实施方式中,第2属性信息和第2谓语信息被设为以有限域Fq的元作为分量的一个或者多个向量信息(参照图11-13)。 
在步骤S35g的处理之后,进行步骤S35的处理。其中,在该处理中,第2解密装置30-2的发送部34接受控制部的控制,生成聚集了来自存储器31的公开参数、政策、方案对、认证信息、第2属性信息或者第2谓语信息的密钥请求消息。然后,第2解密装置30-2的发送部34将密钥请求消息发送到具有来自存储器31的地址的密钥生成装置,该密钥生成装置20的接收部接收密钥请求消息。 
然后,在步骤S36a的处理中验证成功的情况下,进行步骤S36d的处理。 密钥生成装置20由于从第2解密装置30-2接收到第2属性信息或者第2谓语信息,因此区别于第2观点的第1实施方式,不需要用于生成该信息的功能和处理。 
然后,步骤S36d的处理之后的步骤S40和步骤S41的各个处理与第2观点的第1实施方式相同。 
[第2观点的第3实施方式] 
在第2观点的第3实施方式中,区别于第2观点的第1实施方式,加密装置10的加密部13利用第1属性信息v=(v1,...,vn)或者第1谓语信息w=(w1,...,wn)、来自存储器11的公开参数所包含的公开密钥和明文M,求密码信息C1。x,在第2观点的第3实施方式中,例如使用上述非专利文献2所示的谓语密码算法。根据该区别,第2观点的第3实施方式在几个方面与第2观点的第1实施方式不同。因此,针对与第2观点的第1实施方式重复的部分省略重复说明(对相同的构成元素分配相同的参照编号),并参照图48-图54说明与第2观点的第1实施方式不同的部分。 
从步骤S1到步骤S17a的处理与第2观点的第1实施方式相同。但是,公开参数等的信息被设为第2观点的第3实施方式的谓语密码算法所需的信息。关于具体的信息请参考例如上述非专利文献2等。 
在接着步骤S17a的处理的步骤S17b1的处理中,加密装置10的加密部13根据谓语密码算法,利用第1属性信息v=(v1,...,vn)或者第1谓语信息w=(w1,...,wn)、来自存储器11的公开参数所包含的公开密钥和明文M,求密码信息C1(步骤S17b1)。 
接着,在步骤S17b1的处理之后,进行步骤S17d的处理。其中,在该处理中,加密装置10的发送部14接受控制部的控制,生成聚集了密码信息C1、来自存储器11的方案对、政策、公开参数、密钥生成装置的地址的密码消息(步骤S17d)。 
接着步骤S17d的处理的步骤S18到步骤S28为止的处理与第2观点的第1实施方式相同。 
在接着步骤S28的处理的步骤S22c1的处理中,第1解密装置30-1的解密部33根据谓语密码算法,从存储器31读取公开参数和解密密钥R和密码信息C1,求明文M(步骤S22c1)。 
接着步骤S22c1的处理的步骤30到步骤S40为止的处理与第2观点的第 1实施方式相同。 
在接着步骤S40的处理的步骤S34c1的处理中,第2解密装置30-2的解密部33根据谓语密码算法,从存储器31读取公开参数和解密密钥R和密码信息C1,求明文M(步骤S34c1)。 
[第2观点的第4实施方式] 
第2观点的第4实施方式相当于第2观点的第2实施方式和第2观点的第3实施方式的组合。即,第2观点的第4实施方式不同于第2观点的第1实施方式,(1)第1解密装置30-1和第2解密装置30-2生成第2属性信息或者第2谓语信息,(2)加密装置10的加密部13利用第1属性信息v=(v1,...,vn)或者第1谓语信息w=(w1,...,wn)、来自存储器11的公开参数所包含的公开密钥和明文M,求密码信息C1。根据该区别,第2观点的第4实施方式在几个方面与第2观点的第1实施方式不同。因此,针对与第2观点的第1实施方式重复的部分省略重复说明(对相同的构成元素分配相同的参照编号),并参照图55至图58说明与第1实施方式不同的部分。 
从步骤S1到步骤S17a的处理与第2观点的第1实施方式相同。但是,公开参数等的信息被设为第2观点的第4实施方式的谓语密码算法所需的信息。关于具体的信息请参考例如上述非专利文献2等。 
在接着步骤S17a的处理的步骤S17b1的处理中,加密装置10的加密部13根据谓语密码算法,利用第1属性信息v=(v1,...,vn)或者第1谓语信息w=(w1,...,wn)、来自存储器11的公开参数所包含的公开密钥和明文M,求密码信息C1(步骤S17b1)。 
接着,在步骤S17b1的处理之后,进行步骤S17d的处理。其中,在该处理中,加密装置10的发送部14接受控制部的控制,生成聚集了密码信息C1、来自存储器11的方案对、政策、公开参数、密钥生成装置的地址的密码消息(步骤S17d)。 
在接着步骤S17d的处理的步骤S18到步骤S22b的处理中,与第2观点的第1实施方式相同。 
在步骤S22b的处理中不具有解密密钥的情况下,第1解密装置30-1的第2谓语逻辑信息取得部35从存储器31读取政策、方案对、公开参数和用户信息,并从用户信息获得属性信息(称为第2属性信息)或者谓语信息(称为第2谓语信息)(步骤S23g)。在该处理中应用于用户信息的方案是,与通 过政策确定的一个方案成对的另一个方案。当政策为Cipher_Text_Policy时,利用与通过Cipher_Text_Policy确定的一个方案(谓语用方案)成对的另一个方案(属性用方案),从用户信息(属性指定信息)获得第2属性信息。当政策为Key_Policy时,利用与通过Key_Policy确定的一个方案(属性用方案)成对的另一个方案(谓语用方案),从用户信息(谓语指定信息)获得第2谓语信息。如此,必须注意在该处理中使用的方案是与在步骤S17a中使用的方案成对的方案。在第2观点的第4实施方式中,第2属性信息和第2谓语信息被设为以有限域Fq的元作为分量的一个或者多个向量信息(参照图11-13)。 
在步骤S23g的处理之后,进行步骤S23的处理。其中,在该处理中,第1解密装置30-1的发送部34接受控制部的控制,生成聚集了来自存储器31的公开参数、政策、方案对、认证信息、第2属性信息或者第2谓语信息的密钥请求消息。然后,第1解密装置30-1的发送部34将密钥请求消息发送到具有来自存储器31的地址的密钥生成装置,该密钥生成装置20的接收部接收密钥请求消息。 
然后,在步骤S24a的处理中验证成功的情况下,进行步骤S24d的处理。密钥生成装置20由于从第1解密装置30-1接收到第2属性信息或者第2谓语信息,因此不需要用于生成该信息的功能和处理。 
然后,步骤S24d的处理之后的步骤S28的处理与第2观点的第1实施方式相同。 
在接着步骤S28的处理的步骤S22c1的处理中,第1解密装置30-1的解密部33根据谓语密码算法,从存储器31读取公开参数和解密密钥R和密码信息C1,求明文M(步骤S22c1)。 
然后,步骤S22c1的处理之后的步骤S30到步骤S34a为止的各个处理与第2观点的第1实施方式相同。 
在步骤S34b的处理中不具有解密密钥的情况下,第2解密装置30-2的第2谓语逻辑信息取得部35从存储器31读取政策、方案对、公开参数和用户信息,并从用户信息获得属性信息(称为第2属性信息)或者谓语信息(称为第2谓语信息)(步骤S35g)。在该处理中应用于用户信息的方案是,与通过政策确定的一个方案成对的另一个方案。当政策为Cipher_Text_Policy时,利用与通过Cipher_Text_Policy确定的一个方案(谓语用方案)成对的另一个方案(属性用方案),从用户信息(属性指定信息)获得第2属性信息。当政 策为Key_Policy时,利用与通过Key_Policy确定的一个方案(属性用方案)成对的另一个方案(谓语用方案),从用户信息(谓语指定信息)获得第2谓语信息。如此,必须注意在该处理中使用的方案是与在步骤S17a中使用的方案成对的方案。在第2观点的第4实施方式中,第2属性信息和第2谓语信息被设为以有限域Fq的元作为分量的一个或者多个向量信息(参照图11-13)。 
在步骤S35g的处理之后,进行步骤S35的处理。其中,在该处理中,第2解密装置30-2的发送部34接受控制部的控制,生成聚集了来自存储器31的公开参数、政策、方案对、认证信息、第2属性信息或者第2谓语信息的密钥请求消息。然后,第2解密装置30-2的发送部34将密钥请求消息发送到具有来自存储器31的地址的密钥生成装置,该密钥生成装置20的接收部接收密钥请求消息。 
然后,在步骤S36a的处理中验证成功的情况下,进行步骤S36d的处理。密钥生成装置20由于从第2解密装置30-2接收到第2属性信息或者第2谓语信息,因此区别于第1实施方式,不需要用于生成该信息的功能和处理。 
然后,步骤S36d的处理之后的步骤S40的处理与第2观点的第1实施方式相同。 
在接着步骤S40的处理的步骤S34c1的处理中,第2解密装置30-2的解密部33根据谓语密码算法,从存储器31读取公开参数和解密密钥R和密码信息C1,求明文M(步骤S34c1)。 
第2观点的上述的各个实施方式例如作为电子邮件系统或即时通知系统实施。图59中例示发送接收的数据的结构。消息整体的基本格式例如遵循S/MIME(安全的多用途网际邮件扩充),但从密码消息开始位置标记到密码消息结束位置标记为止的数据通过XML(可扩展标识语言)等提供适当的数据结构。 
从密码消息开始位置标记到密码消息结束位置标记为止表示与谓语密码相关的一连串的数据。 
在算法识别符块中指定用于确定在公共密钥的加密中使用的谓语密码算法和在消息有效负载的加密中使用的公共密钥密码算法的信息。如此,能够指定表示算法的识别符和算法的版本等(PE/VersionX+Camellia[camellia为注册商标]等)。 
在数字署名块中记述数字署名。署名算法可使用现有的方式。该项目可 根据运用方式而省略。 
在公开参数信息块中指定用于确定已使用的公开信息参数的信息。还能够指定用于确定公开信息参数的信息或者公开信息参数的数据本身。 
在政策字段中指定用于确定已使用的政策的识别符。 
在方案字段中指定用于确定已使用的方案的识别符,或者记述方案的数据。 
在密码信息字段中指定通过谓语密码对在消息有效负载(明文)的加密中使用的公共密钥进行加密后的数据(密码信息)。 
在密码字段中记述对消息有效负载(明文)进行加密而生成的数据(密码文)。 
在属性字段/谓语字段中能够对应于政策字段而指定表示在加密中使用的属性/谓语的字符串表现。这些项目可根据运用方式而省略。 
附加字段中例如能够附加进行RSA加密后的附加文件等。该项目可根据运用方式而省略。 
此外,在例如伴随即时通知的安全的通信的情况下,不需要重发对公共密钥进行了加密的密码信息。在即时通知中,通常,如果在最初的即时消息中能够取得适当的公共密钥,则接收者可以为了在后续的即时消息的解密中使用而保存公共密钥。这样,在将后续的即时消息从发送者发送到接收者时,传送密码文,但也可以不传送公开参数信息、政策、方案、密码信息。同样地,在不变更所使用的密码算法的运用的情况下,可以省略后续的即时消息内的密码算法识别符。 
谓语密码是在加密时不受依赖于接收者的信息的约束的方式,因此发送者(装置)对于未知的接收者(装置)也能够发送密码消息。换言之,即使在存在多个接收者(装置)的情况下,发送者也只进行一次加密处理(在公开密钥密码方式中需要N次的加密处理)。因此,发送者(装置)能够以低的处理成本广播发送密码消息。 
此外,当接收者(装置)对第三者(装置)转发密码消息时,能够将从加密装置接收到的密码消息原样转发给第三者(装置)。在公开密钥密码方式中,需要接收者(装置)暂且解密密码消息,并利用第三者(装置)的公开密钥进行加密后发送该加密了的密码消息的处理,处理成本的负担大。但是,在上述的各个实施方式中,将从加密装置接收到的密码消息原样转发给第三 者(装置),因此能够以低的处理成本转发密码消息。 
下面,在留意上述的第1观点的密码通信技术的同时,从第3观点出发,说明能够灵活运用且能够发送通过谓语密码进行了加密的内容(content)(加密内容)的、依赖于谓语密码的密码通信技术相关的实施方式。根据该技术,通过谓语密码进行了加密的内容(加密内容)被储存在内容服务器装置中,并根据来自解密装置的请求而发送加密内容,从而能够发布加密内容。 
第3观点的密码通信技术的说明包含大量与上述的第1观点的密码通信技术的说明在实质上重复的部分,但为了可以不用参照第1观点的密码通信技术的说明,尽量不省略重复说明和重复附图而说明第3观点的密码通信技术。因此,算数式的编号、表示功能部的参照编号、表示步骤的参照编号等在两者中也有重复,但从文章的前后关系上不用担心会产生混乱。 
[第3观点的第1实施方式] 
参照图60至图71说明第3观点的本发明的第1实施方式。 
如图60所示,第3观点的密码系统1包含有多个客户机装置10、30、一个或者多个密钥生成装置20、一个或者多个内容服务器装置60、一个或者多个用户信息管理装置40(以下,称为管理装置)、变换规则信息对管理装置50(以下,称为注册装置)、一个或者多个保全装置80、一个或者多个认证装置90。这些各个装置例如经由作为互联网的通信网5可相互通信。 
客户机装置根据处理目的,作为对内容进行加密而生成加密内容的加密装置,或者作为对加密内容进行解密的解密装置发挥作用。因此,从功能的观点出发,将客户机装置称为加密装置10或者解密装置30。另外,第3观点的密码系统1也可以包含仅作为加密装置发挥作用的客户机装置和/或仅作为解密装置发挥作用的客户机装置。 
在第3观点的密码系统1中进行利用了谓语密码的加密和解密。在第3观点的本发明中,使用的谓语密码算法没有限定,例如允许使用在上述非专利文献2中公开的谓语密码算法。在第3观点的第1实施方式中,示出利用了KEM(Key Encapsulation Mechanisms)类型的谓语密码算法的例子。 
参照图61、62、63、64、66、69、71叙述密码系统1中的密码通信方法。关于各装置的功能结构,请参照图65、67、68、70。 
《准备程序》 
将第1观点的发明的第1实施方式中的《准备程序》的全部说明引用到 这里,省略重复说明。另外,作为与该《准备程序》的说明对应的图,请参照图61,关于方案对请参照图11-13,关于政策请参照图14。《准备程序》到此结束。 
《加密程序》 
加密装置10的发送部14接受未图示的控制部的控制,将检索查询发送到注册装置50,注册装置50的接收部接收检索查询(步骤S14)。注册装置50的检索部检索注册装置50的存储部所注册的条目的一部分或者全部从而选择一个条目(步骤S15),注册装置50的发送部将检索结果的条目发送到加密装置10,加密装置10的接收部接收条目(步骤S16)。该条目中包含有密钥生成装置的地址、该密钥生成装置的公开参数、该密钥生成装置可使用的政策列表、该密钥生成装置可使用的方案列表。接收到的条目被存储到加密装置10的存储器11。 
另外,当加密装置10预先持有各个密钥生成装置20的公开参数、方案列表、政策列表、地址的情况下,省略步骤S14-S16的处理。即,必须注意密码系统1不包含注册装置50的方式也被允许。 
加密装置10的第1谓语逻辑信息取得部12从存储器11读取输入信息和政策和方案,求属性信息(以下,称为第1属性信息)或者谓语信息(以下,称为第1谓语信息)(步骤S17)。对该处理的细节进行说明(参照图12、图13)。 
首先,在方案列表中记述了多个方案对的情况下,根据用途等选择一个方案对。可以是由加密装置10的用户选择方案对并输入其指示信息的情况,也可以按照规定的规则由第1谓语逻辑信息取得部12选择方案对。 
然后,根据输入信息是属性指定信息或者谓语指定信息的哪一个,与政策一起选择其中一方的方案。可以是由加密装置10的用户选择政策和其中一方的方案并输入其指示信息的情况,也可以是按照规定的规则由第1谓语逻辑信息取得部12选择政策和其中一方的方案的情况。另外,当密钥生成装置20的政策仅准备了一种类型的情况下,按照该政策选择方案对中的一个方案。假如,在所选择的方案与输入信息的种类不对应的情况下,从方案列表再次选择方案对,或者从注册装置50再次接受条目的提供即可。 
输入信息也可以是由加密装置10的用户输入的信息或者由加密装置10的取得部(未图示)从例如IC卡39那样的存储介质取得的信息。 
然后,第1谓语逻辑信息取得部12利用按照政策从方案对中选择的方案,从输入信息获得第1属性信息或者第1谓语信息。当政策为Key_Policy且选择的方案为属性用方案的情况下可获得第1属性信息。当政策为Cipher_Text_Policy且选择的方案为谓语用方案的情况下可获得第1谓语信息。在第3观点的第1实施方式中,第1属性信息和第1谓语信息被设为以有限域Fq的元作为分量的一个或者多个向量信息(参照图11-13)。这时,利用方案从输入信息提取必要的属性值并进行排列。 
接着,加密装置10的加密部13利用第1属性信息v=(v1,...,vn)或者第1谓语信息w=(w1,...,wn)、来自存储器11的公开参数所包含的正交基B(实质性的公开密钥)和内容M,求公开密钥K和密码信息C1和加密内容C2(步骤S17b、S17c)。关于这些处理的细节进行说明。 
首先,第1加密部13a根据谓语密码算法,生成作为有限域Fq的元的随机数r、ρ,如上述式(7)那样设定公共密钥K,并按照上述式(8)求密码信息C1(步骤S17b)。H例如是hash函数。在该例子中使用第1属性信息v,但在使用第1谓语信息的情况下在上述式(8)中将v替换为w即可。此外,在该例子中,密码信息C1是与用于生成公共密钥K的信息ρ对应的信息,但也可以将密码信息C1设为与公共密钥K对应的信息。 
接着,第2加密部13b利用公开密钥K和内容M,按照上述式(9)求加密内容C2(步骤S17c)。利用了公共密钥的加密方法EncK可以是众所周知的方法,例如是在上述非专利文献1中公开的方法。 
接着,加密装置10的发送部14接受控制部的控制,生成聚集了密码信息C1、加密内容C2、来自存储器11的方案对、政策、公开参数、密钥生成装置的地址的密码消息(步骤S17d)。然后,加密装置10的发送部14将密码消息发送到内容服务器装置60,内容服务器装置60的接收部接收密码消息(步骤S18)。加密内容的上载利用例如FTP(文件传输协议)或WebDAV(Distributed Authoring and Versioning protocol for the WWW)等众所周知的方式进行。 
《加密程序》到此结束。 
《内容发布程序》 
内容服务器装置60在未图示的控制部的控制下,在其存储器61中存储从各个加密装置10发送来的密码消息。由此,密码消息所包含的密码信息和 加密内容被注册到内容服务器装置60。内容服务器装置60中注册有怎样的加密内容例如在网页(Web页面)上公开。 
上述网页例如按照互联网协议,通过解密装置30的浏览器部38显示在解密装置30的显示器(未图示)中。解密装置30的用户进行用于选择所期望的加密内容的输入操作。解密装置30的浏览器部38基于用户输入的信息,将用于从内容服务器装置60取得所选择的加密内容的取得请求传递给解密装置30的解密部33(以下,称为中转部)(步骤S19)。然后,解密装置30的中转部33将该取得请求发送到内容服务器装置60,内容服务器装置60的接收部接收该取得请求(步骤S20)。这样,经由中转部33进行浏览器部38与内容服务器装置80的例如按照HTTP(超文本链接传输协议)的交易(例如允许使用万维浏览器的代理设定)。内容服务器装置60的检索部62检索包含通过取得请求指定的加密内容的密码消息并选择它(步骤S21),基于来自检索部62的指示,内容服务器装置60的发送部64将密码消息发送到解密装置30,解密装置30的接收部接收解密消息(步骤S22)。 
《内容发布程序》到此结束。 
《解密程序》 
解密装置30的发送部34接受未图示的控制部的控制,将包含密码消息所包含的密钥生成装置的地址的检索查询发送到注册装置50,注册装置50的接收部接收检索查询(步骤S23)。注册装置50的检索部检索由地址所指定的密钥生成装置的条目并选择它(步骤S24),注册装置50的发送部将检索结果的条目发送到解密装置30,解密装置30的接收部接收条目(步骤S25)。该条目中包含有密钥生成装置的地址、该密钥生成装置的公开参数、该密钥生成装置可使用的政策列表、该密钥生成装置可使用的方案列表。接收到的条目被存储到解密装置30的存储器31。 
另外,当解密装置30预先持有各个密钥生成装置20的公开参数、方案列表、政策列表、地址的情况下,省略步骤S19-S21的处理。这时,解密装置30从自身的存储器31中检索与密码消息所包含的地址对应的密钥生成装置的条目并取得它。 
解密装置30的验证部(未图示)接受控制部的控制,验证密码消息所包含的方案对和政策是否包含在从注册装置50取得的条目所包含的政策列表和方案列表中(步骤S26a)。在该验证失败的情况下,作为解密处理失败而 结束处理(步骤S26g)。 
在该验证成功的情况下,解密装置30的取得部32从例如IC卡39那样的存储介质读取与该解密装置30的用户对应的属性指定信息或者谓语指定信息(步骤S26f)。读取属性指定信息或者谓语指定信息中的哪一个是根据密码消息所包含的政策决定。即,所读取的信息是对应于用于确定与通过该政策确定的一个方案成对的另一个方案的政策的内容的指定信息。当政策为Cipher_Text_Policy时,取得部32从存储介质读取属性指定信息。当政策Key_Policy为时,取得部32从存储介质读取谓语指定信息。以下,将所读取的指定信息称为用户信息。此外,与后述的密钥生成装置20的处理《用户信息取得程序》同样地,也允许解密装置30的取得部32从管理装置40读取与该解密装置30的用户对应的属性指定信息或者谓语指定信息。另外,在第3观点的第1实施方式中,步骤S26f的处理任意进行。例如,当解密装置30预先持有与用户对应的属性指定信息和谓语指定信息的情况下,根据政策,属性指定信息或者谓语指定信息的其中一个成为用户信息。 
接着,解密装置30的验证部验证是否具有用于对密码消息所包含的密码信息进行解密的解密密钥(步骤S26b)。 
解密装置30在存储器31中存储解密密钥表。在解密密钥表中,例如如图15所示,对于密钥生成装置的识别符,关联了公开参数、方案对、解密密钥的对象、谓语指定信息、解密密钥。因此,验证部验证通过密码消息所包含的地址进行判别的密钥生成装置的识别符、公开参数、方案对、与解密密钥的对象(其中,解密密钥的对象对应于用于确定与通过密码消息所包含的政策确定的一个方案成对的另一个方案的政策的内容)对应的解密密钥的有无。如果解密密钥存在则进行步骤S33的处理。如果解密密钥不存在则进行步骤S27的处理。 
这里中断《解密程序》的说明,说明《密钥生成程序》。 
当如上所述那样解密密钥不存在时,解密装置30的发送部34接受控制部的控制,生成聚集了来自存储器31的公开参数、政策、方案对、(如果有的话)用户信息、认证信息的密钥请求消息。认证信息例如包含用户的ID和口令。然后,解密装置30的发送部34将密钥请求消息发送到具有来自存储器31的地址的密钥生成装置,该密钥生成装置20的接收部接收密钥请求消息(步骤S27)。接收到的密钥请求消息被存储到密钥生成装置20的存储器 21。 
密钥生成装置20的验证部(未图示)接受控制部的控制,验证密钥请求消息所包含的方案对和政策是否包含在该密钥生成装置20具有的条目(例如是在步骤S1中生成的条目)所包含的政策列表和方案列表、以及密钥请求消息所包含的公开参数是否为该密钥生成装置20的公开参数(步骤S28a)。该验证失败的情况下,作为密钥生成处理失败而结束处理(步骤S28g)。另外,在步骤S28a的处理中,如果在密钥请求消息中包含认证信息,则还验证密钥请求消息所包含的认证信息。密钥生成装置20在存储器21中存储了认证表。在认证表中,例如如图16所示,对于用户ID关联了口令。因此,验证部验证密钥请求消息所包含的用户ID和口令与认证表所包含的用户ID和口令的匹配性。在该验证失败的情况下也进行步骤S28g的处理。 
该验证成功的情况下,密钥生成装置20的验证部验证在密钥请求消息中是否包含有用户信息(步骤S28b)。如果在密钥请求消息中包含用户信息则进行步骤S28c的处理,如果在密钥请求消息中不包含用户信息则进行步骤S29的处理。另外,在采用密钥请求消息中一定包含用户信息的方法的情况下,不需要步骤S28b的处理以及后述的《用户信息取得程序》。 
这里,中断《密钥生成程序》的说明,说明《用户信息取得程序》。 
密钥生成装置20的发送部将包含密钥请求消息所包含的政策和(如果有的话)认证信息在内的请求发送到管理装置40,管理装置40接收请求(步骤S29)。接收到的请求被存储到管理装置40的存储器。 
管理装置40在存储器中存储了认证表。在该认证表中,与上述的认证表同样地,对于用户的ID关联了口令(参照图16)。因此,管理装置40的验证部(未图示)验证请求所包含的用户ID和口令与认证表所包含的用户ID和口令的匹配性。 
如果该验证成功,则管理装置40的检索部(未图示)按照请求所包含的政策,从存储器所存储的用户信息表中检索属性指定信息或者谓语指定信息(步骤S30)。用户信息表例如包含由用户ID和与其相关联的属性名以及属性指定信息构成的第1表、由用户ID和与其相关联的谓语指定信息构成的第2表(参照图17)。读取属性指定信息或者谓语指定信息的哪一个根据请求所包含的政策而决定。即,所读取的信息是对应于用于确定与通过该政策确定的一个方案成对的另一个方案的政策的内容的指定信息。当政策为 Cipher_Text_Policy时,检索部从第1表取得与请求所包含的用户ID对应的属性指定信息。当政策Key_Policy为时,检索部从第2表取得与请求所包含的用户ID对应的谓语指定信息。将读取的指定信息称为用户信息。 
管理装置40的发送部接受控制部的控制,将检索结果的用户信息发送到密钥生成装置20,密钥生成装置20的接收部接收用户信息(步骤S31)。接收到的用户信息被存储到密钥生成装置20的存储器21中。 
由此结束《用户信息取得程序》,重新回到《密钥生成程序》的说明。 
在已具有用户信息或者通过用户信息取得程序接收了用户信息的情况下(步骤S31),密钥生成装置20的第2谓语逻辑信息取得部23从存储器21读取政策、方案对、公开参数、用户信息,并从用户信息获得属性信息(称为第2属性信息)或者谓语信息(称为第2谓语信息)(步骤S28c)。在该处理中应用于用户信息的方案是与通过政策确定的一个方案成对的另一个方案。当政策为Cipher_Text_Policy时,利用与通过Cipher_Text_Policy确定的一个方案(谓语用方案)成对的另一个方案(属性用方案),从用户信息(属性指定信息)获得第2属性信息。当政策为Key_Policy时,利用与通过Key_Policy确定的一个方案(属性用方案)成对的另一个方案(谓语用方案),从用户信息(谓语指定信息)获得第2谓语信息。如此,必须注意在该处理中使用的方案是与在步骤S17a中使用的方案成对的方案。在第3观点的第1实施方式中,第2属性信息和第2谓语信息被设为以有限域Fq的元作为分量的一个或者多个向量信息(参照图11-13)。这时,利用方案从输入信息提取必要的属性值并进行排列。 
接着,密钥生成装置20的密钥生成部25根据谓语密码算法,基于公开参数的q而生成作为有限域Fq的元的随机数α,利用来自存储器21的第2属性信息v(p)=(v(p)1,...,v(p)n)或者第2谓语信息w(p)=(w(p)1,...,w(p)n)、该密钥生成装置的秘密密钥B*,按照上述式(10)求解密密钥R(步骤S28d)。对应于在加密处理中使用的输入信息为属性指定信息的情况,在该例子中使用第2谓语信息w(p),但在输入信息为谓语指定信息的情况下,第2属性信息v(p)相对应,因此在上述式(10)中将w(p)置换为v(p)即可。 
接着,密钥生成装置20的发送部24接受控制部的控制,将解密密钥R发送到解密装置30,解密装置30的接收部接收解密密钥R(步骤S32)。接收到的解密密钥R被存储到解密装置30的存储器31。 
由此结束《密钥生成程序》,重新回到《解密程序》的说明。 
在已经具有解密密钥或者通过密钥生成程序接收了解密密钥的情况下(步骤S32),解密装置30的中转部33从存储器31读取公开参数和解密密钥R和密码信息C1和(根据需要)加密内容C2,求公共密钥K和内容M(步骤S33)。 
说明该步骤S33的处理的细节。中转部33包含负责解密处理的第1解密部33a和第2解密部33b。 
第1解密部33a从存储器31读取公开参数和密码信息C1和解密密钥R,根据谓语密码算法求e(C1,R)。如上述式(11)所示,当输入信息为属性指定信息的情况下,该运算结果基于双线性性,依赖于从密码信息C1和解密密钥R取出的第1属性信息v和第2谓语信息w(p)的标准内积的结果。当输入信息为谓语指定信息的情况下,在上述式(11)中将v置换为v(p),将w(p)置换为w即可,运算结果基于双线性性,依赖于从密码信息C1和解密密钥R取出的第1谓语信息w和第2属性信息v(p)的标准内积的结果。其中,e(bi,bi *)被定义为如上述式(12)那样。δij是表示克罗内克符号标记。 
因此,当第1属性信息v和第2谓语信息w(p)的标准内积为0(或者第1谓语信息w和第2属性信息v(p)的标准内积为0)时,可获得上述式(11)的运算结果gT ρ。在获得了该运算结果gT ρ的情况下,解密装置30的第1解密部33a根据上述式(7)获得“正确的”公共密钥K(步骤S26c)。当第1属性信息v和第2谓语信息w(p)的标准内积不是0(或者第1谓语信息w和第2属性信息v(p)的标准内积不是0)时,第1解密部33a根据上述式(7)获得“不正确的”值。在该例子中,假设hash函数H包含在系统公共的公开参数中。在该例子中,密码信息C1是与用于生成公共密钥K的信息ρ对应的信息,但在将密码信息C1设为与公共密钥K对应的信息的情况下,上述式(11)的运算结果成为公共密钥K(或者不正确的值)。即,解密装置30的正当的用户具有提供与第1属性信息v的标准内积成为0的第2谓语信息w(p)的谓语指示信息,或者具有提供与第1谓语信息w的标准内积成为0的第2属性信息v(p)的属性指示信息。 
接着,第2解密部33b利用公共密钥K和加密内容C2,根据上述式(13)求内容M(步骤S26d)。利用了公共密钥的解密方法DecK对应于加密方法EncK。 
如果根据上述式(11)的运算结果为不正确的值,则无法通过上述式(13)获得正确的内容M。 
另外,解密装置30也可以将解密密钥R存储到解密密钥表中。此外,也可以将公共密钥K添加到解密密钥表中进行存储。 
对加密内容进行解密而获得的内容M从中转部33被传递给浏览器部38(步骤S34),通过浏览器部38显示在解密装置30的显示器中(步骤S35)。 
《解密程序》到此结束。 
[第3观点的第2实施方式] 
在第3观点的第2实施方式中,区别于第3观点的第1实施方式,解密装置30生成第2属性信息或者第2谓语信息。根据该区别,第3观点的第2实施方式在几个方面与第3观点的第1实施方式不同。因此,针对与第3观点的第1实施方式重复的部分省略重复说明(对相同的构成元素分配相同的参照编号),并参照图72-图75说明与第3观点的第1实施方式不同的部分。 
从步骤S1到步骤S26b的处理与第3观点的第1实施方式相同。 
在步骤S26b的处理中不具有解密密钥的情况下,解密装置30的第2谓语逻辑信息取得部35从存储器31读取政策、方案对、公开参数和用户信息,并从用户信息获得属性信息(称为第2属性信息)或者谓语信息(称为第2谓语信息)(步骤S27g)。在该处理中应用于用户信息的方案是,与通过政策确定的一个方案成对的另一个方案。当政策为Cipher_Text_Policy时,利用与通过Cipher_Text_Policy确定的一个方案(谓语用方案)成对的另一个方案(属性用方案),从用户信息(属性指定信息)获得第2属性信息。当政策为Key_Policy时,利用与通过Key_Policy确定的一个方案(属性用方案)成对的另一个方案(谓语用方案),从用户信息(谓语指定信息)获得第2谓语信息。如此,必须注意在该处理中使用的方案是与在步骤S17a中使用的方案成对的方案。在第3观点的第2实施方式中,第2属性信息和第2谓语信息被设为以有限域Fq的元作为分量的一个或者多个向量信息(参照图11-13)。 
在步骤S27g的处理之后,进行步骤S27的处理。其中,在该处理中,解密装置30的发送部34接受控制部的控制,生成聚集了来自存储器31的公开参数、政策、方案对、认证信息、第2属性信息或者第2谓语信息的密钥请求消息。然后,解密装置30的发送部34将密钥请求消息发送到具有来自存储器31的地址的密钥生成装置,该密钥生成装置20的接收部接收密钥请求 消息。 
然后,在步骤S28a的处理中验证成功的情况下,进行步骤S28d的处理。密钥生成装置20由于从解密装置30接收着第2属性信息或者第2谓语信息,因此区别于第3观点的第1实施方式,不需要用于生成该信息的功能和处理。 
然后,步骤S28d的处理之后的步骤S32到步骤S35为止的各个处理与第3观点的第1实施方式相同。 
[第3观点的第3实施方式] 
在第3观点的第3实施方式中,区别于第3观点的第1实施方式,加密装置10的加密部13利用第1属性信息v=(v1,...,vn)或者第1谓语信息w=(w1,...,wn)、来自存储器11的公开参数所包含的公开密钥和内容M,求加密内容C1。即,在第3观点的第3实施方式中,例如使用上述非专利文献2所示的谓语密码算法。根据该区别,第3观点的第3实施方式在几个方面与第3观点的第1实施方式不同。因此,针对与第1观点的第3实施方式重复的部分省略重复说明(对相同的构成元素分配相同的参照编号),并参照图76-图79说明与第3观点的第1实施方式不同的部分。 
从步骤S1到步骤S17a的处理与第3观点的第1实施方式相同。但是,公开参数等的信息被设为第3观点的第3实施方式的谓语密码算法所需的信息。关于具体的信息请参考例如上述非专利文献2等。 
在接着步骤S17a的处理的步骤S17b1的处理中,加密装置10的加密部13根据谓语密码算法,利用第1属性信息v=(v1,...,vn)或者第1谓语信息w=(w1,...,wn)、来自存储器11的公开参数所包含的公开密钥和内容M,求加密内容C1(步骤S17b1)。 
接着,在步骤S17b1的处理之后,进行步骤S17d的处理。其中,在该处理中,加密装置10的发送部14接受控制部的控制,生成聚集了加密内容C1、来自存储器11的方案对、政策、公开参数、密钥生成装置的地址的密码消息(步骤S17d)。 
接着步骤S17d的处理的步骤S18到步骤S32为止的处理与第3观点的第1实施方式相同。 
在接着步骤S32的处理的步骤S26c1的处理中,解密装置30的中转部33所包含的解密部33c根据谓语密码算法,从存储器31读取公开参数和解密密钥R和加密内容C1,求内容M(步骤S26c1)。 
接着步骤S26c1的处理的步骤S34和步骤S35的各个处理与第3观点的第1实施方式相同。 
[第3观点的第4实施方式] 
第3观点的第4实施方式相当于第3观点的第2实施方式和第3观点的第3实施方式的组合。即,第3观点的第4实施方式不同于第3观点的第1实施方式,(1)解密装置30生成第2属性信息或者第2谓语信息,(2)加密装置10的加密部13利用第1属性信息v=(v1,...,vn)或者第1谓语信息w=(w1,...,wn)、来自存储器11的公开参数所包含的公开密钥和内容M,求加密内容C1。根据该区别,第3观点的第4实施方式在几个方面与第3观点的第1实施方式不同。因此,针对与第3观点的第1实施方式重复的部分省略重复说明(对相同的构成元素分配相同的参照编号),并参照图80和图81说明与第3观点的第1实施方式不同的部分。 
从步骤S1到步骤S17a的处理与第3观点的第1实施方式相同。但是,公开参数等的信息被设为第3观点的第4实施方式的谓语密码算法所需的信息。关于具体的信息请参考例如上述非专利文献2等。 
在接着步骤S17a的处理的步骤S17b1的处理中,加密装置10的加密部13根据谓语密码算法,利用第1属性信息v=(v1,...,vn)或者第1谓语信息w=(w1,...,wn)、来自存储器11的公开参数所包含的公开密钥和内容M,求加密内容C1(步骤S17b1)。 
接着,在步骤S17b1的处理之后,进行步骤S17d的处理。其中,在该处理中,加密装置10的发送部14接受控制部的控制,生成聚集了加密内容C1、来自存储器11的方案对、政策、公开参数、密钥生成装置的地址的密码消息(步骤S17d)。 
在接着步骤S17d的处理的步骤S18到步骤S26b的处理中,与第3观点的第1实施方式相同。 
在步骤S26b的处理中不具有解密密钥的情况下,解密装置30的第2谓语逻辑信息取得部35从存储器31读取政策、方案对、公开参数和用户信息,并从用户信息获得属性信息(称为第2属性信息)或者谓语信息(称为第2谓语信息)(步骤S23g)。在该处理中应用于用户信息的方案是,与通过政策确定的一个方案成对的另一个方案。当政策为Cipher_Text_Policy时,利用与通过Cipher_Text_Policy确定的一个方案(谓语用方案)成对的另一个方案(属 性用方案),从用户信息(属性指定信息)获得第2属性信息。当政策为Key_Policy时,利用与通过Key_Policy确定的一个方案(属性用方案)成对的另一个方案(谓语用方案),从用户信息(谓语指定信息)获得第2谓语信息。如此,必须注意在该处理中使用的方案是与在步骤S17a中使用的方案成对的方案。在第3观点的第4实施方式中,第2属性信息和第2谓语信息被设为以有限域Fq的元作为分量的一个或者多个向量信息(参照图11-13)。 
在步骤S27g的处理之后,进行步骤S27的处理。其中,在该处理中,解密装置30的发送部34接受控制部的控制,生成聚集了来自存储器31的公开参数、政策、方案对、认证信息、第2属性信息或者第2谓语信息的密钥请求消息。然后,解密装置30的发送部34将密钥请求消息发送到具有来自存储器31的地址的密钥生成装置,该密钥生成装置20的接收部接收密钥请求消息。 
然后,在步骤S28a的处理中验证成功的情况下,进行步骤S28d的处理。密钥生成装置20由于从解密装置30接收到第2属性信息或者第2谓语信息,因此不需要用于生成该信息的功能和处理。 
然后,步骤S28d的处理之后的步骤S32的处理与第3观点的第1实施方式相同。 
在接着步骤S32的处理的步骤S26c1的处理中,解密装置30的解密部33根据谓语密码算法,从存储器31读取公开参数和解密密钥R和加密内容C1,求内容M(步骤S26c1)。 
接着步骤S26c1的处理的步骤S34和步骤S35的各个处理与第3观点的第1实施方式相同。 
根据第3观点的上述各个实施方式可知,中转部进行加密内容的解密。因此,能够从例如万维网服务器或万维网浏览器的通常的协议中脱离而实施解密处理,沿用现有的万维网系统变得容易。此外,即使用户不进行加密内容的解密处理,也有中转部进行解密处理,因此用户的便利性高。 
在第3观点的上述各个实施方式中,还允许在内容服务器装置60和解密装置30之间的通信路径中设置高速缓存(cache)服务器装置的运用(这时,加密内容被高速缓存)。 
此外,考虑到不会始终将客户机终端连接到通信网5的运用上的便利性,可以由中转部对解密前的加密内容进行高速缓存。 
此外,为了避免将已解密内容高速缓存至万维网浏览器,可以将用于使高速缓存无效的HTTP高速缓存控制报头附加到对万维网浏览器的响应中。 
考虑到多个用户使用相同的客户机终端装置的情况,也可以采用中转部具有认证功能的系统结构。这时,可以对万维网浏览器利用HTTP的Basic认证或Digest认证,并且,对中转部追加用于认证的认证信息(用户ID/口令)的表格等以及认证信息的追加/变更/删除相关的管理功能。 
第3观点的上述各个实施方式适合作为内容发布系统来实施。谓语密码是在加密时不受依赖于接收者的信息的约束的方式,因此适合作为可能被不确定的人浏览的内容的访问控制。 
图82中例示发送接收的数据的结构。消息整体的基本格式例如遵循S/MIME(安全的多用途网际邮件扩充),但从密码消息开始位置标记到密码消息结束位置标记为止的数据通过XML(可扩展标识语言)等提供适当的数据结构。 
将与加密内容相关的数据设为密码块。以下,示出密码块的构成元素。 
在算法识别符块中指定用于确定在公共密钥的加密中使用的谓语密码算法和在内容的加密中使用的公共密钥密码算法的信息。如此,能够指定表示算法的识别符和算法的版本等(PE/VersionX+Camellia[camellia为注册商标]等)。 
在数字署名块中记述数字署名。署名算法可使用现有的方式。该项目可根据运用方式而省略。 
在公开参数信息块中指定用于确定已使用的公开信息参数的信息。还能够指定用于确定公开信息参数的信息或者公开信息参数的数据本身。 
在政策字段中指定用于确定已使用的政策的识别符。 
在方案字段中指定用于确定已使用的方案的识别符,或者记述方案的数据。 
在密码信息字段中指定通过谓语密码对在内容的加密中使用的公共密钥进行加密后的数据(密码信息)。 
在内容文件名、内容类型、内容文件大小中分别记述内容的文件名、内容的数据类型(例如,text/html等)、内容的文件大小。 
在属性字段/谓语字段中能够对应于政策字段而指定表示在加密中使用的属性/谓语的字符串表现。这些项目可根据运用方式而省略。 
在密码数据中记述对内容进行加密而生成的加密内容。 
内容的基本数据结构通过HTML(超文本链接标识语言)记述,密码块通过HTML内部的注释文字指定。 
密码块通过XML(可扩展标识语言)等提供适当的数据结构。 
在想要通过浏览器等直接浏览的情况下,由于不显示注释文字而显示剩余的HTML的文章,因此也可以在剩余的HTML部分中记述表示是加密内容的消息、解密失败的情况下的错误消息等。 
在上述的说明中将代数构造S设为有限域,但也可以是有限环(整数剩余环)。当谓语密码算法例如是使用内积的谓语密码算法的情况下,第1、第2属性信息以及第1、第2谓语信息被设为以S的元作为分量的向量。 
此外,根据代数构造S的体系,公开密钥B为S上的加法群V的元的集合,秘密密钥B*为加法群V的对偶加法群V*的元的集合,解密密钥R被设为对偶加法群V*的元。另外,当代数构造S为有限域时,有限域上的加法群V是所谓的有限域上的向量空间。这时,加密部通过进行包含如下运算的运算从而求密码信息:对公开密钥B的元进行以第1属性信息的分量作为系数的标量积的运算或者对公开密钥B的元进行以第1谓语信息的分量作为系数的标量积的运算。然后,密钥生成部通过进行包含如下运算的运算从而求解密密钥R:对秘密密钥B*的元进行以第2谓语信息的分量作为系数的标量积的运算或者对秘密密钥B*的元进行以第2属性信息的分量作为系数的标量积的运算。 
在密码系统中包含的硬件实体(客户机装置、密钥生成装置、注册装置、管理装置、保全装置、认证装置、内容服务器装置)具有可连接键盘等的输入部、可连接液晶显示器等的输出部、可连接能够对硬件实体的外部进行通信的通信装置(例如通信线缆)的通信部、CPU(中央处理单元)[也可以具备闪存和寄存器等]、作为存储器的RAM和ROM、连接以便能够进行作为硬盘的外部存储装置以及这些输入部、输出部、通信部、CPU、RAM、ROM、外部存储装置之间的数据交换的总线。此外根据需要,也可以在硬件实体中设置能够对CD-ROM等存储介质进行读写的装置(驱动)等。作为具备了这样的硬件资源的物理实体,有通用计算机等。 
在硬件实体的外部存储装置中存储了实现上述功能所需的程序以及在该程序的处理中所需的数据等(不限于外部存储装置,例如也可以将程序预先 存储到作为读出专用存储装置的ROM中等)。此外,通过这些程序的处理所得到的程序等被适当存储到RAM或外部存储装置等。在上述的说明中,将存储运算结果或其存储区域的地址等的RAM或寄存器等的存储装置只是设为“存储器”。 
在硬件实体中,外部存储装置[或者ROM等]所存储的各个程序和该各个程序的处理所需的数据根据需要被读入到存储器中,适当通过CPU进行解释执行和处理。其结果,CPU实现规定的功能(例如,加密部、解密部、密钥生成部、第1谓语逻辑信息取得部、第2谓语逻辑信息取得部、控制部等)。 
在各个实施方式中说明的硬件实体的细节部分中,有时需要整数论中的数值计算处理,但由于整数论中的数值计算处理本身与公知技术同样地实现,因此省略了其运算处理方法等的详细说明(作为可进行表示这一点的技术水平的整数论中的数值计算处理的软件,例如可举出PARI/GP、KANT/ASH等。关于PARI/GP,例如参照互联网<URL:http://pari.math.u-bordeaux.fr/>[平成21年4月14日检索]。关于KANT/ASH,例如参照互联网<URL:http://www.math.tu-berlin.de/algebra/>[平成21年4月14日检索]。)。此外,作为关于这一点的文献,可举出参考文献A。 
(参考文献A)H.Cohen,"A Course in Computational Algebraic Number Theory",GTM138,Springer-Verlag,1993. 
本发明不限于上述的实施方式,在不脱离本发明的宗旨的范围内能够进行适当变更。此外,在上述实施方式中说明的处理不仅可以按照记载的顺序以时间序列方式执行,也可以根据执行处理的装置的处理能力或者根据需要并行执行或者单独执行。 
此外,在通过计算机实现在上述实施方式中说明的硬件实体中的处理功能的情况下,硬件实体应具有的功能的处理内容通过程序来记述。并且,通过由计算机执行该程序,从而在计算机上实现上述硬件实体中的处理功能。 
记述了该处理内容的程序能够预先存储到计算机可读取的存储介质中。作为计算机可读取的存储介质,例如可以是磁性存储装置、光盘、光磁存储介质、半导体存储器等。具体地,例如作为磁性存储介质可利用硬盘装置、可移动盘、磁带等,作为光盘可利用DVD(数字化视频光盘)、DVD-RAM(随机存储存储器)、CD-ROM(光盘只读存储器)、CD-R(可写的)/RW(可改写)等,作为光磁存储介质可使用MO(磁光盘)等,作为半导体存储器 可使用EEP-ROM(电可擦除可编程只读存储器)等。 
此外,该程序的流通例如通过对存储了该程序的DVD、CD-ROM等可移动型存储介质进行销售、转让、出借等而进行。进而,也可以是将该程序保存到服务器计算机的存储装置,经由网络将该程序从服务器计算机转发给其他计算机,从而使该程序流通的结构。 
执行这样的程序的计算机,例如,首先将可移动型存储介质所存储的程序或者从服务器计算机转发的程序暂时保存到自身的存储装置。然后,在执行处理时,该计算机读取自身的存储介质中保存的程序,并执行按照读取的程序的处理。此外,作为该程序的其他执行方式,也可以设为计算机从可移动型存储介质直接读取程序,并执行按照该程序的处理,进而,也可以设为每当程序从服务器计算机被转发到该计算机时,逐次执行按照获取的程序的处理。此外,也可以设为不从服务器计算机对该计算机转发程序,而是通过仅根据其执行指示和结果取得来实现处理功能的、所谓的ASP(应用服务供应商)型的服务来执行上述的处理的结构。另外,假设本方式中的程序中包含用于电子计算机的处理且依照程序的信息(不是对计算机的直接指令但具有规定计算机的处理的性质的数据等)。 
此外,在该方式中,通过使在计算机上执行规定的程序,从而构成硬件按实体,但也可以设为将这些处理内容的至少一部分通过硬件方式来实现。 
另外,附图中记载的姓名等信息是虚构的,与实际的人物没有任何关系。 
<总结> 
从第1观点出发总结本发明,则如下。 
[项目1] 
一种密码系统,利用函数密码,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置,其中, 
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥, 
预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变 换规则信息)的对, 
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息, 
上述加密装置包括: 
第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得属性信息(以下,称为第1属性信息)或者逻辑信息(以下,称为第1逻辑信息);以及 
加密部,利用上述第1属性信息或者上述第1逻辑信息、以及上述密钥生成装置的公开密钥,按照函数密码算法,求公共密钥、以及与该公共密钥或者在该公共密钥的生成中使用的信息对应的密码信息, 
上述密钥生成装置包括: 
第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与上述解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属性信息)或者逻辑信息(以下,称为第2逻辑信息);以及 
密钥生成部,利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的解密密钥, 
上述解密装置包括: 
解密部,利用上述解密密钥,按照函数密码算法进行对于上述密码信息的解密处理。 
[项目2] 
一种密码系统,利用函数密码,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置,其中, 
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥, 
预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与 规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对, 
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息, 
上述加密装置包括: 
第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得属性信息(以下,称为第1属性信息)或者逻辑信息(以下,称为第1逻辑信息);以及 
加密部,利用上述第1属性信息或者上述第1逻辑信息、以及上述密钥生成装置的公开密钥,按照函数密码算法,求公共密钥、以及与该公共密钥或者在该公共密钥的生成中使用的信息对应的密码信息, 
上述解密装置包括: 
第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与上述解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属性信息)或者逻辑信息(以下,称为第2逻辑信息);以及 
解密部,利用从上述密钥生成装置送来的解密密钥,按照函数密码算法进行对于上述密码信息的解密处理, 
上述密钥生成装置包括: 
密钥生成部,利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的解密密钥。 
[项目3] 
一种密码系统,利用函数密码,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置,其中, 
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥, 
预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了 用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对, 
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息, 
上述加密装置包括: 
第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得属性信息(以下,称为第1属性信息)或者逻辑信息(以下,称为第1逻辑信息);以及 
加密部,利用上述第1属性信息或者上述第1逻辑信息、上述密钥生成装置的公开密钥、以及明文,按照函数密码算法,求与该明文对应的密码信息, 
上述密钥生成装置包括: 
第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与上述解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属性信息)或者逻辑信息(以下,称为第2逻辑信息);以及 
密钥生成部,利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的解密密钥, 
上述解密装置包括: 
解密部,利用上述解密密钥,按照函数密码算法进行对于上述密码信息的解密处理。 
[项目4] 
一种密码系统,利用函数密码,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置,其中, 
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公 开密钥, 
预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对, 
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息, 
上述加密装置包括: 
第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得属性信息(以下,称为第1属性信息)或者逻辑信息(以下,称为第1逻辑信息);以及 
加密部,利用上述第1属性信息或者上述第1逻辑信息、上述密钥生成装置的公开密钥、以及明文,按照函数密码算法,求与该明文对应的密码信息, 
上述解密装置包括: 
第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与上述解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属性信息)或者逻辑信息(以下,称为第2逻辑信息);以及 
解密部,利用从上述密钥生成装置送来的解密密钥,按照函数密码算法进行对于上述密码信息的解密处理, 
上述密钥生成装置包括: 
密钥生成部,利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的解密密钥。 
[项目5] 
在项目1或者项目2记载的密码系统中, 
上述加密装置的上述加密部还求通过上述公共密钥对明文进行了加密的密码文, 
上述解密装置的上述解密部还进行利用通过上述解密处理得到的上述公共密钥的上述密码文的第2解密处理,或者,利用根据在通过上述解密处理获得的上述公共密钥的生成中使用的上述信息而生成的公共密钥的上述密码文的第2解密处理。 
[项目6] 
在项目1至项目5的任一项记载的密码系统中, 
与上述用户对应的上述属性指定信息和/或上述逻辑式指定信息被存储到存储介质中, 
上述解密装置包括:用户信息取得部,该用户信息取得部从上述存储介质取得与该解密装置的用户对应的上述属性指定信息或者上述逻辑式指定信息。 
[项目7] 
在项目1或者项目3记载的密码系统中, 
上述密钥生成装置使用的与上述解密装置的用户对应的上述属性指定信息或者上述逻辑式指定信息是从上述解密装置取得的信息。 
[项目8] 
在项目1至项目6的任一项记载的密码系统中, 
上述密码系统还包括一个或者多个用户信息管理装置, 
各个上述用户信息管理装置包括:存储部,该存储部存储与上述用户对应的上述属性指定信息和/或上述逻辑式指定信息, 
上述密钥生成装置包括:用户信息取得部,该用户信息取得部从上述用户信息管理装置取得与上述解密装置的用户对应的上述属性指定信息或者上述逻辑式指定信息。 
[项目9] 
在项目1至项目8的任一项记载的密码系统中, 
对各个上述密钥生成装置预先规定了一个或者多个上述变换规则信息对, 
上述密码系统还包括一个或者多个变换规则信息对管理装置, 
各个上述变换规则信息对管理装置包括:存储部,该存储部存储与各个 上述密钥生成装置对应的各个上述变换规则信息对, 
上述加密装置包括:变换规则信息对取得部,该变换规则信息对取得部从上述变换规则信息对管理装置取得上述变换规则信息对, 
上述解密装置包括:变换规则信息对取得部,该变换规则信息对取得部从上述变换规则信息对管理装置取得上述变换规则信息对。 
[项目10] 
在项目1至项目8的任一项记载的密码系统中, 
对各个上述密钥生成装置预先规定了一个或者多个上述变换规则信息对, 
各个上述密钥生成装置还包括:存储部,该存储部存储与该上述密钥生成装置对应的各个上述变换规则信息对, 
各个上述加密装置还包括:存储部,该存储部存储与至少一个以上的上述密钥生成装置对应的各个上述变换规则信息对, 
各个上述解密装置还包括:存储部,该存储部存储与至少一个以上的上述密钥生成装置对应的各个上述变换规则信息对。 
[项目11] 
在项目1至项目10的任一项记载的密码系统中, 
在上述密钥生成装置的每一个中预先规定了上述政策信息的确定对象只有上述属性用变换规则信息,或者只有上述逻辑式用变换规则信息,或者是上述属性用变换规则信息以及上述逻辑式用变换规则信息。 
[项目12] 
在项目1至项目11的任一项记载的密码系统中, 
将代数构造K设为有限环或者有限域, 
上述第1、第2属性信息以及上述第1、第2逻辑信息是以上述K的元作为分量的向量, 
在上述解密部的上述解密处理中,进行以上述密码信息和上述解密密钥作为输入且依赖于上述第1逻辑信息和上述第2属性信息的标准内积或者上述第1属性信息和上述第2逻辑信息的标准内积的结果的运算。 
[项目13] 
在项目12记载的密码系统中, 
上述公开密钥是K上的加法群V的元的集合, 
上述秘密密钥是上述加法群V的对偶加法群V*的元的集合, 
上述解密密钥是上述对偶加法群V*的元, 
上述加密部通过进行包含如下运算的运算从而求上述密码信息:对上述公开密钥的元进行以上述第1属性信息的分量作为系数的标量倍的运算,或者对上述公开密钥的元进行以上述第1逻辑信息的分量作为系数的标量倍的运算, 
上述密钥生成部通过进行包含如下运算的运算从而求上述解密密钥:对上述秘密密钥的元进行以上述第2逻辑信息的分量作为系数的标量倍的运算,或者对上述秘密密钥的元进行以上述第2属性信息的分量作为系数的标量倍的运算, 
在上述解密部的上述解密处理中使用的上述运算具有双线性性,并且上述运算的结果依赖于,基于双线性性根据上述密码信息和上述解密密钥所取出的上述第1逻辑信息和上述第2属性信息或者上述第1属性信息和上述第2逻辑信息的标准内积的结果。 
[项目14] 
一种密码通信方法,用于利用函数密码的密码系统,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置,其中, 
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥, 
预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对, 
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息, 
上述密码通信方法具有: 
第1命题逻辑信息取得步骤,上述加密装置的第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用 变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得属性信息(以下,称为第1属性信息)或者逻辑信息(以下,称为第1逻辑信息); 
加密步骤,上述加密装置的加密部利用上述第1属性信息或者上述第1逻辑信息、以及上述密钥生成装置的公开密钥,按照函数密码算法,求公共密钥、以及与该公共密钥或者在该公共密钥的生成中使用的信息对应的密码信息; 
第2命题逻辑信息取得步骤,上述密钥生成装置的第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与上述解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属性信息)或者逻辑信息(以下,称为第2逻辑信息); 
密钥生成步骤,上述密钥生成装置的密钥生成部利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的解密密钥;以及 
解密步骤,上述解密装置的解密部利用上述解密密钥,按照函数密码算法进行对于上述密码信息的解密处理。 
[项目15] 
一种密码通信方法,用于利用函数密码的密码系统,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置,其中, 
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥, 
预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对, 
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规 则信息中的哪一个的政策信息, 
上述密码通信方法具有: 
第1命题逻辑信息取得步骤,上述加密装置的第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得属性信息(以下,称为第1属性信息)或者逻辑信息(以下,称为第1逻辑信息); 
加密步骤,上述加密装置的加密部利用上述第1属性信息或者上述第1逻辑信息、以及上述密钥生成装置的公开密钥,按照函数密码算法,求公共密钥、以及与该公共密钥或者在该公共密钥的生成中使用的信息对应的密码信息; 
第2命题逻辑信息取得步骤,上述解密装置的第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与上述解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属性信息)或者逻辑信息(以下,称为第2逻辑信息); 
密钥生成步骤,上述密钥生成装置的密钥生成部利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的解密密钥;以及 
解密步骤,上述解密装置的解密部利用上述解密密钥,按照函数密码算法进行对于上述密码信息的解密处理。 
[项目16] 
一种密码通信方法,用于利用函数密码的密码系统,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置,其中, 
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥, 
预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与 规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对, 
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息, 
上述密码通信方法具有: 
第1命题逻辑信息取得步骤,上述加密装置的第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得属性信息(以下,称为第1属性信息)或者逻辑信息(以下,称为第1逻辑信息); 
加密步骤,上述加密装置的加密部利用上述第1属性信息或者上述第1逻辑信息、上述密钥生成装置的公开密钥、以及明文,按照函数密码算法,求与该明文对应的密码信息; 
第2命题逻辑信息取得步骤,上述密钥生成装置的第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与上述解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属性信息)或者逻辑信息(以下,称为第2逻辑信息); 
密钥生成步骤,上述密钥生成装置的密钥生成部利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的解密密钥;以及 
解密步骤,上述解密装置的解密部利用上述解密密钥,按照函数密码算法进行对于上述密码信息的解密处理。 
[项目17] 
一种密码通信方法,用于利用函数密码的密码系统,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置,其中, 
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥, 
预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对, 
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息, 
上述密码通信方法具有: 
第1命题逻辑信息取得步骤,上述加密装置的第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得属性信息(以下,称为第1属性信息)或者逻辑信息(以下,称为第1逻辑信息); 
加密步骤,上述加密装置的加密部利用上述第1属性信息或者上述第1逻辑信息、上述密钥生成装置的公开密钥、以及明文,按照函数密码算法,求与该明文对应的密码信息; 
第2命题逻辑信息取得步骤,上述解密装置的第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与上述解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属性信息)或者逻辑信息(以下,称为第2逻辑信息); 
密钥生成步骤,上述密钥生成装置的密钥生成部利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的解密密钥;以及 
解密步骤,上述解密装置的解密部利用上述解密密钥,按照函数密码算法进行对于上述密码信息的解密处理。 
[项目18] 
在项目14或者项目15记载的密码通信方法中, 
上述加密步骤包括:上述加密部还求通过上述公共密钥对明文进行了加 密的密码文的密码文生成步骤, 
上述解密步骤包括:上述解密部进行利用通过上述解密处理得到的上述公共密钥的上述密码文的第2解密处理,或者,利用根据在通过上述解密处理获得的上述公共密钥的生成中使用的上述信息而生成的公共密钥的上述密码文的第2解密处理的步骤。 
[项目19] 
在项目14至项目18的任一项记载的密码通信方法中,具有: 
取得步骤,上述解密装置的取得部从用于存储与上述用户对应的上述属性指定信息和/或上述逻辑式指定信息的存储介质,取得与该解密装置的用户对应的上述属性指定信息或者上述逻辑式指定信息。 
[项目20] 
在项目14或者项目16记载的密码通信方法中,具有: 
用户信息发送步骤,上述解密装置的发送部将与该解密装置的用户对应的上述属性指定信息或者上述逻辑式指定信息发送到上述密钥生成装置;以及 
用户信息接收步骤,上述密钥生成装置的接收部从上述解密装置接收与上述用户对应的上述属性指定信息或者上述逻辑式指定信息。 
[项目21] 
在项目14至项目18的任一项记载的密码通信方法中, 
上述密码系统包括一个或者多个用户信息管理装置,各个上述用户信息管理装置包括用于存储与上述用户对应的上述属性指定信息和/或上述逻辑式指定信息的存储部, 
上述密码通信方法具有: 
用户信息取得步骤,上述密钥生成装置的用户信息取得部从上述用户信息管理装置取得与上述解密装置的用户对应的上述属性指定信息或者上述逻辑式指定信息。 
[项目22] 
在项目14至项目21的任一项记载的密码通信方法中, 
对各个上述密钥生成装置预先规定了一个或者多个上述变换规则信息对, 
上述密码系统包括一个或者多个变换规则信息对管理装置,各个上述变 换规则信息对管理装置包括用于存储与各个上述密钥生成装置对应的各个上述变换规则信息对的存储部, 
上述密码通信方法具有: 
上述加密装置的变换规则信息对取得部从上述变换规则信息对管理装置取得上述变换规则信息对的变换规则信息对取得步骤;以及 
上述解密装置的变换规则信息对取得部从上述变换规则信息对管理装置取得上述变换规则信息对的变换规则信息对取得步骤。 
[项目23] 
在项目14至项目22的任一项记载的密码通信方法中, 
在上述密钥生成装置的每一个中预先规定了上述政策信息的确定对象只有上述属性用变换规则信息,或者只有上述逻辑式用变换规则信息,或者是上述属性用变换规则信息以及上述逻辑式用变换规则信息。 
[项目24] 
在项目14至项目23的任一项记载的密码通信方法中, 
将代数构造K设为有限环或者有限域, 
上述第1、第2属性信息以及上述第1、第2逻辑信息是以上述K的元作为分量的向量, 
在上述解密步骤中,上述解密部进行以上述密码信息和上述解密密钥作为输入且依赖于上述第1逻辑信息和上述第2属性信息的标准内积或者上述第1属性信息和上述第2逻辑信息的标准内积的结果的运算。 
[项目25] 
在项目24记载的密码通信方法中, 
上述公开密钥是K上的加法群V的元的集合, 
上述秘密密钥是上述加法群V的对偶加法群V*的元的集合, 
上述解密密钥是上述对偶加法群V*的元, 
在上述加密步骤中,上述加密部通过进行包含如下运算的运算从而求上述密码信息:对上述公开密钥的元进行以上述第1属性信息的分量作为系数的标量倍的运算,或者对上述公开密钥的元进行以上述第1逻辑信息的分量作为系数的标量倍的运算, 
在上述密钥生成步骤中,上述密钥生成部通过进行包含如下运算的运算从而求上述解密密钥:对上述秘密密钥的元进行以上述第2逻辑信息的分量 作为系数的标量倍的运算,或者对上述秘密密钥的元进行以上述第2属性信息的分量作为系数的标量倍的运算, 
在上述解密部的上述解密处理中使用的上述运算具有双线性性,并且上述运算的结果依赖于,基于双线性性根据上述密码信息和上述解密密钥所取出的上述第1逻辑信息和上述第2属性信息或者上述第1属性信息和上述第2逻辑信息的标准内积的结果。 
[项目26] 
一种加密装置,用于利用函数密码的密码系统, 
在该密码系统中, 
至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置, 
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥, 
预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对, 
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息, 
上述加密装置包括: 
第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得属性信息(以下,称为第1属性信息)或者逻辑信息(以下,称为第1逻辑信息);以及 
加密部,利用上述第1属性信息或者上述第1逻辑信息、以及上述密钥生成装置的公开密钥,按照函数密码算法,求公共密钥、以及与该公共密钥或者在该公共密钥的生成中使用的信息对应的密码信息。 
[项目27] 
一种加密装置,用于利用函数密码的密码系统, 
在该密码系统中, 
至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置, 
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥, 
预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对, 
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息, 
上述加密装置包括: 
第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得属性信息(以下,称为第1属性信息)或者逻辑信息(以下,称为第1逻辑信息);以及 
加密部,利用上述第1属性信息或者上述第1逻辑信息、上述密钥生成装置的公开密钥、以及明文,按照函数密码算法,求与该明文对应的密码信息。 
[项目28] 
一种密钥生成装置,用于利用函数密码的密码系统, 
在该密码系统中, 
至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置, 
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公 开密钥, 
预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对, 
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息, 
上述密钥生成装置包括: 
第2命题逻辑信息取得部,利用与通过上述政策信息确定的一个变换规则信息构成一对的另一个变换规则信息,从与上述解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属性信息)或者逻辑信息(以下,称为第2逻辑信息);以及 
密钥生成部,利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的解密密钥。 
[项目29] 
一种密钥生成装置,用于利用函数密码的密码系统, 
在该密码系统中, 
至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置, 
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥, 
预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对, 
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息, 
上述密钥生成装置包括: 
密钥生成部,利用与通过上述政策信息确定的一个变换规则信息构成一对的另一个变换规则信息,根据与上述解密装置的用户对应的属性指定信息或者逻辑式指定信息而生成属性信息(以下,称为第2属性信息)或者逻辑信息(以下,称为第2逻辑信息),并且利用该第2属性信息或者第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的解密密钥。 
[项目30] 
一种解密装置,用于利用函数密码的密码系统, 
在该密码系统中, 
至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置, 
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥, 
预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对, 
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息, 
上述解密装置包括: 
解密部,利用上述密钥生成装置生成的解密密钥,按照函数密码算法,进行对于上述加密装置生成的密码信息的解密处理。 
[项目31] 
一种解密装置,用于利用函数密码的密码系统, 
在该密码系统中, 
至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置, 
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公 开密钥, 
预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对, 
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息, 
上述解密装置包括: 
第2命题逻辑信息取得部,利用与通过上述政策信息确定的一个变换规则信息构成一对的另一个变换规则信息,从与上述解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属性信息)或者逻辑信息(以下,称为第2逻辑信息);以及 
解密部,利用上述密钥生成装置生成的解密密钥,按照函数密码算法,进行对于上述加密装置生成的密码信息的解密处理。 
[项目32] 
一种程序,使计算机作为项目26或者项目27记载的加密装置发挥作用。 
[项目33] 
一种程序,使计算机作为项目28或者项目29记载的密钥生成装置发挥作用。 
[项目34] 
一种程序,使计算机作为项目30或者项目31记载的解密装置发挥作用。 
[项目35] 
一种计算机可读取的存储介质,存储了项目32记载的程序、项目33记载的程序、项目34记载的程序中的至少一个。 
如果从第2观点出发总结本发明,则如下。另外,重置项目号从而从1开始顺序分配项目号。 
[项目1] 
一种密码通信方法,用于利用函数密码的密码系统,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、多个解密装置,其 中, 
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥, 
预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对, 
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息, 
上述密码通信方法具有: 
上述加密装置的第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得属性信息(以下,称为第1属性信息)或者逻辑信息(以下,称为第1逻辑信息)的第1命题逻辑信息取得步骤; 
上述加密装置的加密部利用上述第1属性信息或者上述第1逻辑信息、以及上述密钥生成装置的公开密钥,按照函数密码算法,求公共密钥、以及与该公共密钥或者在该公共密钥的生成中使用的信息对应的密码信息的加密步骤; 
上述加密装置的发送部将上述密码信息发送到第1解密装置的密码信息发送步骤; 
上述第1解密装置的接收部从上述加密装置接收上述密码信息的密码信息接收步骤; 
上述密钥生成装置的第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与上述第1解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属性信息)或者逻辑信息(以下,称为第2逻辑信息)的第2命题逻辑信息取得步骤; 
上述密钥生成装置的密钥生成部利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的第1解密密钥的密钥生成步骤; 
上述密钥生成装置的发送部将上述第1解密密钥发送到上述第1解密装置的解密密钥发送步骤; 
上述第1解密装置的接收部从上述密钥生成装置接收上述第1解密密钥的解密密钥接收步骤; 
上述第1解密装置的解密部利用上述第1解密密钥,按照函数密码算法进行对于上述密码信息的解密处理的解密步骤; 
上述第1解密装置的转发部将上述密码信息转发给该第1解密装置以外的第2解密装置的转发步骤; 
上述第2解密装置的接收部从上述第1解密装置接收上述密码信息的接收步骤; 
上述密钥生成装置的第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与上述第2解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第3属性信息)或者逻辑信息(以下,称为第3逻辑信息)的第3命题逻辑信息取得步骤; 
上述密钥生成装置的密钥生成部利用上述第3属性信息或者上述第3逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的第2解密密钥的密钥生成步骤; 
上述密钥生成装置的发送部将上述第2解密密钥发送到上述第2解密装置的解密密钥发送步骤; 
上述第2解密装置的接收部从上述密钥生成装置接收上述第2解密密钥的解密密钥接收步骤;以及 
上述第2解密装置的解密部利用上述第2解密密钥,按照函数密码算法进行对于上述密码信息的解密处理的解密步骤。 
[项目2] 
一种密码通信方法,用于利用函数密码的密码系统,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、多个解密装置,其中, 
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥, 
预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对, 
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息, 
上述密码通信方法具有: 
上述加密装置的第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得属性信息(以下,称为第1属性信息)或者逻辑信息(以下,称为第1逻辑信息)的第1命题逻辑信息取得步骤; 
上述加密装置的加密部利用上述第1属性信息或者上述第1逻辑信息、以及上述密钥生成装置的公开密钥,按照函数密码算法,求公共密钥、以及与该公共密钥或者在该公共密钥的生成中使用的信息对应的密码信息的加密步骤; 
上述加密装置的发送部将上述密码信息发送到第1解密装置的密码信息发送步骤; 
上述第1解密装置的接收部从上述加密装置接收上述密码信息的密码信息接收步骤; 
上述第1解密装置的第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与该第1解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属性信息)或者逻辑信息(以下,称为第2逻辑信息)的第2命题逻辑信息取得步骤; 
上述第1解密装置的发送部将上述第2属性信息或者上述第2逻辑信息 发送到上述密钥生成装置的逻辑信息发送步骤; 
上述密钥生成装置的接收部从上述第1解密装置接收上述第2属性信息或者上述第2逻辑信息的逻辑信息接收步骤; 
上述密钥生成装置的密钥生成部利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的第1解密密钥的密钥生成步骤; 
上述密钥生成装置的发送部将上述第1解密密钥发送到上述第1解密装置的解密密钥发送步骤; 
上述第1解密装置的接收部从上述密钥生成装置接收上述第1解密密钥的解密密钥接收步骤; 
上述第1解密装置的解密部利用上述第1解密密钥,按照函数密码算法进行对于上述密码信息的解密处理的解密步骤; 
上述第1解密装置的转发部将上述密码信息转发给该第1解密装置以外的第2解密装置的转发步骤; 
上述第2解密装置的接收部从上述第1解密装置接收上述密码信息的接收步骤; 
上述第2解密装置的第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与该第2解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第3属性信息)或者逻辑信息(以下,称为第3逻辑信息)的第3命题逻辑信息取得步骤; 
上述第2解密装置的发送部将上述第3属性信息或者上述第3逻辑信息发送到上述密钥生成装置的逻辑信息发送步骤; 
上述密钥生成装置的接收部从上述第2解密装置接收上述第3属性信息或者上述第3逻辑信息的逻辑信息接收步骤; 
上述密钥生成装置的密钥生成部利用上述第3属性信息或者上述第3逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的第2解密密钥的密钥生成步骤; 
上述密钥生成装置的发送部将上述第2解密密钥发送到上述第2解密装置的解密密钥发送步骤; 
上述第2解密装置的接收部从上述密钥生成装置接收上述第2解密密钥 的解密密钥接收步骤;以及 
上述第2解密装置的解密部利用上述第2解密密钥,按照函数密码算法进行对于上述密码信息的解密处理的解密步骤。 
[项目3] 
一种密码通信方法,用于利用函数密码的密码系统,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、多个解密装置,其中, 
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥, 
预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对, 
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息, 
上述密码通信方法具有: 
上述加密装置的第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得属性信息(以下,称为第1属性信息)或者逻辑信息(以下,称为第1逻辑信息)的第1命题逻辑信息取得步骤; 
上述加密装置的加密部利用上述第1属性信息或者上述第1逻辑信息、上述密钥生成装置的公开密钥、以及明文,按照函数密码算法,求与该明文对应的密码信息的加密步骤; 
上述加密装置的发送部将上述密码信息发送到第1解密装置的密码信息发送步骤; 
上述第1解密装置的接收部从上述加密装置接收上述密码信息的密码信息接收步骤; 
上述密钥生成装置的第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与上述第1解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属性信息)或者逻辑信息(以下,称为第2逻辑信息)的第2命题逻辑信息取得步骤; 
上述密钥生成装置的密钥生成部利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的第1解密密钥的密钥生成步骤; 
上述密钥生成装置的发送部将上述第1解密密钥发送到上述第1解密装置的解密密钥发送步骤; 
上述第1解密装置的接收部从上述密钥生成装置接收上述第1解密密钥的解密密钥接收步骤; 
上述第1解密装置的解密部利用上述第1解密密钥,按照函数密码算法进行对于上述密码信息的解密处理的解密步骤; 
上述第1解密装置的转发部将上述密码信息转发给该第1解密装置以外的第2解密装置的转发步骤; 
上述第2解密装置的接收部从上述第1解密装置接收上述密码信息的接收步骤; 
上述密钥生成装置的第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与上述第2解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第3属性信息)或者逻辑信息(以下,称为第3逻辑信息)的第3命题逻辑信息取得步骤; 
上述密钥生成装置的密钥生成部利用上述第3属性信息或者上述第3逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的第2解密密钥的密钥生成步骤; 
上述密钥生成装置的发送部将上述第2解密密钥发送到上述第2解密装置的解密密钥发送步骤; 
上述第2解密装置的接收部从上述密钥生成装置接收上述第2解密密钥的解密密钥接收步骤;以及 
上述第2解密装置的解密部利用上述第2解密密钥,按照函数密码算法 进行对于上述密码信息的解密处理的解密步骤。 
[项目4] 
一种密码通信方法,用于利用函数密码的密码系统,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、多个解密装置,其中, 
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥, 
预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对, 
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息, 
上述密码通信方法具有: 
上述加密装置的第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得属性信息(以下,称为第1属性信息)或者逻辑信息(以下,称为第1逻辑信息)的第1命题逻辑信息取得步骤; 
上述加密装置的加密部利用上述第1属性信息或者上述第1逻辑信息、上述密钥生成装置的公开密钥、以及明文,按照函数密码算法,求与该明文对应的密码信息的加密步骤; 
上述加密装置的发送部将上述密码信息发送到第1解密装置的密码信息发送步骤; 
上述第1解密装置的接收部从上述加密装置接收上述密码信息的密码信息接收步骤; 
上述第1解密装置的第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与该第 1解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属性信息)或者逻辑信息(以下,称为第2逻辑信息)的第2命题逻辑信息取得步骤; 
上述第1解密装置的发送部将上述第2属性信息或者上述第2逻辑信息发送到上述密钥生成装置的逻辑信息发送步骤; 
上述密钥生成装置的接收部从上述第1解密装置接收上述第2属性信息或者上述第2逻辑信息的逻辑信息接收步骤; 
上述密钥生成装置的密钥生成部利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的第1解密密钥的密钥生成步骤; 
上述密钥生成装置的发送部将上述第1解密密钥发送到上述第1解密装置的解密密钥发送步骤; 
上述第1解密装置的接收部从上述密钥生成装置接收上述第1解密密钥的解密密钥接收步骤; 
上述第1解密装置的解密部利用上述第1解密密钥,按照函数密码算法进行对于上述密码信息的解密处理的解密步骤; 
上述第1解密装置的转发部将上述密码信息转发给该第1解密装置以外的第2解密装置的转发步骤; 
上述第2解密装置的接收部从上述第1解密装置接收上述密码信息的接收步骤; 
上述第2解密装置的第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与该第2解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第3属性信息)或者逻辑信息(以下,称为第3逻辑信息)的第3命题逻辑信息取得步骤; 
上述第2解密装置的发送部将上述第3属性信息或者上述第3逻辑信息发送到上述密钥生成装置的逻辑信息发送步骤; 
上述密钥生成装置的接收部从上述第2解密装置接收上述第3属性信息或者上述第3逻辑信息的逻辑信息接收步骤; 
上述密钥生成装置的密钥生成部利用上述第3属性信息或者上述第3逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使 用的第2解密密钥的密钥生成步骤; 
上述密钥生成装置的发送部将上述第2解密密钥发送到上述第2解密装置的解密密钥发送步骤; 
上述第2解密装置的接收部从上述密钥生成装置接收上述第2解密密钥的解密密钥接收步骤;以及 
上述第2解密装置的解密部利用上述第2解密密钥,按照函数密码算法进行对于上述密码信息的解密处理的解密步骤。 
[项目5] 
在项目1或者项目2记载的密码通信方法中, 
上述加密步骤包括:上述加密部还求通过上述公共密钥对明文进行了加密的密码文的密码文生成步骤, 
上述解密步骤包括:上述解密部进行利用通过上述解密处理得到的上述公共密钥的上述密码文的第2解密处理,或者,利用根据在通过上述解密处理获得的上述公共密钥的生成中使用的上述信息而生成的公共密钥的上述密码文的第2解密处理的步骤。 
[项目6] 
在项目1至项目5的任一项记载的密码通信方法中,具有: 
上述解密装置的取得部从用于存储与上述用户对应的上述属性指定信息和/或上述逻辑式指定信息的存储介质,取得与该解密装置的用户对应的上述属性指定信息或者上述逻辑式指定信息的取得步骤。 
[项目7] 
在项目1或者项目3记载的密码通信方法中,具有: 
上述解密装置的发送部将与该解密装置的用户对应的上述属性指定信息或者上述逻辑式指定信息发送到上述密钥生成装置的用户信息发送步骤;以及 
上述密钥生成装置的接收部从上述解密装置接收与上述用户对应的上述属性指定信息或者上述逻辑式指定信息的用户信息接收步骤。 
[项目8] 
在项目1至项目6的任一项记载的密码通信方法中, 
上述密码系统包括一个或者多个用户信息管理装置,各个上述用户信息管理装置包括用于存储与上述用户对应的上述属性指定信息和/或上述逻辑 式指定信息的存储部, 
上述密码通信方法具有: 
上述密钥生成装置的用户信息取得部从上述用户信息管理装置取得与上述解密装置的用户对应的上述属性指定信息或者上述逻辑式指定信息的用户信息取得步骤。 
[项目9] 
在项目1至项目8的任一项记载的密码通信方法中, 
对各个上述密钥生成装置预先规定了一个或者多个上述变换规则信息对, 
上述密码系统包括一个或者多个变换规则信息对管理装置,各个上述变换规则信息对管理装置包括用于存储与各个上述密钥生成装置对应的各个上述变换规则信息对的存储部, 
上述密码通信方法具有: 
上述加密装置的变换规则信息对取得部从上述变换规则信息对管理装置取得上述变换规则信息对的变换规则信息对取得步骤;以及 
上述解密装置的变换规则信息对取得部从上述变换规则信息对管理装置取得上述变换规则信息对的变换规则信息对取得步骤。 
[项目10] 
在项目1至项目9的任一项记载的密码通信方法中, 
在上述密钥生成装置的每一个中预先规定了上述政策信息的确定对象只有上述属性用变换规则信息,或者只有上述逻辑式用变换规则信息,或者是上述属性用变换规则信息以及上述逻辑式用变换规则信息。 
[项目11] 
在项目1至项目10的任一项记载的密码通信方法中, 
将代数构造K设为有限环或者有限域, 
上述第1、第2属性信息以及上述第1、第2逻辑信息是以上述K的元作为分量的向量, 
在上述解密步骤中,上述解密部进行以上述密码信息和上述解密密钥作为输入且依赖于上述第1逻辑信息和上述第2属性信息的标准内积或者上述第1属性信息和上述第2逻辑信息的标准内积的结果的运算。 
[项目12] 
在项目11记载的密码通信方法中, 
上述公开密钥是K上的加法群V的元的集合, 
上述秘密密钥是上述加法群V的对偶加法群V*的元的集合, 
上述解密密钥是上述对偶加法群V*的元, 
在上述加密步骤中,上述加密部通过进行包含如下运算的运算从而求上述密码信息:对上述公开密钥的元进行以上述第1属性信息的分量作为系数的标量倍的运算,或者对上述公开密钥的元进行以上述第1逻辑信息的分量作为系数的标量倍的运算, 
在上述密钥生成步骤中,上述密钥生成部通过进行包含如下运算的运算从而求上述解密密钥:对上述秘密密钥的元进行以上述第2逻辑信息的分量作为系数的标量倍的运算,或者对上述秘密密钥的元进行以上述第2属性信息的分量作为系数的标量倍的运算, 
在上述解密部的上述解密处理中使用的上述运算具有双线性性,并且上述运算的结果依赖于,基于双线性性根据上述密码信息和上述解密密钥所取出的上述第1逻辑信息和上述第2属性信息或者上述第1属性信息和上述第2逻辑信息的标准内积的结果。 
[项目13] 
一种密码系统,利用函数密码,并且至少包含一个或者多个加密装置、一个或者多个密钥生成装置、多个解密装置,在该密码系统中, 
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥, 
预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对, 
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息, 
上述加密装置包括: 
第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换 规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得属性信息(以下,称为第1属性信息)或者逻辑信息(以下,称为第1逻辑信息);以及 
加密部,利用上述第1属性信息或者上述第1逻辑信息、以及上述密钥生成装置的公开密钥,按照函数密码算法,求公共密钥、以及与该公共密钥或者在该公共密钥的生成中使用的信息对应的密码信息, 
上述密钥生成装置包括: 
第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与上述解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属性信息)或者逻辑信息(以下,称为第2逻辑信息);以及 
密钥生成部,利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的解密密钥, 
上述解密装置包括: 
解密部,利用上述解密密钥,按照函数密码算法进行对于上述密码信息的解密处理;以及 
转发部,将上述密码信息转发给该解密装置以外的一个以上的解密装置。 
[项目14] 
一种密码系统,利用函数密码,并且至少包含一个或者多个加密装置、一个或者多个密钥生成装置、多个解密装置,在该密码系统中, 
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥, 
预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对, 
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规 则信息中的哪一个的政策信息, 
上述加密装置包括: 
第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得属性信息(以下,称为第1属性信息)或者逻辑信息(以下,称为第1逻辑信息);以及 
加密部,利用上述第1属性信息或者上述第1逻辑信息、以及上述密钥生成装置的公开密钥,按照函数密码算法,求公共密钥、以及与该公共密钥或者在该公共密钥的生成中使用的信息对应的密码信息, 
上述解密装置包括: 
第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与该解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属性信息)或者逻辑信息(以下,称为第2逻辑信息); 
解密部,利用从上述密钥生成装置送来的解密密钥,按照函数密码算法进行对于上述密码信息的解密处理;以及 
转发部,将上述密码信息转发给该解密装置以外的一个以上的解密装置, 
上述密钥生成装置包括: 
密钥生成部,利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的解密密钥。 
[项目15] 
一种密码系统,利用函数密码,并且至少包含一个或者多个加密装置、一个或者多个密钥生成装置、多个解密装置,在该密码系统中, 
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥, 
预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该 函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对, 
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息, 
上述加密装置包括: 
第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得属性信息(以下,称为第1属性信息)或者逻辑信息(以下,称为第1逻辑信息);以及 
加密部,利用上述第1属性信息或者上述第1逻辑信息、上述密钥生成装置的公开密钥、以及明文,按照函数密码算法,求与该明文对应的密码信息, 
上述密钥生成装置包括: 
第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与上述解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属性信息)或者逻辑信息(以下,称为第2逻辑信息);以及 
密钥生成部,利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的解密密钥, 
上述解密装置包括: 
解密部,利用上述解密密钥,按照函数密码算法进行对于上述密码信息的解密处理;以及 
转发部,将上述密码信息转发给该解密装置以外的一个以上的解密装置。 
[项目16] 
一种密码系统,利用函数密码,并且至少包含一个或者多个加密装置、一个或者多个密钥生成装置、多个解密装置,在该密码系统中, 
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥, 
预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了 用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对, 
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息, 
上述加密装置包括: 
第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得属性信息(以下,称为第1属性信息)或者逻辑信息(以下,称为第1逻辑信息);以及 
加密部,利用上述第1属性信息或者上述第1逻辑信息、上述密钥生成装置的公开密钥、以及明文,按照函数密码算法,求与该明文对应的密码信息, 
上述解密装置包括: 
第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与该解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属性信息)或者逻辑信息(以下,称为第2逻辑信息); 
解密部,利用从上述密钥生成装置送来的解密密钥,按照函数密码算法进行对于上述密码信息的解密处理;以及 
转发部,将上述密码信息转发给该解密装置以外的一个以上的解密装置, 
上述密钥生成装置包括: 
密钥生成部,利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的解密密钥。 
[项目17] 
在项目13或者项目14记载的密码系统中, 
上述加密装置的上述加密部还求通过上述公共密钥对明文进行了加密的 密码文, 
上述解密装置的上述解密部还利用公共密钥进行上述密码文的第2解密处理,其中,该公共密钥通过上述解密处理获得,或者,该公共密钥根据通过上述解密处理获得的、在上述公共密钥的生成中使用的上述信息而生成。 
[项目18] 
一种解密装置,用于利用函数密码的密码系统, 
在该密码系统中, 
至少包含一个或者多个加密装置、一个或者多个密钥生成装置、多个解密装置, 
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥, 
预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对, 
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息, 
上述解密装置包括: 
解密部,利用上述密钥生成装置生成的解密密钥,按照函数密码算法,进行对于上述加密装置生成的密码信息的解密处理;以及 
转发部,将上述密码信息转发给该解密装置以外的一个以上的解密装置。 
[项目19] 
一种解密装置,用于利用函数密码的密码系统, 
在该密码系统中, 
至少包含一个或者多个加密装置、一个或者多个密钥生成装置、多个解密装置, 
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥, 
预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了 用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对, 
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息, 
上述解密装置包括: 
第2命题逻辑信息取得部,利用与通过上述政策信息确定的一个变换规则信息构成一对的另一个变换规则信息,从与该解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属性信息)或者逻辑信息(以下,称为第2逻辑信息); 
解密部,利用上述密钥生成装置生成的解密密钥,按照函数密码算法,进行对于上述加密装置生成的密码信息的解密处理;以及 
转发部,将上述密码信息转发给该解密装置以外的一个以上的解密装置。 
[项目20] 
一种程序,使计算机作为项目18或者项目19记载的解密装置发挥作用。 
[项目21] 
一种计算机可读取的存储介质,存储了项目20记载的程序。 
如果从第3观点出发总结本发明,则如下。另外,重置项目号从而从1开始顺序分配项目号。 
[项目1] 
一种密码系统,利用函数密码,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置、一个或者多个内容服务器装置,其中, 
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥, 
预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该 函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对, 
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息, 
上述加密装置包括: 
第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得属性信息(以下,称为第1属性信息)或者逻辑信息(以下,称为第1逻辑信息);以及 
加密部,利用上述第1属性信息或者上述第1逻辑信息、上述密钥生成装置的公开密钥、以及内容,按照函数密码算法,求公共密钥、与该公共密钥或者在该公共密钥的生成中使用的信息对应的密码信息、以及通过该公共密钥对该内容进行了加密的加密内容, 
上述内容服务器装置包括: 
存储部,存储从各个上述加密装置送来的上述密码信息以及上述加密内容;以及 
发送部,根据来自上述解密装置的请求,将上述加密内容和与其对应的上述密码信息发送到该解密装置, 
上述密钥生成装置包括: 
第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与上述解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属性信息)或者逻辑信息(以下,称为第2逻辑信息);以及 
密钥生成部,利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的解密密钥, 
上述解密装置包括浏览器部和中转部, 
上述浏览器部进行对于上述内容服务器装置的上述加密内容的取得请求处理,并显示从上述加密内容解密后的内容, 
上述中转部将来自上述浏览器部的上述取得请求发送到上述内容服务器 装置,并利用上述解密密钥且按照函数密码算法,进行对于从上述内容服务器装置取得的上述密码信息的解密处理,并且利用通过该解密处理获得的上述公共密钥,进行对从上述内容服务器装置取得的上述加密内容进行解密的内容取得处理。 
[项目2] 
一种密码系统,利用函数密码,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置、一个或者多个内容服务器装置,其中, 
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥, 
预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对, 
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息, 
上述加密装置包括: 
第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得属性信息(以下,称为第1属性信息)或者逻辑信息(以下,称为第1逻辑信息);以及 
加密部,利用上述第1属性信息或者上述第1逻辑信息、上述密钥生成装置的公开密钥、以及内容,按照函数密码算法,求公共密钥、与该公共密钥或者在该公共密钥的生成中使用的信息对应的密码信息、以及通过该公共密钥对该内容进行了加密的加密内容, 
上述内容服务器装置包括: 
存储部,存储从各个上述加密装置送来的上述密码信息以及上述加密内 容;以及 
发送部,根据来自上述解密装置的请求,将上述加密内容和与其对应的上述密码信息发送到该解密装置, 
上述解密装置包括: 
第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与上述解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属性信息)或者逻辑信息(以下,称为第2逻辑信息);以及 
浏览器部和中转部, 
上述浏览器部进行对于上述内容服务器装置的上述加密内容的取得请求处理,并显示从上述加密内容解密后的内容, 
上述中转部将来自上述浏览器部的上述取得请求发送到上述内容服务器装置,并利用从上述密钥生成装置送来的解密密钥且按照函数密码算法,进行对于从上述内容服务器装置取得的上述密码信息的解密处理,并且利用通过该解密处理获得的上述公共密钥,进行对从上述内容服务器装置取得的上述加密内容进行解密的内容取得处理, 
上述密钥生成装置包括: 
密钥生成部,利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的解密密钥。 
[项目3] 
一种密码系统,利用函数密码,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置、一个或者多个内容服务器装置,其中, 
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥, 
预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对, 
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息, 
上述加密装置包括: 
第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得属性信息(以下,称为第1属性信息)或者逻辑信息(以下,称为第1逻辑信息);以及 
加密部,利用上述第1属性信息或者上述第1逻辑信息、上述密钥生成装置的公开密钥、以及内容,按照函数密码算法,求对该内容进行了加密的加密内容, 
上述内容服务器装置包括: 
存储部,存储从各个上述加密装置送来的上述加密内容;以及 
发送部,根据来自上述解密装置的请求,将上述加密内容发送到该解密装置, 
上述密钥生成装置包括: 
第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与上述解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属性信息)或者逻辑信息(以下,称为第2逻辑信息);以及 
密钥生成部,利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述加密内容的解密中使用的解密密钥, 
上述解密装置包括浏览器部和中转部, 
上述浏览器部进行对于上述内容服务器装置的上述加密内容的取得请求处理,并显示从上述加密内容解密后的内容, 
上述中转部将来自上述浏览器部的上述取得请求发送到上述内容服务器装置,并利用上述解密密钥且按照函数密码算法,进行对于从上述内容服务器装置取得的上述加密内容的解密处理。 
[项目4] 
一种密码系统,利用函数密码,该密码系统至少包含一个或者多个加密 装置、一个或者多个密钥生成装置、一个或者多个解密装置、一个或者多个内容服务器装置,其中, 
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥, 
预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对, 
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息, 
上述加密装置包括: 
第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得属性信息(以下,称为第1属性信息)或者逻辑信息(以下,称为第1逻辑信息);以及 
加密部,利用上述第1属性信息或者上述第1逻辑信息、上述密钥生成装置的公开密钥、以及内容,按照函数密码算法,求对该内容进行了加密的加密内容, 
上述内容服务器装置包括: 
存储部,存储从各个上述加密装置送来的上述加密内容;以及 
发送部,根据来自上述解密装置的请求,将上述加密内容发送到该解密装置, 
上述解密装置包括: 
第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与上述解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属性信息)或者逻辑信息(以下,称为第2逻辑信息);以及 
浏览器部和中转部, 
上述浏览器部进行对于上述内容服务器装置的上述加密内容的取得请求处理,并显示从上述加密内容解密后的内容, 
上述中转部将来自上述浏览器部的上述取得请求发送到上述内容服务器装置,并利用从上述密钥生成装置送来的解密密钥且按照函数密码算法,进行对于从上述内容服务器装置取得的上述加密内容的解密处理, 
上述密钥生成装置包括: 
密钥生成部,利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述加密内容的解密中使用的解密密钥。 
[项目5] 
在项目1至项目4的任一项记载的密码系统中, 
与上述用户对应的上述属性指定信息和/或上述逻辑式指定信息被存储到存储介质中, 
上述解密装置包括:用户信息取得部,该用户信息取得部从上述存储介质取得与该解密装置的用户对应的上述属性指定信息或者上述逻辑式指定信息。 
[项目6] 
在项目1或者项目3记载的密码系统中, 
上述密钥生成装置使用的与上述解密装置的用户对应的上述属性指定信息或者上述逻辑式指定信息是从上述解密装置取得的信息。 
[项目7] 
在项目1至项目6的任一项记载的密码系统中, 
上述密码系统还包括一个或者多个用户信息管理装置, 
各个上述用户信息管理装置包括:存储部,该存储部存储与上述用户对应的上述属性指定信息和/或上述逻辑式指定信息, 
上述密钥生成装置包括:用户信息取得部,该用户信息取得部从上述用户信息管理装置取得与上述解密装置的用户对应的上述属性指定信息或者上述逻辑式指定信息。 
[项目8] 
在项目1至项目7的任一项记载的密码系统中, 
对各个上述密钥生成装置预先规定了一个或者多个上述变换规则信息 对, 
上述密码系统还包括一个或者多个变换规则信息对管理装置, 
各个上述变换规则信息对管理装置包括:存储部,该存储部存储与各个上述密钥生成装置对应的各个上述变换规则信息对, 
上述加密装置包括:变换规则信息对取得部,该变换规则信息对取得部从上述变换规则信息对管理装置取得上述变换规则信息对, 
上述解密装置包括:变换规则信息对取得部,该变换规则信息对取得部从上述变换规则信息对管理装置取得上述变换规则信息对。 
[项目9] 
在项目1至项目7的任一项记载的密码系统中, 
对各个上述密钥生成装置预先规定了一个或者多个上述变换规则信息对, 
各个上述密钥生成装置还包括:存储部,该存储部存储与该上述密钥生成装置对应的各个上述变换规则信息对, 
各个上述加密装置还包括:存储部,该存储部存储与至少一个以上的上述密钥生成装置对应的各个上述变换规则信息对, 
各个上述解密装置还包括:存储部,该存储部存储与至少一个以上的上述密钥生成装置对应的各个上述变换规则信息对。 
[项目10] 
在项目1至项目9的任一项记载的密码系统中, 
在上述密钥生成装置的每一个中预先规定了上述政策信息的确定对象只有上述属性用变换规则信息,或者只有上述逻辑式用变换规则信息,或者是上述属性用变换规则信息以及上述逻辑式用变换规则信息。 
[项目11] 
在项目1至项目10的任一项记载的密码系统中, 
将代数构造K设为有限环或者有限域, 
上述第1、第2属性信息以及上述第1、第2逻辑信息是以上述K的元作为分量的向量, 
在上述解密部的上述解密处理中,进行依赖于上述第1逻辑信息和上述第2属性信息的标准内积或者上述第1属性信息和上述第2逻辑信息的标准内积的结果的运算。 
[项目12] 
在项目11记载的密码系统中, 
上述公开密钥是K上的加法群V的元的集合, 
上述秘密密钥是上述加法群V的对偶加法群V*的元的集合, 
上述解密密钥是上述对偶加法群V*的元, 
上述加密部通过进行包含如下运算的运算从而求上述密码信息:对上述公开密钥的元进行以上述第1属性信息的分量作为系数的标量倍的运算,或者对上述公开密钥的元进行以上述第1逻辑信息的分量作为系数的标量倍的运算, 
上述密钥生成部通过进行包含如下运算的运算从而求上述解密密钥:对上述秘密密钥的元进行以上述第2逻辑信息的分量作为系数的标量倍的运算,或者对上述秘密密钥的元进行以上述第2属性信息的分量作为系数的标量倍的运算, 
在上述解密部的上述解密处理中使用的上述运算具有双线性性,并且上述运算的结果依赖于,基于双线性性根据上述密码信息或者上述加密内容和上述解密密钥所取出的上述第1逻辑信息和上述第2属性信息或者上述第1属性信息和上述第2逻辑信息的标准内积的结果。 
[项目13] 
一种密码通信方法,用于利用函数密码的密码系统,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置、一个或者多个内容服务器装置,其中, 
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥, 
预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对, 
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息, 
上述密码通信方法具有: 
上述加密装置的第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得属性信息(以下,称为第1属性信息)或者逻辑信息(以下,称为第1逻辑信息)的第1命题逻辑信息取得步骤; 
上述加密装置的加密部利用上述第1属性信息或者上述第1逻辑信息、上述密钥生成装置的公开密钥、以及内容,按照函数密码算法,求公共密钥、与该公共密钥或者在该公共密钥的生成中使用的信息对应的密码信息、以及通过该公共密钥对该内容进行了加密的加密内容的加密步骤; 
上述加密装置的发送部将上述加密内容和与其对应的上述密码信息发送到上述内容服务器装置的发送步骤; 
上述内容服务器装置的存储部存储从各个上述加密装置送来的上述密码信息以及上述加密内容的存储步骤; 
上述解密装置的浏览器部进行对于上述内容服务器装置的上述加密内容的取得请求处理的取得请求处理步骤; 
上述解密装置的中转部将来自上述浏览器部的上述取得请求发送到上述内容服务器装置的发送步骤; 
上述内容服务器装置的发送部根据来自上述解密装置的请求,将上述加密内容和与其对应的上述密码信息发送到该解密装置的发送步骤; 
上述解密装置的接收部从上述内容服务器装置接收上述加密内容和上述密码信息的接收步骤; 
上述密钥生成装置的第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与上述解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属性信息)或者逻辑信息(以下,称为第2逻辑信息)的第2命题逻辑信息取得步骤; 
上述密钥生成装置的密钥生成部利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的解密密钥的密钥生成步骤; 
上述密钥生成装置的发送部将上述解密密钥发送到上述解密装置的解密密钥发送步骤; 
上述解密装置的接收部从上述密钥生成装置接收上述解密密钥的解密密钥接收步骤; 
上述解密装置的中转部利用上述解密密钥且按照函数密码算法,进行对于从上述内容服务器装置取得的上述密码信息的解密处理,并且利用通过该解密处理获得的上述公共密钥,进行对从上述内容服务器装置取得的上述加密内容进行解密的内容取得处理的解密步骤;以及 
上述解密装置的浏览器部显示从上述加密内容解密后的内容的显示步骤。 
[项目14] 
一种密码通信方法,用于利用函数密码的密码系统,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置、一个或者多个内容服务器装置,其中, 
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥, 
预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对, 
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息, 
上述密码通信方法具有: 
上述加密装置的第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得属性信息(以下,称为第1属性信息)或者逻辑信息(以下,称为第1逻辑信息)的第1命题逻辑信息取得步骤; 
上述加密装置的加密部利用上述第1属性信息或者上述第1逻辑信息、上述密钥生成装置的公开密钥、以及内容,按照函数密码算法,求公共密钥、与该公共密钥或者在该公共密钥的生成中使用的信息对应的密码信息、以及通过该公共密钥对该内容进行了加密的加密内容的加密步骤; 
上述加密装置的发送部将上述加密内容和与其对应的上述密码信息发送到上述内容服务器装置的发送步骤; 
上述内容服务器装置的存储部存储从各个上述加密装置送来的上述密码信息以及上述加密内容的存储步骤; 
上述解密装置的浏览器部进行对于上述内容服务器装置的上述加密内容的取得请求处理的取得请求处理步骤; 
上述解密装置的中转部将来自上述浏览器部的上述取得请求发送到上述内容服务器装置的发送步骤; 
上述内容服务器装置的发送部根据来自上述解密装置的请求,将上述加密内容和与其对应的上述密码信息发送到该解密装置的发送步骤; 
上述解密装置的接收部从上述内容服务器装置接收上述加密内容和上述密码信息的接收步骤; 
上述解密装置的第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与该解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属性信息)或者逻辑信息(以下,称为第2逻辑信息)的第2命题逻辑信息取得步骤; 
上述解密装置的发送部将上述第2属性信息或者上述第2逻辑信息发送到上述密钥生成装置的逻辑信息发送步骤; 
上述密钥生成装置的接收部从上述解密装置接收上述第2属性信息或者上述第2逻辑信息的逻辑信息接收步骤; 
上述密钥生成装置的密钥生成部利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的解密密钥的密钥生成步骤; 
上述密钥生成装置的发送部将上述解密密钥发送到上述解密装置的解密密钥发送步骤; 
上述解密装置的接收部从上述密钥生成装置接收上述解密密钥的解密密 钥接收步骤; 
上述解密装置的中转部利用上述解密密钥且按照函数密码算法,进行对于从上述内容服务器装置取得的上述密码信息的解密处理,并且利用通过该解密处理获得的上述公共密钥,进行对从上述内容服务器装置取得的上述加密内容进行解密的内容取得处理的解密步骤;以及 
上述解密装置的浏览器部显示从上述加密内容解密后的内容的显示步骤。 
[项目15] 
一种密码通信方法,用于利用函数密码的密码系统,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置、一个或者多个内容服务器装置,其中, 
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥, 
预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对, 
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息, 
上述密码通信方法具有: 
上述加密装置的第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得属性信息(以下,称为第1属性信息)或者逻辑信息(以下,称为第1逻辑信息)的第1命题逻辑信息取得步骤; 
上述加密装置的加密部利用上述第1属性信息或者上述第1逻辑信息、上述密钥生成装置的公开密钥、以及内容,按照函数密码算法,求对该内容进行了加密的加密内容的加密步骤; 
上述加密装置的发送部将上述加密内容发送到上述内容服务器装置的发送步骤; 
上述内容服务器装置的存储部存储从各个上述加密装置送来的上述加密内容的存储步骤; 
上述解密装置的浏览器部进行对于上述内容服务器装置的上述加密内容的取得请求处理的取得请求处理步骤; 
上述解密装置的中转部将来自上述浏览器部的上述取得请求发送到上述内容服务器装置的发送步骤; 
上述内容服务器装置的发送部根据来自上述解密装置的请求,将上述加密内容发送到该解密装置的发送步骤; 
上述解密装置的接收部从上述内容服务器装置接收上述加密内容的接收步骤; 
上述密钥生成装置的第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与上述解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属性信息)或者逻辑信息(以下,称为第2逻辑信息)的第2命题逻辑信息取得步骤; 
上述密钥生成装置的密钥生成部利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述加密内容的解密中使用的解密密钥的密钥生成步骤; 
上述密钥生成装置的发送部将上述解密密钥发送到上述解密装置的解密密钥发送步骤; 
上述解密装置的接收部从上述密钥生成装置接收上述解密密钥的解密密钥接收步骤; 
上述解密装置的中转部利用上述解密密钥且按照函数密码算法,进行对于从上述内容服务器装置取得的上述加密内容的解密处理的解密步骤;以及 
上述解密装置的浏览器部显示从上述加密内容解密后的内容的显示步骤。 
[项目16] 
一种密码通信方法,用于利用函数密码的密码系统,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密 装置、一个或者多个内容服务器装置,其中, 
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥, 
预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对, 
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息, 
上述密码通信方法具有: 
上述加密装置的第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得属性信息(以下,称为第1属性信息)或者逻辑信息(以下,称为第1逻辑信息)的第1命题逻辑信息取得步骤; 
上述加密装置的加密部利用上述第1属性信息或者上述第1逻辑信息、上述密钥生成装置的公开密钥、以及内容,按照函数密码算法,求对该内容进行了加密的加密内容的加密步骤; 
上述加密装置的发送部将上述加密内容发送到上述内容服务器装置的发送步骤; 
上述内容服务器装置的存储部存储从各个上述加密装置送来的上述加密内容的存储步骤; 
上述解密装置的浏览器部进行对于上述内容服务器装置的上述加密内容的取得请求处理的取得请求处理步骤; 
上述解密装置的中转部将来自上述浏览器部的上述取得请求发送到上述内容服务器装置的发送步骤; 
上述内容服务器装置的发送部根据来自上述解密装置的请求,将上述加密内容发送到该解密装置的发送步骤; 
上述解密装置的接收部从上述内容服务器装置接收上述加密内容的接收步骤; 
上述解密装置的第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与该解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得属性信息(以下,称为第2属性信息)或者逻辑信息(以下,称为第2逻辑信息)的第2命题逻辑信息取得步骤; 
上述解密装置的发送部将上述第2属性信息或者上述第2逻辑信息发送到上述密钥生成装置的逻辑信息发送步骤; 
上述密钥生成装置的接收部从上述解密装置接收上述第2属性信息或者上述第2逻辑信息的逻辑信息接收步骤; 
上述密钥生成装置的密钥生成部利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述加密内容的解密中使用的解密密钥的密钥生成步骤; 
上述密钥生成装置的发送部将上述解密密钥发送到上述解密装置的解密密钥发送步骤; 
上述解密装置的接收部从上述密钥生成装置接收上述解密密钥的解密密钥接收步骤; 
上述解密装置的中转部利用上述解密密钥且按照函数密码算法,进行对于从上述内容服务器装置取得的上述加密内容的解密处理的解密步骤;以及 
上述解密装置的浏览器部显示从上述加密内容解密后的内容的显示步骤。 
[项目17] 
一种解密装置,用于利用函数密码的密码系统, 
在该密码系统中, 
至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置、一个或者多个内容服务器装置,其中,上述加密装置按照函数密码算法,求公共密钥、与该公共密钥或者在该公共密钥的生成中使用的信息对应的密码信息、以及通过该公共密钥对内容进行了加密的加密内容,上述内容服务器装置存储上述加密内容和上述密码信息, 
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公 开密钥, 
预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对, 
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息, 
上述解密装置包括浏览器部和中转部, 
上述浏览器部进行对于上述内容服务器装置的上述加密内容的取得请求处理,并显示从上述加密内容解密后的内容, 
上述中转部将来自上述浏览器部的上述取得请求发送到上述内容服务器装置,并利用上述解密密钥且按照函数密码算法,进行对于从上述内容服务器装置取得的上述密码信息的解密处理,并且利用通过该解密处理获得的上述公共密钥,进行对从上述内容服务器装置取得的上述加密内容进行解密的内容取得处理。 
[项目18] 
一种解密装置,用于利用函数密码的密码系统, 
在该密码系统中, 
至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置、一个或者多个内容服务器装置,其中,上述加密装置按照函数密码算法,求公共密钥、与该公共密钥或者在该公共密钥的生成中使用的信息对应的密码信息、以及通过该公共密钥对内容进行了加密的加密内容,上述内容服务器装置存储上述加密内容, 
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥, 
预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该 函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对, 
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息, 
上述解密装置包括浏览器部和中转部, 
上述浏览器部进行对于上述内容服务器装置的上述加密内容的取得请求处理,并显示从上述加密内容解密后的内容, 
上述中转部将来自上述浏览器部的上述取得请求发送到上述内容服务器装置,并利用上述解密密钥且按照函数密码算法,进行对于从上述内容服务器装置取得的上述加密内容的解密处理。 
[项目19] 
一种内容服务器装置,用于利用函数密码的密码系统, 
在该密码系统中, 
至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置、一个或者多个内容服务器装置,其中,上述加密装置按照函数密码算法,求公共密钥、与该公共密钥或者在该公共密钥的生成中使用的信息对应的密码信息、以及通过该公共密钥对内容进行了加密的加密内容, 
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥, 
预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对, 
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息, 
上述内容服务器装置包括: 
存储部,存储从各个上述加密装置送来的上述密码信息以及上述加密内容;以及 
发送部,根据来自上述解密装置的请求,将上述加密内容和与其对应的 上述密码信息发送到该解密装置。 
[项目20] 
一种内容服务器装置,用于利用函数密码的密码系统, 
在该密码系统中, 
至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置、一个或者多个内容服务器装置,其中,上述加密装置按照函数密码算法,求对内容进行了加密的加密内容, 
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥, 
预先规定了一个或者多个变换规则信息对,该变换规则信息对是规定了用于将指定属性的信息(以下,称为属性指定信息)变换为在函数密码算法中使用的属性信息的变换规则的信息(以下,称为属性用变换规则信息)与规定了用于将指定逻辑式的信息(以下,称为逻辑式指定信息)变换为在该函数密码算法中使用的逻辑信息的变换规则的信息(以下,称为逻辑式用变换规则信息)的对, 
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息, 
上述内容服务器装置包括: 
存储部,存储从各个上述加密装置送来的上述加密内容;以及 
发送部,根据来自上述解密装置的请求,将上述加密内容发送到该解密装置。 
[项目21] 
一种程序,使计算机作为项目17或者项目18记载的解密装置发挥作用。 
[项目22] 
一种程序,使计算机作为项目19或者项目20记载的内容服务器装置发挥作用。 
[项目23] 
一种计算机可读取的存储介质,存储了项目21记载的程序和/或项目22记载的程序。 

Claims (38)

1.一种密码系统,利用函数密码,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置,其中,
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥,
预先规定了一个或者多个变换规则信息对,该变换规则信息对是属性用变换规则信息与逻辑式用变换规则信息的对,其中,该属性用变换规则信息规定了用于将指定属性的信息即属性指定信息变换为在函数密码算法中使用的属性信息的变换规则,该逻辑式用变换规则信息规定了用于将指定逻辑式的信息即逻辑式指定信息变换为在该函数密码算法中使用的逻辑信息的变换规则,
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息,
上述加密装置包括:
第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得第1属性信息或者第1逻辑信息;以及
加密部,利用上述第1属性信息或者上述第1逻辑信息、以及上述密钥生成装置的公开密钥,按照函数密码算法,求公共密钥、以及与该公共密钥或者在该公共密钥的生成中使用的信息对应的密码信息,
上述密钥生成装置包括:
第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与上述解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得第2属性信息或者第2逻辑信息;以及
密钥生成部,利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的解密密钥,
上述解密装置包括:
解密部,利用上述解密密钥,按照函数密码算法进行对于上述密码信息的解密处理。
2.如权利要求1所述的密码系统,其中,
上述加密装置的上述加密部还求通过上述公共密钥对明文进行了加密的密码文,
上述解密装置的上述解密部还进行利用通过上述解密处理得到的上述公共密钥的上述密码文的第2解密处理,或者,利用根据在通过上述解密处理获得的上述公共密钥的生成中使用的上述信息而生成的公共密钥的上述密码文的第2解密处理。
3.如权利要求1或2所述的密码系统,其中,
上述密码系统包括多个上述解密装置,
多个上述解密装置中的至少一个上述解密装置还包括:转发部,该转发部将上述密码信息转发给该解密装置以外的一个以上的解密装置。
4.一种密码系统,利用函数密码,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置,其中,
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥,
预先规定了一个或者多个变换规则信息对,该变换规则信息对是属性用变换规则信息与逻辑式用变换规则信息的对,其中,该属性用变换规则信息规定了用于将指定属性的信息即属性指定信息变换为在函数密码算法中使用的属性信息的变换规则,该逻辑式用变换规则信息规定了用于将指定逻辑式的信息即逻辑式指定信息变换为在该函数密码算法中使用的逻辑信息的变换规则,
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息,
上述加密装置包括:
第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得第1属性信息或者第1逻辑信息;以及
加密部,利用上述第1属性信息或者上述第1逻辑信息、以及上述密钥生成装置的公开密钥,按照函数密码算法,求公共密钥、以及与该公共密钥或者在该公共密钥的生成中使用的信息对应的密码信息,
上述解密装置包括:
第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与该解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得第2属性信息或者第2逻辑信息;以及
解密部,利用从上述密钥生成装置送来的解密密钥,按照函数密码算法进行对于上述密码信息的解密处理,
上述密钥生成装置包括:
密钥生成部,利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的解密密钥。
5.如权利要求4所述的密码系统,其中,
上述加密装置的上述加密部还求通过上述公共密钥对明文进行了加密的密码文,
上述解密装置的上述解密部还进行利用通过上述解密处理得到的上述公共密钥的上述密码文的第2解密处理,或者,利用根据在通过上述解密处理获得的上述公共密钥的生成中使用的上述信息而生成的公共密钥的上述密码文的第2解密处理。
6.如权利要求4或5所述的密码系统,其中,
上述密码系统包括多个上述解密装置,
多个上述解密装置中的至少一个上述解密装置还包括:转发部,该转发部将上述密码信息转发给该解密装置以外的一个以上的解密装置。
7.一种密码系统,利用函数密码,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置,其中,
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥,
预先规定了一个或者多个变换规则信息对,该变换规则信息对是属性用变换规则信息与逻辑式用变换规则信息的对,其中,该属性用变换规则信息规定了用于将指定属性的信息即属性指定信息变换为在函数密码算法中使用的属性信息的变换规则,该逻辑式用变换规则信息规定了用于将指定逻辑式的信息即逻辑式指定信息变换为在该函数密码算法中使用的逻辑信息的变换规则,
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息,
上述加密装置包括:
第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得第1属性信息或者第1逻辑信息;以及
加密部,利用上述第1属性信息或者上述第1逻辑信息、上述密钥生成装置的公开密钥、以及明文,按照函数密码算法,求与该明文对应的密码信息,
上述密钥生成装置包括:
第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与上述解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得第2属性信息或者第2逻辑信息;以及
密钥生成部,利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的解密密钥,
上述解密装置包括:
解密部,利用上述解密密钥,按照函数密码算法进行对于上述密码信息的解密处理。
8.如权利要求7所述的密码系统,其中,
上述密码系统包括多个上述解密装置,
多个上述解密装置中的至少一个上述解密装置还包括:转发部,该转发部将上述密码信息转发给该解密装置以外的一个以上的解密装置。
9.一种密码系统,利用函数密码,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置,其中,
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥,
预先规定了一个或者多个变换规则信息对,该变换规则信息对是属性用变换规则信息与逻辑式用变换规则信息的对,其中,该属性用变换规则信息规定了用于将指定属性的信息即属性指定信息变换为在函数密码算法中使用的属性信息的变换规则,该逻辑式用变换规则信息规定了用于将指定逻辑式的信息即逻辑式指定信息变换为在该函数密码算法中使用的逻辑信息的变换规则,
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息,
上述加密装置包括:
第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得第1属性信息或者第1逻辑信息;以及
加密部,利用上述第1属性信息或者上述第1逻辑信息、上述密钥生成装置的公开密钥、以及明文,按照函数密码算法,求与该明文对应的密码信息,
上述解密装置包括:
第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与该解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得第2属性信息或者第2逻辑信息;以及
解密部,利用从上述密钥生成装置送来的解密密钥,按照函数密码算法进行对于上述密码信息的解密处理,
上述密钥生成装置包括:
密钥生成部,利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的解密密钥。
10.如权利要求9所述的密码系统,其中,
上述密码系统包括多个上述解密装置,
多个上述解密装置中的至少一个上述解密装置还包括:转发部,该转发部将上述密码信息转发给该解密装置以外的一个以上的解密装置。
11.一种密码系统,利用函数密码,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置、一个或者多个内容服务器装置,其中,
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥,
预先规定了一个或者多个变换规则信息对,该变换规则信息对是属性用变换规则信息与逻辑式用变换规则信息的对,其中,该属性用变换规则信息规定了用于将指定属性的信息即属性指定信息变换为在函数密码算法中使用的属性信息的变换规则,该逻辑式用变换规则信息规定了用于将指定逻辑式的信息即逻辑式指定信息变换为在该函数密码算法中使用的逻辑信息的变换规则,
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息,
上述加密装置包括:
第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得第1属性信息或者第1逻辑信息;以及
加密部,利用上述第1属性信息或者上述第1逻辑信息、上述密钥生成装置的公开密钥、以及内容,按照函数密码算法,求公共密钥、与该公共密钥或者在该公共密钥的生成中使用的信息对应的密码信息、以及通过该公共密钥对该内容进行了加密的加密内容,
上述内容服务器装置包括:
存储部,存储从各个上述加密装置送来的上述密码信息以及上述加密内容;以及
发送部,根据来自上述解密装置的请求,将上述加密内容和与其对应的上述密码信息发送到该解密装置,
上述密钥生成装置包括:
第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与上述解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得第2属性信息或者第2逻辑信息;以及
密钥生成部,利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的解密密钥,
上述解密装置包括浏览器部和中转部,
上述浏览器部进行对于上述内容服务器装置的上述加密内容的取得请求处理,并显示从上述加密内容解密后的内容,
上述中转部将来自上述浏览器部的上述取得请求发送到上述内容服务器装置,并利用上述解密密钥且按照函数密码算法,进行对于从上述内容服务器装置取得的上述密码信息的解密处理,并且利用通过该解密处理获得的上述公共密钥,进行对从上述内容服务器装置取得的上述加密内容进行解密的内容取得处理。
12.一种密码系统,利用函数密码,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置、一个或者多个内容服务器装置,其中,
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥,
预先规定了一个或者多个变换规则信息对,该变换规则信息对是属性用变换规则信息与逻辑式用变换规则信息的对,其中,该属性用变换规则信息规定了用于将指定属性的信息即属性指定信息变换为在函数密码算法中使用的属性信息的变换规则,该逻辑式用变换规则信息规定了用于将指定逻辑式的信息即逻辑式指定信息变换为在该函数密码算法中使用的逻辑信息的变换规则,
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息,
上述加密装置包括:
第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得第1属性信息或者第1逻辑信息;以及
加密部,利用上述第1属性信息或者上述第1逻辑信息、上述密钥生成装置的公开密钥、以及内容,按照函数密码算法,求公共密钥、与该公共密钥或者在该公共密钥的生成中使用的信息对应的密码信息、以及通过该公共密钥对该内容进行了加密的加密内容,
上述内容服务器装置包括:
存储部,存储从各个上述加密装置送来的上述密码信息以及上述加密内容;以及
发送部,根据来自上述解密装置的请求,将上述加密内容和与其对应的上述密码信息发送到该解密装置,
上述解密装置包括:
第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与上述解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得第2属性信息或者第2逻辑信息;以及
浏览器部和中转部,
上述浏览器部进行对于上述内容服务器装置的上述加密内容的取得请求处理,并显示从上述加密内容解密后的内容,
上述中转部将来自上述浏览器部的上述取得请求发送到上述内容服务器装置,并利用从上述密钥生成装置送来的解密密钥且按照函数密码算法,进行对于从上述内容服务器装置取得的上述密码信息的解密处理,并且利用通过该解密处理获得的上述公共密钥,进行对从上述内容服务器装置取得的上述加密内容进行解密的内容取得处理,
上述密钥生成装置包括:
密钥生成部,利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的解密密钥。
13.一种密码系统,利用函数密码,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置、一个或者多个内容服务器装置,其中,
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥,
预先规定了一个或者多个变换规则信息对,该变换规则信息对是属性用变换规则信息与逻辑式用变换规则信息的对,其中,该属性用变换规则信息规定了用于将指定属性的信息即属性指定信息变换为在函数密码算法中使用的属性信息的变换规则,该逻辑式用变换规则信息规定了用于将指定逻辑式的信息即逻辑式指定信息变换为在该函数密码算法中使用的逻辑信息的变换规则,
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息,
上述加密装置包括:
第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得第1属性信息或者第1逻辑信息;以及
加密部,利用上述第1属性信息或者上述第1逻辑信息、上述密钥生成装置的公开密钥、以及内容,按照函数密码算法,求对该内容进行了加密的加密内容,
上述内容服务器装置包括:
存储部,存储从各个上述加密装置送来的上述加密内容;以及
发送部,根据来自上述解密装置的请求,将上述加密内容发送到该解密装置,
上述密钥生成装置包括:
第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与上述解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得第2属性信息或者第2逻辑信息;以及
密钥生成部,利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述加密内容的解密中使用的解密密钥,
上述解密装置包括浏览器部和中转部,
上述浏览器部进行对于上述内容服务器装置的上述加密内容的取得请求处理,并显示从上述加密内容解密后的内容,
上述中转部将来自上述浏览器部的上述取得请求发送到上述内容服务器装置,并利用上述解密密钥且按照函数密码算法,进行对于从上述内容服务器装置取得的上述加密内容的解密处理。
14.一种密码系统,利用函数密码,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置、一个或者多个内容服务器装置,其中,
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥,
预先规定了一个或者多个变换规则信息对,该变换规则信息对是属性用变换规则信息与逻辑式用变换规则信息的对,其中,该属性用变换规则信息规定了用于将指定属性的信息即属性指定信息变换为在函数密码算法中使用的属性信息的变换规则,该逻辑式用变换规则信息规定了用于将指定逻辑式的信息即逻辑式指定信息变换为在该函数密码算法中使用的逻辑信息的变换规则,
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息,
上述加密装置包括:
第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得第1属性信息或者第1逻辑信息;以及
加密部,利用上述第1属性信息或者上述第1逻辑信息、上述密钥生成装置的公开密钥、以及内容,按照函数密码算法,求对该内容进行了加密的加密内容,
上述内容服务器装置包括:
存储部,存储从各个上述加密装置送来的上述加密内容;以及
发送部,根据来自上述解密装置的请求,将上述加密内容发送到该解密装置,
上述解密装置包括:
第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与上述解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得第2属性信息或者第2逻辑信息;以及
浏览器部和中转部,
上述浏览器部进行对于上述内容服务器装置的上述加密内容的取得请求处理,并显示从上述加密内容解密后的内容,
上述中转部将来自上述浏览器部的上述取得请求发送到上述内容服务器装置,并利用从上述密钥生成装置送来的解密密钥且按照函数密码算法,进行对于从上述内容服务器装置取得的上述加密内容的解密处理,
上述密钥生成装置包括:
密钥生成部,利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述加密内容的解密中使用的解密密钥。
15.一种密码通信方法,用于利用函数密码的密码系统,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置,其中,
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥,
预先规定了一个或者多个变换规则信息对,该变换规则信息对是属性用变换规则信息与逻辑式用变换规则信息的对,其中,该属性用变换规则信息规定了用于将指定属性的信息即属性指定信息变换为在函数密码算法中使用的属性信息的变换规则,该逻辑式用变换规则信息规定了用于将指定逻辑式的信息即逻辑式指定信息变换为在该函数密码算法中使用的逻辑信息的变换规则,
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息,
上述密码通信方法具有:
第1命题逻辑信息取得步骤,上述加密装置的第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得第1属性信息或者第1逻辑信息;
加密步骤,上述加密装置的加密部利用上述第1属性信息或者上述第1逻辑信息、以及上述密钥生成装置的公开密钥,按照函数密码算法,求公共密钥、以及与该公共密钥或者在该公共密钥的生成中使用的信息对应的密码信息;
第2命题逻辑信息取得步骤,上述密钥生成装置的第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与上述解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得第2属性信息或者第2逻辑信息;
密钥生成步骤,上述密钥生成装置的密钥生成部利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的解密密钥;以及
解密步骤,上述解密装置的解密部利用上述解密密钥,按照函数密码算法进行对于上述密码信息的解密处理。
16.一种密码通信方法,用于利用函数密码的密码系统,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置,其中,
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥,
预先规定了一个或者多个变换规则信息对,该变换规则信息对是属性用变换规则信息与逻辑式用变换规则信息的对,其中,该属性用变换规则信息规定了用于将指定属性的信息即属性指定信息变换为在函数密码算法中使用的属性信息的变换规则,该逻辑式用变换规则信息规定了用于将指定逻辑式的信息即逻辑式指定信息变换为在该函数密码算法中使用的逻辑信息的变换规则,
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息,
上述密码通信方法具有:
第1命题逻辑信息取得步骤,上述加密装置的第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得第1属性信息或者第1逻辑信息;
加密步骤,上述加密装置的加密部利用上述第1属性信息或者上述第1逻辑信息、以及上述密钥生成装置的公开密钥,按照函数密码算法,求公共密钥、以及与该公共密钥或者在该公共密钥的生成中使用的信息对应的密码信息;
第2命题逻辑信息取得步骤,上述解密装置的第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与该解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得第2属性信息或者第2逻辑信息;
密钥生成步骤,上述密钥生成装置的密钥生成部利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的解密密钥;以及
解密步骤,上述解密装置的解密部利用上述解密密钥,按照函数密码算法进行对于上述密码信息的解密处理。
17.一种密码通信方法,用于利用函数密码的密码系统,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置,其中,
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥,
预先规定了一个或者多个变换规则信息对,该变换规则信息对是属性用变换规则信息与逻辑式用变换规则信息的对,其中,该属性用变换规则信息规定了用于将指定属性的信息即属性指定信息变换为在函数密码算法中使用的属性信息的变换规则,该逻辑式用变换规则信息规定了用于将指定逻辑式的信息即逻辑式指定信息变换为在该函数密码算法中使用的逻辑信息的变换规则,
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息,
上述密码通信方法具有:
第1命题逻辑信息取得步骤,上述加密装置的第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得第1属性信息或者第1逻辑信息;
加密步骤,上述加密装置的加密部利用上述第1属性信息或者上述第1逻辑信息、上述密钥生成装置的公开密钥、以及明文,按照函数密码算法,求与该明文对应的密码信息;
第2命题逻辑信息取得步骤,上述密钥生成装置的第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与上述解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得第2属性信息或者第2逻辑信息;
密钥生成步骤,上述密钥生成装置的密钥生成部利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的解密密钥;以及
解密步骤,上述解密装置的解密部利用上述解密密钥,按照函数密码算法进行对于上述密码信息的解密处理。
18.一种密码通信方法,用于利用函数密码的密码系统,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置,其中,
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥,
预先规定了一个或者多个变换规则信息对,该变换规则信息对是属性用变换规则信息与逻辑式用变换规则信息的对,其中,该属性用变换规则信息规定了用于将指定属性的信息即属性指定信息变换为在函数密码算法中使用的属性信息的变换规则,该逻辑式用变换规则信息规定了用于将指定逻辑式的信息即逻辑式指定信息变换为在该函数密码算法中使用的逻辑信息的变换规则,
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息,
上述密码通信方法具有:
第1命题逻辑信息取得步骤,上述加密装置的第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得第1属性信息或者第1逻辑信息;
加密步骤,上述加密装置的加密部利用上述第1属性信息或者上述第1逻辑信息、上述密钥生成装置的公开密钥、以及明文,按照函数密码算法,求与该明文对应的密码信息;
第2命题逻辑信息取得步骤,上述解密装置的第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与该解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得第2属性信息或者第2逻辑信息;
密钥生成步骤,上述密钥生成装置的密钥生成部利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的解密密钥;以及
解密步骤,上述解密装置的解密部利用上述解密密钥,按照函数密码算法进行对于上述密码信息的解密处理。
19.一种密码通信方法,用于利用函数密码的密码系统,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、多个解密装置,其中,
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥,
预先规定了一个或者多个变换规则信息对,该变换规则信息对是属性用变换规则信息与逻辑式用变换规则信息的对,其中,该属性用变换规则信息规定了用于将指定属性的信息即属性指定信息变换为在函数密码算法中使用的属性信息的变换规则,该逻辑式用变换规则信息规定了用于将指定逻辑式的信息即逻辑式指定信息变换为在该函数密码算法中使用的逻辑信息的变换规则,
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息,
上述密码通信方法具有:
第1命题逻辑信息取得步骤,上述加密装置的第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得第1属性信息或者第1逻辑信息;
加密步骤,上述加密装置的加密部利用上述第1属性信息或者上述第1逻辑信息、以及上述密钥生成装置的公开密钥,按照函数密码算法,求公共密钥、以及与该公共密钥或者在该公共密钥的生成中使用的信息对应的密码信息;
密码信息发送步骤,上述加密装置的发送部将上述密码信息发送到第1解密装置;
密码信息接收步骤,上述第1解密装置的接收部从上述加密装置接收上述密码信息;
第2命题逻辑信息取得步骤,上述密钥生成装置的第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与上述第1解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得第2属性信息或者第2逻辑信息;
密钥生成步骤,上述密钥生成装置的密钥生成部利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的第1解密密钥;
解密密钥发送步骤,上述密钥生成装置的发送部将上述第1解密密钥发送到上述第1解密装置;
解密密钥接收步骤,上述第1解密装置的接收部从上述密钥生成装置接收上述第1解密密钥;
解密步骤,上述第1解密装置的解密部利用上述第1解密密钥,按照函数密码算法进行对于上述密码信息的解密处理;
转发步骤,上述第1解密装置的转发部将上述密码信息转发给该第1解密装置以外的第2解密装置;
接收步骤,上述第2解密装置的接收部从上述第1解密装置接收上述密码信息;
第3命题逻辑信息取得步骤,上述密钥生成装置的第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与上述第2解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得第3属性信息或者第3逻辑信息;
密钥生成步骤,上述密钥生成装置的密钥生成部利用上述第3属性信息或者上述第3逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的第2解密密钥;
解密密钥发送步骤,上述密钥生成装置的发送部将上述第2解密密钥发送到上述第2解密装置;
解密密钥接收步骤,上述第2解密装置的接收部从上述密钥生成装置接收上述第2解密密钥;以及
解密步骤,上述第2解密装置的解密部利用上述第2解密密钥,按照函数密码算法进行对于上述密码信息的解密处理。
20.一种密码通信方法,用于利用函数密码的密码系统,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、多个解密装置,其中,
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥,
预先规定了一个或者多个变换规则信息对,该变换规则信息对是属性用变换规则信息与逻辑式用变换规则信息的对,其中,该属性用变换规则信息规定了用于将指定属性的信息即属性指定信息变换为在函数密码算法中使用的属性信息的变换规则,该逻辑式用变换规则信息规定了用于将指定逻辑式的信息即逻辑式指定信息变换为在该函数密码算法中使用的逻辑信息的变换规则,
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息,
上述密码通信方法具有:
第1命题逻辑信息取得步骤,上述加密装置的第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得第1属性信息或者第1逻辑信息;
加密步骤,上述加密装置的加密部利用上述第1属性信息或者上述第1逻辑信息、以及上述密钥生成装置的公开密钥,按照函数密码算法,求公共密钥、以及与该公共密钥或者在该公共密钥的生成中使用的信息对应的密码信息;
密码信息发送步骤,上述加密装置的发送部将上述密码信息发送到第1解密装置;
密码信息接收步骤,上述第1解密装置的接收部从上述加密装置接收上述密码信息;
第2命题逻辑信息取得步骤,上述第1解密装置的第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与该第1解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得第2属性信息或者第2逻辑信息;
逻辑信息发送步骤,上述第1解密装置的发送部将上述第2属性信息或者上述第2逻辑信息发送到上述密钥生成装置;
逻辑信息接收步骤,上述密钥生成装置的接收部从上述第1解密装置接收上述第2属性信息或者上述第2逻辑信息;
密钥生成步骤,上述密钥生成装置的密钥生成部利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的第1解密密钥;
解密密钥发送步骤,上述密钥生成装置的发送部将上述第1解密密钥发送到上述第1解密装置;
解密密钥接收步骤,上述第1解密装置的接收部从上述密钥生成装置接收上述第1解密密钥;
解密步骤,上述第1解密装置的解密部利用上述第1解密密钥,按照函数密码算法进行对于上述密码信息的解密处理;
转发步骤,上述第1解密装置的转发部将上述密码信息转发给该第1解密装置以外的第2解密装置;
接收步骤,上述第2解密装置的接收部从上述第1解密装置接收上述密码信息;
第3命题逻辑信息取得步骤,上述第2解密装置的第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与该第2解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得第3属性信息或者第3逻辑信息;
逻辑信息发送步骤,上述第2解密装置的发送部将上述第3属性信息或者上述第3逻辑信息发送到上述密钥生成装置;
逻辑信息接收步骤,上述密钥生成装置的接收部从上述第2解密装置接收上述第3属性信息或者上述第3逻辑信息;
密钥生成步骤,上述密钥生成装置的密钥生成部利用上述第3属性信息或者上述第3逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的第2解密密钥;
解密密钥发送步骤,上述密钥生成装置的发送部将上述第2解密密钥发送到上述第2解密装置;
解密密钥接收步骤,上述第2解密装置的接收部从上述密钥生成装置接收上述第2解密密钥;以及
解密步骤,上述第2解密装置的解密部利用上述第2解密密钥,按照函数密码算法进行对于上述密码信息的解密处理。
21.一种密码通信方法,用于利用函数密码的密码系统,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、多个解密装置,其中,
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥,
预先规定了一个或者多个变换规则信息对,该变换规则信息对是属性用变换规则信息与逻辑式用变换规则信息的对,其中,该属性用变换规则信息规定了用于将指定属性的信息即属性指定信息变换为在函数密码算法中使用的属性信息的变换规则,该逻辑式用变换规则信息规定了用于将指定逻辑式的信息即逻辑式指定信息变换为在该函数密码算法中使用的逻辑信息的变换规则,
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息,
上述密码通信方法具有:
第1命题逻辑信息取得步骤,上述加密装置的第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得第1属性信息或者第1逻辑信息;
加密步骤,上述加密装置的加密部利用上述第1属性信息或者上述第1逻辑信息、上述密钥生成装置的公开密钥、以及明文,按照函数密码算法,求与该明文对应的密码信息;
密码信息发送步骤,上述加密装置的发送部将上述密码信息发送到第1解密装置;
密码信息接收步骤,上述第1解密装置的接收部从上述加密装置接收上述密码信息;
第2命题逻辑信息取得步骤,上述密钥生成装置的第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与上述第1解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得第2属性信息或者第2逻辑信息;
密钥生成步骤,上述密钥生成装置的密钥生成部利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的第1解密密钥;
解密密钥发送步骤,上述密钥生成装置的发送部将上述第1解密密钥发送到上述第1解密装置;
解密密钥接收步骤,上述第1解密装置的接收部从上述密钥生成装置接收上述第1解密密钥;
解密步骤,上述第1解密装置的解密部利用上述第1解密密钥,按照函数密码算法进行对于上述密码信息的解密处理;
转发步骤,上述第1解密装置的转发部将上述密码信息转发给该第1解密装置以外的第2解密装置;
接收步骤,上述第2解密装置的接收部从上述第1解密装置接收上述密码信息;
第3命题逻辑信息取得步骤,上述密钥生成装置的第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与上述第2解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得第3属性信息或者第3逻辑信息;
密钥生成步骤,上述密钥生成装置的密钥生成部利用上述第3属性信息或者上述第3逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的第2解密密钥;
解密密钥发送步骤,上述密钥生成装置的发送部将上述第2解密密钥发送到上述第2解密装置;
解密密钥接收步骤,上述第2解密装置的接收部从上述密钥生成装置接收上述第2解密密钥;以及
解密步骤,上述第2解密装置的解密部利用上述第2解密密钥,按照函数密码算法进行对于上述密码信息的解密处理。
22.一种密码通信方法,用于利用函数密码的密码系统,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、多个解密装置,其中,
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥,
预先规定了一个或者多个变换规则信息对,该变换规则信息对是属性用变换规则信息与逻辑式用变换规则信息的对,其中,该属性用变换规则信息规定了用于将指定属性的信息即属性指定信息变换为在函数密码算法中使用的属性信息的变换规则,该逻辑式用变换规则信息规定了用于将指定逻辑式的信息即逻辑式指定信息变换为在该函数密码算法中使用的逻辑信息的变换规则,
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息,
上述密码通信方法具有:
第1命题逻辑信息取得步骤,上述加密装置的第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得第1属性信息或者第1逻辑信息;
加密步骤,上述加密装置的加密部利用上述第1属性信息或者上述第1逻辑信息、上述密钥生成装置的公开密钥、以及明文,按照函数密码算法,求与该明文对应的密码信息;
密码信息发送步骤,上述加密装置的发送部将上述密码信息发送到第1解密装置;
密码信息接收步骤,上述第1解密装置的接收部从上述加密装置接收上述密码信息;
第2命题逻辑信息取得步骤,上述第1解密装置的第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与该第1解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得第2属性信息或者第2逻辑信息;
逻辑信息发送步骤,上述第1解密装置的发送部将上述第2属性信息或者上述第2逻辑信息发送到上述密钥生成装置;
逻辑信息接收步骤,上述密钥生成装置的接收部从上述第1解密装置接收上述第2属性信息或者上述第2逻辑信息;
密钥生成步骤,上述密钥生成装置的密钥生成部利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的第1解密密钥;
解密密钥发送步骤,上述密钥生成装置的发送部将上述第1解密密钥发送到上述第1解密装置;
解密密钥接收步骤,上述第1解密装置的接收部从上述密钥生成装置接收上述第1解密密钥;
解密步骤,上述第1解密装置的解密部利用上述第1解密密钥,按照函数密码算法进行对于上述密码信息的解密处理;
转发步骤,上述第1解密装置的转发部将上述密码信息转发给该第1解密装置以外的第2解密装置;
接收步骤,上述第2解密装置的接收部从上述第1解密装置接收上述密码信息;
第3命题逻辑信息取得步骤,上述第2解密装置的第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与该第2解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得第3属性信息或者第3逻辑信息;
逻辑信息发送步骤,上述第2解密装置的发送部将上述第3属性信息或者上述第3逻辑信息发送到上述密钥生成装置;
逻辑信息接收步骤,上述密钥生成装置的接收部从上述第2解密装置接收上述第3属性信息或者上述第3逻辑信息;
密钥生成步骤,上述密钥生成装置的密钥生成部利用上述第3属性信息或者上述第3逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的第2解密密钥;
解密密钥发送步骤,上述密钥生成装置的发送部将上述第2解密密钥发送到上述第2解密装置;
解密密钥接收步骤,上述第2解密装置的接收部从上述密钥生成装置接收上述第2解密密钥;以及
解密步骤,上述第2解密装置的解密部利用上述第2解密密钥,按照函数密码算法进行对于上述密码信息的解密处理。
23.一种密码通信方法,用于利用函数密码的密码系统,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置、一个或者多个内容服务器装置,其中,
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥,
预先规定了一个或者多个变换规则信息对,该变换规则信息对是属性用变换规则信息与逻辑式用变换规则信息的对,其中,该属性用变换规则信息规定了用于将指定属性的信息即属性指定信息变换为在函数密码算法中使用的属性信息的变换规则,该逻辑式用变换规则信息规定了用于将指定逻辑式的信息即逻辑式指定信息变换为在该函数密码算法中使用的逻辑信息的变换规则,
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息,
上述密码通信方法具有:
第1命题逻辑信息取得步骤,上述加密装置的第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得第1属性信息或者第1逻辑信息;
加密步骤,上述加密装置的加密部利用上述第1属性信息或者上述第1逻辑信息、上述密钥生成装置的公开密钥、以及内容,按照函数密码算法,求公共密钥、与该公共密钥或者在该公共密钥的生成中使用的信息对应的密码信息、以及通过该公共密钥对该内容进行了加密的加密内容;
发送步骤,上述加密装置的发送部将上述加密内容和与其对应的上述密码信息发送到上述内容服务器装置;
存储步骤,上述内容服务器装置的存储部存储从各个上述加密装置送来的上述密码信息以及上述加密内容;
取得请求处理步骤,上述解密装置的浏览器部进行对于上述内容服务器装置的上述加密内容的取得请求处理;
发送步骤,上述解密装置的中转部将来自上述浏览器部的上述取得请求发送到上述内容服务器装置;
发送步骤,上述内容服务器装置的发送部根据来自上述解密装置的请求,将上述加密内容和与其对应的上述密码信息发送到该解密装置;
接收步骤,上述解密装置的接收部从上述内容服务器装置接收上述加密内容和上述密码信息;
第2命题逻辑信息取得步骤,上述密钥生成装置的第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与上述解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得第2属性信息或者第2逻辑信息;
密钥生成步骤,上述密钥生成装置的密钥生成部利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的解密密钥;
解密密钥发送步骤,上述密钥生成装置的发送部将上述解密密钥发送到上述解密装置;
解密密钥接收步骤,上述解密装置的接收部从上述密钥生成装置接收上述解密密钥;
解密步骤,上述解密装置的中转部利用上述解密密钥且按照函数密码算法,进行对于从上述内容服务器装置取得的上述密码信息的解密处理,并且利用通过该解密处理获得的上述公共密钥,进行对从上述内容服务器装置取得的上述加密内容进行解密的内容取得处理;以及
显示步骤,上述解密装置的浏览器部显示从上述加密内容解密后的内容。
24.一种密码通信方法,用于利用函数密码的密码系统,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置、一个或者多个内容服务器装置,其中,
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥,
预先规定了一个或者多个变换规则信息对,该变换规则信息对是属性用变换规则信息与逻辑式用变换规则信息的对,其中,该属性用变换规则信息规定了用于将指定属性的信息即属性指定信息变换为在函数密码算法中使用的属性信息的变换规则,该逻辑式用变换规则信息规定了用于将指定逻辑式的信息即逻辑式指定信息变换为在该函数密码算法中使用的逻辑信息的变换规则,
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息,
上述密码通信方法具有:
第1命题逻辑信息取得步骤,上述加密装置的第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得第1属性信息或者第1逻辑信息;
加密步骤,上述加密装置的加密部利用上述第1属性信息或者上述第1逻辑信息、上述密钥生成装置的公开密钥、以及内容,按照函数密码算法,求公共密钥、与该公共密钥或者在该公共密钥的生成中使用的信息对应的密码信息、以及通过该公共密钥对该内容进行了加密的加密内容;
发送步骤,上述加密装置的发送部将上述加密内容和与其对应的上述密码信息发送到上述内容服务器装置;
存储步骤,上述内容服务器装置的存储部存储从各个上述加密装置送来的上述密码信息以及上述加密内容;
取得请求处理步骤,上述解密装置的浏览器部进行对于上述内容服务器装置的上述加密内容的取得请求处理;
发送步骤,上述解密装置的中转部将来自上述浏览器部的上述取得请求发送到上述内容服务器装置;
发送步骤,上述内容服务器装置的发送部根据来自上述解密装置的请求,将上述加密内容和与其对应的上述密码信息发送到该解密装置;
接收步骤,上述解密装置的接收部从上述内容服务器装置接收上述加密内容和上述密码信息;
第2命题逻辑信息取得步骤,上述解密装置的第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与该解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得第2属性信息或者第2逻辑信息;
逻辑信息发送步骤,上述解密装置的发送部将上述第2属性信息或者上述第2逻辑信息发送到上述密钥生成装置;
逻辑信息接收步骤,上述密钥生成装置的接收部从上述解密装置接收上述第2属性信息或者上述第2逻辑信息;
密钥生成步骤,上述密钥生成装置的密钥生成部利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述密码信息的解密中使用的解密密钥;
解密密钥发送步骤,上述密钥生成装置的发送部将上述解密密钥发送到上述解密装置;
解密密钥接收步骤,上述解密装置的接收部从上述密钥生成装置接收上述解密密钥;
解密步骤,上述解密装置的中转部利用上述解密密钥且按照函数密码算法,进行对于从上述内容服务器装置取得的上述密码信息的解密处理,并且利用通过该解密处理获得的上述公共密钥,进行对从上述内容服务器装置取得的上述加密内容进行解密的内容取得处理;以及
显示步骤,上述解密装置的浏览器部显示从上述加密内容解密后的内容。
25.一种密码通信方法,用于利用函数密码的密码系统,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置、一个或者多个内容服务器装置,其中,
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥,
预先规定了一个或者多个变换规则信息对,该变换规则信息对是属性用变换规则信息与逻辑式用变换规则信息的对,其中,该属性用变换规则信息规定了用于将指定属性的信息即属性指定信息变换为在函数密码算法中使用的属性信息的变换规则,该逻辑式用变换规则信息规定了用于将指定逻辑式的信息即逻辑式指定信息变换为在该函数密码算法中使用的逻辑信息的变换规则,
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息,
上述密码通信方法具有:
第1命题逻辑信息取得步骤,上述加密装置的第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得第1属性信息或者第1逻辑信息;
加密步骤,上述加密装置的加密部利用上述第1属性信息或者上述第1逻辑信息、上述密钥生成装置的公开密钥、以及内容,按照相关的函数密码算法,求对该内容进行了加密的加密内容;
发送步骤,上述加密装置的发送部将上述加密内容发送到上述内容服务器装置;
存储步骤,上述内容服务器装置的存储部存储从各个上述加密装置送来的上述加密内容;
取得请求处理步骤,上述解密装置的浏览器部进行对于上述内容服务器装置的上述加密内容的取得请求处理;
发送步骤,上述解密装置的中转部将来自上述浏览器部的上述取得请求发送到上述内容服务器装置;
发送步骤,上述内容服务器装置的发送部根据来自上述解密装置的请求,将上述加密内容发送到该解密装置;
接收步骤,上述解密装置的接收部从上述内容服务器装置接收上述加密内容;
第2命题逻辑信息取得步骤,上述密钥生成装置的第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与上述解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得第2属性信息或者第2逻辑信息;
密钥生成步骤,上述密钥生成装置的密钥生成部利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述加密内容的解密中使用的解密密钥;
解密密钥发送步骤,上述密钥生成装置的发送部将上述解密密钥发送到上述解密装置;
解密密钥接收步骤,上述解密装置的接收部从上述密钥生成装置接收上述解密密钥;
解密步骤,上述解密装置的中转部利用上述解密密钥且按照函数密码算法,进行对于从上述内容服务器装置取得的上述加密内容的解密处理;以及
显示步骤,上述解密装置的浏览器部显示从上述加密内容解密后的内容。
26.一种密码通信方法,用于利用函数密码的密码系统,该密码系统至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置、一个或者多个内容服务器装置,其中,
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥,
预先规定了一个或者多个变换规则信息对,该变换规则信息对是属性用变换规则信息与逻辑式用变换规则信息的对,其中,该属性用变换规则信息规定了用于将指定属性的信息即属性指定信息变换为在函数密码算法中使用的属性信息的变换规则,该逻辑式用变换规则信息规定了用于将指定逻辑式的信息即逻辑式指定信息变换为在该函数密码算法中使用的逻辑信息的变换规则,
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息,
上述密码通信方法具有:
第1命题逻辑信息取得步骤,上述加密装置的第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得第1属性信息或者第1逻辑信息;
加密步骤,上述加密装置的加密部利用上述第1属性信息或者上述第1逻辑信息、上述密钥生成装置的公开密钥、以及内容,按照函数密码算法,求对该内容进行了加密的加密内容;
发送步骤,上述加密装置的发送部将上述加密内容发送到上述内容服务器装置;
存储步骤,上述内容服务器装置的存储部存储从各个上述加密装置送来的上述加密内容;
取得请求处理步骤,上述解密装置的浏览器部进行对于上述内容服务器装置的上述加密内容的取得请求处理;
发送步骤,上述解密装置的中转部将来自上述浏览器部的上述取得请求发送到上述内容服务器装置;
发送步骤,上述内容服务器装置的发送部根据来自上述解密装置的请求,将上述加密内容发送到该解密装置;
接收步骤,上述解密装置的接收部从上述内容服务器装置接收上述加密内容;
第2命题逻辑信息取得步骤,上述解密装置的第2命题逻辑信息取得部,利用与通过上述政策信息确定的上述一个变换规则信息构成一对的另一个变换规则信息,从与该解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得第2属性信息或者第2逻辑信息;
逻辑信息发送步骤,上述解密装置的发送部将上述第2属性信息或者上述第2逻辑信息发送到上述密钥生成装置;
逻辑信息接收步骤,上述密钥生成装置的接收部从上述解密装置接收上述第2属性信息或者上述第2逻辑信息;
密钥生成步骤,上述密钥生成装置的密钥生成部利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在上述加密内容的解密中使用的解密密钥;
解密密钥发送步骤,上述密钥生成装置的发送部将上述解密密钥发送到上述解密装置;
解密密钥接收步骤,上述解密装置的接收部从上述密钥生成装置接收上述解密密钥;
解密步骤,上述解密装置的中转部利用上述解密密钥且按照函数密码算法,进行对于从上述内容服务器装置取得的上述加密内容的解密处理;以及
显示步骤,上述解密装置的浏览器部显示从上述加密内容解密后的内容。
27.一种加密装置,用于利用函数密码的密码系统,
在该密码系统中,
至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置,
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥,
预先规定了一个或者多个变换规则信息对,该变换规则信息对是属性用变换规则信息与逻辑式用变换规则信息的对,其中,该属性用变换规则信息规定了用于将指定属性的信息即属性指定信息变换为在函数密码算法中使用的属性信息的变换规则,该逻辑式用变换规则信息规定了用于将指定逻辑式的信息即逻辑式指定信息变换为在该函数密码算法中使用的逻辑信息的变换规则,
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息,
上述加密装置包括:
第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得第1属性信息或者第1逻辑信息;以及
加密部,利用上述第1属性信息或者上述第1逻辑信息、以及上述密钥生成装置的公开密钥,按照函数密码算法,求公共密钥、以及与该公共密钥或者在该公共密钥的生成中使用的信息对应的密码信息。
28.一种加密装置,用于利用函数密码的密码系统,
在该密码系统中,
至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置,
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥,
预先规定了一个或者多个变换规则信息对,该变换规则信息对是属性用变换规则信息与逻辑式用变换规则信息的对,其中,该属性用变换规则信息规定了用于将指定属性的信息即属性指定信息变换为在函数密码算法中使用的属性信息的变换规则,该逻辑式用变换规则信息规定了用于将指定逻辑式的信息即逻辑式指定信息变换为在该函数密码算法中使用的逻辑信息的变换规则,
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息,
上述加密装置包括:
第1命题逻辑信息取得部,在从上述变换规则信息对中选择的一个变换规则信息对所包含的上述属性用变换规则信息和上述逻辑式用变换规则信息中,利用根据该加密装置的输入信息为属性指定信息或者逻辑式指定信息中的哪一个而与上述政策信息一同选择的其中一个变换规则信息,从该输入信息获得第1属性信息或者第1逻辑信息;以及
加密部,利用上述第1属性信息或者上述第1逻辑信息、上述密钥生成装置的公开密钥、以及明文,按照函数密码算法,求与该明文对应的密码信息。
29.一种密钥生成装置,用于利用函数密码的密码系统,
在该密码系统中,
至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置,
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥,
预先规定了一个或者多个变换规则信息对,该变换规则信息对是属性用变换规则信息与逻辑式用变换规则信息的对,其中,该属性用变换规则信息规定了用于将指定属性的信息即属性指定信息变换为在函数密码算法中使用的属性信息的变换规则,该逻辑式用变换规则信息规定了用于将指定逻辑式的信息即逻辑式指定信息变换为在该函数密码算法中使用的逻辑信息的变换规则,
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息,
上述密钥生成装置包括:
第2命题逻辑信息取得部,利用与通过上述政策信息确定的一个变换规则信息构成一对的另一个变换规则信息,从与上述解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得第2属性信息或者第2逻辑信息;以及
密钥生成部,利用上述第2属性信息或者上述第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在密码信息的解密中使用的解密密钥。
30.一种密钥生成装置,用于利用函数密码的密码系统,
在该密码系统中,
至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置,
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥,
预先规定了一个或者多个变换规则信息对,该变换规则信息对是属性用变换规则信息与逻辑式用变换规则信息的对,其中,该属性用变换规则信息规定了用于将指定属性的信息即属性指定信息变换为在函数密码算法中使用的属性信息的变换规则,该逻辑式用变换规则信息规定了用于将指定逻辑式的信息即逻辑式指定信息变换为在该函数密码算法中使用的逻辑信息的变换规则,
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息,
上述密钥生成装置包括:
密钥生成部,利用第2属性信息或者第2逻辑信息、以及该密钥生成装置的秘密密钥,生成在密码信息的解密中使用的解密密钥,其中,该第2属性信息或者该第2逻辑信息是利用与通过上述政策信息确定的一个变换规则信息构成一对的另一个变换规则信息,根据与上述解密装置的用户对应的属性指定信息或者逻辑式指定信息而生成的属性信息或者逻辑信息。
31.一种解密装置,用于利用函数密码的密码系统,
在该密码系统中,
至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置,
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥,
预先规定了一个或者多个变换规则信息对,该变换规则信息对是属性用变换规则信息与逻辑式用变换规则信息的对,其中,该属性用变换规则信息规定了用于将指定属性的信息即属性指定信息变换为在函数密码算法中使用的属性信息的变换规则,该逻辑式用变换规则信息规定了用于将指定逻辑式的信息即逻辑式指定信息变换为在该函数密码算法中使用的逻辑信息的变换规则,
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息,
上述解密装置包括:
解密部,利用上述密钥生成装置生成的解密密钥,按照函数密码算法,进行对于上述加密装置生成的密码信息的解密处理。
32.如权利要求31所述的解密装置,其中,
在上述密码系统包括多个解密装置的情况下,
解密装置还包括将上述密码信息转发给该解密装置以外的一个以上的解密装置的转发部。
33.一种解密装置,用于利用函数密码的密码系统,
在该密码系统中,
至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置,
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥,
预先规定了一个或者多个变换规则信息对,该变换规则信息对是属性用变换规则信息与逻辑式用变换规则信息的对,其中,该属性用变换规则信息规定了用于将指定属性的信息即属性指定信息变换为在函数密码算法中使用的属性信息的变换规则,该逻辑式用变换规则信息规定了用于将指定逻辑式的信息即逻辑式指定信息变换为在该函数密码算法中使用的逻辑信息的变换规则,
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息,
上述解密装置包括:
第2命题逻辑信息取得部,利用与通过上述政策信息确定的一个变换规则信息构成一对的另一个变换规则信息,从与该解密装置的用户对应的属性指定信息或者逻辑式指定信息,获得作为属性信息的第2属性信息或者作为逻辑信息的第2逻辑信息;以及
解密部,利用上述密钥生成装置生成的解密密钥,按照函数密码算法,进行对于上述加密装置生成的密码信息的解密处理。
34.如权利要求33所述的解密装置,其中,
在上述密码系统包括多个解密装置的情况下,
解密装置还包括将上述密码信息转发给该解密装置以外的一个以上的解密装置的转发部。
35.一种解密装置,用于利用函数密码的密码系统,
在该密码系统中,
至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置、一个或者多个内容服务器装置,其中,上述加密装置按照函数密码算法,求公共密钥、与该公共密钥或者在该公共密钥的生成中使用的信息对应的密码信息、以及通过该公共密钥对内容进行了加密的加密内容,上述内容服务器装置存储上述加密内容和上述密码信息,
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥,
预先规定了一个或者多个变换规则信息对,该变换规则信息对是属性用变换规则信息与逻辑式用变换规则信息的对,其中,该属性用变换规则信息规定了用于将指定属性的信息即属性指定信息变换为在函数密码算法中使用的属性信息的变换规则,该逻辑式用变换规则信息规定了用于将指定逻辑式的信息即逻辑式指定信息变换为在该函数密码算法中使用的逻辑信息的变换规则,
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息,
上述解密装置包括浏览器部和中转部,
上述浏览器部进行对于上述内容服务器装置的上述加密内容的取得请求处理,并显示从上述加密内容解密后的内容,
上述中转部将来自上述浏览器部的上述取得请求发送到上述内容服务器装置,并利用解密密钥且按照函数密码算法,进行对于从上述内容服务器装置取得的上述密码信息的解密处理,并且利用通过该解密处理获得的上述公共密钥,进行对从上述内容服务器装置取得的上述加密内容进行解密的内容取得处理。
36.一种解密装置,用于利用函数密码的密码系统,
在该密码系统中,
至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置、一个或者多个内容服务器装置,其中,上述加密装置按照函数密码算法,求对内容进行了加密的加密内容,上述内容服务器装置存储上述加密内容,
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥,
预先规定了一个或者多个变换规则信息对,该变换规则信息对是属性用变换规则信息与逻辑式用变换规则信息的对,其中,该属性用变换规则信息规定了用于将指定属性的信息即属性指定信息变换为在函数密码算法中使用的属性信息的变换规则,该逻辑式用变换规则信息规定了用于将指定逻辑式的信息即逻辑式指定信息变换为在该函数密码算法中使用的逻辑信息的变换规则,
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息,
上述解密装置包括浏览器部和中转部,
上述浏览器部进行对于上述内容服务器装置的上述加密内容的取得请求处理,并显示从上述加密内容解密后的内容,
上述中转部将来自上述浏览器部的上述取得请求发送到上述内容服务器装置,并利用解密密钥且按照函数密码算法,进行对于从上述内容服务器装置取得的上述加密内容的解密处理。
37.一种内容服务器装置,用于利用函数密码的密码系统,
在该密码系统中,
至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置、一个或者多个内容服务器装置,其中,上述加密装置按照函数密码算法,求公共密钥、与该公共密钥或者在该公共密钥的生成中使用的信息对应的密码信息、以及通过该公共密钥对内容进行了加密的加密内容,
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥,
预先规定了一个或者多个变换规则信息对,该变换规则信息对是属性用变换规则信息与逻辑式用变换规则信息的对,其中,该属性用变换规则信息规定了用于将指定属性的信息即属性指定信息变换为在函数密码算法中使用的属性信息的变换规则,该逻辑式用变换规则信息规定了用于将指定逻辑式的信息即逻辑式指定信息变换为在该函数密码算法中使用的逻辑信息的变换规则,
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息,
上述内容服务器装置包括:
存储部,存储从各个上述加密装置送来的上述密码信息以及上述加密内容;以及
发送部,根据来自上述解密装置的请求,将上述加密内容和与其对应的上述密码信息发送到该解密装置。
38.一种内容服务器装置,用于利用函数密码的密码系统,
在该密码系统中,
至少包含一个或者多个加密装置、一个或者多个密钥生成装置、一个或者多个解密装置、一个或者多个内容服务器装置,其中,上述加密装置按照函数密码算法,求对内容进行了加密的加密内容,
对各个上述密钥生成装置预先规定了秘密密钥和对应于该秘密密钥的公开密钥,
预先规定了一个或者多个变换规则信息对,该变换规则信息对是属性用变换规则信息与逻辑式用变换规则信息的对,其中,该属性用变换规则信息规定了用于将指定属性的信息即属性指定信息变换为在函数密码算法中使用的属性信息的变换规则,该逻辑式用变换规则信息规定了用于将指定逻辑式的信息即逻辑式指定信息变换为在该函数密码算法中使用的逻辑信息的变换规则,
预先规定了用于确定是上述属性用变换规则信息和上述逻辑式用变换规则信息中的哪一个的政策信息,
上述内容服务器装置包括:
存储部,存储从各个上述加密装置送来的上述加密内容;以及
发送部,根据来自上述解密装置的请求,将上述加密内容发送到该解密装置。
CN201180035439.2A 2010-07-23 2011-07-22 密码系统、密码通信方法、加密装置、密钥生成装置、解密装置、内容服务器装置 Active CN103004130B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2010-166401 2010-07-23
JP2010166401 2010-07-23
PCT/JP2011/066716 WO2012011575A1 (ja) 2010-07-23 2011-07-22 暗号システム、暗号通信方法、暗号化装置、鍵生成装置、復号装置、コンテンツサーバ装置、プログラム、記憶媒体

Publications (2)

Publication Number Publication Date
CN103004130A CN103004130A (zh) 2013-03-27
CN103004130B true CN103004130B (zh) 2015-03-11

Family

ID=45496992

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201180035439.2A Active CN103004130B (zh) 2010-07-23 2011-07-22 密码系统、密码通信方法、加密装置、密钥生成装置、解密装置、内容服务器装置

Country Status (6)

Country Link
US (1) US8995660B2 (zh)
EP (2) EP2582086B1 (zh)
JP (1) JP5422053B2 (zh)
KR (1) KR101418254B1 (zh)
CN (1) CN103004130B (zh)
WO (1) WO2012011575A1 (zh)

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8683232B2 (en) * 2011-05-18 2014-03-25 Cpo Technologies Corporation Secure user/host authentication
JP5677273B2 (ja) * 2011-11-18 2015-02-25 三菱電機株式会社 暗号処理システム、暗号処理方法、暗号処理プログラム及び鍵生成装置
JP5680007B2 (ja) 2012-03-06 2015-03-04 三菱電機株式会社 暗号システム、暗号方法及び暗号プログラム
US11245672B2 (en) * 2012-06-18 2022-02-08 Microsoft Technologly Licensing, LLC System and method to access content of encrypted data items in unsupported digital environments
CN105408884B (zh) 2013-07-26 2019-03-29 慧与发展有限责任合伙企业 基于上下文的数据查看
US9350550B2 (en) 2013-09-10 2016-05-24 M2M And Iot Technologies, Llc Power management and security for wireless modules in “machine-to-machine” communications
US9100175B2 (en) 2013-11-19 2015-08-04 M2M And Iot Technologies, Llc Embedded universal integrated circuit card supporting two-factor authentication
US10498530B2 (en) 2013-09-27 2019-12-03 Network-1 Technologies, Inc. Secure PKI communications for “machine-to-machine” modules, including key derivation by modules and authenticating public keys
US9607177B2 (en) * 2013-09-30 2017-03-28 Qualcomm Incorporated Method for securing content in dynamically allocated memory using different domain-specific keys
US10700856B2 (en) 2013-11-19 2020-06-30 Network-1 Technologies, Inc. Key derivation for a module using an embedded universal integrated circuit card
CN106464484B (zh) * 2014-03-31 2019-08-09 爱迪德技术有限公司 预定函数的混淆执行
EP3771138B1 (en) * 2014-03-31 2021-09-22 Irdeto B.V. Cryptographic chip and related methods
US9672342B2 (en) 2014-05-05 2017-06-06 Analog Devices, Inc. System and device binding metadata with hardware intrinsic properties
US10432409B2 (en) 2014-05-05 2019-10-01 Analog Devices, Inc. Authentication system and device including physical unclonable function and threshold cryptography
US9946858B2 (en) * 2014-05-05 2018-04-17 Analog Devices, Inc. Authentication system and device including physical unclonable function and threshold cryptography
WO2016056473A1 (ja) * 2014-10-07 2016-04-14 日本電信電話株式会社 秘密計算システム、中継装置、それらの方法、プログラム、および記録媒体
US10050782B2 (en) * 2014-12-05 2018-08-14 Mitsubishi Electric Corporation Decryption condition addition device, cryptographic system, and computer readable medium
US9853977B1 (en) 2015-01-26 2017-12-26 Winklevoss Ip, Llc System, method, and program product for processing secure transactions within a cloud computing system
US10630686B2 (en) 2015-03-12 2020-04-21 Fornetix Llc Systems and methods for organizing devices in a policy hierarchy
US10560440B2 (en) 2015-03-12 2020-02-11 Fornetix Llc Server-client PKI for applied key management system and process
US10965459B2 (en) 2015-03-13 2021-03-30 Fornetix Llc Server-client key escrow for applied key management system and process
US10020939B2 (en) 2015-04-28 2018-07-10 Korea University Research And Business Foundation Device, server and method for providing secret key encryption and restoration
US11063980B2 (en) 2016-02-26 2021-07-13 Fornetix Llc System and method for associating encryption key management policy with device activity
US10931653B2 (en) 2016-02-26 2021-02-23 Fornetix Llc System and method for hierarchy manipulation in an encryption key management system
US10880281B2 (en) 2016-02-26 2020-12-29 Fornetix Llc Structure of policies for evaluating key attributes of encryption keys
US10917239B2 (en) 2016-02-26 2021-02-09 Fornetix Llc Policy-enabled encryption keys having ephemeral policies
US10860086B2 (en) 2016-02-26 2020-12-08 Fornetix Llc Policy-enabled encryption keys having complex logical operations
US9838203B1 (en) * 2016-09-28 2017-12-05 International Business Machines Corporation Integrity protected trusted public key token with performance enhancements
WO2018070932A1 (en) * 2016-10-14 2018-04-19 Huawei International Pte. Ltd. System and method for querying an encrypted database for documents satisfying an expressive keyword access structure
US10425235B2 (en) 2017-06-02 2019-09-24 Analog Devices, Inc. Device and system with global tamper resistance
US10958452B2 (en) 2017-06-06 2021-03-23 Analog Devices, Inc. System and device including reconfigurable physical unclonable functions and threshold cryptography
US10193690B1 (en) * 2017-09-29 2019-01-29 U.S. Bancorp, National Association Systems and methods to secure data using computer system attributes
WO2019224912A1 (ja) * 2018-05-22 2019-11-28 三菱電機株式会社 車両通信装置、車両アクセス制御システム、管理装置、車両アクセス制御方法、および車両アクセス制御プログラム
US10922423B1 (en) * 2018-06-21 2021-02-16 Amazon Technologies, Inc. Request context generator for security policy validation service
CN109379178B (zh) * 2018-11-15 2022-01-11 成都卫士通信息产业股份有限公司 加解密装置构建方法、系统、介质及设备
US11451369B2 (en) * 2019-04-16 2022-09-20 Nec Corporation Method and system for multi-authority controlled functional encryption
US11128454B2 (en) 2019-05-30 2021-09-21 Bong Mann Kim Quantum safe cryptography and advanced encryption and key exchange (AEKE) method for symmetric key encryption/exchange
CN110661883A (zh) * 2019-10-18 2020-01-07 北京师范大学 一种数据传输装置和方法
KR102364047B1 (ko) * 2019-11-19 2022-02-16 기초과학연구원 구조화된 행렬들에 기초한 공개키 암호를 위한 방법과 장치
US11153080B1 (en) * 2020-07-29 2021-10-19 John A. Nix Network securing device data using two post-quantum cryptography key encapsulation mechanisms
US11362816B2 (en) 2020-09-11 2022-06-14 Seagate Technology Llc Layered secret sharing with flexible access structures
US11316673B2 (en) 2020-09-11 2022-04-26 Seagate Technology Llc Privacy preserving secret sharing from novel combinatorial objects
CN114157488B (zh) * 2021-12-03 2023-06-16 北京明朝万达科技股份有限公司 密钥获取方法、装置、电子设备及存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7865742B2 (en) * 2006-07-12 2011-01-04 Palo Alto Research Center Incorporated Method, apparatus, and program product for enabling access to flexibly redacted content
US20090080658A1 (en) 2007-07-13 2009-03-26 Brent Waters Method and apparatus for encrypting data for fine-grained access control
WO2010123122A1 (ja) 2009-04-24 2010-10-28 日本電信電話株式会社 暗号システム、暗号通信方法、暗号化装置、鍵生成装置、復号装置、コンテンツサーバ装置、プログラム、記憶媒体

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Dual-Policy Attribute Based Encryption;Nuttapong Attrapadung 等;《Lecture Notes in Computer Science》;20091231;第5536卷;第168-185页 *
Fully Secure Functional Encryption:Attribute-Based Encryption and (Hierarchical) Inner Product Encryption;Allison Lewko 等;《Cryptology ePrint Archive》;20100329;第1-56页 *
Predicate Encryption Supporting Disjunctions,Polynomial Equations,and Inner Products;Jonathan Katz 等;《Cryptology ePrint Archive》;20080707;第1-29页 *

Also Published As

Publication number Publication date
EP2582086A1 (en) 2013-04-17
EP2582086B1 (en) 2016-03-23
KR20130024951A (ko) 2013-03-08
EP2582086A4 (en) 2013-08-21
EP2787680B1 (en) 2017-03-29
US8995660B2 (en) 2015-03-31
EP2787680A1 (en) 2014-10-08
WO2012011575A1 (ja) 2012-01-26
JPWO2012011575A1 (ja) 2013-09-09
US20130114810A1 (en) 2013-05-09
JP5422053B2 (ja) 2014-02-19
KR101418254B1 (ko) 2014-07-10
CN103004130A (zh) 2013-03-27

Similar Documents

Publication Publication Date Title
CN103004130B (zh) 密码系统、密码通信方法、加密装置、密钥生成装置、解密装置、内容服务器装置
CN102369687B (zh) 密码系统、密码通信方法、加密装置、密钥生成装置、解密装置、内容服务器装置、程序、存储介质
CN103004129B (zh) 加密装置、解密装置、加密方法、解密方法、程序及记录介质
JP5379914B2 (ja) 秘密分散システム、分散装置、分散管理装置、取得装置、秘密分散方法、プログラム、及び記録媒体
US20120163588A1 (en) Functional encryption applied system, information output apparatus, information processing apparatus, encryption protocol execution method, information output method, information processing method, program and recording medium
Huang et al. Enabled/disabled predicate encryption in clouds
JP2010160235A (ja) 検索システム、端末装置、データベース装置、検索方法及びプログラム
Meddah et al. Scalable lightweight ABAC scheme for secure sharing PHR in cloud computing
JP5612494B2 (ja) 関数暗号を用いた時限暗号システム、時限暗号方法、装置、プログラム
JP5097137B2 (ja) 暗号通信システム、端末装置、秘密鍵生成方法及びプログラム
Chen et al. A hill cipher‐based remote data possession checking in cloud storage
Jadhav et al. Review on key-aggregate cryptosystem for scalable data sharing in cloud storage
Sahana Raj et al. Identity based cryptography using matrices
JP6000207B2 (ja) 暗号化システム、システムパラメータ生成装置、暗号化装置、復号装置、及びその方法、プログラム
Dooley et al. Alice and Bob and Whit and Martin: Public Key Crypto

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant