TCP/IP:安全
A------->B
机密性:明文传输(ftp,http,smtp,telnet),被窃听
完整性:消息被篡改
身份验证:你访问的主机就是你真实要访问的那台,而不是钓鱼网站

机密性:
加密,即转换规则。算法不变,密钥规则要变。
对称加密:加密和解密的密钥是一致的

完整性:
单向加密算法:提取数据特征码
输入一样:输出必定一样
雪崩效率:输入的微小改变,将会引起结果的巨大改变
定长输出:无论原始数据是多大,结果大小都是相同的
不可逆:无法根据特征码还原原来的数据

协商生成密码:密钥交换(Internet Key Exchange,IKE)
Diffie-Hellman协议
A: p(大质数),g(生成数)
A:x(只有A知道)
B: y(只有B知道)
A: 传输g^x%p--->B
B: 传输g^y%p--->A
A: 收到以后计算(g^y%p)^x=g^y^x%p
B: 收到以后计算(g^x%p)^y=g^x^y%p

公钥加密算法:非对称加密算法
密钥对:
公钥:p
私钥:s
发送方用自己的私钥加密数据,可以实现身份验证
发送方用对方的公钥加密数据,可以保证数据机密性

PKI:Public Key Infrastructure(基础)
CA:Certificate Authority

CRL:证书吊销列表

x509,pkcs12等证书格式
x509:公钥及其有效期限,
证书的合法拥有者,
证书改如何被使用,
CA的信息
CA签名的校验码

PKI:TLS/SSL:x509的证书格式

PKI:OpenGPG:

SSL:Secure Socket Layer(安全的套接字层),网景公司研发
嵌套在应用层和传输层之间。应用程序在到达传输层之前调用SSL模块的话就会被加密。
TLS:Transport Layer Security,更为开放,不为任何公司所有。

OSI七层模型:物理层,数据链路层,网络层,传输层,会话层,表示层,应用层
TCP/IP四层模型:网络接口层,网间层,传输层,应用层

对称加密:
DES:Data Encrption Standard,56bit
3DES:
AES:Advanced Encrption Standard,128bit
AES192,AES256,AES512
Blowfish:

加密工具:openssl,gpg

单向加密(定长输入):
MD4,MD5,SHA1,SHA192,SHA256,SHA384,SHA512,CRC-32

公钥加密(非对称加密):
身份认证
数据加密
密钥交换
RSA:加密、签名
DSA:签名
ElGamal:

OpenSSL: SSL的开源实现
libcrypto:加密库
libssl:TSL/SSL的实现(基于会话的、实现了身份认证、数据机密性和会话完整性的库)
openssl:多用途命令行工具(实现私有证书颁发机构)

Openssl实现私有CA:
1、生成一对密钥
公钥是源自私钥,从私钥提取的。
生成私钥:openssl genrsa -out KEYFILENAME NUMBITS
提取公钥:openssl rsa -in KEYFILENAME -pubout

2、生成自签署证书


Openssh:
1.基于口令的传输
2.基于密钥的传输

基于密钥的认证:
1.生产一对密钥
2.将公钥传输至服务器端某用户的.ssh/authorized_keys文件中
3.测试登陆

[hadoop@saltstack1 .ssh]$ ssh-copy-id -i id_rsa.pub root@192.168.144.50
10
root@192.168.144.50's password:
Now try logging into the machine, with "ssh 'root@192.168.144.50'", and check in:

.ssh/authorized_keys

to make sure we haven't added extra keys that you weren't expecting.

[hadoop@saltstack1 .ssh]$ ssh -l root 192.168.144.50
Last login: Wed Nov 30 12:34:29 2016 from saltstack1
[root@saltstack2 ~]# exit
logout

