KR101575681B1 - 속성 기반 암호화 방법 - Google Patents

속성 기반 암호화 방법 Download PDF

Info

Publication number
KR101575681B1
KR101575681B1 KR1020140109740A KR20140109740A KR101575681B1 KR 101575681 B1 KR101575681 B1 KR 101575681B1 KR 1020140109740 A KR1020140109740 A KR 1020140109740A KR 20140109740 A KR20140109740 A KR 20140109740A KR 101575681 B1 KR101575681 B1 KR 101575681B1
Authority
KR
South Korea
Prior art keywords
attribute
secret key
params
msk
ciphertext
Prior art date
Application number
KR1020140109740A
Other languages
English (en)
Inventor
김효승
김종현
이동훈
Original Assignee
고려대학교 산학협력단
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 고려대학교 산학협력단 filed Critical 고려대학교 산학협력단
Priority to KR1020140109740A priority Critical patent/KR101575681B1/ko
Application granted granted Critical
Publication of KR101575681B1 publication Critical patent/KR101575681B1/ko

Links

Images

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
    • H04L9/3006Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
    • 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)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Physics & Mathematics (AREA)
  • Algebra (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명의 실시예에 따른 속성 기반 암호화 방법은 안전성 파라미터로부터 군의 위수(p)와 전체 속성의 개수(n)을 설정하고, 겹선형 함수를 선택하여 공개 파라미터(params)와 마스터 비밀키(msk)를 생성하는 셋업단계, 공개 파라미터, 마스터 비밀키 및 비밀키 속성(w)을 입력받아 속성 비밀키(k(w))를 생성하는 단계, 공개 파라미터, 메시지(m) 및 암호문 속성(w')을 입력받아 메시지(m)를 암호화하는 암호문 생성 단계 및 암호문을 복호화하는 단계를 포함한다.

Description

속성 기반 암호화 방법{METHOD OF ATTRIBUTE-BASED ENCRYPTION}
본 발명은 속성 기반 암호화 방법에 관한 발명으로서 보다 상세하게는 보안 강도 조절이 용이한 속성 기반 암호화 방법에 관한 발명이다.
기존의 공개키 암호 기술은 사용자마다 고유의 비밀 복호화 키를 소유하고, 암호화 시 사용자의 암호화 공개키를 사용한다. 이는 암호화 시 사용한 공개키에 대응하는 복호화 키를 소유하고 있는 사용자만 복호화를 할 수 있는 one-to-one 시스템이라 할 수 있다. 이와 달리 속성 기반 암호 기술은 암호화 시 특정 속성에 대한 정보를 사용하고, 사용자를 나타내는 속성이 암호문에 포함되어 있는 속성의 조건과 일치할 시 복호화를 할 수 있다. 따라서 하나의 암호문일지라도 조건을 만족하는 속성을 가진 다수의 사용자가 복호화 가능하므로 차세대 암호화 시스템으로 각광받는 one-to-many 시스템으로 볼 수 있다.
현실에서 사용할 수 있는 최대 연산 능력과 충분한 시간이 주어져도 아직까지 풀지 못하는 것으로 밝혀진 문제들을 NP-hard 문제라 하며, 암호화 기술을 논리적으로 증명하기 위해서는 NP-hard에 속하는 잘 알려진 어려운 문제를 사용한다. ‘어려운 문제를 풀 수 없으면 암호 기술도 안전하다’ 명제의 대우를 이용하여 ‘암호 기술이 안전하지 않으면 NP-hard 문제를 풀 수 있다’로 기술의 안전성을 증명하게 된다. 이 과정에서 사용한 문제가 충분히 어려움을 가정하는 암호학적 가정을 사용하게 되는데 가정이 약할수록 더 안전한 기술이 된다. 만약 파라미터를 통하여 암호학적 가정을 약하게 만들 수 있다면 해당 암호기술의 보안강도는 높아지게 된다.
기존 암호화 기술에서는 안전성 파라미터, 즉 비밀키의 크기(비트 수)를 늘리는 방법으로 보안 강도를 높였다. 예를 들어 현재 공인인증서에서 사용하는 공개키 알고리즘인 RSA는 1024비트의 비밀 키를 사용하다 최근 2048비트로 변경하였다. 안전성 파라미터를 증가시키는 방법은 보기엔 매우 간단한 방법으로 보이지만, 최초 구현 시 메모리 할당, 큰 정수 연산방법 등이 제대로 고려되지 않았을 경우 시스템을 처음부터 다시 구현해야 하는 문제가 있다.
본 발명의 목적은 비밀키의 크기를 늘리지 않고 보안강도를 조절할 수 있는 속성 기반 암호화 방법을 제공하는데 있다.
본 발명의 실시예에 따른 속성 기반 암호화 방법은 안전성 파라미터로부터 군의 위수(p)와 전체 속성의 개수(n)을 설정하고, 겹선형 함수를 선택하여 공개 파라미터(params)와 마스터 비밀키(msk)를 생성하는 셋업단계, 공개 파라미터, 마스터 비밀키 및 비밀키 속성(w)을 입력받아 속성 비밀키(k(w))를 생성하는 단계, 공개 파라미터, 메시지(m) 및 암호문 속성(w')을 입력받아 메시지(m)를 암호화하는 암호문 생성 단계 및 암호문을 복호화하는 단계를 포함하는 속성 기반 암호화 방법으로서, 셋업단계는 겹선형 함수 e:G1×G1→G2를 선택하고, G1의 임의의 생성자 g와 α∈Z* p, ri∈Z* p, ui∈G1(i=1,2,3 …,k), tj∈G1(j=1,2,3,…,n+1)을 생성하는 단계를 포함하고, 암호화 강도가 증가할수록 공개 파라미터(params)를 구성하는 각 성분의 요소 개수가 증가한다.
본 발명의 실시예에 따른 속성 기반 암호화 방법은 보안강도의 조절이 용이하고, 보안강도 조절시 시스템을 처음부터 다시 구현할 필요가 없으며, 보안강도를 높이는 경우 공개키와 비밀키의 개수는 증가하나 크기는 증가하지 않는다.
도1은 본 발명의 실시예에 따른 속성 기반 암호화 방법이 적용될 수 있는 간단한 시스템도이다.
도2는 본 발명의 실시예에 따른 속성 기반 암호화 방법의 실행 순서도이다.
도3은 본 발명의 실시예에 따른 속성 기반 암호화 방법을 구현하기 위한 장치 내지는 시스템의 기능 블럭도이다.
본 명세서에 개시되어 있는 본 발명의 개념에 따른 실시 예들에 대해서 특정한 구조적 또는 기능적 설명은 단지 본 발명의 개념에 따른 실시 예들을 설명하기 위한 목적으로 예시된 것으로서, 본 발명의 개념에 따른 실시 예들은 다양한 형태들로 실시될 수 있으며 본 명세서에 설명된 실시 예들에 한정되지 않는다.
본 발명의 개념에 따른 실시 예들은 다양한 변경들을 가할 수 있고 여러 가지 형태들을 가질 수 있으므로 실시 예들을 도면에 예시하고 본 명세서에서 상세하게 설명하고자 한다. 그러나, 이는 본 발명의 개념에 따른 실시 예들을 특정한 개시 형태들에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물, 또는 대체물을 포함한다.
제1 또는 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만, 예컨대 본 발명의 개념에 따른 권리 범위로부터 벗어나지 않은 채, 제1 구성 요소는 제2 구성 요소로 명명될 수 있고 유사하게 제2 구성 요소는 제1 구성 요소로도 명명될 수 있다.
어떤 구성 요소가 다른 구성 요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성 요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성 요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성 요소가 다른 구성 요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는 중간에 다른 구성 요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성 요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로서, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 본 명세서에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 본 명세서에 첨부된 도면들을 참조하여 본 발명의 실시 예들을 상세히 설명한다.
도1은 본 발명의 실시예에 따른 속성 기반 암호화 방법이 적용될 수 있는 시스템도이다.
도1에 도시된 제1장치(10), 제2장치(20)는 데이터를 서로 주고 받을 수 있는 장치들이다. 제1장치(10)와 제2장치(20)는 개인단말 또는 서버일 수 있으며, 상호 유무선 네트워크를 통해서 연결될 수 있다. 제1장치(10)에서 제2장치(20)로 데이터를 전송하는 경우 데이터를 암호화하여 전송할 수 있다. 도1에 도시된 시스템을 통해 제1장치(10)에서 전송되는 데이터에 대해서 접근권한을 갖는 속성을 만족시키는 제2장치(20)는 데이터를 복호화하여 확인할 수 있도록 한다. 이와 달리 제2장치(20)에서 전송된 정보를 통해서 제2장치(20)의 접근권한을 제1장치(10)에서 판단하여 복호화된 데이터를 제2장치(20)로 전송하는 것도 가능하다.
도1에 도시된 시스템은 특히 최근 사용자들의 단말기의 연산량을 최소화하고, 단말기 간의 통신량을 줄이기 위해서 컴퓨팅 파워가 우수한 클라우드 서버에 연산을 위탁하는 시스템 개념으로도 볼 수 있다. 이 경우 클라우드 서버는 신뢰할 수 없기 때문에 모든 데이터는 암호화되어 전송되어야 하고 주어진 값에 대한 연산을 수행하는 과정에서 클라우드 서버는 입력값이나 연산결과에 대한 어떠한 정보도 얻을 수 없어야 한다.
속성 기반 암호화 방식은 사용자와 관련된(사용자를 규정 짓는) 여러 속성(예를 들어 사용자의 성별, 나이, 직무, 소속부서 등)에 기반한 암호화를 통해 그 사용자와 관련된 문서(평문)를 암호화하는 것을 말한다. 이와 같은 암호화 방식은 특정 사용자에 관한 속성이 정당한 복호화 키를 가진자에게는 (복호화 임계치를 만족하면) 공개가 되고, 그렇지 않은 사용자의 접근을 방지하게 된다.
도2는 본 발명의 실시예에 따른 속성 기반 암호화 방법의 실행 순서도이다.
도2에 도시된 바와 같이 본 발명의 실시예에 따른 속성 기반 암호화 방법은 공개 파라미터(params)와 마스터 비밀키(msk)를 생성하는 셋업단계(S100), 공개 파라미터, 마스터 비밀키 및 비밀키 속성(w)을 입력받아 속성 비밀키(k(w))를 생성하는 단계(S200), 공개 파라미터, 메시지(m) 및 암호문 속성(w')을 입력받아 메시지(m)를 암호화하는 암호문 생성 단계(S300) 및 암호문을 복호화하는 단계(S400)를 포함한다.
먼저 셋업단계(S100)에서는 안전성 파라미터로부터 군의 위수(p)와 전체 속성의 개수(n)을 설정하고, 겹선형 함수를 선택하여 공개 파라미터(params)와 마스터 비밀키(msk)를 생성한다.
겹선형 함수(Bilinear Maps)는 G1과 G2가 위수를 소수 p로 갖는 순환 군(group)이라고 가정하고, 군 G1과 G2에서 모두 이산 대수 문제(Discrete Logarithm Problem)가 어렵다고 가정하자.
겹선형 함수(bilinear map)는 겹선형성, 비소실성, 계산 가능성과 같은 성질을 갖는 G1×G1 에서 군 G2 위로 맵핑되는 함수이다. 겹선형성(Bilinearlity)은 임의의 군 원소 g∈G1와 a, b∈Z* p에 대하여 e(ga, gb)=e(g,g)ab을 만족하는 성질을 의미한다. 비소실성(Non-degeneracy)은 e(g,g)≠1을 만족하는 g∈G1 가 존재한다는 것을 의미한다. 계산 가능성(Computability)은 임의의 g1, g2∈G1에 대해서 e(g1, g2)를 계산하는 효율적인 알고리즘이 존재한다는 것을 의미한다.
이와 같은 겹선형 함수를 이용한 결정적 겹선형 디피-헬만 가정(DBDH)은 e:G1×G1→G2(│G1│=p)인 겹선형 함수가 주어지고, G1의 생성자 g와 ga,gb,gc,T(a,b,c∈Z* p, T∈G2)가 주어졌을 때 T=e(g,g)abc여부를 의미 있는 확률로 결정하는 알고리즘이 존재하지 않는다는 가정이다.
특히 k-겹선형 디피-헬만 가정(k-BDH)은 DBDH의 일반화된 가정으로 e:G1×G1→G2(│G1│=p)인 겹선형 함수가 주어지고, G1의 생성자 g와
Figure 112014079868197-pat00001
, T (x,y,r1,…rk∈Z* p, v1,…,vk∈G1,T∈G2)가 주어졌을때,
Figure 112014079868197-pat00002
여부를 의미있는 확률로 결정하는 알고리즘이 존재하지 않는다는 가정이다.
k=1일때 k-BDH와 DBDH는 동일한 가정임을 알 수 있으며, (k+1)-BDH를 깰 수 있는 공격자는 k-BDH를 깰 수 있으나, k-BDH를 깰 수 있는 공격자는 (k+1)-BDH을 쉽게 깨지 못함이 문헌 K. Benson, H. Shacham, and B. Waters. “The k-BDH Assumption Family: Bilinear Map Cryptography from Progressively Weaker Assumptions.” In E. Dawson, ed., Proceedings of CT-RSA 2013, vol. 7779 of LNCS, pages 310-25. Springer-Verlag, Feb. 2013.을 통해 증명되었다. 이 성질을 이용하면 k에 따라 안정성 정도를 조절할 수 있는 암호화 시스템을 만들 수 있다.
즉 k를 증가시킴으로서 암호화 강도를 높이고, k를 감소시킴으로서 암호화 강도를 낮출 수 있게 된다.
본 발명의 실시예에 따른 셋업단계(S100)는 겹선형 함수 e:G1×G1→G2를 선택하고, G1의 임의의 생성자 g와 α∈Z* p, ri∈Z* p, ui∈G1(i=1,2,3 …,k), tj∈G1(j=1,2,3,…,n+1)을 생성하는 단계를 포함한다. 공개 파라미터(params)는 params=(g, g', {ui, vi, wi}1≤i≤k, {tj}1≤j≤n+1, d)로 나타낼 수 있으며, 마스터 비밀키(msk)는 msk=(α, r1, …, rk)으로 표현된다. 여기서
Figure 112014079868197-pat00003
이다. 또한 셋업단계(S100)는 복호화를 위해 사용되는 임계값(d)을 입력받는 단계를 더 포함할 수 있다.
공개 파라미터(params)는 각 성분들로 구성되어 있으며, 각 성분, 특히 {ui, vi, wi}1≤i≤k, {tj}1≤j≤n+ 1는 각각의 요소(ui, vi, wi, tj)들로 이루어져 있다. 암호화 강도를 증가시키기 위해서 기존방법은 각 성분의 크기를 1024비트에서 2048비트로 증가시킨다. 그러나 본 발명의 실시예에 따른 속성 기반 암호화 방법에서는 공개 파라미터를 위와 같이 설정하여 k값을 증가시켜, 공개 파라미터를 구성하는 각 성분에 포함된 요소의 개수를 증가시킴으로서 가능하다.
마스터 비밀키(msk) 또한 암호화 강도를 증가시키기 위해서 k값을 증가시키면 마스터 비밀키를 구성하는 성분의 개수를 증가시킴으로서 가능하게 된다.
이하 본 발명의 실시예에 따른 속성 기반 암호화 방법은 앞서 언급한 공개 파라미터와 마스터 비밀키를 기반으로 하는 비밀키 생성, 암호화, 복호화 단계에 대한 설명으로 이어진다.
본 발명의 실시예에 따른 속성 비밀키(k(w))생성 단계(S200)는 T(i,x)와 q(x) 두 함수가 사용된다.
T(i,x)의 정의는 아래 수학식 1과 같다.
Figure 112014079868197-pat00004
여기서
Figure 112014079868197-pat00005
는 N={1,…, n+1}에서 라그랑지 계수인 아래 수학식 2와 같다.
Figure 112014079868197-pat00006
q(x)는 q(0)=α를 만족하는 임의의 d-1차 다항식으로 매 속성 w마다 다른 다항식을 사용해도 된다. 암호문의 복호화에 사용되는 속성 비밀키(k(w))는 아래 수학식 3 내지 5에 의해서 도출될 수 있다.
Figure 112014079868197-pat00007
Figure 112014079868197-pat00008
수학식 3과 수학식 4의 nj는 Z* p상의 임의의 수이다. 수학식 3과 수학식 4에 의해서 속성 비밀키(k(w))는 아래 수학식 5와 같다.
Figure 112014079868197-pat00009
속성 비밀키가 생성되면 공개 파라미터(params), 메시지(m) 및 암호문 속성(w')을 입력받아 메시지(m)를 암호화하는 암호문을 생성한다.
암호문을 생성하는 단계(S300)는 암호문 속성(w')으로 메시지 m∈G2를 암호화하는 과정이다. 암호문(C)은 아래 수학식 6 내지 9에 의해서 생성된다.
Figure 112014079868197-pat00010
Figure 112014079868197-pat00011
Figure 112014079868197-pat00012
Figure 112014079868197-pat00013
수학식 9와 같이 암호문 속성(w')으로 암호문을 생성한 이후에 다시 비밀키 속성(w)으로 복호화하는 단계(S400)를 거친다. 암호문의 복호화를 위해서는 암호문 속성(w')과 비밀키 속성(w)이 임계값(d) 이상의 동일한 속성을 가져야 한다.
S⊆w∩w'와 │S│=d를 만족하는 집합 S를 정하면 암호문의 복호화는 아래 수학식 10에 의해서 이루어질 수 있다.
Figure 112014079868197-pat00014
본 방법발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있다. 또한 캐리어 웨이브(예를 들어 유무선 네트워크를 통한 전송)의 형태로 구현되는 것도 포함한다. 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
도3은 본 발명의 실시예에 따른 속성 기반 암호화 방법을 구현하기 위한 장치 내지는 시스템의 기능 블럭도이다.
도3에 도시된 바와 같이 본 발명의 실시예에 따른 속성 기반 암호화 방법을 구현하는 장치는 셋업모듈(100), 키생성모듈(200), 암호화모듈(300), 복호화 모듈(400), 통신모듈(500), 메모리(600), 제어모듈(700)을 포함한다.
본 명세서에서 사용되는 모듈이라 함은 본 발명의 기술적 사상을 수행하기 위한 하드웨어 및 하드웨어를 구동하기 위한 소프트웨어의 기능적, 구조적 결합을 의미할 수 있다. 예컨대, 모듈은 소정의 코드와 소정의 코드가 수행되기 위한 하드웨어 리소스의 논리적인 단위를 의미할 수 있으며, 반드시 물리적으로 연결된 코드를 의미하거나 한 종류의 하드웨어를 의미하는 것은 아니다.
셋업모듈(100)은 제어모듈(700)의 제어에 의해서 안전성 파라미터로부터 군의 위수(p)와 전체 속성의 개수(n)을 설정하고, 겹선형 함수를 선택하여 공개 파라미터(params)와 마스터 비밀키(msk)를 생성한다. 공개 파라미터와 마스터 비밀키는 앞서 설명한 바와 같이 암호화 강도를 증가시키기 위해서 k값을 증가시키는 경우 공개 파라미터와 마스터 비밀키를 구성하는 성분의 크기를 증가시키는 것이 아닌 성분을 이루는 요소의 개수를 증가(공개 파라미터의 경우)시키거나, 마스터 비밀키의 성분 개수를 증가시킨다.
키생성모듈(200)은 공개 파라미터, 마스터 비밀키 및 비밀키 속성(w)을 입력받아 속성 비밀키(k(w))를 생성한다. 속성 비밀키를 생성하기 위해서 키생성모듈은 앞서 수학식 1 내지 5를 이용한다.
암호화 모듈(300)은 제어모듈(700)의 제어에 의해서 공개 파라미터, 메시지 및 암호문 속성을 입력받아 메시지를 암호화한다. 메시지의 암호화를 위해서 앞서 수학식 6 내지 9를 이용한다.
복호화 모듈(400)은 제어모듈(700)의 제어에 의해서 w∩w'≥d(임계값)인 경우에 암호문을 복호화한다. 암호문을 복호화하기 위해서 앞서 수학식 10을 이용한다.
통신모듈(500)은 제어모듈(700)의 제어하에 본 발명의 실시예에 따른 속성 기반 암호화 방법을 구현하는 장치에 접근하는 외부단말들과 네트워크를 통해 통신을 수행한다. 예를 들어 통신모듈(500)을 통해 위 장치는 외부단말에 암호문을 전송하거나 복호화된 평문을 전송할 수도 있다. 또한 공개 파라미터, 메시지 등을 전송하거나 전송받을 수 있다.
메모리(600)는 프로그램 메모리와 데이터 메모리를 포함할 수 있다. 프로그램 메모리는 위 장치의 동작을 제어하기 위한 프로그램들이 저장될 수 있으며 데이터 메모리는 프로그램들을 수행하는 과정 중에 발생되는 데이터를 저장할 수 있다.
제어모듈(700)은 본 발명의 실시예에 따른 속성 기반 암호화 방법을 구현하는 장치 내지는 시스템의 전반적인 동작을 제어한다.
이상 살펴본 본 발명의 실시예에 따른 속성 기반 암호화 방법은 셋업단계부터 암호문을 복호화 하는 단계까지 k값을 증가시킴으로서 공개 파라미터와 마스터 비밀키의 개수는 증가하나 그 크기는 증가하지 않아 시스템을 다시 구현할 필요가 없으면서 보안강도를 증가시킬 수 있다.
10 제1장치
20 제2장치
100 셋업모듈
200 키생성모듈
300 암호화모듈
400 복호화모듈
500 통신모듈
600 메모리
700 제어모듈

Claims (7)

  1. 안전성 파라미터로부터 군의 위수(p)와 전체 속성의 개수(n)을 설정하고, 겹선형 함수를 선택하여 공개 파라미터(params)와 마스터 비밀키(msk)를 생성하는 셋업단계;
    상기 공개 파라미터, 상기 마스터 비밀키 및 비밀키 속성(w)을 입력받아 속성 비밀키(k(w))를 생성하는 단계;
    상기 공개 파라미터, 메시지(m) 및 암호문 속성(w')을 입력받아 메시지(m)를 암호화하는 암호문 생성 단계; 및
    상기 암호문을 복호화하는 단계를 포함하는 속성 기반 암호화 방법으로서,
    상기 셋업단계는 겹선형 함수 e:G1×G1→G2를 선택하고, G1의 임의의 생성자 g와 α∈Z* p, ri∈Z* p, ui∈G1(i=1,2,3 …,k), tj∈G1(j=1,2,3,…,n+1)을 생성하는 단계를 포함하고,
    암호화 강도가 증가할수록 상기 공개 파라미터(params)를 구성하는 각 성분의 요소 개수가 증가하고,
    상기 셋업단계는 복호화를 위해 사용되는 임계값(d)을 입력받는 단계를 더 포함하는 것을 특징으로 하는 속성 기반 암호화 방법.
  2. 제1항에 있어서,
    상기 공개 파라미터(params)는 params=(g, g', {ui, vi, wi}1≤i≤k, {tj}1≤j≤n+1, d)에 의해 생성되며, 여기서
    Figure 112014079868197-pat00015
    인 것을 특징으로 하는 속성 기반 암호화 방법.
  3. 제2항에 있어서,
    암호화 강도가 증가할수록 상기 마스터 비밀키(msk)를 구성하는 성분의 개수가 증가하는 것을 특징으로 하는 속성 기반 암호화 방법.
  4. 제3항에 있어서,
    상기 마스터 비밀키(msk)는 msk=(α, r1, …, rk)에 의해 생성되는 것을 특징으로 하는 속성 기반 암호화 방법.
  5. 삭제
  6. 제1항에 있어서,
    상기 암호문을 복호화하는 단계는 상기 비밀키 속성(w)과 상기 암호문 속성(w')이 상기 임계값(d) 이상의 동일한 속성을 갖는 경우 암호문을 복호화하는 것을 특징으로 하는 속성 기반 암호화 방법.
  7. 제1항 내지 제4항 및 제6항 중 어느 한 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체.


KR1020140109740A 2014-08-22 2014-08-22 속성 기반 암호화 방법 KR101575681B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140109740A KR101575681B1 (ko) 2014-08-22 2014-08-22 속성 기반 암호화 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140109740A KR101575681B1 (ko) 2014-08-22 2014-08-22 속성 기반 암호화 방법

Publications (1)

Publication Number Publication Date
KR101575681B1 true KR101575681B1 (ko) 2015-12-09

Family

ID=54873935

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140109740A KR101575681B1 (ko) 2014-08-22 2014-08-22 속성 기반 암호화 방법

Country Status (1)

Country Link
KR (1) KR101575681B1 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101714306B1 (ko) * 2016-03-14 2017-03-08 동국대학교 경주캠퍼스 산학협력단 이동체 정보 보안 시스템 및 방법
KR20180101870A (ko) * 2017-03-06 2018-09-14 고려대학교 산학협력단 클라우드 컴퓨팅 환경에서의 속성 기반 암호화를 이용한 데이터 공유 방법 및 시스템
KR20200048760A (ko) 2018-10-30 2020-05-08 고려대학교 산학협력단 모바일 헬스케어를 위한 가상 물리 시스템에서 안전한 연산 위임 방법
KR102284877B1 (ko) * 2020-12-14 2021-07-30 세종대학교산학협력단 효율적인 교집합 연산을 위한 함수 암호 기술

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101423956B1 (ko) 2012-11-15 2014-08-01 고려대학교 산학협력단 속성 기반 암호화 시스템 및 그 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101423956B1 (ko) 2012-11-15 2014-08-01 고려대학교 산학협력단 속성 기반 암호화 시스템 및 그 방법

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101714306B1 (ko) * 2016-03-14 2017-03-08 동국대학교 경주캠퍼스 산학협력단 이동체 정보 보안 시스템 및 방법
KR20180101870A (ko) * 2017-03-06 2018-09-14 고려대학교 산학협력단 클라우드 컴퓨팅 환경에서의 속성 기반 암호화를 이용한 데이터 공유 방법 및 시스템
KR101982237B1 (ko) 2017-03-06 2019-05-24 고려대학교 산학협력단 클라우드 컴퓨팅 환경에서의 속성 기반 암호화를 이용한 데이터 공유 방법 및 시스템
KR20200048760A (ko) 2018-10-30 2020-05-08 고려대학교 산학협력단 모바일 헬스케어를 위한 가상 물리 시스템에서 안전한 연산 위임 방법
KR102172241B1 (ko) 2018-10-30 2020-10-30 고려대학교 산학협력단 모바일 헬스케어를 위한 가상 물리 시스템에서 안전한 연산 위임 방법
KR102284877B1 (ko) * 2020-12-14 2021-07-30 세종대학교산학협력단 효율적인 교집합 연산을 위한 함수 암호 기술

Similar Documents

Publication Publication Date Title
US10785019B2 (en) Data transmission method and apparatus
Almaiah et al. A new hybrid text encryption approach over mobile ad hoc network
US9379891B2 (en) Method and system for ID-based encryption and decryption
US8559631B1 (en) Systems and methods for efficient decryption of attribute-based encryption
US8429408B2 (en) Masking the output of random number generators in key generation protocols
CN104038341B (zh) 一种基于身份的跨***代理重加密方法
JP6019453B2 (ja) 暗号化装置、復号化装置、及びプログラム
JP6067932B2 (ja) 鍵共有デバイス及び方法
Jaju et al. A Modified RSA algorithm to enhance security for digital signature
US12010216B2 (en) Computer-implemented system and method for highly secure, high speed encryption and transmission of data
JP2018502320A (ja) 公開鍵暗号化システム
Sengupta et al. Message mapping and reverse mapping in elliptic curve cryptosystem
JP4869824B2 (ja) 受信者装置及び送信者装置及び暗号通信システム及びプログラム
KR102143525B1 (ko) 교집합 연산을 지원하는 함수 암호를 위한 방법 및 이를 이용한 장치
US20160013933A1 (en) Order-preserving encryption system, device, method, and program
KR20160131798A (ko) 연산 에러 검출이 가능한 준동형 암호 방법 및 그 시스템
Natanael et al. Text encryption in android chat applications using elliptical curve cryptography (ECC)
CN109905229B (zh) 基于群组非对称密钥池的抗量子计算Elgamal加解密方法和***
KR101575681B1 (ko) 속성 기반 암호화 방법
KR101423956B1 (ko) 속성 기반 암호화 시스템 및 그 방법
CN105530089B (zh) 属性基加密方法和装置
EP3010173B1 (en) Key storage device, key storage method, and program therefor
Erondu et al. An encryption and decryption model for data security using vigenere with advanced encryption standard
EP2395698B1 (en) Implicit certificate generation in the case of weak pseudo-random number generators
KR101373577B1 (ko) Id 기반 동적 임계 암호화 장치 및 그 방법

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20181025

Year of fee payment: 4