Пример #1
0
        public void GetMessageTypeTest()
        {
            // todo: refactor
            var expectedSequence       = new byte[] { (byte)SksAsn1Type.Sequence, 0x0E, (byte)SksAsn1Type.Printablestring, 0x03, 65, 66, 67, (byte)SksAsn1Type.OctetString, 0x05, 0x00, 0x01, 0x02, 0x03, 0x04, };
            var expectedSequenceBase64 = Convert.ToBase64String(expectedSequence);
            var expected = $"-----BEGIN INITIAL MESSAGE 1-----{expectedSequenceBase64}-----END INITIAL MESSAGE 1";

            var expectedType = PemMessageType.InitialMessage1;
            var messageType  = PemParser.GetMessageType(expected);

            Assert.AreEqual(expectedType, messageType);
        }
Пример #2
0
        public static void HandleMessage(SksMessageReceivedEventArgs sksMessageReceivedEventArgs)
        {
            var messageType = PemParser.GetMessageType(sksMessageReceivedEventArgs.Message);

            // todo: doriesit otway reese
            switch (messageType)
            {
            case PemMessageType.LongTermKey:
                break;

            case PemMessageType.InitialMessage1:
                break;

            case PemMessageType.InitialMessage2:
                break;

            case PemMessageType.ErrorMessage:
                break;

            case PemMessageType.ChatMessage:
                HandleChatMessage(sksMessageReceivedEventArgs);
                break;

            case PemMessageType.Akep2Message1:
                HandleAkep2Message1(sksMessageReceivedEventArgs);
                break;

            case PemMessageType.Akep2Message2:
                HandleAkep2Message2(sksMessageReceivedEventArgs);
                break;

            case PemMessageType.Akep2Message3:
                HandleAkep2Message3(sksMessageReceivedEventArgs);
                break;

            case PemMessageType.OtwayReesMessage1:
                break;

            case PemMessageType.OtwayReesMessage2:
                //HandleOtwayReeseMessage2(sksMessageReceivedEventArgs);
                break;

            case PemMessageType.OtwayReesMessage3:
                break;

            case PemMessageType.OtwayReesMessage4:
                //HandleOtwayReeseMessage4(sksMessageReceivedEventArgs);
                break;

            case PemMessageType.HandshakeMessage1:
                HandleHandshakeMessage1(sksMessageReceivedEventArgs);
                break;

            case PemMessageType.HandshakeMessage2:
                HandleHandshakeMessage2(sksMessageReceivedEventArgs);
                break;

            case PemMessageType.HandshakeMessage3:
                HandleHandshakeMessage3(sksMessageReceivedEventArgs);
                break;

            case PemMessageType.HandshakeMessage4:
                HandleHandshakeMessage4(sksMessageReceivedEventArgs);
                break;

            case PemMessageType.SshTlsMessage1:
                break;

            case PemMessageType.SshTlsMessage2:
                break;

            case PemMessageType.SshTlsMessage3:
                break;

            default:
                throw new ArgumentOutOfRangeException();
            }
        }