DH Diffie-Hellman算法(D-H算法),密钥一致协议.是由公开密钥密码体制的奠基人Diffie和Hellman所提出的一种思想.简单的说就是允许两名用户在公开媒体上交换信息以生成"一致"的.可以共享的密钥.换句话说,就是由甲方产出一对密钥(公钥.私钥),乙方依照甲方公钥产生乙方密钥对(公钥.私钥).以此为基线,作为数据传输保密基础,同时双方使用同一种对称加密算法构建本地密钥(SecretKey)对数据加密.这样,在互通了本地密钥(SecretKey)算法后,甲乙双方公开自…
Windows五种IO模型性能分析和Linux五种IO模型性能分析 http://blog.csdn.net/jay900323/article/details/18141217 http://blog.csdn.net/jay900323/article/details/18140847 重叠I/O模型的另外几个优点在于,微软针对重叠I/O模型提供了一些特有的扩展函数.当使用重叠I/O模型时,可以选择使用不同的完成通知方式. 采用事件对象通知的重叠I/O模型是不可伸缩的,因为针对发出WSAWa…
什么是基于 SSH 密钥的认证? 众所周知,Secure Shell,又称 SSH,是允许你通过无安全网络(例如 Internet)和远程系统之间安全访问/通信的加密网络协议.无论何时使用 SSH 在无安全网络上发送数据,它都会在源系统上自动地被加密,并且在目的系统上解密.SSH 提供了四种加密方式,基于密码认证,基于密钥认证,基于主机认证和键盘认证.最常用的认证方式是基于密码认证和基于密钥认证. 在基于密码认证中,你需要的仅仅是远程系统上用户的密码.如果你知道远程用户的密码,你可以使用 ssh…
Libreswan软件的密钥协商协议IKEv1主模式实现分析 1 协商过程 IKEv1(互联网密钥交换协议第一版)是IPsec VPN隧道协商使用的标准密钥协商协议,其协商过程如下图所示. 总共来回交互6次消息.第一.第二消息用来双方协商在本次密钥交换过程中使用的保护策略,由发起方提供议案(Proposal),响应方从众多议案中选择其中一条作为本次协商使用:第三.第四条消息交换DH公钥以及使用对方公钥加密的各自的ID以及Nonce信息,通过这些信息建立共享密钥.其中HASH(1)代表对发起方用来…
配置SSHD服务 SSH(Secure Shell)是一种能够以安全的方式提供远程登录的协议,也是目前远程管理 Linux 系统的首选方式.在此之前,一般使用 FTP 或 Telnet 来进行远程登录.但是因为它们 以明文的形式在网络中传输账户密码和数据信息,因此很不安全,很容易受到黑客发起的中 间人攻击,这轻则篡改传输的数据信息,重则直接抓取服务器的账户密码. 想要使用 SSH 协议来远程管理 Linux 系统,则需要部署配置 sshd 服务程序.sshd 是基于 SSH 协议开发的一款远程管…
上一条博客说明了用sshd服务远程登陆另一个系统,但是需要密码,如果不用密码呢?有没有简便的方法呢?下面为大家介绍一下,也就是基于密钥的安全验证:需要在本地生成”密钥对“后将公钥传送至服务端,进行公共密钥的比较. 第1步:在本地主机中生成“密钥对”并将公钥传送到远程主机中: ssh-keygen (三次回车,或设置存储路径) 第二步:将生成好的公钥密钥传送至远程主机: ssh-copy-id 192.168.5.200 第3步:首先要在远程主机中修改sshd服务的配置文件(修改后记得重启服务):…
问题1:如果是两台虚拟机ping不同且其中一个虚拟机是克隆的另一个,需要更改一下MAC地址,关机状态下 一> "编辑虚拟机设置" 一>" 网络适配器" 一> "高级" 一> 点击MAC地址右边的"生成" 就可以了. 关于systemctl命令使用及其参数(比如sshd,httpd等服务单元): disable参数:开机不启动 enable参数:开机启动 可以从yum仓库下载sshd服务:yum inst…
在使用Netty的过程中,你将会遇到需要解码器的基于分隔符和帧长度的协议.本节将解释Netty所提供的用于处理这些场景的实现. 基于分隔符的协议 基于分隔符的(delimited)消息协议使用定义的字符来标记的消息或者消息段(通常被称为帧)的开头或者结尾.由RFC文档正式定义的许多协议(如SMTP.POP3.IMAP以及Telnet名称)都是这样的.此外,当然,私有组织通常也拥有他们自己的专有格式.无论你使用什么样的协议,下面列出的解码器都能帮助你定义可以提取由任意标记(token)序列分隔的帧…
我们需要区分不同帧的首尾,通常需要在结尾设定特定分隔符或者在首部添加长度字段,分别称为分隔符协议和基于长度的协议,本节讲解 Netty 如何解码这些协议. 一.分隔符协议 Netty 附带的解码器可以很容易的提取一些序列分隔: 下面显示了使用 “\r\n”分隔符的处理: 下面为 LineBaseFrameDecoder 的简单实现: public class CmdHandlerInitializer extends ChannelInitializer<Channel> { @Overrid…
前言 微信群机器人,主要用来管理群聊,提供类似天气查询.点歌.机器人聊天等用途. 由于微信将web端的协议封杀后,很多基于http协议的群聊机器人都失效了,所以这里使用基于PC端协议的插件来实现. 声明以下过程只用于交流学习,并不用于任何商业用途,这里记录一下整体的开发流程. 效果展示 接入过程 准备材料 下文中的服务器可以只需要一台,或者使用你本地电脑,我介绍一下我的环境. 可爱猫微信机器人插件V4.4.0. 一台windows服务器. 一台linux服务器. nginx安装(在window服…