公钥算法

cenos基本信息和ssh

为君一笑 提交于 2019-12-06 13:57:06
基本概念 ·linux 自带的ssh为OpenSSH ·ssh协议提供两种用户认证方式 : 基于 口令 的安全认证:使用 用户名、密码的方式 对登录用户进行认证 基于 密钥 的安全认证:使用 公钥和私钥对的方式 对登录用户进行认证 ·OpenSSH的rpm 包由四部分组成(默认已安装)   openssh-4.3p2-26.el5.i386.rpm (一定要先安装这个rpm 包)   openssh-server-4.3p2-26.el5.i386.rpm   openssh-clients-4.3p2-26.el5.i386.rpm   openssh-askpass-4.3p2-26.el5.i386.rpm (在图形界面下使用ssh服务时才需要) ·openssh 的主配置文件为:   /etc/ssh/sshd_config #ssh服务器的配置文件   /etc/ssh/ssh_config #ssh客户端的配置文件 ·openssh支持使用 scp (加密的拷贝)和sftp (加密的ftp )等客户端程序进行远程主机的文件复制 OpenSSH服务器端配置 实例1 : 配置无密码访问 方法1.命令设置   在81上键入下面命令,会有三个参数需要填写,用默认的就行,一路enter按下去     ssh-keygen     ssh-copy-id 192.168.1.82

SSH原理与应用(一):远程登录

﹥>﹥吖頭↗ 提交于 2019-12-06 13:39:23
转载自 http://www.ruanyifeng.com/blog/2011/12/ssh_remote_login.html SSH原理与应用(一):远程登录 作者: 阮一峰 日期: 2011年12月21日 SSH是每一台Linux电脑的标准配置。 随着Linux设备从电脑逐渐扩展到手机、外设和家用电器,SSH的使用范围也越来越广。不仅程序员离不开它,很多普通用户也每天使用。 SSH具备多种功能,可以用于很多场合。有些事情,没有它就是办不成。本文是我的学习笔记,总结和解释了SSH的常见用法,希望对大家有用。 虽然本文内容只涉及初级应用,较为简单,但是需要读者具备最基本的"Shell知识"和了解"公钥加密"的概念。如果你对它们不熟悉,我推荐先阅读 《UNIX / Linux 初学者教程》 和 《数字签名是什么?》 。 ======================================= SSH原理与运用 作者:阮一峰 一、什么是SSH? 简单说,SSH是一种网络协议,用于计算机之间的加密登录。 如果一个用户从本地计算机,使用SSH协议登录另一台远程计算机,我们就可以认为,这种登录是安全的,即使被中途截获,密码也不会泄露。 最早的时候,互联网通信都是明文通信,一旦被截获,内容就暴露无疑。1995年,芬兰学者Tatu Ylonen设计了SSH协议,将登录信息全部加密

TLS/SSL概述

孤街浪徒 提交于 2019-12-06 06:55:06
目录 TLS/SSL协议 设计目的 握手协议 TLS安全密码套件解读 对称加密和非对称加密 对称加密 非对称加密 混合加密 摘要算法 数字签名 数字证书和CA TLS/SSL协议 TLS/SSL位于TCP层和应用层之间,具体如下图所示 设计目的 身份验证 保密性 完整性 握手协议 验证通讯双方的身份 交换加解密的安全套件 协商加密参数 TLS安全密码套件解读 SSL/TLS协议在协商时,会选择一组恰当的加密算法来实现安全通信,这些算法的组合被称为“密码套件” 密码套件的命名如上所示,格式很固定,基本的形式是:“密钥交换算法+签名算法+对称加密算法+摘要算法” 以上密码套件的意思如下:“握手时使用ECDHE算法进行密钥交换,用RSA签名和身份认证,握手后的通信使用AES对称算法,密钥长度128位,分组模式是GCM,摘要算法SHA256用于消息认证和产生随机数。” 对称加密和非对称加密 对称加密 使用同一把密钥对数据进行加解密 TLS 里有非常多的对称加密算法可供选择,比如 RC4、DES、3DES、AES、ChaCha20 等,但前三种算法都被认为是不安全的,通常都禁止使用,目前常用的只有 AES 和 ChaCha20。 ChaCha20 是 Google 设计的另一种加密算法,密钥长度固定为 256 位 AES加密算法详解 AES:高级加密标准,密钥长度可以是128、192 或

支付相关-证书知识学习2

