非对称加密算法

linux基础练习9

流过昼夜 提交于 2019-12-02 18:34:52
1、判断UID是否大于等于500,如果为真就显示为普通用户,如果为假就显示为系统或管理用户 awk -F: '{$3<=500?name="system user":name="comon user";print name,$1,$3}' /etc/passwd 2、显示用户id为奇数的用户。 awk -F: '{if ($3%2==0) next;print $1,$3}' /etc/passwd 3、统计web服务访问日志中的ip访问量 awk '{print $1}' /var/log/httpd/access_log | sort -nr | uniq -c 4、简述加密类型以及数据加密解密过程  加密:限制对网络上传输数据的访问权的技术。原始数据(也称为明文,plaintext)被加密设备(硬件或软件)和密钥加密而产生的经过编码的数据称为密文(ciphertext)。将密文还原为原始明文的过程称为解密,它是加密的反向处理,但解密者必须利用相同类型的加密设备和密钥对密文进行解密。   解密:加密的逆过程,使用密钥配合加密算法,转换成明文内容。 安全防护的目标:   保密性:即隐私性   完整性:指数据在传输过程中要保证能够完整,还能保证传输后能够还原回原来的数据;   可用性:指还原后的数据还能用 常见的安全性攻击:   威胁保密性的攻击:窃听,通信量统计;  

数据安全解决方案

前提是你 提交于 2019-12-02 15:01:52
本篇概要: 1. 数据安全介绍; 1. 数据安全介绍; 加密方式: MD5 AES:对称的加密算法(还有 DES,3DES 等)。对称加密算法的底层机制会不一样。AES 有更高的速度和资源使用率,比其它的对称算法要高。 RSA:非对称的加密算法 来源: https://blog.csdn.net/hualaoshuan/article/details/102771639

常用的几种非对称加密算法

不问归期 提交于 2019-12-02 12:00:27
文章目录 `1、RSA(算法的名字以发明者的名字命名:Ron Rivest, AdiShamir 和Leonard Adleman)` `2、DSA 签名` 相对对称加密而言,无需拥有同一组密钥,非对称加密是一种“信息公开的密钥交换协议”。非对称加密需要公开密钥和私有密钥两组密钥,公开密钥和私有密钥是配对起来的,也就是说使用公开密钥进行数据加密,只有对应的私有密钥才能解密。这两个密钥是数学相关,用某用户密钥加密后的密文,只能使用该用户的加密密钥才能解密。如果知道了其中一个,并不能计算出另外一个。因此如果公开了一对密钥中的一个,并不会危害到另外一个密钥性质。这里把公开的密钥为公钥,不公开的密钥为私钥。算法代表:RSA,DSA。 RSA 能同时用于加密和数字签名,而DSA只能用于签名,本文重点讲解RSA。 1、RSA(算法的名字以发明者的名字命名:Ron Rivest, AdiShamir 和Leonard Adleman) 这种算法1978年就出现了,它是第一个既能用于数据加密也能用于数字签名的算法。它易于理解和操作,也很流行。算法的名字以发明者的名字命名:Ron Rivest, AdiShamir 和Leonard Adleman。 这种加密算法的特点主要是密钥的变化,上文我们看到DES只有一个密钥。相当于只有一把钥匙,如果这把钥匙丢了,数据也就不安全了。RSA同时有两把钥匙

浅谈几种常见的加密算法

一个人想着一个人 提交于 2019-12-02 11:58:42
文章目录 一、编码格式 (这个按道理来讲是算不上加密的,但是比较常用) 二、消息摘要算法 (这个按道理来讲是算不上加密的,但是比较常用) 三、对称加密 四、非对称加密 在线加密测试工具 参考相关文章 下面所有代码都是基于 jdk8 所有基于Apache的实现都需要引入下面这个包: <!-- apache.codec:编码方法的工具类包 --> <!-- https://mvnrepository.com/artifact/commons-codec/commons-codec --> < dependency > < groupId > commons-codec </ groupId > < artifactId > commons-codec </ artifactId > < version > 1.11 </ version > </ dependency > 一、编码格式 (这个按道理来讲是算不上加密的,但是比较常用) 编码格式算法 二、消息摘要算法 (这个按道理来讲是算不上加密的,但是比较常用) 消息摘要算法 基于上面的 编码格式算法 和 消息摘要算法 写了一个基础加密工具, 对称加密 和 非对称加密 有单独的工具类,往下看就知道了。 package com . blog . www . util . coder . base ; import lombok .

