Ejemplo n.º 1
0
        public TunnelBuildMessage(BufRef reader)
        {
            var start = new BufRef(reader);

            for (int i = 0; i < 8; ++i)
            {
                var r = new AesEGBuildRequestRecord(reader);
                Records.Add(r);
            }
            SetBuffer(start, reader);
        }
Ejemplo n.º 2
0
        public VariableTunnelBuildMessage(BufRef reader)
        {
            var start   = new BufRef(reader);
            var records = reader.Read8();

            for (int i = 0; i < records; ++i)
            {
                var r = new AesEGBuildRequestRecord(reader);
                Records.Add(r);
            }
            SetBuffer(start, reader);
        }
Ejemplo n.º 3
0
        public TunnelBuildRequestDecrypt(
            IEnumerable <AesEGBuildRequestRecord> records,
            I2PIdentHash me,
            I2PPrivateKey key)
        {
            RecordsField = records;
            Me           = me;
            Key          = key;

            ToMeField = RecordsField.FirstOrDefault(rec => Me.Hash16 == rec.ToPeer16);

            if (ToMeField != null)
            {
                MyRecord        = new EGBuildRequestRecord(ToMeField);
                DecryptedRecord = MyRecord.Decrypt(key);
            }
        }