KR100345685B1 - Key generating method, and encryption and decryption system and its method by using the braid operation - Google Patents
Key generating method, and encryption and decryption system and its method by using the braid operation Download PDFInfo
- Publication number
- KR100345685B1 KR100345685B1 KR1019990050583A KR19990050583A KR100345685B1 KR 100345685 B1 KR100345685 B1 KR 100345685B1 KR 1019990050583 A KR1019990050583 A KR 1019990050583A KR 19990050583 A KR19990050583 A KR 19990050583A KR 100345685 B1 KR100345685 B1 KR 100345685B1
- Authority
- KR
- South Korea
- Prior art keywords
- braid
- predetermined
- encryption
- bab
- braids
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
Landscapes
- Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Abstract
1. 청구범위에 기재된 발명이 속한 기술분야1. TECHNICAL FIELD OF THE INVENTION
본 발명은 땋임 연산을 이용한 암호화/복호화 시스템 및 그 방법과 그를 위한 키 생성 방법과 상기 방법들을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것임.The present invention relates to an encryption / decryption system using a braiding operation, a method thereof, a key generation method therefor, and a computer-readable recording medium having recorded thereon a program for implementing the methods.
2. 발명이 해결하려고 하는 기술적 과제2. The technical problem to be solved by the invention
본 발명은 땋임군(braid group)의 공액문제(Conjugacy problem)를 이용한 암호화/복호화 시스템 및 그 방법과 그를 위한 키 생성 방법과 상기 방법들을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하는데 그 목적이 있음.The present invention provides an encryption / decryption system using a conjugacy problem of a braid group, a method thereof, a key generation method therefor, and a computer-readable recording medium recording a program for realizing the methods. Its purpose is to.
3. 발명의 해결방법의 요지3. Summary of Solution to Invention
본 발명은, 땋임 연산을 이용한 암호화/복호화 시스템에 있어서, 제1 소정의 땋임(a)에 제2 소정의 땋임(b)을 공액화(bab-1)하여 비밀키(b)와 공개키(a, bab-1)를 생성하여 상기 공개키를 등록하기 위한 키 생성 수단; 상기 키 생성 수단으로부터 공개키(a, bab-1)를 등록받아 암호화 수단으로 전달하기 위한 인증 수단; 소정의 메시지(M)를 땋임(m)으로 변환하고, 상기 공개키(a, bab-1)에 제3 소정의 땋임(c)을 공액화(cac-1, cbab-1c-1)하여 상기 땋임(m)을 암호화(cac-1, mcbab-1c-1)하기 위한 상기 암호화 수단; 및 상기 암호화 수단으로부터 전달받은 암호문의 일부(cac-1)에 상기 비밀키(b)를 공액화(bcac-1b-1)하여 상기 암호화 수단으로부터 전달받은 암호문의 다른 일부(mcbab-1c-1)와 연산(m = m(cbab-1c-1)(bcac-1b-1)-1)하여 상기 땋임(m)을 구하여 복호화하기 위한 복호화 수단을 포함한다.According to the present invention, in an encryption / decryption system using a braiding operation, a second predetermined braid (b) is conjugated (bab -1 ) to a first predetermined braid (a) to obtain a secret key (b) and a public key ( a, bab- 1 ) key generation means for registering the public key; Authentication means for receiving a public key (a, bab -1 ) from the key generation means and transferring it to an encryption means; Converts a predetermined message (M) into a braid (m), and conjugates a third predetermined braid (c) to the public key (a, bab -1 ) (cac -1 , cbab -1 c -1 ) The encryption means for encrypting the braid (m) (cac -1 , mcbab -1 c -1 ); And the other part of the ciphertext received from the encryption means by conjugating (bcac- 1 b -1 ) the secret key b to the portion of the ciphertext (cac -1 ) received from the encryption means (mcbab -1 c- ). 1 ) and a calculation means (m = m (cbab- 1 c- 1 ) (bcac- 1 b -1 ) -1 ) to obtain the braid (m) and to decode.
4. 발명의 중요한 용도4. Important uses of the invention
본 발명은 메시지의 암호화 또는 복호화 등에 이용됨.The present invention is used to encrypt or decrypt a message.
Description
본 발명은 키 생성 방법과 그를 이용한 암호화/복호화 시스템 및 그 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것으로, 특히 땋임 연산을 이용한 암호화/복호화 시스템 및 그 방법과 그를 위한 키 생성 방법과 상기 방법들을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것이다.The present invention relates to a key generation method, an encryption / decryption system using the same, and a method and a computer-readable recording medium recording a program for realizing the method. Particularly, the encryption / decryption system using a braid operation and the method and A method of generating a key therefor and a computer-readable recording medium having recorded thereon a program for realizing the above methods.
현재 사용되고 있는 공개키 암호화/복호화 시스템은 크게 엘가말(E1Gamal)로 대표되는 이산로그 계열과 RSA(Rivest-Shamir-Adleman)로 대표되는 인수분해 계열로 나눌 수 있으며, 각각은 '유한군 위의 이산로그를 구하기 어려움' 및 '합성수의 인수분해하기 어려움'에 의존하고 있다. 현재까지 두 계열의 안전성은 비슷한 것으로 나타나고 있으며, 단지 각 암호화/복호화 시스템의 특성으로 인하여 사용 환경에 따라 적합한 암호화/복호화 시스템이 선택되어 사용되고 있다.The public key encryption / decryption system currently used can be largely divided into a discrete log series represented by El Gamal (E1Gamal) and a factorized series represented by Rist-Shamir-Adleman (RSA). 'Difficult to obtain log' and 'difficult to factor synthetic water'. Until now, the security of the two series has been shown to be similar, and due to the characteristics of each encryption / decryption system, an appropriate encryption / decryption system is selected and used according to the use environment.
그런데, 이러한 종래의 암호화/복호화 시스템은 주로 정수론적인 접근 방식을 취하고 있기 때문에, 새롭게 개발되는 계산 방법과 계산 능력의 향상으로 인하여 안정성이 의심받고 있는 상황이다. 특히, 한창 연구되고 있는 양자 컴퓨터가 개발된다면 정수론적인 암호화/복호화 시스템은 더 이상 안전하지 않게 된다. 따라서, 새로운 암호화/복호화 시스템의 개발이 요구되고 있다.However, since such a conventional encryption / decryption system mainly takes a numerical approach, stability is questioned due to the newly developed calculation method and the improvement of the calculation capability. In particular, if a quantum computer under study is developed, the numerical encryption / decryption system is no longer secure. Therefore, the development of a new encryption / decryption system is required.
한편, 1925년 아틴(Artin)에 의해 제안된 땋임군(braid group)은 이후 많은수학자들에 의해 연구되어 왔고 지금도 많은 연구가 진행되고 있다. 이 중 땋임군의 공액문제(Conjugacy problem)는 땋임군의 가장 중요한 문제 중의 하나로 알려져 수학자들 사이에서 많은 연구가 있었지만 아직까지도 효율적인 해법은 알려져 있지 않으며, 현재까지 알려진 가장 좋은 알고리즘의 복잡도는 다음의 (수학식1)에 나타나 있는 바와 같다.On the other hand, the braid group proposed by Artin in 1925 has been studied by many mathematicians since, and many studies are still in progress. Of these, the Conjugacy problem is known as one of the most important problems of the braid group, and there have been many studies among mathematicians. However, no efficient solution is known yet, and the complexity of the best algorithm known to date is It is as shown in (1).
[수학식 1] [Equation 1]
여기서, n은 땋임군의 인수이고, |W|는 땋임군을 아틴 생성자로 표현하였을 때의 단어의 길이이다. 상기 (수학식1)에서 n|W|가 10 정도만 되어도 그 복잡도는 10,000 자릿수 정도나 되기 때문에 알고리즘을 이용한 컴퓨터 계산으로는 문제 해결이 불가능하다.Where n is the argument of the group of braids, and | W | is the length of the word when the group of braids is represented by the atin generator. In the above Equation (1), even if n | W | is about 10, the complexity is about 10,000 digits. Therefore, it is impossible to solve the problem by computer calculation using an algorithm.
그런데, 아직까지도 '땋임군의 공액문제의 어려움'을 이용한 암호화/복호화 시스템은 개발된 적이 없다.However, no encryption / decryption system has been developed yet, using the difficulty of conjugation of braids.
따라서, 새로운 양자 컴퓨터의 출현과 새로운 계산 방법 등에 대처하기 위하여, 땋임군(braid group)의 공액문제(Conjugacy problem)를 이용한 암호화/복호화 시스템의 개발이 절실히 요구되고 있다.Therefore, in order to cope with the emergence of new quantum computers, new calculation methods, and the like, there is an urgent need for the development of an encryption / decryption system using the conjugate problem of a braid group.
본 발명은 상기 요구에 부응하기 위하여 안출된 것으로, 땋임군(braidgroup)의 공액문제(Conjugacy problem)를 이용한 암호화/복호화 시스템 및 그 방법과 그를 위한 키 생성 방법과 상기 방법들을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하는데 그 목적이 있다.SUMMARY OF THE INVENTION The present invention has been made to meet the above requirements, and records an encryption / decryption system using the conjugate problem of a braidgroup, a method thereof, a key generation method therefor, and a program for realizing the methods. Its purpose is to provide a computer readable recording medium.
도 1 은 본 발명에 이용되는 땋임의 일예시도.1 is an exemplary view of the braid used in the present invention.
도 2 는 본 발명에 따른 땋임 연산을 이용한 암호화/복호화 시스템의 송수신 구조를 설명하기 위한 일예시도.Figure 2 is an example for explaining the transmission and reception structure of the encryption / decryption system using a braiding operation according to the present invention.
도 3 은 본 발명에 따른 땋임 연산을 이용한 암호화/복호화를 위한 키 생성 방법에 대한 일실시예 흐름도.3 is a flow diagram of an embodiment of a key generation method for encryption / decryption using a braid operation according to the present invention.
도 4 는 본 발명에 따른 땋임 연산을 이용한 암호화 방법에 대한 일실시예 흐름도.4 is a flowchart illustrating an encryption method using a braid operation according to the present invention.
도 5 는 본 발명에 따른 땋임 연산을 이용한 복호화 방법에 대한 일실시예 흐름도.5 is a flowchart illustrating an embodiment of a decoding method using a braiding operation according to the present invention.
* 도면의 주요 부분에 대한 부호의 설명* Explanation of symbols for the main parts of the drawings
21 : 인증 시스템(CA) 22 : 암호화 시스템21: authentication system (CA) 22: encryption system
23 : 복호화 시스템23: decryption system
상기 목적을 달성하기 위한 본 발명의 암호화/복호화 시스템은, 땋임 연산을 이용한 암호화/복호화 시스템에 있어서, 제1 소정의 땋임(a)에 제2 소정의 땋임(b)을 공액화(bab-1)하여 비밀키(b)와 공개키(a, bab-1)를 생성하여 상기 공개키를 등록하기 위한 키 생성 수단; 상기 키 생성 수단으로부터 공개키(a, bab-1)를 등록받아 암호화 수단으로 전달하기 위한 인증 수단; 소정의 메시지(M)를 땋임(m)으로 변환하고, 상기 공개키(a, bab-1)에 제3 소정의 땋임(c)을 공액화(cac-1, cbab-1c-1)하여 상기 땋임(m)을 암호화(cac-1, mcbab-1c-1)하기 위한 상기 암호화 수단; 및 상기 암호화 수단으로부터 전달받은 암호문의 일부(cac-1)에 상기 비밀키(b)를 공액화(bcac-1b-1)하여 상기 암호화 수단으로부터 전달받은 암호문의 다른 일부(mcbab-1c-1)와 연산(m = m(cbab-1c-1)(bcac-1b-1)-1)하여 상기 땋임(m)을 구하여 복호화하기 위한 복호화 수단을 포함하는 것을 특징으로 한다.한편, 본 발명의 암호화/복호화 방법은, 땋임 연산을 이용한 암호화/복호화 시스템에 적용되는 암호화/복호화 방법에 있어서, 제1 소정의 땋임(a)에 제2 소정의 땋임(b)을 공액화(bab-1)하여 비밀키(b)와 공개키(a, bab-1)를 생성하여 상기 공개키를 등록하는 제 1 단계; 소정의 메시지(M)를 땋임(m)으로 변환하고, 상기 공개키(a, bab-1)에 제3 소정의 땋임(c)을 공액화(cac-1, cbab-1c-1)하여 상기 땋임(m)을 암호화(cac-1, mcbab-1c-1)하는 제 2 단계; 및 상기 암호화된 암호문의 일부(cac-1)에 상기 비밀키(b)를 공액화(bcac-1b-1)하여 상기 암호화된 암호문의 다른 일부(mcbab-1c-1)와 연산(m = m(cbab-1c-1)(bcac-1b-1)-1)하여 상기 땋임(m)을 구하여 복호화하는 제 3 단계를 포함하는 것을 특징으로 한다.In the encryption / decryption system of the present invention for achieving the above object, in the encryption / decryption system using a braid operation, the second predetermined braid (b) is conjugated to the first predetermined braid (a) (bab -1). Key generation means for generating a secret key (b) and a public key (a, bab -1 ) to register the public key; Authentication means for receiving a public key (a, bab -1 ) from the key generation means and transferring it to an encryption means; Converts a predetermined message (M) into a braid (m), and conjugates a third predetermined braid (c) to the public key (a, bab -1 ) (cac -1 , cbab -1 c -1 ) The encryption means for encrypting the braid (m) (cac -1 , mcbab -1 c -1 ); And the other part of the ciphertext received from the encryption means by conjugating (bcac- 1 b -1 ) the secret key b to the portion of the ciphertext (cac -1 ) received from the encryption means (mcbab -1 c- ). 1 ) and a calculation means for obtaining and decoding the braid m by performing operation (m = m (cbab −1 c −1 ) (bcac −1 b −1 ) −1 ). in the encoding / decoding method of the present invention, encoding / decoding method applied to the encryption / decryption system using the braids operation, a first predetermined ball braids (a) a second predetermined braids, (b) the liquid (bab - 1 ) a first step of generating a private key (b) and a public key (a, bab- 1 ) to register the public key; Converts a predetermined message (M) into a braid (m), and conjugates a third predetermined braid (c) to the public key (a, bab -1 ) (cac -1 , cbab -1 c -1 ) A second step of encoding the braid (m) (cac -1 , mcbab -1 c -1 ); And the part of the encrypted cipher text ball to the private key (b) to (cac -1) liquefaction (bcac -1 b -1) to the other part of the encrypted cipher text (mcbab -1 c -1) and operations (m = m (cbab -1 c -1 ) (bcac -1 b -1 ) -1 ) to obtain and decode the braid (m).
또한, 본 발명의 키 생성 방법은, 땋임 연산을 이용한 암호화/복호화 시스템의 키 생성 장치에 적용되는 키 생성 방법에 있어서, 제1 소정의 땋임(a)을 구하고 제3 소정의 땋임(c)과 곱의 동치가 되는 제2 소정의 땋임(b)을 구하는 제 1 단계; 및 상기 제1 소정의 땋임(a)에 상기 제2 소정의 땋임(b)을 공액화(bab-1)하여 비밀키(b)와 공개키(a, bab-1)를 생성하여 상기 공개키를 등록하는 제 2 단계를 포함하는 것을 특징으로 한다.Further, the key generation method of the present invention is a key generation method applied to a key generation device of an encryption / decryption system using a braid operation, wherein the first predetermined braid (a) is obtained and the third predetermined braid (c) is used. A first step of obtaining a second predetermined braid (b) that is a product equivalent; And conjugating (bab- 1 ) the second predetermined braid (b) to the first predetermined braid (a) to generate a secret key (b) and a public key (a, bab -1 ). Characterized in that it comprises a second step of registering.
또한, 본 발명의 암호화 방법은, 땋임 연산을 이용한 암호화 시스템에 적용되는 암호화 방법에 있어서, 제1 소정의 땋임(a)을 구하고 제3 소정의 땋임(c)과 곱의 동치가 되는 제2 소정의 땋임(b)을 구하는 제 1 단계; 상기 제1 소정의 땋임(a)에 상기 제2 소정의 땋임(b)을 공액화(bab-1)하여 비밀키(b)와 공개키(a, bab-1)를 생성하여 상기 공개키를 등록하는 제 2 단계; 소정의 메시지(M)를 땋임(m)으로 변환하는 제 3 단계; 상기 제3 소정의 땋임(c)을 선택하여 상기 공개키(a, bab-1)에 상기 제3 소정의 땋임(c)을 공액화(cac-1, cbab-1c-1)하는 제 4 단계; 및 상기 메시지가 변환된 땋임(m)과 상기 공액화된 공개키(cbab-1c-1)를 곱(mcbab-1c-1)하여 암호문(cac-1, mcbab-1c-1)을 생성하는 제 5 단계를 포함하는 것을 특징으로 한다.In addition, the encryption method of the present invention is the encryption method applied to the encryption system using the braiding operation, wherein the first predetermined braid (a) is obtained and the second predetermined that is equal to the product of the third predetermined braid (c). A first step of obtaining the braid (b) of; The first predetermined braids (a) the second predetermined braids, (b) the ball liquefied (bab -1) and a private key (b) the public key to generate (a, bab -1) on the public key A second step of registering; A third step of converting the predetermined message M into braids m; The fourth predetermined braid (c) to conjugate (cac -1 , cbab -1 c -1 ) the third predetermined braid (c) to the public key (a, bab- 1 ) step; And multiplying (mcbab -1 c -1) to cipher text (cac -1, mcbab -1 c -1 ) the braids (m) and the ball liquefied public key (cbab -1 c -1) the message is converted to It characterized in that it comprises a fifth step of generating.
또한, 본 발명의 복호화 방법은, 땋임 연산을 이용한 복호화 시스템에 적용되는 복호화 방법에 있어서, 암호화 과정에서 암호화된 암호문(cac-1, mcbab-1c-1)을 수신하는 제 1 단계; 상기 수신된 암호문의 일부(cac-1)에 비밀키(b)를 공액화(bcac-1b-1)하여 그 값에서 곱의 동치인 두 땋임의 곱의 순서를 바꾸는 제 2 단계; 및 상기 곱의 순서를 바꾼 값의 역을 상기 암호화된 암호문의 다른 일부(mcbab-1c-1)와 곱하여 땋임(m)을 구하여 소정의 메시지(M)를 복호화하는 제 3 단계를 포함하는 것을 특징으로 한다.In addition, the decryption method of the present invention, a decryption method applied to the decryption system using a braid operation, the first step of receiving an encrypted cipher text (cac -1 , mcbab -1 c -1 ) during the encryption process; A second step of conjugating (bcac -1 b -1 ) the secret key (b) to a portion (cac -1 ) of the received cipher text and changing the order of the products of the two braids that are equivalents of the products in the value; And a third step of multiplying the inverse of the value of the multiplication by the other portion of the encrypted ciphertext (mcbab- 1 c -1 ) to obtain a braid (m) and to decrypt a predetermined message (M). It features.
한편, 본 발명은, 땋임 연산을 이용하여 메시지를 암호화/복호화하기 위하여, 프로세서를 구비한 암호화/복호화 시스템에, 제1 소정의 땋임(a)에 제2 소정의 땋임(b)을 공액화(bab-1)하여 비밀키(b)와 공개키(a, bab-1)를 생성하여 상기 공개키를 등록하는 제 1 기능; 소정의 메시지(M)를 땋임(m)으로 변환하고, 상기 공개키(a, bab-1)에 제3 소정의 땋임(c)을 공액화(cac-1, cbab-1c-1)하여 상기 땋임(m)을 암호화(cac-1, mcbab-1c-1)하는 제 2 기능; 및 상기 암호화된 암호문의 일부(cac-1)에 상기 비밀키(b)를 공액화(bcac-1b-1)하여 상기 암호화된 암호문의 다른 일부(mcbab-1c-1)와 연산(m = m(cbab-1c-1)(bcac-1b-1)-1)하여 상기 땋임(m)을 구하여 복호화하는 제 3 기능을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.On the other hand, in the present invention, in order to encrypt / decrypt a message using a braiding operation, a second predetermined braid (b) is conjugated to a first predetermined braid (a) in an encryption / decryption system having a processor ( bab- 1 ) to generate a secret key (b) and a public key (a, bab- 1 ) to register the public key; Converts a predetermined message (M) into a braid (m), and conjugates a third predetermined braid (c) to the public key (a, bab -1 ) (cac -1 , cbab -1 c -1 ) A second function of encoding the braid (m) (cac -1 , mcbab -1 c -1 ); And the part of the encrypted cipher text ball to the private key (b) to (cac -1) liquefaction (bcac -1 b -1) to the other part of the encrypted cipher text (mcbab -1 c -1) and operations (m providing a computer-readable recording medium having recorded thereon a program for realizing a third function of obtaining and decoding the braid (m) by performing m (cbab -1 c -1 ) (bcac -1 b -1 ) -1 ). do.
또한, 본 발명은, 땋임 연산을 이용한 암호화/복호화에 사용되는 키를 생성하기 위하여, 프로세서를 구비한 키 생성 장치에, 제1 소정의 땋임(a)을 구하고 제3 소정의 땋임(c)과 곱의 동치가 되는 제2 소정의 땋임(b)을 구하는 제 1 기능; 및 상기 제1 소정의 땋임(a)에 상기 제2 소정의 땋임(b)을 공액화(bab-1)하여 비밀키(b)와 공개키(a, bab-1)를 생성하여 상기 공개키를 등록하는 제 2 기능을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.In addition, the present invention, in order to generate a key used for encryption / decryption using a braid operation, a first predetermined braid (a) is obtained in a key generation device having a processor, and the third predetermined braid (c) and A first function of obtaining a second predetermined braid (b) that is a product equivalent; And conjugating (bab- 1 ) the second predetermined braid (b) to the first predetermined braid (a) to generate a secret key (b) and a public key (a, bab -1 ). A computer readable recording medium having recorded thereon a program for realizing a second function of registering the present invention is provided.
또한, 본 발명은, 땋임 연산을 이용하여 메시지를 암호화하기 위하여, 프로세서를 구비한 키 생성 및 암호화 시스템에, 제1 소정의 땋임(a)을 구하고 제3 소정의 땋임(c)과 곱의 동치가 되는 제2 소정의 땋임(b)을 구하는 제 1 기능; 상기 제1 소정의 땋임(a)에 상기 제2 소정의 땋임(b)을 공액화(bab-1)하여 비밀키(b)와 공개키(a, bab-1)를 생성하여 상기 공개키를 등록하는 제 2 기능; 소정의 메시지(M)를 땋임(m)으로 변환하는 제 3 기능; 상기 제3 소정의 땋임(c)을 선택하여 상기 공개키(a, bab-1)에 상기 제3 소정의 땋임(c)을 공액화(cac-1, cbab-1c-1)하는 제 4 기능; 및 상기 메시지가 변환된 땋임(m)과 상기 공액화된 공개키(cbab-1c-1)를 곱(mcbab-1c-1)하여 암호문(cac-1, mcbab-1c-1)을 생성하는 제 5 기능을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.In addition, the present invention obtains a first predetermined braid (a) in a key generation and encryption system provided with a processor, in order to encrypt a message using a braid operation, and equals the product with the third predetermined braid (c). A first function of obtaining a second predetermined braid (b) to be; The first predetermined braids (a) the second predetermined braids, (b) the ball liquefied (bab -1) and a private key (b) the public key to generate (a, bab -1) on the public key A second function to register; A third function of converting a predetermined message M into braids m; The fourth predetermined braid (c) to conjugate (cac -1 , cbab -1 c -1 ) the third predetermined braid (c) to the public key (a, bab- 1 ) function; And multiplying (mcbab -1 c -1) to cipher text (cac -1, mcbab -1 c -1 ) the braids (m) and the ball liquefied public key (cbab -1 c -1) the message is converted to A computer readable recording medium having recorded thereon a program for realizing a fifth function to be generated is provided.
또한, 본 발명은, 땋임 연산을 이용하여 메시지를 복호화하기 위하여, 프로세서를 구비한 복호화 시스템에, 암호화 과정에서 암호화된 암호문(cac-1, mcbab-1c-1)을 수신하는 제 1 기능; 상기 수신된 암호문의 일부(cac-1)에 비밀키(b)를 공액화(bcac-1b-1)하여 그 값에서 곱의 동치인 두 땋임의 곱의 순서를 바꾸는 제 2 기능; 및 상기 곱의 순서를 바꾼 값의 역을 상기 암호화된 암호문의 다른 일부(mcbab-1c-1)와 곱하여 땋임(m)을 구하여 소정의 메시지(M)를 복호화하는 제 3 기능을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.The present invention also provides a decryption system having a processor for decrypting a message using a braid operation, comprising: a first function of receiving an encrypted cipher text (cac -1 , mcbab -1 c -1 ) encrypted during an encryption process; A second function of conjugating a secret key (b) to a portion (cac -1 ) of the received ciphertext (bcac -1 b -1 ) to change the order of the products of two braids that are equivalents of the products in the value; And multiplying the inverse of the order of the product by another portion of the encrypted ciphertext (mcbab- 1 c -1 ) to obtain a braid (m) to decrypt a predetermined message (M). A computer readable recording medium having recorded a program is provided.
즉, 본 발명은 땋임군(braid group)의 공액문제(Conjugacy problem)를 이용한 공개키 암호화/복호화 시스템 및 그 방법과 그를 위한 키 생성 방법에 관한 것으로, 특히 RSA 형태가 아닌 이산로그 형태의 일방향 함수와 비슷한 면이 있으나, 이산로그 형태가 '유한군 위의 이산로그를 구하기 어려움'을 이용하는데 비하여 '땋임군의 공액문제의 어려움'을 이용한다.That is, the present invention relates to a public key encryption / decryption system using a conjugacy problem of a braid group and a method thereof, and a method for generating a key therefor, in particular, a one-way function in the form of a discrete log rather than an RSA. It is similar to, but the form of discrete log uses 'difficulty of obtaining conjunctive log on Yuhan'.
특히, 이산로그 계열과 RSA 등의 암호화/복호화 시스템은 정수론적인 암호화/복호화 시스템인데 반하여, 본 발명은 기하학적 접근 방법을 기초로 한 암호화/복호화 시스템에 관한 것으로, 이와 유사한 접근 방법의 암호화/복호화 시스템은 아직까지 개발된 적이 없다.In particular, the encryption / decryption system such as the discrete log series and RSA is an integer-based encryption / decryption system, whereas the present invention relates to an encryption / decryption system based on a geometric approach, and an encryption / decryption system of a similar approach. Has not been developed yet.
상술한 목적, 특징들 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명한다.The above objects, features and advantages will become more apparent from the following detailed description taken in conjunction with the accompanying drawings. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.
도 1 은 본 발명에 이용되는 땋임의 일예시도이다.1 is an exemplary view of the braid used in the present invention.
도 1 에 도시된 바와 같이, 땋임군은 여러 가닥의 끈이 있을 때 이 끈들을 머리를 땋는 것과 같이 땋아 놓은 땋임을 대수적인 군(group)으로 표현하는 것이다.As shown in Figure 1, the group of braids is to represent the braided braids in a logarithmic group, such as braiding the hair when there are several strands of strings.
땋임군을 표현하는 방법은 여러 가지가 있는데, 이 중 가장 대표적이며 직관적으로 알기 쉬운 방법은 기하학적인 방법으로 군의 생성자(generator)를 표현하고 이 생성자가 기하학적으로 어떤 모양으로 변환이 가능한지를 관계연산자(relation)로 나타내어 군표현(presentation)을 나타내는 것이다.There are several ways to express the group of braids. The most representative and intuitively easy way is to express the group's generator in a geometric way and the relational operator which geometric shape can be converted into a shape. It is represented by a (relation) to represent a presentation.
우선, i번째 끈(strand)과 i+1번째 끈이 정해진 방향으로 꼬여 있을 때, 즉i번째 끈 위로 i+1번째 끈이 지나갈 때, 이러한 만남을 군의 생성자 σi라고 정의하며, 땋임군의 다른 군표현에서의 생성자와 구분하기 위해서 아틴 생성자라고도 한다. 또한, 꼬여있는 방향이 반대로 되어 있으면 이는 σi -1이라고 정의한다. 임의의 땋임을 아틴 표현법으로 표현한다고 하면, 주어진 땋임을 위에서 아래 방향으로 읽으면서 각각의 땋임을 아틴 생성자로 표현한다. 이런 방법으로 하면 임의의 복잡한 땋임을 단어(word)로 표현할 수 있다. 임의의 두 땋임의 단어의 곱은 두 땋임을 위에서 아래로 붙이면 된다. 처음의 두 땋임을 각각 단어로 표현하였을 때, 이 단어를 연달아서 쓰게 되면 두 땋임의 곱이 된다. 이러한 방법으로 곱셈을 정의하면 이 집합은 군을 이루게 된다.First, when the i-th string and the i + 1 string are twisted in a predetermined direction, i.e., when the i + 1 string passes over the i-th string, this encounter is defined as the group's creator, σ i , Also known as the Atin constructor, to distinguish it from the constructors in other group expressions. In addition, if the twisted direction is reversed, this is defined as σ i -1 . Suppose any braid is represented by an atin expression, and each braid is represented by an atin constructor, reading a given braid from top to bottom. In this way, any complex braid can be expressed in words. To multiply the words of any two braids, attach the two braids from top to bottom. When each of the first two braids is expressed in words, the words in succession are the product of the two braids. If you define multiplication in this way, this set is grouped.
도 1 에 도시된 바와 같이, 각각의 2개의 땋임은 윗부분과 아랫부분을 고정한 상태에서 적당히 끈을 이동하면 하나에서 다른 하나로 변환할 수 있다. 이러한 성질을 이용하면 두 땋임의 동치를 정의할 수 있으며, 이를 관계연산자로 나타내면 아래의 (수학식2)와 같은 군표현을 얻을 수 있다.As shown in Figure 1, each of the two braids can be converted from one to the other by moving the strings properly in a fixed state of the top and bottom. By using this property, we can define the equivalence of two braids. If we express this as a relational operator, we can get the group expression as shown in Equation 2 below.
[수학식 2]σ12n-1ii+1ii+1ii+1ijjiEquation 2 σ12n-1ii + 1ii + 1ii + 1ijji
여기서, |i-j|≥2이다.Where | i-j | ≥2.
이렇게 하여 얻은 군에 대해서 주어진 단어(word) U,V에 대하여 U=WVW-1을 만족하는 W가 존재하는가 하는 문제를 공액문제(conjugacy problem)라 한다. 이 문제를 전수조사 방법으로 해결하려면 모든 W에 대하여 조사를 해야 하기 때문에 이러한 방법으로 공액문제를 해결하기는 불가능하다. 따라서, 이 문제에 대한 효과적인 해법은 아직 알려져 있지 않으며, 많은 수학자들의 연구 결과에 의하면 이 문제는 대단히 어려운 문제로 알려져 있다. 이 문제가 비결정성 다항식(NP : Non-deterministic Polynominal)이 되는지도 아직 알려져 있지 않고, 현재까지 연구된 바에 따르면 NP보다 어려운 문제라고 알려져 있다. 이러한 사실을 기본으로 하여 엘가말(E1Gamal) 암호화/복호화 시스템과 비슷한 형태의 암호화/복호화 시스템을 구성할 수 있다.The conjugacy problem is called whether there exists a W that satisfies U = WVW −1 for a given word U, V for the group obtained in this way. In order to solve this problem, it is impossible to solve the conjugation problem in this way because all W must be investigated. Thus, an effective solution to this problem is not yet known, and many mathematicians have shown that it is a very difficult problem. It is not yet known whether this problem becomes a non-deterministic polynominal (NP), and it has been studied to be more difficult than NP. Based on this fact, an encryption / decryption system similar to the E1Gamal encryption / decryption system can be constructed.
도 2 는 본 발명에 따른 땋임 연산을 이용한 암호화/복호화 시스템의 송수신 구조를 설명하기 위한 일예시도이다.2 is an exemplary view illustrating a transmission and reception structure of an encryption / decryption system using a braid operation according to the present invention.
본 발명의 기본적인 구성은 복호화 시스템(12)의 키 생성부(도면에 도시되지 않음)에서 후술되는 도 3 에 도시된 바와 같은 방법으로 초기화 과정을 수행하여 공개키 (a, bab-1)과 비밀키 b를 생성한 후에, 그 중에서 공개키 (a, bab-1)을 인증 시스템(CA)(21)에 등록하면(11), 인증 시스템(21)은 암호화 시스템(22)으로 공개키 (a, bab-1)을 전송한다(12). 이때, 인증 시스템(21)은 암호화 시스템(22)과 복호화 시스템(23)이 정당한 사용자인지를 확인하는 인증 과정을 수행한다.The basic configuration of the present invention is a key generation unit (not shown in the figure) of the decryption system 12. Public key (a, bab) by performing an initialization process by a method as shown in FIG.-One) And the private key b, then the public key (a, bab-One) Is registered in the authentication system (CA) 21 (11), the authentication system 21 is a public key (a, bab to the encryption system 22)-One(12). At this time, the authentication system 21 performs an authentication process for confirming whether the encryption system 22 and the decryption system 23 are legitimate users.
그러면, 복호화 시스템(23)으로 메시지를 암호화하여 전송하고자 하는 암호화 시스템(22)에서는 인증 시스템(21)으로부터 전달받은 공개키 (a, bab-1)을 이용하여 메시지를 후술되는 도 4 의 방법으로 암호화하여(13) 복호화 시스템(23)으로 전송한다(14).Then, the encryption system 22 to encrypt and transmit the message to the decryption system 23 uses the public key (a, bab- 1 ) received from the authentication system 21 to describe the message in the method of FIG. 4 described below. The data is encrypted (13) and transmitted to the decryption system 23 (14).
그러면, 암호화된 메시지를 전달받은 복호화 시스템(23)은 이 메시지를 후술되는 도 5 의 방법으로 복호화하여 원래 메시지를 복원하게 된다(15).Then, the decryption system 23 receiving the encrypted message decrypts the message by the method of FIG. 5 described later to restore the original message (15).
다음으로, 도 3 을 참조하여 땋임 연산을 이용한 암호화/복호화 방법에 사용되는 공개키와 비밀키를 생성하는 방법에 대하여 상세히 살펴보면 다음과 같다.Next, referring to FIG. 3, a method for generating a public key and a secret key used in an encryption / decryption method using a braid operation will be described in detail.
도 3 은 본 발명에 따른 땋임 연산을 이용한 암호화/복호화를 위한 키 생성 방법에 대한 일실시예 흐름도이다.3 is a flowchart illustrating a method for generating a key for encryption / decryption using a braid operation according to the present invention.
먼저, 복호화 시스템(23)에서 2n개의 끈 중에서 임의의 땋임 a를 하나 구하고, 2n개의 끈 중에서 오른쪽 n개의 끈들만이 꼬여있는 땋임 b를 구한다(31).First, in the decryption system 23, one random braid a is obtained from 2n strings, and the braid b is obtained by twisting only the right n strings of the 2n strings (31).
이후, 복호화 시스템(23)에서 상기 임의의 땋임 a와 우땋임 b를 이용하여 공액 bab-1을 계산한다. 이 중에서 비밀키는 b가 되고, a와 bab-1이 공개키가 된다(32). 이후, 도 1 에서 전술한 바와 같이, 공개키 (a, bab-1)을 인증 시스템(CA)(21)에 등록하면(11), 인증 시스템(21)이 암호화 시스템(22)으로 공개키 (a, bab-1)을 전송한다(12).Thereafter, in the decoding system 23, the conjugate bab −1 is calculated using the arbitrary braid a and the right braid b. The secret key is b, and a and bab -1 are public keys (32). Subsequently, as described above with reference to FIG. 1, when the public key (a, bab- 1 ) is registered in the authentication system (CA) 21 (11), the authentication system 21 uses the public key ( a, bab -1 ) (12).
다음으로 도 4 및 도 5 를 참조하여 암호화 과정과 복호화 과정을 상세히 살펴보면 다음과 같다.Next, the encryption process and the decryption process will be described in detail with reference to FIGS. 4 and 5.
도 4 는 본 발명에 따른 땋임 연산을 이용한 암호화 방법에 대한 일실시예 흐름도이고, 도 5 는 본 발명에 따른 땋임 연산을 이용한 복호화 방법에 대한 일실시예 흐름도이다.4 is a flowchart illustrating an encryption method using a braid operation according to the present invention, and FIG. 5 is a flowchart illustrating a decryption method using a braid operation according to the present invention.
먼저, 메시지를 암호화하는 과정은, 암호화 시스템(22)에서 메시지 M을 땋임 m으로 변환하고(41), 2n개의 끈 중에서 왼쪽의 n개의 끈들만이 꼬여있는 임의의 땋임 c를 선택하여(42) 공개키 a와 bab-1에 c를 공액화하여 cac-1와 cbab-1c-1을 구하고, 땋임 m과 공액화된 공개키 cbab-1c-1을 곱하여 mcbab-1c-1을 계산하여(43) 암호문 mcbab-1c-1와 cac-1을 복호화 시스템(23)으로 전송한다(44).First, the process of encrypting the message, in the encryption system 22 converts the message M to braid m (41), and selects a random braid c with only n strings left of 2n strings (42). C is conjugated to public keys a and bab -1 to obtain cac -1 and cbab -1 c -1 , and multiplies braid m with conjugated public key cbab -1 c -1 to calculate mcbab -1 c -1 (43) The cipher text mcbab -1 c -1 and cac -1 are transmitted to the decryption system 23 (44).
한편, 2n개의 끈 중에서 오른쪽 n개의 끈들의 땋임을 c로 하고, 2n개의 끈 중에서 왼쪽 n개의 끈들의 땋임을 b로 하여도 상관이 없다.On the other hand, the braids of the right n strings among the 2n strings may be c, and the braids of the left n strings of the 2n strings may be b.
다음으로, 상기 메시지 M을 땋임 m으로 변환하는 과정을 좀 더 상세히 살펴보면 다음과 같다.Next, the process of converting the message M into braid m will be described in more detail.
먼저, 메시지(숫자) M을 땋임으로 바꾸는 작업이 필요하다. 일반적으로 단어(word)로 표현되는 땋임은 이와 동치인 다른 많은 단어들이 존재하나, 일반적인 단어와 메시지와의 관계가 1:1 관계로 유지되는 전단사 함수가 존재하지 않는다. 따라서, 조금은 특별한 방법으로 땋임을 변환해야만 한다. 만약, 임의의 땋임에서 어느 두 개의 끈도 두 번 만나지 않고, 모든 땋임이 양땋임이라면, 이 땋임을 표준요소(canonical factor)라 한다. 이때, 각각의 끈들의 시작점이 어느 점에서 끝나는지를 살피게 되면, 이를 바탕으로 순열군(permutation group)을 만들 수 있으며, 간단하게 전단사 함수를 구성할 수 있다. 따라서, 표준요소와 순열군은 동치가 된다.First, we need to convert the message (number) M to braided. In general, there are many other words which are equivalent to braid, but there is no shear history function in which the relationship between the general word and the message is maintained in a 1: 1 relationship. Therefore, the braid must be converted in some special way. If any two braids in any braid do not meet twice, and all braids are double braids, then this braid is called a canonical factor. At this point, when the starting point of each string is examined at which point, the permutation group can be created based on this, and the shear yarn function can be simply configured. Thus, the standard element and the permutation group are equivalent.
다음으로 어떻게 메시지가 순열군으로 표현될 수 있으며, 순열군이 땋임으로 표현되는지를 살펴보기로 한다.Next, let's take a look at how a message can be expressed in permutations and how a permutation is represented by braids.
우선, 임의의 순열을 숫자로 표현하는 방법을 살펴보기로 한다. 순열을 나타내는 방법으로는 여러 가지가 있겠으나, 그 중 하나로 (π(1), π(2),…, π(n))으로 나타내는 방법이 있다. 즉, 땋임의 표준요소와 비슷하게 첫 번째 끈의 끝 부분이 몇 번째로 이동하였는지를 쓰고, 두 번째 끈의 끝 부분이 몇 번째로 갔는지를 차례대로 쓰는 방법이다. 이 표현에 대하여 반전(inversion)을 구한다. 이때, 반전열이라 함은 i번째 항의 π(i)앞에 i보다 작은 π(j)의 개수를 적은 열을 뜻한다. 이렇게 하여 다음의 (수학식 3)을 구한다.First, let's look at how to express an arbitrary permutation as a number. There are various ways to indicate permutation, but one of them is a method represented by (π (1), π (2), ..., π (n)). In other words, similar to the standard element of braid, it is written how the end of the first string moved and how many times the end of the second string went. Find the inversion of this expression. In this case, the inversion column refers to a column in which the number of π (j) smaller than i is smaller than π (i) in the i th term. In this way, the following Equation 3 is obtained.
[수학식 3] [Equation 3]
여기서, αk는 반전열의 k번째 항이다.Α k is the k-th term of the inversion string.
역으로 임의의 숫자로 반전열을 구할 수 있으며, 임의의 반전열로부터 순열도 구할 수 있다. 반전열의 앞부분부터 시작하여 순열을 완성하게 되는데, 만약 k번째 반전열이 αk라 하면 k를 k+1번째 순열에 추가하게 된다. 이렇게 n까지 작업을 끝내면 여기서 나오는 열이 우리가 원하는 순열이 된다. 이런 방법으로 하면 n개로이루어진 임의의 순열과 n!은 1:1 대응이 이루어지며, 우리가 원하는 메시지와 땋임의 표준요소의 대응이 된다.Conversely, an inverted sequence can be obtained by any number, and a permutation can also be obtained from any inverted sequence. There is completed the permutation, starting from the front column inversion, if the k-th column is inverted if α k d is added to the k (k + 1) th permutation. When we're done with n like this, the columns from this are the permutations we want. In this way, a random permutation of n and n! Is a one-to-one correspondence, corresponding to the message and the standard element of the braid.
그러나, 메시지 M을 하나의 표준요소로 표현하게 되면, 공격자의 입장에서 땋임 자체를 순열군의 관점에서 바라보게 된다. 그러면, 순열군의 공액문제가 쉽게 풀리기 때문에 공격자는 메시지를 알아낼 수 있다. 따라서, 본 발명에서는 하나의 표준요소에 다른 표준요소를 곱하여서 메시지를 암호화한다. 여기서, 다른 표준요소를 선택하는 방법은 여러 가지가 있겠으나, 본 발명에서는 처음 땋임의 역원을 구한 후에, 이 역원에서 나온 음수 지수승을 양수 지수승으로 바꾼 땋임을 사용한다. 이렇게 해서 나온 두 땋임의 곱을 m이라고 표현한다.However, if the message M is expressed as a standard element, the braid itself is viewed from the attacker's point of view from the point of view of the permutations. The attacker can then figure out the message because the permutation problem is easily solved. Therefore, in the present invention, the message is encrypted by multiplying one standard element with another standard element. Here, there are many ways to select other standard elements, but in the present invention, after obtaining the inverse of the first braid, the braid is changed from the negative power of the inverse to the positive power. The product of the two braids is m.
다음으로, 도 5 를 참조하여 암호화된 메시지를 복호화하는 과정을 살펴보면, 복호화 시스템(23)은 암호화 시스템(22)으로부터 암호문 cac-1과 mcbab-1c-1을 수신하면(51), 수신한 cac-1에 비밀키 b를 공액화하여 bcac-1b-1을 구할 수 있다. 이때, b와 c를 각각 우땋임과 좌땋임으로 선택하였기 때문에 곱의 순서를 바꾸어도 두 곱은 동치임으로, 다음의 (수학식 4)와 같은 식이 성립하게 된다.Next, referring to FIG. 5, when the encrypted message is decrypted, the decryption system 23 receives the ciphertext cac -1 and mcbab -1 c -1 from the encryption system 22 (51). bcac -1 b -1 can be obtained by conjugating the secret key b to cac -1 . At this time, since b and c are selected as right braid and left braid, respectively, even if the order of the products is changed, the two products are equivalent, and the following equation (4) is established.
[수학식 4]cbab-1-1-1-1Equation 4 cbab-1-1-1-1
그리고, 수신된 암호화 메시지 mcbab-1c-1에 bcac-1b-1의 역을 구하여 곱하여주면 다음의 (수학식 5)가 성립하게 된다.And, by multiplying the received encrypted message mcbab -1 c -1 by the inverse of bcac -1 b -1, the following Equation 5 is established.
[수학식 5]m = m(cbab-1-1-1-1-1[Equation 5] m = m (cbab-1-1-1-1-1
이때, 상기 (수학식 5)에 상기 (수학식 4)를 대입하면 m을 구할 수 있게 된다(52). 이후, 땋임 m은 간단한 방법으로 원래의 메시지 M으로 복호화할 수 있다(53).상술한 바와 같은 본 발명의 방법은 프로그램으로 구현되어 컴퓨터로 읽을 수 있는 형태로 기록매체(씨디롬, 램, 롬, 플로피 디스크, 하드 디스크, 광자기 디스크 등)에 저장될 수 있다.At this time, by substituting Equation 4 into Equation 5, m can be obtained (52). The braid m can then be decoded into the original message M in a simple manner (53). The method of the present invention as described above can be implemented as a program in a computer-readable form in a recording medium (CD-ROM, RAM, ROM, Floppy disk, hard disk, magneto-optical disk, etc.).
이상에서 설명한 본 발명은 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니고, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하다는 것이 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 명백할 것이다.The present invention described above is not limited to the above-described embodiments and the accompanying drawings, and various substitutions, modifications, and changes are possible in the art without departing from the technical spirit of the present invention. It will be apparent to those of ordinary knowledge.
상기와 같은 본 발명은, 땋임의 공액문제를 이용한 공개키 암호화/복호화 시스템으로, 현재까지 전 세계적으로도 제안된 적이 없는 전혀 새로운 암호화/복호화 시스템을 제공할 수 있다.The present invention as described above, as a public key encryption / decryption system using a conjugated problem of braiding, it is possible to provide a completely new encryption / decryption system that has not been proposed even worldwide.
또한, 본 발명은, 주로 정수론적 접근 방식을 취하는 종래의 암호화/복호화 시스템과 달리, 기하학적이 구조를 기본 골격으로 사용하였기 때문에 정해진 길이의 메시지나 단순한 문자 메시지의 암호화뿐만 아니라 임의의 길이를 가진 메시지나 다른 형태의 메시지의 암호화에도 사용할 수 있다.Furthermore, the present invention, unlike the conventional encryption / decryption system, which mainly takes a numerical approach, because the geometric structure is used as the basic skeleton, the message having an arbitrary length as well as the encryption of a message of a predetermined length or a simple text message. It can also be used to encrypt other forms of messages.
또한, 본 발명은, 새로운 계산 방법과 양자 컴퓨터 등에 의하여 안전성이 의심받고 있는 종래의 암호화/복호화 시스템과 달리, NP보다 더 어려운 문제를 풀어야 하기 때문에 안전성이 뛰어나다.In addition, the present invention is excellent in safety because it has to solve a problem more difficult than NP, unlike the conventional encryption / decryption system whose security is suspected by a new calculation method, a quantum computer, or the like.
또한, 본 발명은, 속도면에 있어서도 사용 가능한 수준의 속도를 제공하고 있어, 실제로 응용 가능한 시스템이라고 할 수 있다.In addition, the present invention provides a speed that can be used in terms of speed, and can be said to be a system that can be actually applied.
Claims (23)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019990050583A KR100345685B1 (en) | 1999-11-15 | 1999-11-15 | Key generating method, and encryption and decryption system and its method by using the braid operation |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019990050583A KR100345685B1 (en) | 1999-11-15 | 1999-11-15 | Key generating method, and encryption and decryption system and its method by using the braid operation |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20010046704A KR20010046704A (en) | 2001-06-15 |
KR100345685B1 true KR100345685B1 (en) | 2002-07-27 |
Family
ID=19620102
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019990050583A KR100345685B1 (en) | 1999-11-15 | 1999-11-15 | Key generating method, and encryption and decryption system and its method by using the braid operation |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100345685B1 (en) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100395158B1 (en) * | 2001-07-12 | 2003-08-19 | 한국전자통신연구원 | Public key cryptosystem using finite non abelian groups |
WO2003013052A1 (en) * | 2001-07-27 | 2003-02-13 | Korea Advanced Institute Of Science And Technology | Cryptosystems based on non-commutatity |
KR20030079141A (en) * | 2002-04-02 | 2003-10-10 | 이창우 | Method for Embodying a key agreement protocol |
KR20030079142A (en) * | 2002-04-02 | 2003-10-10 | 이창우 | Method for Encryption/Decryption of Information using Public Key Cryptosystem |
KR20040017488A (en) * | 2002-08-21 | 2004-02-27 | 이창우 | Method for performing signature and confirmation of Information using Public Key Cryptosystem |
KR20040017487A (en) * | 2002-08-21 | 2004-02-27 | 이창우 | Authenticating method using public key cryptosystem |
KR101327980B1 (en) * | 2012-01-19 | 2013-11-13 | 서울대학교산학협력단 | ID-based additive homomorphic encryption method |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5272755A (en) * | 1991-06-28 | 1993-12-21 | Matsushita Electric Industrial Co., Ltd. | Public key cryptosystem with an elliptic curve |
US5729608A (en) * | 1993-07-27 | 1998-03-17 | International Business Machines Corp. | Method and system for providing secure key distribution in a communication system |
US5751808A (en) * | 1995-03-09 | 1998-05-12 | Anshel; Michael M. | Multi-purpose high speed cryptographically secure sequence generator based on zeta-one-way functions |
KR19980077685A (en) * | 1997-04-22 | 1998-11-16 | 구자홍 | METHOD AND DEVICE FOR GENERATING KEYS AND ENCRYPTION SYSTEM USING KEYS CREATED THEREFOR |
JPH11282348A (en) * | 1998-03-31 | 1999-10-15 | Sony Corp | Hyperelliptic curve enciphering method, and its decording |
-
1999
- 1999-11-15 KR KR1019990050583A patent/KR100345685B1/en not_active IP Right Cessation
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5272755A (en) * | 1991-06-28 | 1993-12-21 | Matsushita Electric Industrial Co., Ltd. | Public key cryptosystem with an elliptic curve |
US5729608A (en) * | 1993-07-27 | 1998-03-17 | International Business Machines Corp. | Method and system for providing secure key distribution in a communication system |
US5751808A (en) * | 1995-03-09 | 1998-05-12 | Anshel; Michael M. | Multi-purpose high speed cryptographically secure sequence generator based on zeta-one-way functions |
KR19980077685A (en) * | 1997-04-22 | 1998-11-16 | 구자홍 | METHOD AND DEVICE FOR GENERATING KEYS AND ENCRYPTION SYSTEM USING KEYS CREATED THEREFOR |
JPH11282348A (en) * | 1998-03-31 | 1999-10-15 | Sony Corp | Hyperelliptic curve enciphering method, and its decording |
Also Published As
Publication number | Publication date |
---|---|
KR20010046704A (en) | 2001-06-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7049374B2 (en) | A terminal device that performs the same type of encryption, a server device that processes the ciphertext, and its method. | |
CN111510281B (en) | Homomorphic encryption method and device | |
JP6934963B2 (en) | Data encryption methods and systems | |
Sharma et al. | A review on various cryptographic techniques & algorithms | |
CN109039640A (en) | A kind of encryption and decryption hardware system and method based on rsa cryptosystem algorithm | |
KR100345685B1 (en) | Key generating method, and encryption and decryption system and its method by using the braid operation | |
JP6187624B1 (en) | Information processing apparatus, information processing method, and program | |
Al-Qdah et al. | Simple encryption/decryption application | |
CN117375836A (en) | Encryption and decryption method and system for long text segment based on RSA encryption algorithm | |
Yang et al. | A (k, n) secret document sharing with meaningful shares | |
Mohan et al. | An encryption technique using the adjacency matrices of certain graphs with a self-invertible key matrix | |
JP2013098722A (en) | Ciphering device of stream cipher, deciphering device of stream cipher, ciphering method of stream cipher, deciphering method of stream cipher, and program | |
KR101076747B1 (en) | Method and apparatus for random accessible encryption and decryption by using a hierarchical tree structure of stream cipher module | |
JP3389210B2 (en) | Extended key generation device, encryption / decryption device, extended key generation method, and storage medium | |
CN111130755A (en) | Matrix double encryption method based on signature | |
JP5103407B2 (en) | Encrypted numerical binary conversion system, encrypted numerical binary conversion method, encrypted numerical binary conversion program | |
Ullagaddi et al. | Symmetric synchronous stream encryption using images | |
JP2003304237A (en) | Method for creating common key, encryption method using the common key, method for managing common key, method for authentifying solid by solid number of terminal, program for executing these methods, and application software including the program | |
Popoola | Data Integrity Using Caesar Cipher and Residue Number System | |
Jain et al. | Variation of playfair cipher | |
JP5293612B2 (en) | ENCRYPTION DEVICE, DECRYPTION DEVICE, ENCRYPTION METHOD, DECRYPTION METHOD, AND PROGRAM | |
US20230327851A1 (en) | Secure multi-party computation methods and apparatuses | |
JP2003115831A (en) | Common key generation method, enciphering method using common key, program therefor, recording medium recording the same program, enciphering device, deciphering method and deciphering device | |
Zekaj et al. | Using incomplete polynomial functions of the odd degree n and their inverses for data encryption and decryption | |
Khalid et al. | Encrypting data using the features of memetic algorithm and cryptography |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
AMND | Amendment | ||
J201 | Request for trial against refusal decision | ||
B701 | Decision to grant | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20090701 Year of fee payment: 8 |
|
LAPS | Lapse due to unpaid annual fee |