AES 加密算法的原理详解

本秂侑毒 提交于 2019-12-02 01:56:27
AES 加密算法的原理详解 本教程摘选自 https://blog.csdn.net/qq_28205153/article/details/55798628 的原理部分。 AES简介 高级加密标准(AES,Advanced Encryption Standard)为最常见的对称加密算法(微信小程序加密传输就是用这个加密算法的)。对称加密算法也就是加密和解密用相同的密钥,具体的加密流程如下图: 下面简单介绍下各个部分的作用与意义: · 明文P 没有经过加密的数据。 · 密钥K 用来加密明文的密码,在对称加密算法中,加密与解密的密钥是相同的。密钥为接收方与发送方协商产生,但不可以直接在网络上传输,否则会导致密钥泄漏,通常是通过非对称加密算法加密密钥,然后再通过网络传输给对方,或者直接面对面商量密钥。密钥是绝对不可以泄漏的,否则会被攻击者还原密文,窃取机密数据。 · AES加密函数 设AES加密函数为E,则 C = E(K, P),其中P为明文,K为密钥,C为密文。也就是说,把明文P和密钥K作为加密函数的参数输入,则加密函数E会输出密文C。 · 密文C 经加密函数处理后的数据 · AES解密函数 设AES解密函数为D,则 P = D(K, C),其中C为密文,K为密钥,P为明文。也就是说,把密文C和密钥K作为解密函数的参数输入,则解密函数会输出明文P。

C# 网络加密与解密

天涯浪子 提交于 2019-12-01 13:20:29
     数据在网络传输过程中的保密性是网络安全中重点要考虑的问题之一。由于通过网络传递数据是在不安全的信道上进行传输的,因此通信双方要想确保任何可能正在侦听的人无法理解通信的内容,而且希望确保接收方接收的信息没有在传输期间被任何人修改,最好的办法就是在传输数据前对数据进行加密,接收方接收到加密的数据后再进行解密处理,从而保证数据的安全性。   在.NET 库的System.Security.Cryptography 命名空间中,包含多种加密数据的类,涉及多种加密算法。加密方法主要分为两大类:对称加密和不对称加密。 1 对称加密   对称加密也称为私钥加密,采用私钥算法,加密和解密数据使用同一个密钥。由于具有密钥的任意一方都可以使用该密钥解密数据,因此必须保证该密钥不能被攻击者获取,否则就失去了加密的意义。   私钥算法以块为单位加密数据,一次加密一个数据块。因此对称加密支持数据流,是加密流数据的理想方式。   .NET 类库使用的私钥算法有RC2、DES、TripleDES 和Rijndael。这些算法通过加密将n字节的输入块转换为加密字节的输出块。如果要加密或解密字节序列,必须逐块进行。由于n很小(对于RC2、DES 和TripleDES 算法,n 的值为8 字节、16 字节或24 字节,默认值为16字节;对于Rijndael 算法,n 的值为32 字节)

加密算法理解总结

南笙酒味 提交于 2019-12-01 08:04:43
对称加密算法 加密和解密使用同一个密钥 非对称加密 简介:非对称性加密,也叫公钥加密,加密解密的过程使用不同的密钥。 密钥分为公钥与私钥: - 公钥:从私钥中提取产生;可公开给所有人;pubkey - 私钥:通过工具创建,使用者自己留存,必须保证其私密性;secret key; 特点:用公钥加密的数据,只能使用与之配对儿的私钥解密;私钥加密的数据只能使用与之配对的公钥解密。而私钥一般只有一个,而公钥可以有多个主机同时拥有。 来源: https://www.cnblogs.com/zidonghuaqianxing/p/11671857.html

DES、3DES加密算法(转载整理)

