コード例 #1
0
ファイル: IEGamal.cs プロジェクト: kozzion/KozzionCSharp
        public byte[] DeCrypt(List <EIGamalMessage> messages_ecrypted, EIGamalPrivateKey private_key)
        {
            List <BigInteger> messages_decrypted = Decrypt(messages_ecrypted, private_key);

            //TODO convert from group to byte []
            return(null);
        }
コード例 #2
0
ファイル: IEGamal.cs プロジェクト: kozzion/KozzionCSharp
        private List <BigInteger> Decrypt(List <EIGamalMessage> messages, EIGamalPrivateKey private_key)
        {
            //Encryption
            List <BigInteger> messages_plaintext = new List <BigInteger>();

            foreach (EIGamalMessage message in messages)
            {
                //Decryption
                BigInteger s2 = message.C1.Pow(private_key.X); //Shared secret
                messages_plaintext.Add(message.C2 * s2.ModInverse(private_key.G));
            }
            return(messages_plaintext);
        }