。_饼干妹妹 提交于 2019-12-06 02:55:18
参考资料:关于pfx证书和cer证书 资料地址:https://blog.csdn.net/a1510841693/article/details/84110107 cer证书只包含公钥信息,一般只能用于解密使用(解密该公钥对应的私钥加密的数据)。 pfx证书既可以导出为pfx证书,也可以导出为cer证书。 pfx证书导出时,会提示是否导出私钥,导出私钥即pfx证书,不到出则是cer证书。 如果选择导出私钥,出于安全性考虑,浏览器会提示你指定一个密码用于保护该私钥,日后再次导入该pfx证书时,浏览器会要求你提供该私钥保护密码。 导入pfx证书时,需要指定私钥保护密码,另外还有一个选项“标志此密钥为可导出密钥。这将允许您稍后备份或传输密钥”,出于安全性考虑,该选项默认是不勾选的,如果不勾选,下次从浏览器导出该证书时,则无法导出pfx格式了,只能导出不包含私钥的cer格式了。 -------------------------------------------------------------------------------- 参考资料:pfx 百度百科 资料地址:https://baike.baidu.com/item/pfx/7168664?fr=aladdin 公钥加密技术12号标准。 公钥 加密技术12号标准(Public Key Cryptography

iOS 加密与解密

感情迁移 提交于 2019-12-06 02:21:25
iOS RSA的网络安全模型、iOS签名机制总结(登录、token安全、签名) 一.登录、登录保持(http请求) 登录机制大概可以分为一下三个阶段: 1. 登录验证:是指客户端提供用户名和密码,向服务器提出登录请求,服务器判断客户端是否可以登录并向客户端确认。 2. 登录保持:是指客户端登录后, 服务器能够分辨出已登录的客户端,并为其持续提供登录权限的服务器。 3. 登出:是指客户端主动退出登录状态。 第一种网络请求情况(安全级别:II) 一般的情况是这个样子的:一但用户登陆成功(单方面MD5加密:服务器加密则客户端不加密,客户端加密则明文传输),服务器为客户端分配 sessionID(也可以称为userID),当然有些服务器不但为客户端分配了userID还有可能会为用户提供token了(这个下面会做解释), 然后每次网络请求都将sessionID当做参数传递给服务器。 优点 能够保持用户登录状态、区分用户,相对于不返回任何信息的登录要安全了一些。 缺点 如果通过网络嗅探器(例如:青花瓷)可以获取到http链接,这样子服务器返回的sessionID便会被获取到,这样子依然会造成信息泄露,并且还能被伪造请求(浏览器请求)。 第二种网络请求情况 (安全级别:III) 第一种存在明显的安全隐患,但是目前市面上的好多app依然采用第一种方法去实现登录、网络请求

iOS签名授权机制

倖福魔咒の 提交于 2019-12-06 01:22:55
iOS签名授权机制 原文 http://Joywii.github.io/blog/2016/03/02/iosqian-ming-shou-quan-ji-zhi/ 几个重要的概念 1. 非对称加密 非对称加密算法需要两个密钥: 公开密钥(publickey )和 私有密钥(privatekey) 。公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用对应的公开密钥才能解密。(私钥是要保密的,公钥可以公开) RSA 是目前最有影响力的公钥加密算法,它能够抵抗到目前为止已知的绝大多数密码攻击,已被ISO推荐为公钥数据加密标准。 RSA 是以三个发明者的姓氏首字母组成的。 2. 摘要算法 数据摘要算法是密码学算法中非常重要的一个分支,它通过对所有数据提取指纹信息以实现数据签名、数据完整性校验等功能,由于其不可逆性,有时候会被用做敏感信息的加密。数据摘要算法也被称为哈希(Hash)算法、散列算法。 摘要算法也可以理解为将任意长度的数据,通过一个算法,得到一个固定长度的数据。典型的摘要算法,比如大名鼎鼎的 MD5 和 SHA 。 3. 数字签名 数字签名就是利用 非对称加密 和 摘要算法 来传输数据,保证数据的 完整性 和 合法性 。验证过程如下: 1. 发送方使用给一个摘要算法( MD5 )得到要发送数据的摘要

远程登录——SSH

跟風遠走 提交于 2019-12-05 20:46:55
基本知识了解 一、什么是SSH? 简单说,SSH是一种网络协议,用于计算机之间的加密登录,是一种比较流行的登录应用程序——安全外壳(Secure Shell,SSH),与TELNET一样。SSH利用TCP作为底层传输协议,不过它比TELNET更安全,提供更多的服务。 如果一个用户从本地计算机,使用SSH协议登录另一台远程计算机,我们就可以认为,这种登录是安全的,即使被中途截获,密码也不会泄露。 最早的时候,互联网通信都是明文通信,一旦被截获,内容就暴露无疑。1995年,芬兰学者Tatu Ylonen设计了SSH协议,将登录信息全部加密,成为互联网安全的一个基本解决方案,迅速在全世界获得推广,目前已经成为Linux系统的标准配置。 需要指出的是,SSH只是一种协议,存在多种实现,既有商业实现,也有开源实现。 二、组成 SSH是应用层协议,由四部分组成 1 SSH运输层协议(SSH-TRANS) 因为TCP不是安全的运输层协议,所以SSH首先使用在TCP之上能够构建安全通道的协议。这个新的层是一个独立的协议,称为SSH-TRANS。当这个协议的软件实现被调用后,它的客户程序和服务器程序先利用TCP协议建立起一条不安全的准连接。然后它们相互交换几个安全参数,并在TCP纸上建立一条安全的信道。它提供的服务有 保密或加密报文的交换 数据的完整性

