Как добавить шифрование к nio серверу (TCP/IP)

 
 
 
Сообщения:2
У меня есть написанный nio TCP/IP сервер.

.... 
 while (true)
        {
            try
            {
                selector.select();
                final Iterator<SelectionKey> iter = selector.selectedKeys()
                        .iterator();
                while (iter.hasNext())
                {
                    final SelectionKey selKey = iter.next();
                    iter.remove();
                    if (selKey.isValid() == false) continue;
                    if (selKey.isAcceptable())
                    {
                        final SocketChannel sChannel = ((ServerSocketChannel) selKey
                                .channel()).accept();
                        if (sChannel == null)
                            logger.warn(null, "sChannel==null");
                        else
                        {
                            final SelectorChannelPerformer scPerformer = new SelectorChannelPerformer(
                                    sChannel,
                                    cmdPerformerMap.getStreamManager(), logger,
                                    fileProperties);
                            sChannel.configureBlocking(false);
                            final SelectionKey clientSelKey = sChannel
                                    .register(selector, SelectionKey.OP_READ);
                            clientSelKey.attach(scPerformer);
                            clientSelKey.interestOps(SelectionKey.OP_WRITE);
                            new Thread("GSM1337Socket.get.NetworkAddress")
                            {
                                public void run()
                                {
                                    try
                                    {
                                        cmdPerformerMap.putWithExchangeOrStart(
                                                scPerformer, true);
                                    } catch (Throwable t)
                                    {
                                        logger.except(null, t);
                                    }
                                }
                            }.start();
                            logger.info(null, "accept connection from "
                                    + sChannel.socket().getInetAddress());
                        }
                        continue;
                    }
                    if (selKey.isWritable())
                    {
                        final SelectorChannelPerformer scPerformer = (SelectorChannelPerformer) selKey.attachment();
                        if (scPerformer.write())
                            selKey.interestOps(SelectionKey.OP_READ);
                    }
                    if (selKey.isReadable())
                    {
                        final SelectorChannelPerformer scPerformer = (SelectorChannelPerformer) selKey
                                .attachment();
                        if (scPerformer.read())
                            selKey.interestOps(SelectionKey.OP_WRITE);
                    }
                }
            } catch (Exception e)
            {
                e.printStackTrace();
                logger.except(null, e);
            }
        }


Как можно добавить шифрование по ssl/tsl чтобы внести минимальные изменения в молй код?
 
 
Сообщения:8
По минимальному не получится.
 
 
Сообщения:2
Объективно мне просто нужна реализация SSLSocketChannel. Но как ее можно написать я непреджстввыляю.
 
Модераторы:Нет
Сейчас эту тему просматривают:Нет