Abstract:
A method for preventing side-channel attack according to an embodiment includes generating an order table which includes a position index value for each bit value of a bit string that is secret information to be generated through a decryption algorithm of an Nth Degree Truncated Polynomial Ring Units (NTRU) LPRime algorithm, shuffling a sort order of the position index value for the each bit value in the order table based on a random number, determining a generation order for the each bit value according to the sort order of the position index value for the each bit value in the order table, and generating the secret information through the decryption algorithm. The secret information is generated by generating the each bit value according to the determined generation order.
Abstract:
A method for generating a key stream according to an embodiment includes generating r round keys that are each N-dimensional integer vectors including elements of an integer set defined based on a prime number t, based on a random bit string, an encryption counter, and a secret key that is an N-dimensional integer vector consisting of elements of the integer set , generating a first round output vector x1 by performing a modular addition operation on an initial vector and a first round key RK1 of the r round keys with the prime number t as a modulus, and generating a key stream that is an N-dimensional integer vector consisting of elements of the integer set from the first round output vector x1 by using a second to r-th round keys of the r round keys, and one or more first round functions and a second round function.
Abstract:
A method for training an analysis model according to an embodiment includes receiving synthetic data for original data from a client apparatus, determining a hyperparameter value for analysis model training using the synthetic data, receiving a ciphertext for the original data from the client apparatus, and training the analysis model using the determined hyperparameter value and the received cipher text.
Abstract:
A method for data analysis according to an embodiment includes acquiring, from a client device, a ciphertext for a precomputation result generated by applying some of a plurality of operations for performing an analysis algorithm based on target data to the target data, and generating an encrypted computation result for remaining operations of the plurality of operations by using the ciphertext.
Abstract:
Distributed processing system and method for discrete logarithm calculation. The speed and resource efficiency of discrete logarithm calculation may be improved by allowing a plurality of operation agents to distributively process an operation of generating a modulo multiplication auxiliary table, an operation of generating a pre-calculation table, and an operation of searching for an answer by applying an iterated function for discrete logarithm calculation in a discrete logarithm calculation operation using the pre-calculation table.
Abstract:
There is provided a communication device. The communication device may comprise one or more processors; a communication interface; and a memory that stores a computer program executed by the one or more processors, wherein the computer program includes instructions for operations of: forming a general security channel according to a first transport layer security (TLS) protocol that does not support a post-quantum cryptography algorithm with another communication device; forming a communication channel of an application layer (L7) with another communication device through the general security channel; forming a quantum security channel by performing a handshake procedure according to a second TLS protocol that supports the post-quantum cryptography algorithm with another communication device through the communication channel; and communicating with another communication device through the quantum security channel.
Abstract:
A method of generating a secret key according to one embodiment includes generating a share of each of a user and a plurality of other users for a secret key of the user, providing the share of each of the plurality of other users to a user terminal of each of the plurality of other users, receiving a share of the user for a secret key of each of the plurality of other users from the user terminal of each of the plurality of other users, and generating a new secret key of the user using the share of the user for the secret key of the user and the shares of the user for the secret key of each of the plurality of other users.
Abstract:
An apparatus for set intersection operation according to an embodiment includes a ciphertext acquisition unit configured to acquire a ciphertext for a first vector corresponding to a first subset of a universal set including a plurality of elements from an encryption apparatus, a transform unit configured to generate a second vector corresponding to a second subset of the universal set, a computation unit configured to generate a ciphertext for a third vector corresponding to an intersection of the first subset and the second subset, based on the ciphertext for the first vector and the second vector, and a ciphertext providing unit configured to provides the ciphertext for the third vector to the encryption apparatus.
Abstract:
A private key generation apparatus for generating a private key corresponding to a user ID using the user ID as a public key is disclosed. When a user ID is input, an ID conversion unit outputs a specific element value of a discrete logarithm cyclic group having a one-to-one correspondence relationship with an input user ID. A private key calculation unit calculates a discrete logarithm result value based on the output specific element value of the discrete logarithm cyclic group and calculates a private key having a one-to-one correspondence relationship with the user ID. According to the present invention, it is possible to concretely propose a method of calculating a secret key, capable of guaranteeing a one-to-one correspondence relationship between the ID and the private key by applying a method of calculating a discrete logarithm using the pre-computation table in an ID-based encryption system.
Abstract:
Distributed processing system and method for discrete logarithm calculation. The speed and resource efficiency of discrete logarithm calculation may be improved by allowing a plurality of operation agents to distributively process an operation of generating a modulo multiplication auxiliary table, an operation of generating a pre-calculation table, and an operation of searching for an answer by applying an iterated function for discrete logarithm calculation in a discrete logarithm calculation operation using the pre-calculation table.