6.5最详细的 HTTPS 科普扫盲帖

时间秒杀一切 提交于 2019-12-05 13:49:02
为什么需要https HTTP是明文传输的,也就意味着,介于发送端、接收端中间的任意节点都可以知道你们传输的内容是什么。这些节点可能是路由器、代理等。 举个最常见的例子,用户登陆。用户输入账号,密码,采用HTTP的话,只要在代理服务器上做点手脚就可以拿到你的密码了。 用户登陆 –> 代理服务器(做手脚)–> 实际授权服务器 在发送端对密码进行加密?没用的,虽然别人不知道你原始密码是多少,但能够拿到加密后的账号密码,照样能登陆。 HTTPS是如何保障安全的 HTTPS其实就是 secure http 的意思啦,也就是HTTP的安全升级版。稍微了解网络基础的同学都知道,HTTP是应用层协议,位于HTTP协议之下是传输协议TCP。TCP负责传输,HTTP则定义了数据如何进行包装。 HTTP –> TCP (明文传输) HTTPS相对于HTTP有哪些不同呢?其实就是在HTTP跟TCP中间加多了一层加密层 TLS/SSL 。 神马是TLS/SSL? 通俗的讲,TLS、SSL其实是类似的东西,SSL是个加密套件,负责对HTTP的数据进行加密。TLS是SSL的升级版。现在提到HTTPS,加密套件基本指的是TLS。 传输加密的流程 原先是应用层将数据直接给到TCP进行传输,现在改成应用层将数据给到TLS/SSL,将数据加密后,再给到TCP进行传输。 大致如图所示。 就是这么回事。将数据加密后再传输

https实现原理

爱⌒轻易说出口 提交于 2019-12-05 12:12:31
https详解 目前大部分大型网站已经全部切换到了 https 服务,所以很有必要了解整个 https 的原理, https 是如何保证信息安全的。这里希望大家对以下部分名词有一定的了解: 数字证书 是互联网通信中的身份标识(主要是用户身份信息和公钥),一般由CA中心颁发,既CA认证中心,或第三方权威机构。数字证书上通常包括:CA的签名,证书所有人的公钥,CA中心的签名算法,指纹以及指纹算法,证书的唯一编号,版本,有效期等。 数字签名、签名算法 对信息的摘要【通过 hash算法 / 摘要算法 / 指纹算法 计算的信息 摘要 / hash值 】使用签名算法进行加密,得到的密文就叫做数字签名 指纹、指纹算法/摘要算法【hash值计算】 对消息使用 hash算法/摘要算法 进行单向处理,获取一个固定长度的信息的 摘要/hash值 。 非对称加密 可以使用公钥、私钥分解进行对应的加密、解密的算法,即加解密使用的是不同的一堆秘钥。 对称加密 使用相同秘钥进行加解密的算法 公钥、私钥 非对称加解密的一对秘钥。 https服务部署过程和原理 了解 https 的原理,最好的方法就是走一遍流程,理论上的流程和原理通过以下几点来解释: 证书申请 证书信任 密文通信 证书的获取 https 的关键之一就是 ssl 证书,为了保证证书的安全有效性,在各类委员会/厂商之间合作

.net中加密与解密

主宰稳场 提交于 2019-12-05 06:54:23
.Net中的加密解密 引言 在一些比较重要的应用场景中,通过网络传递数据需要进行加密以保证安全。本文将简单地介绍了加密解密的一些概念,以及相关的数字签名、证书,最后介绍了如何在.NET中对数据进行对称加密和解密。 加密和解密 说到加密,可能大家最熟悉的就是MD5了,记得几年前我刚开始接触Web编程的时候,研究的一个ASP论坛程序,它的用户密码就是采用的MD5进行加密。MD5实际上只是一种散列运算,或者可以称为单向的加密,即是说无法根据密文(加密后的数据),推导出明文(原数据)。而我们下面要说明的,是在加密后可以进行解密、还原数据的。对于欲进行加密的对象,有的人称为消息,有的人称为数据,有的人称为信息,为了避免混淆,在本文后面部分,我统一将其称为 消息 。那么加密是什么呢?加密是通过对消息进行编码,建立一种安全的交流方式,使得只有你和你所期望的接收者能够理解。 那么怎么样才能叫安全呢?消息在接收方和发送方进行安全传递,一般要满足下面三个要点: 消息的发送方能够确定消息只有预期的接收方可以解密(不保证第三方无法获得,但保证第三方无法解密)。 消息的接收方可以确定消息是由谁发送的(消息的接收方可以确定消息的发送方)。 消息的接收方可以确定消息在途中没有被篡改过(必须确认消息的完整性)。 加密通常分为两种方式:对称加密和非对称加密,接下来我们先看看对称加密。 对称加密