Linux 之加密类型,CA,Openssl,Openssh的更多相关文章

  1. Linux的加密认证功能以及openssl详解

    一.详细介绍加密.解密技术 现在的加密/解密技术主要有三种:对称加密,非对称加密,和单向加密 这三种加密解密技术的组合就是现在电子商务的基础,它们三个有各自最适合的领域,而且所要完成的功能也是不同的, ...

  2. Linux下C语言使用openssl库进行加密

    在这里插一小节加密的吧,使用openssl库进行加密. 使用MD5加密 我们以一个字符串为例,新建一个文件filename.txt,在文件内写入hello ,然后在Linux下可以使用命令md5sum ...

  3. Linux 从源码编译安装 OpenSSH

    https://blog.csdn.net/bytxl/article/details/46639073 Linux 从源码编译安装 OpenSSH以及各问题解决 2015年06月25日 17:37: ...

  4. Linux系统搭建私有CA证书服务器

    一.CA简介 CA是什么?CA是Certificate Authority的简写,从字面意思翻译过来是凭证管理中心,认证授权.它有点类似我们生活中的身份证颁发机构,这里的CA就相当于生活中颁发身份证的 ...

  5. 判断密文加密类型hash-identifier

    判断密文加密类型hash-identifier   在安全领域中,加密数据随处可见.而在这些数据中,重要的数据往往采用哈希算法进行加密.例如,Linux密码使用sha512,Windows密码采用LM ...

  6. linux下文件系统类型的学习

    1. 以超级用户权限登陆Linux,进入  /lib/modules/2.6.32--504.el6.x86_64/kernel/fs目录执行 ls 命令(不同Linux发行版本的Fs目录有些不同你可 ...

  7. linux md5 加密字符串和文件方法

    linux md5 加密字符串和文件方法 MD5算法常常被用来验证网络文件传输的完整性,防止文件被人篡改.MD5全称是报文摘要算法(Message-Digest Algorithm 5),此算法对任意 ...

  8. Linux内核版本类型

    对于Linux内核发布的版本类型有如下,也是自己的理解: [mainline]:主线版本,由Linux Torvalds维护和发布. [stable/EOL]:稳定版本,每个由主线发布的版本都叫做稳定 ...

  9. Linux文档类型

    Linux下文档类型分为8种: section 名称 说明 1    用户命令 可有任何人启动的 2 系统调用 即有内核提供的函数 3 例程 即库函数 4 设备 即/dev目录下的特殊文件 5 文件格 ...

随机推荐

  1. vim没有颜色

    vim /etc/vim/vimrc   #查找到syntax on 启用,去掉前面的" (引号).

  2. Rails ---> routes.rb 详解

    理解路由的目的 看懂routes.rb文件中的代码 使用经典的hash风格或者现在比较流行的Restful风格构造你自己的路径 断定一个路径会映射到哪一个controller和action 路由的双重 ...

  3. [综]聚类Clustering

    Annie19921223的博客 [转载]用MATLAB做聚类分析 http://blog.sina.com.cn/s/blog_9f8cf10d0101f60p.html Free Mind 漫谈 ...

  4. 关于C#循环图片GDI+内存不足异常的记录

    循环大量图片的时候会报出GDI+内存不足的问题,这个问题困扰了我很久,下面是我的几个解决方案: 使用using(){}代码块来定义需要释放内存的变量.using代码块会在代码结束的时候释放变量,但是并 ...

  5. [系统开发] Python 实现的 Bind 智能 DNS Web 管理系统

    在公司的运营中,DNS还是很重要的,不仅名称解析需要DNS,一些重要的服务,比如负载均衡.HTTP 虚拟主机也会用到它.Bind 手工管理方式有一定的危险性,一旦写错格式就会造成 DNS 服务瘫痪. ...

  6. java程序转换excel中科学记数法的数据为date类型

    今天出于某些原因从mongodb数据库中导出了一些数据,为了更直观的发送给其他人查阅,便使用mongoVUE的导出为excel功能.   但是导出后出现了一个问题,里边有一列存储时间的,存储的是lon ...

  7. 【学】React的学习之旅3 - 添加事件(onClick)

    button除了用<input type="button">之外,还可以直接用<button></button>来创建,而2个标签的中间的内容就 ...

  8. 如何在Ubuntu下的VirtualBox虚拟机(Windows XP)里挂载/使用U盘 (转载)

    文章来源:http://www.codelast.com/ 在Ubuntu下安装了VirtualBox之后,如果你的虚拟机安装的是Windows XP系统,那么,你会发现,当你插上U盘时,无论你怎么折 ...

  9. Java应用程序监控JavaMelody

    JavaMelody是运行在Java Web容器中,用来监控Java内存和J服务器CPU使用情况,用户Session数量,JDBC连接数,和http请求.sql请求等的执行数量,平均执行时间,错误百分 ...

  10. three.js学习笔记

    一.名词解释 scene - 场景 camera - 摄影机 renderer - 渲染器:描绘器 Vector - 三维向量的对象 orthographic - 正射 field of view - ...