예제 #1
0
        private byte[] CreateContent()
        {
            var objects = new List <object> {
                Iv, Name, EncryptedName
            };

            return(SksAsn1Encoder.EncodeSequence(objects));
        }
예제 #2
0
        private byte[] CreateContent()
        {
            var objects = new List <object> {
                NonceA
            };

            return(SksAsn1Encoder.EncodeSequence(objects));
        }
예제 #3
0
        private byte[] CreateContent()
        {
            // todo: add TTPs
            var objects = new List <object> {
                Iv, EncryptedMessageBytes, HmacBytes
            };

            return(SksAsn1Encoder.EncodeSequence(objects));
        }
예제 #4
0
        private byte[] CreateContent()
        {
            // todo: add TTPs
            var objects = new List <object> {
                (int)ProtocolId
            };

            return(SksAsn1Encoder.EncodeSequence(objects));
        }
예제 #5
0
        private byte[] CreateContent()
        {
            // todo: add TTPs
            var objects = new List <object> {
                A, B, KeyId, PasswordId
            };

            return(SksAsn1Encoder.EncodeSequence(objects));
        }
예제 #6
0
        public Akep2Message3(string a, byte[] nonceB, byte[] longTermKey)
        {
            Iv = Utils.GenerateRandom16();

            A      = a;
            NonceB = nonceB;

            var objects = new List <object> {
                A, NonceB
            };

            var sequence = SksAsn1Encoder.EncodeSequence(objects);

            EncryptedPart = SksAes.EncryptBytes_Aes(sequence, longTermKey, Iv);
            HmacPart      = SksHmac.Hash(longTermKey, sequence);
        }
예제 #7
0
 private byte[] CreateContent()
 {
     return(SksAsn1Encoder.EncodeSequence(new List <object> {
         EncryptedPart, HmacPart,
     }));
 }