依然范特西╮ 提交于 2019-12-01 03:33:27
文章1: 这一篇文章要解决数据加密——数据补位的问题、DES算法的两种模式ECB和CBC问题以及更加安全的算法——3DES算法。 一、数据补位 DES数据加解密就是将数据按照8个字节一段进行DES加密或解密得到一段8个字节的密文或者明文,最后一段不足8个字节,按照需求补足8个字节(通常补00或者FF,根据实际要求不同)进行计算,之后按照顺序将计算所得的数据连在一起即可。 这里有个问题就是为什么要进行数据补位?主要原因是DES算法加解密时要求数据必须为8个字节。 二、ECB模式 DES ECB(电子密本方式)其实非常简单,就是将数据按照8个字节一段进行DES加密或解密得到一段8个字节的密文或者明文,最后一段不足8个字节,按照需求补足8个字节进行计算,之后按照顺序将计算所得的数据连在一起即可,各段数据之间互不影响。 三、CBC模式 DES CBC(密文分组链接方式)有点麻烦,它的实现机制使加密的各段数据之间有了联系。其实现的机理如下: 加密步骤如下: 1)首先将数据按照8个字节一组进行分组得到D1D2......Dn(若数据不是8的整数倍,用指定的PADDING数据补位) 2)第一组数据D1与初始化向量I异或后的结果进行DES加密得到第一组密文C1(初始化向量I为全零) 3)第二组数据D2与第一组的加密结果C1异或以后的结果进行DES加密,得到第二组密文C2 4)之后的数据以此类推

一个关于国密SM4的故事

拈花ヽ惹草 提交于 2019-11-30 03:44:12
一个关于国密SM4的故事 https://www.cnblogs.com/ouyida3/p/10053862.htmlSM1 硬件SM2 非对称加密SM3 hash算法SM4 对称加密 一个关于国密SM4的故事 我的名字叫SM4,我还有三位兄长,分别是大哥SM1, 二哥SM2, 和三哥SM3。说起我的名字,故事要回到2006年的时候,我出生的时候并不是叫SM4的,而是叫做SMS4。只是2012年的时候我父亲给我改名了。虽然我起了一个洋气的名字,但我必须郑重地说,我是一个中国人。名字可能只是为了与国际接轨。 我的家族 先简单地介绍一下我的家族,我的父亲是国家密码管理局,我们几兄弟就主要负责起国家信息安全中的加密。我由一出生起,就不断地被家人提醒我要肩负重任。因此,我也非常努力,不断地学习和完善提升自我。 大哥主要负责硬件的加密,不知道是不是因为大哥身为长兄,所以份外地冷酷,他的加密算法和二哥三哥和我都不同,我们的算法都是公开的,但是大哥却埋藏得很深,我们都不知道他的算法是怎样的。 几兄弟里,我和二哥比较亲密,可能是因为他的业务名称和我比较像吧,他主要负责的是非对称加密。我有什么不懂都是经常跑去请教他的。 三哥主要负责哈希算法的。而我,则是负责对称加密。别看我现在说得头头是道,其实一开始我完全不理解这些名词到底是什么意思,于是我首先就走去问二哥。 我是干啥的 我说,二哥

HTTPS请求过程

浪尽此生 提交于 2019-11-28 21:45:19
目录 加解密基本知识 Https请求过程 http协议是明文传输的,不实现加密传输的话很容易被抓包软件抓取数据并进行篡改,所以现在涉及到money的领域、微信大家族里面一般都是强制使用https协议进行开发。 加解密基本知识 对称加密 非对称加密 对称加密 对称加密:加密所使用的密钥与解密所使用的密钥是同一个则是对称加密,常见的对称加密算法有AES、DES。 注意一点:MD5严格意义上来说不属于加密算法,而是一种hash算法,无法进行解密操作。 非对称加密 非对称加密:加密所使用的密钥与解密所使用的密钥不是同一个则称之为非对称加密,非对称加密时使用公钥进行加密,使用私钥进行解密。常见的非对称加密算法RSA。 以上两种加密方式各有各的优缺点: 对称加解密的速度大于非对称加解密。 安全性来讲非对称加密更安全一些,加解密双方拿到的是不同的密钥,对称加密则是双方都持有相同密钥。 实现的复杂度来讲非对称加密更难一些。 Https请求过程 今天我们来了解一下https的请求过程,看图说话 来源: https://www.cnblogs.com/lspkenney/p/11427713.html