private void DecryptTicket(EncryptionType type, byte[] sessionKey)
 {
     var ticketEncPartRawData = KerberosUtility.Decrypt(
         type,
         sessionKey,
         Response.ticket.enc_part.cipher.ByteArrayValue,
         (int)KeyUsageNumber.AS_REP_TicketAndTGS_REP_Ticket);
     TicketEncPart = new EncTicketPart();
     TicketEncPart.BerDecode(new Asn1DecodingBuffer(ticketEncPartRawData));
     KerberosUtility.OnDumpMessage("KRB5:TicketEncPart",
         "Encrypted Ticket in TGS-REP",
         KerberosUtility.DumpLevel.PartialMessage,
         ticketEncPartRawData);
 }
        private EncryptedData EncryptTicket(EncTicketPart encTicketPart, EncryptionKey serviceKey)
        {
            Asn1BerEncodingBuffer encodeBuffer = new Asn1BerEncodingBuffer();
            encTicketPart.BerEncode(encodeBuffer, true);
            byte[] encData = KerberosUtility.Encrypt(
                (EncryptionType)serviceKey.keytype.Value,
                serviceKey.keyvalue.ByteArrayValue,
                encodeBuffer.Data,
                (int)KeyUsageNumber.AS_REP_TicketAndTGS_REP_Ticket);

            return new EncryptedData(
                    new KerbInt32(serviceKey.keytype.Value),
                    null,
                    new Asn1OctetString(encData));
        }