KR20230094253A - Method of creating account for 2FA authenticaed electronic signature by secure multi-party computation - Google Patents
Method of creating account for 2FA authenticaed electronic signature by secure multi-party computation Download PDFInfo
- Publication number
- KR20230094253A KR20230094253A KR1020210183255A KR20210183255A KR20230094253A KR 20230094253 A KR20230094253 A KR 20230094253A KR 1020210183255 A KR1020210183255 A KR 1020210183255A KR 20210183255 A KR20210183255 A KR 20210183255A KR 20230094253 A KR20230094253 A KR 20230094253A
- Authority
- KR
- South Korea
- Prior art keywords
- secure computing
- user
- private key
- party secure
- server
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 26
- 239000012634 fragment Substances 0.000 claims abstract description 25
- 238000004364 calculation method Methods 0.000 claims abstract description 4
- 238000004891 communication Methods 0.000 claims description 5
- 230000000694 effects Effects 0.000 abstract description 2
- 238000005516 engineering process Methods 0.000 description 8
- 238000011084 recovery Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000005315 distribution function Methods 0.000 description 1
- 230000001343 mnemonic effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
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/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- 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/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key 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)
-
- 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
- H04L9/3066—Public 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
-
- 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/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3226—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/46—Secure multiparty computation, e.g. millionaire problem
Abstract
본 발명은 사용자가 서비스 제공자의 서비스 가입을 위하여 계정의 인증 정보를 생성하고 이를 이용하여 서비스 사용권한과 사용자 데이터 접근권한을 인가받는 인증 시스템에 관한 것으로서, 사용자가 별도의 소프트웨어를 사전에 설치하지 않고 웹 브라우저 상에서 실행되는 소프트웨어 모듈로 작성된 다자 간 보안 컴퓨팅 모듈을 통해 비대칭키 암호 시스템을 위한 프라이빗키의 비밀 정보 조각을 서버와의 협력 연산을 통해 생성하고, 서비스 시스템에 공개키를 사용자 인증을 위한 식별자로 제공함으로써, 사용자가 비대칭키 암호 전자서명을 서비스 이용을 위한 인증 체계로 사용할 수 있도록 하는 방법에 있어, 사용자가 웹 브라우저로 특정 URL에 접속하여 다자 간 보안 컴퓨팅을 위한 web assembly 모듈을 사용자 단말에 다운로드하여 실행하는 단계, 사용자가 웹 브라우저에 계정 생성을 위한 사용자 ID와 패스워드를 입력하는 단계, 사용자 ID와 패스워드를 입력받은 다자 간 보안 컴퓨팅을 위한 클라이언트 소프트웨어가 다자 간 보안 컴퓨팅 서버와 접속하여 협력 연산을 통해 비대칭키 암호시스템을 위한 프라이빗키 비밀 정보 조각을 다자 간 보안 컴퓨팅을 위한 클라이언트 소프트웨어와 다자 간 보안 컴퓨팅 서버에 각각 생성하는 단계, 각자의 프라이빗키 비밀 정보 조각을 보유한 다자 간 보안 컴퓨팅을 위한 클라이언트 소프트웨어와 다자 간 보안 컴퓨팅 서버가 협력 연산하여 계정 공개키를 생성하는 단계, 다자 간 보안 컴퓨팅을 위한 클라이언트 소프트웨어가 사용자 단말에서 생성된 프라이빗키 비밀 정보 조각을 사용자가 입력한 패스워드를 암호키로 하여 암호화하여 원격의 저장소에 계정의 공개키와 사용자 입력 ID의 해시값과 함께 조합을 이루어 저장하는 단계, 계정 공개키와 사용자가 입력한 ID의 해시값을 서비스 계정 등록을 위한 저장 장치에 전달하여 사용자 계정의 식별자로 저장하는 단계를 포함하는 다자 간 보안컴퓨팅을 이용한 비대칭 암호시스템 기반 인증이 가능한 계정 생성 방법을 제공함으로써, 웹 기반 온라인 서비스의 사용자 단말에 별도의 비대칭키 암호시스템을 위한 클라이언트 소프트웨어를 사전에 설치하지 않고도 비대칭키 암호시스템 전자서명을 이용한 인증이 가능한 서비스 계정을 생성할 수 있게 함으로써 사용자가 단순한 ID, 패스워드로 가입하는 것과 같이 편리하면서도 안전하게 비대칭키 암호시스템 기반의 인증을 사용하는 서비스 계정을 생성하여 단순 ID 패스워드 기반의 인증 시스템이 가진 보안 취약점을 제거하고 서비스 시스템 내에서 사용자가 전자서명 서비스를 이용할 수 있게 만드는 효과를 얻을 수 있다.
또한, 본 발명에 따른 다자 간 보안 컴퓨팅(Secure Multi-party Computation, 이하 SMPC) 방식의 인증 시스템은 사용자에게 프라이빗키를 이용한 전자서명에 대한 통제력을 완전하게 제공하면서도, 사용자가 사용자 단말에 평문 또는 암호화된 프라이빗키를 보관하고 사용하는 상황에서 발생할 수 있는 보안 위협을 제거해 줌으로써 프라이빗키 관리로 인한 어려움 없이 전자서명을 통한 인증을 필요로 하는 서비스를 이용할 수 있게 해주고, 프라이빗키 탈취를 방어하기 위해 투입하는 사용자와 서비스 제공자의 비용을 매우 작게 만들어주는 효과가 있다. The present invention relates to an authentication system in which a user creates account authentication information for subscribing to a service of a service provider and uses it to obtain permission to use services and access to user data, without requiring the user to install separate software in advance. Through a multi-party secure computing module written as a software module running on a web browser, secret information fragments of private keys for asymmetric key cryptosystems are generated through cooperative operation with the server, and public keys in the service system are used as identifiers for user authentication. In a method that allows users to use asymmetric key cryptographic digital signatures as an authentication system for service use, users connect to a specific URL with a web browser and install a web assembly module for multilateral secure computing on the user terminal. Step of downloading and executing, Step of the user entering a user ID and password for creating an account in a web browser, client software for multi-party secure computing receiving the user ID and password connects to the multi-party secure computing server for cooperative calculation Step of generating pieces of private key secret information for the asymmetric key cryptosystem in the client software for multi-party secure computing and the multi-party secure computing server respectively, Clients for multi-party secure computing holding their own pieces of private key secret information The software and the multi-party secure computing server cooperate to generate the account public key, and the client software for multi-party secure computing encrypts the private key secret information fragment generated from the user terminal using the password entered by the user as the encryption key. Storing the combination of the public key of the account and the hash value of the ID input by the user in a remote storage, transferring the public key of the account and the hash value of the ID input by the user to the storage device for registering the service account, By providing an account creation method capable of authentication based on an asymmetric cryptographic system using multi-party secure computing including storing as an identifier, client software for a separate asymmetric key cryptographic system is pre-installed in a user terminal of a web-based online service. It is possible to create a service account that can be authenticated using an asymmetric key cryptosystem digital signature without having to create a service account that uses an asymmetric key cryptosystem-based authentication as conveniently and safely as a user registers with a simple ID and password. It is possible to remove security vulnerabilities of simple ID password-based authentication systems and to enable users to use digital signature services within the service system.
In addition, the authentication system of the Secure Multi-party Computation (SMPC) method according to the present invention completely provides the user with control over the electronic signature using the private key, while allowing the user to send plain text or encrypted text to the user terminal. By removing security threats that may occur in the situation of storing and using the stored private key, it is possible to use services that require authentication through digital signatures without difficulties due to private key management, and to protect private key theft. There is an effect of making the cost of users and service providers very small.
Description
본 발명은 온라인 서비스에 접속하는 웹브라우저를 실행할 수 있는 클라이언트 단말에서 브라우저 상에서 실행되는 소프트웨어 모듈을 이용하여 서버와의 협력 연산을 통해 다자 간 보안 컴퓨팅을 수행함으로써 클라이언트 단말 내에 완전한 형태의 프라이빗키를 생성하지 않은 상태에서 클라이언트 단말과 서버가 나누어 생성한 프라이빗키 조각을 이용한 협력 연산 과정을 통해 완전한 프라이빗키를 가진 하나의 단말이 특정한 연산을 수행한 것과 같은 결과를 생산하는 다자 간 보안 컴퓨팅 방식의 연산을 위한 프라이빗키 비밀 정보 조각을 클라이언트 단말과 서버에 각각 생성하여 이를 이용하여 계정을 생성하여 등록하고 이를 백업하는 방법에 관한 것으로서, 보다 자세하게는 웹 브라우저 상에서 실행되는 소프트웨어 모듈이 접근할 수 있는 단말 내 저장소가 다자 간 보안 컴퓨팅에 의해 생성한 프라이빗키 비밀 정보 조각을 안정적으로 저장하기 어려운 상황에도 불구하고 이 프라이빗키 비밀 정보 조각을 원격의 서버에 안전하게 저장하고 ID와 패스워드 입력과 Google Authenticator와 같은 사용자 인증을 통해 이를 임의의 브라우저에서 쉽게 재로딩하여 사용할 수 있게 하여, 별도의 비대칭키 암호시스템의 키쌍 생성과 보관을 위한 비대칭키 암호 시스템을 위한 사용자 단말용 소프트웨어를 설치하지 않고도 다자 간 보안 컴퓨팅 지갑을 웹사이트 접속만으로 사용하여 서비스 사용자가 전자서명을 이용할 수 있는 계정을 생성하고 등록할 수 있게 만드는 방법에 대한 것이다.The present invention generates a complete private key in a client terminal by performing multilateral security computing through cooperative calculation with a server using a software module running on a browser in a client terminal capable of executing a web browser accessing an online service. Multilateral secure computing method operation that produces the same result as if a single terminal with a complete private key performed a specific operation through a cooperative operation process using private key fragments generated by dividing the client terminal and the server without It relates to a method of creating and registering an account by creating pieces of private key secret information on a client terminal and a server, respectively, and backing them up. More specifically, a storage in a terminal that can be accessed by software modules running on a web browser. Despite the situation where it is difficult to reliably store pieces of private key secret information generated by multilateral secure computing, this piece of private key secret information is safely stored on a remote server and ID and password input and user authentication such as Google Authenticator are used. Through this, it can be easily reloaded and used in any browser, and a multi-party secure computing wallet can be created on the website without installing software for the user terminal for the asymmetric key cryptosystem for generating and storing key pairs of the separate asymmetric key cryptosystem. It is about a method to enable service users to create and register accounts that can use digital signatures by using only access.
어떤 온라인 서비스에 대한 접근의 권한을 온라인에서 확인하기 위해서는, 미리 등록된 '계정'과 그 계정에 접근할 권한을 가진 사용자임을 확인할 수 있는 '인증 정보'를 필요로 한다. 대개 그 '인증 정보'는 패스워드나 그것의 해시값과 같이 권한을 가진 사람이 생성하여 등록하였기 때문에 다른 사람들은 알 수 없는 정보가 사용된다.In order to verify the right to access an online service online, a pre-registered 'account' and 'authentication information' to confirm that a user has the right to access the account are required. Usually, the 'authentication information' is created and registered by a person with authority, such as a password or its hash value, so information that others cannot know is used.
그러나 사용자가 입력한 정보를 평문 또는 해시함수에 의해 해시된 값의 형태로 서비스 제공자의 단말에 저장하고 이를 사용자가 보내오는 인증 요청에 포함된 인증 정보와 비교하여 접근 허용 여부를 결정하는 시스템은, 이 정보가 탈취되는 상황에 비인가자의 접근에 노출되는 문제점을 안고 있다.However, a system that stores the information entered by the user in the form of plain text or hashed values by a hash function in the terminal of the service provider and compares it with the authentication information included in the authentication request sent by the user to determine whether to allow access, In the situation where this information is stolen, it has a problem of being exposed to unauthorized persons' access.
이러한 문제를 해결하기 위해 서비스 제공자들은 인증 시스템이 비인가자의 접근에 노출되지 않도록 하기 위해, 사용자 인증을 서로 독립적인 두 개 이상의 방법으로 하여 보안성을 높이거나, 인증 정보의 탈취를 막기 위해 사용자 단말과 서비스 제공자의 인증 정보 관리 체계에 다양한 보안 기술들을 적용함으로써 많은 비용을 부담하여 이 문제에 대응하고 있다.In order to solve this problem, service providers increase security by using two or more independent methods for user authentication to prevent the authentication system from being exposed to unauthorized access, or to prevent stealing of authentication information by using user terminals and By applying various security technologies to the service provider's authentication information management system, it is responding to this problem at a high cost.
여기에 적용되는 보안 기술 시스템 중 하나가 비대칭키 암호시스템을 이용한 공개키 기반 구조로서, 사용자와 서비스 제공자가 모두 신뢰할 수 있는 공개키 등록 절차와 보관소, 공개키 조회를 통한 전자서명 검증에 의한 사용자 및 거래 인증 시스템이 그것이다.One of the security technology systems applied here is a public key infrastructure using an asymmetric key cryptosystem, which is a public key registration procedure and storage that both users and service providers can trust, users and users by digital signature verification through public key inquiry. It is a transaction authentication system.
일반적으로 비대칭키 암호시스템 상에서 프라이빗키와 공개키의 쌍을 생성하여 사용자가 공개키를 아이덴티티로 하여 암호화나 전자서명에 사용하기 위해서는 사용자의 단말에서 프라이빗키와 공개키 쌍을 생성하여 공개키를 정해진 방식으로 공개함으로써, 프라이빗키를 이용한 암호화나 전자서명을 수행하는 방법으로 공개키와 쌍을 이루는 프라이빗키를 통제하는 주체임을 인증하는 방식을 사용한다. 이러한 비대칭키 암호를 이용한 인증을 위해서는 사용자가 해커 등의 인가받지 않은 제3자에게 자신의 프라이빗키를 노출시키지 않고 보관 및 사용을 할 수 있다는 것을 전제로 하여야 한다. 그러나 사용자의 단말은 사용자의 관리 능력 부족이나 소프트웨어의 보안 취약성 등으로 인해 쉽게 해커의 공격에 노출되므로 자신의 단말에 대한 보안 관리 능력을 갖지 못한 일반 사용자가 비대칭키 암호를 이용한 인증 또는 전자서명을 이용하는 것은 쉽지 않다.In general, in order to generate a pair of private key and public key on an asymmetric key cryptosystem and use the public key as an identity for encryption or digital signature, the user's terminal generates a pair of private key and public key and determines the public key. By disclosing it in a way, it uses a method of authenticating that it is the subject controlling the private key paired with the public key by performing encryption or electronic signature using the private key. For authentication using such asymmetric key cryptography, it must be premised that the user can store and use his private key without exposing his private key to an unauthorized third party such as a hacker. However, since the user's terminal is easily exposed to hacker attacks due to the user's lack of management ability or security vulnerability of software, general users who do not have the security management ability of their own terminal use authentication using asymmetric key cryptography or digital signature. It's not easy.
그러나 이러한 공개키 기반 구조는 등록 기관이나 인증 기관을 전제로 하므로 비용이 높고 사용자 편의성을 해칠 뿐 아니라, 사용자가 보유하게 되는 공개키와 프라이빗키의 탈취에 의한 위험이 인증서 암호의 보안 강도에 의존하고 있을 뿐이어서, 비인가자에 의한 서비스 접근의 결과로 발생하는 책임을 사용자에게 전가하는 효과 이상의 충분한 보안성을 제공하지 못하는 문제가 지적되고 있다.However, since this public key infrastructure is premised on a registration authority or a certification authority, it is expensive and harms user convenience, and the risk of stealing the public and private keys held by the user depends on the security strength of the certificate password. However, the problem of not providing sufficient security beyond the effect of shifting the responsibility arising as a result of service access by unauthorized persons to the user has been pointed out.
이러한 문제를 해결하기 위해, 사용자의 편의성은 높이면서도 공개키 기반 구조가 가진 전자 서명 가능한 키 분배 기능을 유지하고, 사용자 단말에서 키 관리 부담이 적은 간편 인증 기술에 대한 연구개발이 이루어져 왔고, 이는 사용자 단말이 USIM이나 ICCard, Trustzone과 같은 안전 저장 공간이 있는 경우 사용자 단말에서 개인키를 보관하고, 그렇지 않은 경우에는 사용자 단말에 개인키를 보관하지 않고 사용자가 입력한 패스워드와 서비스 서버에서 제공되는 난수 시드를 이용하여 생성한 개인키를 서버에 보관하여 전자서명을 위임하여 처리하는 간편 인증 기반 전자서명 기술의 등장으로 귀결되었다.In order to solve this problem, research and development have been conducted on simple authentication technology that increases user convenience while maintaining the digital signature key distribution function of the public key infrastructure and reducing the burden of key management in user terminals. If the terminal has a safe storage space such as USIM, ICCard, or Trustzone, the user terminal stores the private key. Otherwise, the user terminal does not store the private key, and the password entered by the user and the random number seed provided by the service server This led to the emergence of simple authentication-based digital signature technology that stores the private key generated using the server in the server and delegates and processes the digital signature.
이러한 문제를 해결하기위한 수단으로 사용할 수 있는 기술이 다자간 보안컴퓨팅(Secure Multi-party Computation, 이하 SMPC)이다. SMPC는 복수의 참여자가 각자의 비밀 정보 조각을 가지고 협력 연산에 참여하지만 서로에게 자신이 보유한 비밀 정보 조각을 노출시키지 않은채로 연산의 결과를 만들 수 있기 때문에, N명 중에 t 명의 비밀 정보 조각이 있으면 복구할 수 있는 비밀 정보를 입력값으로 하는 연산을 각자의 비밀 정보 조각을 노출하여 합쳐서 비밀 정보를 만들지 않고도 계산할 수 있게 해준다. 특히 이러한 연산 중에 연산 결과를 가지고 입력값을 추론하기 어려운 연산에 적용할 경우, 연산 결과가 공개되더라도 비밀 정보가 노출되지 않기 때문에, 비밀 정보의 노출없이 반복적으로 여러번 협력 연산을 수행할 수 있고 사용자에게 다양한 복구 시나리오를 제공하면서도 보안성을 유지할 수 있는 장점이 있다.A technology that can be used as a means to solve this problem is Secure Multi-party Computation (SMPC). In SMPC, multiple participants participate in cooperative computation with their own secret information pieces, but can produce the result of the operation without exposing their secret information pieces to each other, so if there are t pieces of secret information among N people, It allows operations that take recoverable secret information as input to be computed without creating secret information by exposing and combining individual pieces of secret information. In particular, when applied to an operation in which it is difficult to deduce an input value with an operation result during such an operation, since secret information is not exposed even if the operation result is disclosed, cooperative operation can be repeatedly performed many times without exposing secret information, and the user can be informed. It has the advantage of maintaining security while providing various recovery scenarios.
그러나 사용자 단말 이러한 다자 간 보안 컴퓨팅을 이용한 분산키 생성이나 분산 서명을 사용하기 위해서는, 사용자 단말에 다자 간 보안 컴퓨팅을 위한 소프트웨어가 사전에 설치되어야 하고, 사용자 단말에 설치된 다자 간 보안 컴퓨팅 소프트웨어와 다자 간 보안 컴퓨팅 서버 간에 협력 연산을 통해 생성한 프라이빗키 비밀 정보 조각의 유실 시에 이를 복구하기 위해 니모닉 키워드 조합을 백업하여 복구 방법을 확보하여야 하므로 일반 사용자가 이를 사용하는데 어려움이 있다.However, in order to generate a distributed key or use a distributed signature using such multi-party secure computing at the user terminal, software for multi-party secure computing must be installed in the user terminal in advance, and the multi-party secure computing software installed on the user terminal and the multi-party secure computing software It is difficult for general users to use it because it is necessary to secure a recovery method by backing up the mnemonic keyword combination in order to recover the private key secret information fragment generated through cooperative operation between secure computing servers.
본 발명은, 사용자가 온라인 서비스에 가입하려는 상황에서 보안적 취약성이 큰 ID, 패스워드 방식이 아닌 비대칭키 암호시스템을 이용한 전자서명 방식을 사용하면서도, 자신의 패스워드나 ID, 프라이빗키 등을 서비스 시스템이나 그 관리자 또는 사용자 단말을 장악한 제3자에게 노출시키지 않고 서비스 시스템이나 그 시스템 관리자에게 계정 복구의 권한을 위임하는 방식의 계정 복구 방식이 아닌 본인이 기억하고 있는 ID, 패스워드, Google Authenticator와 같은 일회용 패스워드 인증 만으로 계정의 프라이빗키에 대한 통제권을 복구하는 복구 방식을 제공하여, 보안성이 높은 인증 수단과 전자서명 수단을 사용자 편의성이 높고 서비스 제공자 비용이 낮게 제공하는 것을 목적으로 한다.In the present invention, in a situation where a user intends to subscribe to an online service, a digital signature method using an asymmetric key encryption system is used instead of an ID and password method, which have a large security vulnerability, and a user's password, ID, private key, etc. It is not an account recovery method in which the account recovery authority is delegated to the service system or the system administrator without exposing the administrator or a third party who has seized the user terminal, but a one-time use such as ID, password, and Google Authenticator that the user remembers. By providing a recovery method that restores control over the private key of an account with only password authentication, it aims to provide high-security authentication and electronic signature means with high user convenience and low cost to service providers.
상기와 같은 목적을 달성하기 위해, Yahuda Lindell이 고안한 곱셈 복원가능 비밀 정보 조각을 이용한 다자간 보안컴퓨팅 기술(Lindell, Y.: Fast secure two-party ecdsa signing. In: Annual International Cryptology Conference. pp. 613-644. Springer (2017))을 이용하여 사용자 단말의 브라우저 상에서 실행되는 다자 간 보안 컴퓨팅 클라이언트 소프트웨어가 다자 간 보안 컴퓨팅 서버에게 자신의 패스워드나 개인키를 노출시키지 않고, 프라이빗키의 비밀 정보 조각을 곱셈 복원가능 정보 조각의 형태로 다자 간 보안 컴퓨팅 클라이언트 소프트웨어와 다자 간 보안 컴퓨팅 서버가 협력하여 생성하고, 각자 자신이 생성한 프라이빗키 비밀 정보 조각을 보관하고, 각자가 보유한 프라이빗키 비밀 정보 조각을 서로에게 노출시키지 않고 안전한 통신 채널을 이용하여 부분 연산 결과를 주고 받으며 협력하여 서명 가능하고, 사용자가 ID, 패스워드 입력과 일회용 패스워드 인증만으로 임의의 단말에서 해당 서비스에 접속하여 원격에 보관된 암호화된 프라이빗키 비밀 정보 조각을 획득하고 복호화하여 프라이빗키를 이용한 전자 서명 통제권을 복구하여 사용하는 방법을 제공한다. In order to achieve the above purpose, multilateral secure computing technology (Lindell, Y.: Fast secure two-party ecdsa signing. In: Annual International Cryptology Conference. pp. 613 -644. Using Springer (2017)), the multi-party secure computing client software running on the browser of the user terminal multiplies the secret information fragment of the private key without exposing its password or private key to the multi-party secure computing server. In the form of restorable information fragments, the multi-party secure computing client software and the multi-party secure computing server cooperate to create pieces of private key secret information generated by each party, and share private key secret information fragments held by each other with each other. It is possible to exchange and sign partial operation results using a secure communication channel without exposing them, and users access the service from any terminal with only ID and password input and one-time password authentication, and encrypted private key secrets stored remotely. Provides a method of obtaining and decrypting pieces of information to recover and use electronic signature control using a private key.
본 발명의 실시예에서는, 상술한 바와 같이, 본 발명에 따른 인증 정보 생성이 이루어지게 함으로써, 사용자 단말에 저장된 인증 정보의 보안 위험을 낮추고 서비스 제공자가 보관하는 인증 정보의 보안 위험을 동시에 낮추면서도 사용자에게 다양한 상황에서 편리한 계정 복구 시나리오를 제공할 수 있도록 하여, 사용자에게는 인증정보 및 개인키 관리 부담을 경감시키면서 전자서명 인증 서비스를 이용할 수 있게 하고, 서비스 제공자에게는 서비스 이용자의 인증 정보 보안을 위한 비용을 절감시키는 방법을 제공할 것이다.In the embodiment of the present invention, as described above, by generating authentication information according to the present invention, the security risk of authentication information stored in the user terminal is lowered and the security risk of authentication information stored by the service provider is lowered at the same time. By providing convenient account recovery scenarios in various situations, users can use digital signature authentication services while reducing the burden of managing authentication information and private keys, and service providers are free from costs for securing authentication information of service users. We will provide you with a way to save money.
도 1은 본 발명의 실시예에 따른 ID, 패스워드, 일회용 패스워드 기반의 비대칭키 암호 계정 시스템의 구성도이다.
도 2는 본 발명의 실시예에 따른 ID, 패스워드, 일회용 패스워드 설정을 통한 비대칭키 암호 계정 생성 방법의 동작흐름도이다.1 is a block diagram of an asymmetric key cryptographic account system based on ID, password, and one-time password according to an embodiment of the present invention.
2 is an operation flow chart of a method for generating an asymmetric key password account through ID, password, and one-time password settings according to an embodiment of the present invention.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.Hereinafter, with reference to the accompanying drawings, embodiments of the present invention will be described in detail so that those skilled in the art can easily carry out the present invention. However, the present invention may be embodied in many different forms and is not limited to the embodiments described herein. And in order to clearly explain the present invention in the drawings, parts irrelevant to the description are omitted, and similar reference numerals are attached to similar parts throughout the specification.
명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. Throughout the specification, when a certain component is said to "include", it means that it may further include other components without excluding other components unless otherwise stated.
다자간 보안 컴퓨팅 기술을 이용하여 ECDSA 비대칭키 암호알고리즘을 사용하는 암호 시스템을 기초로 사용자 단말의 웹 브라우저에서 실행되는 소프트웨어 모듈과 일회용 패스워드 시스템을 이용하여 서비스 제공 단말 간에 곱셈 복원가능 비밀 정보 조각을 인증 정보 생성하여 사용하는 사용자 인증 시스템으로, 이를 구성하는 방법을 설명하기로 한다. Based on the cryptographic system using the ECDSA asymmetric key cryptographic algorithm using multilateral security computing technology, authentication information can be multiplied and restored between the service providing terminal using the one-time password system and the software module running in the web browser of the user terminal. This is a user authentication system that is created and used, and how to configure it will be described.
도 1은 본 발명의 실시예에 따른 ECDSA 비대칭키 암호알고리즘을 사용하는 프라이빗키의 Secure Multi Party Computation(이하 'SMPC'라 한다) 비밀 정보조각 생성을 사용하는 ID, 패스워드, 일회용 패스워드 기반의 비대칭키 암호 계정 시스템의 구성도이다.1 is an asymmetric key based on an ID, password, and one-time password using Secure Multi Party Computation (hereinafter referred to as 'SMPC') secret information fragment generation of a private key using the ECDSA asymmetric key encryption algorithm according to an embodiment of the present invention. It is a configuration diagram of the password account system.
먼저, 사용자는 사용자 단말(100)의 브라우저를 이용하여 가입하려는 서비스의 URL(U)에 접속한다. 이때 서비스 서버(200)는 자바스크립트나 web assembly와 같이 브라우저에서 실행 가능한 다자 간 보안 컴퓨팅 클라이언트 소프트웨어 모듈(110)을 고객의 단말에 전달하고 사용자의 단말은 소프트웨어의 실행을 통해 사용자가 해당 서비스에 등록하려는 ID와 패스워드(PW)와 URL을 이용하여 서비스 서버(200)와 인증 정보 백업 서버(400)에 계정을 생성하면, 서비스 서버(200)는 일회용 패스워드 생성을 위한 시드(secretKey)를 생성하여 인증 정보 백업 서버(400)와 다자 간 보안 컴퓨팅 클라이언트 소프트웨어 모듈(110)에 전달하여 사용자가 다자 간 보안 컴퓨팅 클라이언트 소프트웨어 모듈을 이용하여 서비스 서버와 인증 정보 백업 서버에 접근할 수 있는 서비스 계정과 인증 정보 백업 계정의 계정 식별자를 생성한다. First, the user accesses the URL (U) of the service to be subscribed to using the browser of the
이때 서비스 계정과 인증 정보 백업 계정의 식별자는 URL와 ID, 패스워드 정보만을 이용하여 생성되며, 이렇게 생성된 식별자가 기 등록된 식별자와 동일한 경우 서비스 서버(200)와 인증 정보 백업 서버(400)는 사용자 단말에서 실행되는 다자 간 보안 컴퓨팅 클라이언트 소프트웨어 모듈(110)은 웹 브라우저 상에 기 등록된 계정과 중복되어 등록할 수 없다고 표시하고 ID나 패스워드를 달리하여 새로운 계정을 생성할 것인지 기 등록된 계정을 복구할 것인지를 묻는 UI를 표시한다. 사용자가 새로운 계정을 생성할 것을 선택하면 다자 간 보안 컴퓨팅 클라이언트 소프트웨어 모듈은 입력된 ID와 패스워드를 삭제하고 새로운 ID와 패스워드를 입력받는 UI를 표시한다. 사용자가 기 등록된 계정을 복구할 것을 선택하면, 다자 간 보안 컴퓨팅 클라이언트 소프트웨어 모듈(110)은 인증 정보 백업 서버에 URL, ID와 패스워드를 해시하여 계정 식별자를 생성하여 전송하고 암호화된 인증 정보를 요청하여 이를 일회용 패스워드에 의한 추가 인증을 통해 사용자 단말로 암호화된 다운로드한다. 만약 일회용 패스워드에 의한 인증에 실패하면 일회용 패스워드 인증에 실패했음을 표시하고 일회용 패스워드 재입력을 요청하며, 인증 정보 백업 서버가 허용하는 제한 횟수까지 이를 반복한다. 만약 일회용 패스워드에 의한 인증이 성공하여 인증 정보 백업 서버로부터 암호화된 인증 정보가 전송되면 다자 간 보안 컴퓨팅 클라이언트 소프트웨어 모듈은 입력된 패스워드를 이용하여 이를 복호화하고 복호화된 정보를 이용하여 서비스 서버에 앞서 생성된 계정 식별자를 이용하여 다자 간 보안 컴퓨팅을 이용한 전자 서명에 의한 계정 확인을 요청한다.At this time, identifiers of the service account and authentication information backup account are generated using only URL, ID, and password information. The multi-party secure computing
기 등록된 계정 식별자가 없는 것으로 확인되어 서비스 가입을 위한 새로운 계정 식별자가 생성된 상태에서, 다자 간 보안 컴퓨팅 소프트웨어 클라이언트 모듈(110)은 웹 브라우저 화면에 일회용 패스워드 계정 등록을 위해 서비스 서버에서 생성된 일회용 패스워드 계정 시드(secretKey)를 QR 코드나 문자열의 형태로 생성하여 사용자가 보유한 일회용 패스워드 클라이언트 소프트웨어가 설치된 모바일 단말(500)로 QR 코드 스캔이나 문자열 입력의 방식으로 서비스 서버에 일회용 패스워드 계정을 생성하고 그 결과로 화면에 표시된 일회용 패스워드를 다자 간 보안 컴퓨팅 클라이언트 소프트웨어 모듈에 입력하여 서비스 서버에 인증을 요청하고 인증이 되면 일회용 패스워드 계정 ID를 서비스 계정 식별자와 쌍을 이루어 등록하여 일회용 패스워드 서비스 계정을 생성한다. 서비스 서버는 이를 인증 정보 백업 서버에 전달하여 인증 정보 백업 서버에 동일한 ID를 가진 일회용 패스워드 서비스 계정을 생성한다.In a state where it is confirmed that there is no pre-registered account identifier and a new account identifier for service subscription is created, the multi-party secure computing
상기 서비스 서버가 일회용 패스워드 시드를 생성하여 일회용 패스워드 인증 시스템을 구성하는 방법은 공지 기술에 의해 누구나 쉽게 실시할 수 있다.A method of constructing a one-time password authentication system by generating a one-time password seed by the service server can be easily performed by anyone by known technology.
서비스 서버와 인증 정보 백업 서버에 일회용 패스워드 인증이 가능한 서비스 계정이 생성되면, 다자 간 보안 컴퓨팅 클라이언트 소프트웨어 모듈(110)과 다자 간 보안 컴퓨팅 서버(300)는 협력 연산을 통해, 클라이언트용 프라이빗키 비밀 정보 조각과 서버용 프라이빗키 비밀 정보 조각, 두 프라이빗키 비밀 정보 조각의 대수적 곱으로 정의된 프라이빗키에 대응되는 공개키를 생성하여 일회용 패스워드 인증을 통해 서비스 계정의 전자 서명 인증을 위한 정보로 등록한다. 이때 프라이빗키 비밀 정보 조각 생성 방법을 설명하면 다음과 같다. When a service account capable of one-time password authentication is created in the service server and the authentication information backup server, the multi-party secure computing
도 2를 참조하면, 사용자의 웹 브라우저에서 실행되는 다자 간 보안 컴퓨팅 클라이언트 소프트웨어 모듈(110)은 다자 간 보안 컴퓨팅 서버(300)와의 통신을 통해, 다자 간 보안 컴퓨팅 클라이언트 소프트웨어 모듈(110)에 랜덤값 R1을 다자 간 보안 컴퓨팅 서버(300)에 R2를 생성하여 앞서 생성된 서비스 계정 식별자를 인증 정보의 키값으로 하여 단말과 다자 간 보안 컴퓨팅 서버의 저장소에 저장하고, 다자 간 보안 컴퓨팅 클라이언트 모듈(110)은 입력된 패스워드를 이용하여 R1을 암호화하여 원격의 인증 정보 백업 서버로 계정 식별자를 이용하여 저장한다. 이때 프라이빗키(SK)는 각자의 랜덤 값의 곱인 R1 * R2로 정의되나 다자 간 보안 컴퓨팅 클라이언트 소프트웨어 모듈(110)이 실행되는 사용자 단말 내의 정보만으로는 프라이빗키를 알 수 없고 마찬가지로 다자 간 보안 컴퓨팅 서버(300) 내의 정보만으로는 프라이빗키를 알 수 없다. Referring to FIG. 2 , the multi-party secure computing
이 상태에서 프라이빗키(SK)에 대응하는 공개키(PK)를 생성하는 방법은 다음과 같다. In this state, a method of generating a public key (PK) corresponding to the private key (SK) is as follows.
다자 간 보안 컴퓨팅 클라이언트 소프트웨어 모듈(110)이 다자 간 보안 컴퓨팅 서버(300)와 협력 연산하여, 클라이언트용 프라이빗키 비밀 정보 조각(R1)과 서버용 프라이빗키 비밀 정보 조각(R2)의 곱(R1*R2)을 프라이빗키로 하는 공개키를 생성하기 위해, 다자 간 보안 컴퓨팅 클라이언트 소프트웨어 모듈(110)은 다자 간 보안 컴퓨팅 서버(300)와의 암호화된 통신 채널을 통해 클라이언트 프라이빗키 비밀 정보 조각에 미리 정해진 타원곡선 암호 알고리즘의 제너레이터 G를 곱해서 나온 값(R1*G)을 다자 간 보안 컴퓨팅 서버(300)로 전송하고, 다자 간 보안 컴퓨팅 서버(300)는 서버용 프라이빗키 비밀 정보 조각(R2)에 미리 정해진 타원곡선 암호 알고리즘의 제너레이터 G를 곱한 값(R2*G)을 다자 간 보안 컴퓨팅 클라이언트 소프트웨어 모듈(110)로 전송하며, 다자 간 보안 컴퓨팅 클라이언트 소프트웨어 모듈(110)은 다자 간 보안 컴퓨팅 서버(300)로부터 받은 값(R2*G)에 자신이 보유한 클라이언트용 프라이빗키 비밀 정보 조각(R1)을 곱하여 공개키(PubKey=R1*R2*G=SK*G)를 생성하고, 다자 간 보안 컴퓨팅 서(300)버는 다자 간 보안 컴퓨팅 클라이언트 소프트웨어 모듈(110)로부터 받은 값(R1*G)에 자신의 서버용 프라이빗키 비밀 정보 조각(R2)을 곱하여 공개키(PubKey=R1*R2*G=SK*G)를 생성한다.The multi-party secure computing
이 상태에서 다자간 보안 컴퓨팅 클라이언트 모듈(110)이 서비스 서버(300)에 계정을 등록하는 방법은 다음과 같다.In this state, a method for the multilateral secure
다자간 보안 컴퓨팅 클라이언트 모듈(110)은 접속한 서비스 서버(300)의 일회용 패스워드의 시드 ID와 접속된 서비스 서버의 URL(U)과 사용자 단말(100)로부터 입력받은 ID와 랜덤하게 생성한 클라이언트용 프라이빗키 비밀 정보 조각(R1), 다자간 보안 컴퓨팅 서버(200)와 협력 연산으로 생성한 공개키(PK)를 이용하여, 서비스 서버(300)에 일회용 패스워드의 시드 ID(secretKey), URL(U)과 ID를 해시한 값(Hash(ID))과 공개키(PK)로 구성된 계정 정보를 등록한다.The multi-party security
이 상태에서 다자간 보안 컴퓨팅 클라이언트 모듈(110)이 원격 저장소(400)에 클라이언트용 프라이빗키 비밀 정보 조각(R1)을 암호화한 값(Enc(R1, PW))을 저장하는 방법은 다음과 같다.In this state, a method for the multilateral secure
다자간 보안 컴퓨팅 클라이언트 모듈(110)은 일회용 패스워드 시드 ID(secretKey)와 접속한 서비스 서버(300)의 URL(U)과 사용자 단말(100)로부터 입력받은 ID, 패스워드(PW)와 랜덤하게 생성한 클라이언트용 프라이빗키 비밀 정보 조각(R1), 다자간 보안 컴퓨팅 서버(200)와 협력 연산으로 생성한 공개키(PK)를 이용하여, 원격 저장소(400)에 ID를 해시한 값을 식별자로 하여 일회용 패스워드 시드 ID(secretKey)를 등록한 후에 해당 ID 서비스 서버(300)의 URL(U)과 공개키, 암호화된 R1(Enc(R1, PW))를 저장한다.The multi-party security
이상에서 설명한 본 발명의 실시예는 장치 및 방법을 통해서만 구현이 되는 것은 아니며, 본 발명의 실시예의 구성에 대응하는 기능을 실현하는 프로그램 또는 그 프로그램이 기록된 기록 매체를 통해 구현될 수도 있으며, 이러한 구현은 앞서 설명한 실시예의 기재로부터 본 발명이 속하는 기술분야의 전문가라면 쉽게 구현할 수 있는 것이다. The embodiments of the present invention described above are not implemented only through devices and methods, and may be implemented through a program that realizes functions corresponding to the configuration of the embodiments of the present invention or a recording medium on which the program is recorded. Implementation can be easily implemented by an expert in the technical field to which the present invention belongs based on the description of the above-described embodiment.
이상에서 본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.Although the embodiments of the present invention have been described in detail above, the scope of the present invention is not limited thereto, and various modifications and improvements made by those skilled in the art using the basic concept of the present invention defined in the following claims are also included in the scope of the present invention. that fall within the scope of the right.
Claims (2)
상기 생성된 클라이언트용 프라이빗키 비밀 정보 조각을 사용자가 입력한 패스워드를 암호키로 하는 대칭키 암호화 방식을 이용하여 암호화하여 원격의 클라이언트용 프라이빗키 비밀 정보 조각 백업 서버에 사용자가 입력한 ID의 해시값과 함께 쌍을 이루어 저장하는 클라이언트용 프라이빗키 비밀 정보 조각 백업 단계를 포함하는 것을 특징으로 하는,
사용자의 ID와 패스워드 입력만으로 다자 간 보안 컴퓨팅(SMPC : Secure Multi-party Computation) 방식의 비대칭키 암호를 이용한 인증 시스템의 사용자 계정을 등록하는 방법
In a state where the multi-party secure computing client software module executed in the web browser of the user terminal and the multi-party secure computing server are connected through a secure communication channel, the user inputs the ID (ID) and password (PW) desired to register and QR When a one-time password account is created with the seed ID (secretKey) of the one-time password displayed on the browser screen in the form of code and the one-time password displayed on the mobile screen is entered, the multi-party secure computing client software module and the multi-party secure computing server perform cooperative calculations. By using the Lindell 2 Party multi-party secure computing distributed key algorithm, the private key secret information fragment for the client is generated in the multi-party secure computing client, and the private key secret information fragment for the server is generated in the multi-party secure computing server terminal. An account creation step of generating a public key and registering the hash value of the ID entered by the user and the public key as an identifier of a piece of private key secret information for the server combined with the one-time password account information set in the service server;
The generated piece of private key secret information for the client is encrypted using a symmetric key encryption method using the password entered by the user as an encryption key, and the hash value of the ID entered by the user Characterized in that it comprises a step of backing up pieces of private key secret information for clients that are paired and stored together.
A method of registering a user account in an authentication system using an asymmetric key cryptography based on Secure Multi-party Computation (SMPC) only by entering the user's ID and password.
다자 간 보안 컴퓨팅 클라이언트 소프트웨어 모듈이 다자 간 보안 컴퓨팅 서버와 협력 연산하여, 클라이언트용 프라이빗키 비밀 정보 조각(R1)과 서버용 프라이빗키 비밀 정보 조각(R2)의 곱(R1*R2)을 프라이빗키로 하는 공개키를 생성하기 위해, 다자 간 보안 컴퓨팅 클라이언트 소프트웨어 모듈은 다자 간 보안 컴퓨팅 서버와의 암호화된 통신 채널을 통해 클라이언트 프라이빗키 비밀 정보 조각에 미리 정해진 타원곡선 암호 알고리즘의 제너레이터 G를 곱해서 나온 값(R1*G)을 다자 간 보안 컴퓨팅 서버로 전송하고, 다자 간 보안 컴퓨팅 서버는 서버용 프라이빗키 비밀 정보 조각(R2)에 미리 정해진 타원곡선 암호 알고리즘의 제너레이터 G를 곱한 값(R2*G)을 다자 간 보안 컴퓨팅 클라이언트 소프트웨어로 전송하여, 다자 간 보안 컴퓨팅 클라이언트 소프트웨어는 다자 간 보안 컴퓨팅 서버로부터 받은 값(R2*G)에 자신이 보유한 클라이언트용 프라이빗키 비밀 정보 조각(R1)을 곱하여 공개키(PubKey=R1*R2*G=SK*G)를 생성하고, 다자 간 보안 컴퓨팅 서버는 다자 간 보안 컴퓨팅 클라이언트 소프트웨어로부터 받은 값(R1*G)에 자신의 서버용 프라이빗키 비밀 정보 조각(R2)을 곱하여 공개키(PubKey=R1*R2*G=SK*G)를 생성하고, 다자 간 보안 컴퓨팅 클라이언트 소프트웨어는 사용자 ID의 해시값(Hash(ID))과 클라이언트용 프라이빗키 비밀 정보 조각을 패스워드를 암호키로 하여 암호화한 값(Enc_R1=Enc(PW,R1))과 공개키를 하나의 레코드로 저장하고, 다자 간 보안 컴퓨팅 서버는 사용자 ID의 해시값(Hash(ID))과 서버용 프라이빗키 비밀 정보 조각(R2)과 공개키(PubKey)를 하나의 레코드로 저장하는 것을 특징으로 하는 계정 생성 단계
In the account creation step,
The multi-party secure computing client software module cooperates with the multi-party secure computing server to calculate, and discloses the product (R1*R2) of the private key secret information fragment (R1) for the client and the private key secret information fragment (R2) for the server as the private key. To generate a key, the multi-party secure computing client software module multiplies a fragment of the client private key secret by the generator G of a predetermined elliptic curve cryptographic algorithm through an encrypted communication channel with the multi-party secure computing server (R1* G) is transmitted to the multi-party secure computing server, and the multi-party secure computing server multiplies the private key secret information fragment (R2) for the server by the generator G of the predetermined elliptic curve cryptographic algorithm (R2*G). Transmitted to the client software, the multi-party secure computing client software multiplies the value (R2*G) received from the multi-party secure computing server by the private key secret information fragment (R1) for the client it holds, and then the public key (PubKey=R1*R2 *G=SK*G), and the multi-party secure computing server multiplies the value (R1*G) received from the multi-party secure computing client software by the private key secret information fragment (R2) for its own server to generate the public key (PubKey= R1*R2*G=SK*G), and the multi-party secure computing client software encrypts the hash value of the user ID (Hash(ID)) and the secret information piece of the private key for the client with the password as the encryption key ( Enc_R1=Enc(PW,R1)) and the public key are stored as one record, and the multi-party secure computing server has the hash value of the user ID (Hash(ID)), the private key for the server, the secret information piece (R2) and the public key Account creation step characterized by storing (PubKey) as one record
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210183255A KR20230094253A (en) | 2021-12-20 | 2021-12-20 | Method of creating account for 2FA authenticaed electronic signature by secure multi-party computation |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210183255A KR20230094253A (en) | 2021-12-20 | 2021-12-20 | Method of creating account for 2FA authenticaed electronic signature by secure multi-party computation |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20230094253A true KR20230094253A (en) | 2023-06-28 |
Family
ID=86994607
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210183255A KR20230094253A (en) | 2021-12-20 | 2021-12-20 | Method of creating account for 2FA authenticaed electronic signature by secure multi-party computation |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20230094253A (en) |
-
2021
- 2021-12-20 KR KR1020210183255A patent/KR20230094253A/en not_active Application Discontinuation
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10171451B2 (en) | Distributed single sign-on | |
US9882717B2 (en) | System and method for generating a server-assisted strong password from a weak secret | |
Limbasiya et al. | Advanced formal authentication protocol using smart cards for network applicants | |
US10911431B2 (en) | Local encryption for single sign-on | |
US7571471B2 (en) | Secure login using a multifactor split asymmetric crypto-key with persistent key security | |
US20180034810A1 (en) | A system and methods for protecting keys in computerized devices operating versus a server | |
US9185111B2 (en) | Cryptographic authentication techniques for mobile devices | |
US10637818B2 (en) | System and method for resetting passwords on electronic devices | |
US20070174614A1 (en) | Derivative seeds | |
CN107920052B (en) | Encryption method and intelligent device | |
CN111355591A (en) | Block chain account safety management method based on real-name authentication technology | |
JP2010231404A (en) | System, method, and program for managing secret information | |
EP3292654B1 (en) | A security approach for storing credentials for offline use and copy-protected vault content in devices | |
Mishra et al. | A provably secure content distribution framework for portable DRM systems | |
Nishimura et al. | Secure authentication key sharing between personal mobile devices based on owner identity | |
KR20230094253A (en) | Method of creating account for 2FA authenticaed electronic signature by secure multi-party computation | |
KR100681005B1 (en) | Key roaming method, and method for the same | |
KR20230094252A (en) | Method of creating account for electronic signature by secure multi-party computation | |
Fatima et al. | Secure authentication and key management protocol in cloud computing | |
Kumari et al. | Hacking resistance protocol for securing passwords using personal device | |
US20240121083A1 (en) | Secure restoration of private key | |
RU2771928C2 (en) | Secure data exchange ensuring direct secrecy | |
ALnwihel et al. | A Novel Cloud Authentication Framework | |
Corella et al. | Strong and convenient multi-factor authentication on mobile devices | |
CN117527185A (en) | Block chain-based high-security identity authentication method and system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal |