An encryption device comprising: a reception unit that receives, from a plurality of data providers (10, 20),encrypted data which is encrypted in a homomorphic encryption by using a public key of each data provider (10, 20) and which is added with auxiliary information calculated using a combination of a secret key and the public key of the data provider (10, 20) and data to be encrypted, the auxiliary information being calculated using the secret key of the data provider (10, 20), the data to be encrypted, and the encrypted data obtained by performing the homomorphic encryption on a natural lifted-up mapping of a ring R q1 = F q1 [x]/(x n + 1), where n indicates a lattice dimension and q1 indicates an arbitrary prime number, that defines a foundation space of the encrypted data to an original ring R = Z[x]/(x n + 1) and the data to be encrypted; a generation unit that, when an analysis request to calculate first encrypted data and second encrypted data among a plurality of encrypted data sets is received from a data analyst, generates first re-encrypted data obtained by re-encrypting the first encrypted data through re-encryption for replacing with an encryption key of the data analyst using the auxiliary information added to the first encrypted data and the encryption key of the data analyst, and generates second re-encrypted data obtained by re-encrypting the second encrypted data through the re-encryption using the auxiliary information added to the second encrypted data and the encryption key of the data analyst; and an analysis execution unit that transmits to the data analyst, a result obtained by calculating the first re-encrypted data and the second re-encrypted data without decrypting, as an analysis result, wherein the public key and the secret key of each of the plurality of the data providers (10, 20) are generated by a key parameter including a first parameter that represents the lattice dimension, a second parameter that is the arbitrary prime number, and a third parameter that is an arbitrary prime number smaller than the second parameter, and the second parameter corresponding to the data provider (10, 20) of the second encrypted data is a prime number greater than the second parameter corresponding to the data provider (10, 20) of the first encrypted data. a reception unit that receives, from a plurality of data providers (10, 20),encrypted data which is encrypted in a homomorphic encryption by using a public key of each data provider (10, 20) and which is added with auxiliary information calculated using a combination of a secret key and the public key of the data provider (10, 20) and data to be encrypted, the auxiliary information being calculated using the secret key of the data provider (10, 20), the data to be encrypted, and the encrypted data obtained by performing the homomorphic encryption on a natural lifted-up mapping of a ring R q1 = F q1 [x]/(x n + 1), where n indicates a lattice dimension and q1 indicates an arbitrary prime number, that defines a foundation space of the encrypted data to an original ring R = Z[x]/(x n + 1) and the data to be encrypted; a generation unit that, when an analysis request to calculate first encrypted data and second encrypted data among a plurality of encrypted data sets is received from a data analyst, generates first re-encrypted data obtained by re-encrypting the first encrypted data through re-encryption for replacing with an encryption key of the data analyst using the auxiliary information added to the first encrypted data and the encryption key of the data analyst, and generates second re-encrypted data obtained by re-encrypting the second encrypted data through the re-encryption using the auxiliary information added to the second encrypted data and the encryption key of the data analyst; and an analysis execution unit that transmits to the data analyst, a result obtained by calculating the first re-encrypted data and the second re-encrypted data without decrypting, as an analysis result, wherein the public key and the secret key of each of the plurality of the data providers (10, 20) are generated by a key parameter including a first parameter that represents the lattice dimension, a second parameter that is the arbitrary prime number, and a third parameter that is an arbitrary prime number smaller than the second parameter, and the second parameter corresponding to the data provider (10, 20) of the second encrypted data is a prime number greater than the second parameter corresponding to the data provider (10, 20) of the first encrypted data.