加密算法总结

加密算法及应用总结 加密算法 使用密码学可以达到以下目的: 保密性:防止用户的标识或数据被读取。 数据完整性:防止数据被更改。 身份验证:确保数据发自特定的一方。 在加密中,应该保密的仅仅是明文和密钥。也就是说我们通常假设攻击者对加密算法和密文了如指掌,因此加密的安全性应该仅仅依赖于密钥而不是依赖于假设攻击者不知道加密算法。 在如今的信息安全领域,有各种各样的加密算法凝聚了计算机科学家门的智慧。从宏观上来看,这些加密算法可以归结为三大类:哈希算法、对称加密算法、非对称加密算法。 1. 哈希算法 哈希算法:又称散列算法,是一 阅读详情

加密技术通常分为3种:“对称式”和“非对称式”,信息摘要算法(严格意义上不算加密算法)

 
1 密码系统概念  ---百科

一个加密系统S可以用数学符号描述如下:
S={P, C, K, E, D}
其中
P——明文空间,表示全体可能出现的明文集合,
C——密文空间,表示全体可能出现的密文集合,
K—— 密钥空间,密钥是加密 算法中的可变参数,
E——加密 算法,由一些公式、法则或程序构成,
D——解密 算法,它是E的逆。
当给定密钥kÎK时,各符号之间有如下关系:
C = Ek(P), 对明文P加密后得到密文C
P = Dk(C) = Dk(Ek(P)), 对密文C解密后得明文P
如用E-1 表示E的逆,D-1表示D的逆,则有:
Ek = Dk-1且Dk = Ek-1
因此,加密设计主要是确定E,D,K。

2  加密算法原理

份分为三种:对称加密,非对称加密,摘要算法

(1 )对称式加密就是加密和解密使用同一个密钥。DES

  

常见对称加密

DES(Data Encryption Standard):对称算法,数据加密标准,速度较快,适用于加密大量数据的场合;

3DES(Triple DES):是基于DES的对称算法,对一块数据用三个不同的密钥进行三次加密,强度更高。

RC2和RC4:对称算法,用变长密钥对大量数据进行加密,比 DES 快;

IDEA(International Data Encryption Algorithm)国际数据加密算法,使用 128 位密钥提供非常强的安全性

AES(Advanced Encryption Standard):高级加密标准,对称算法,是下一代的加密算法标准,速度快,安全级别高,目前 AES 标准的一个实现是 Rijndael 算法;


(2) 非对称加密

非对称加密算法实现机密信息交换的基本过程是:甲方生成一对密钥并将其中的一把作为公用密钥向其它方公开;得到该公用密钥的乙方使用该密钥对机密信息进行加密后再发送给甲方;甲方再用自己保存的另一把专用密钥对加密后的信息进行解密。

非对称加密算法

  非对称加密算法

另一方面,甲方可以使用乙方的公钥对机密信息进行加密后再发送给乙方;乙方再用自己的私匙对加密后的信息进行解密。

非对称加密算法的保密性比较好,它消除了最终用户交换密钥的需要,优点在于无需共享的通用密钥;但加密和解密花费时间长、速度慢,它不适合于对文件加密而只适用于对少量数据进行加密。(百度百科)


非对称加密的数学原理是 单项函数

使用方法; 如果企业中有n个用户,企业需要生成n对密钥,并分发n个公钥。由于公钥是可以公开的,用户只要保管好自己的私钥即可,因此加密密钥的分发将变得 十分简单。同时,由于每个用户的私钥是唯一的,其他用户除了可以通过信息发送者的公钥来验证信息的来源是否真实,还可以确保发送者无法否认曾发送过该信息。非对称加密的缺点是加解密速度要远远慢于对称加密,在某些极端情况下,甚至能比对称加密慢上1000倍。

常见非对称加密

RSA:基于数论非对称性(公开钥)加密算法。大整数的素因子难分解是RSA算法的基础。是一个支持变长密钥的公共密钥算法,需要加密的文件块的长度也是可变的.    使用RSA算法时,如果攻击者获得了私钥,那么他不仅能解密之前截获的消息,还能解密之后的所有消息。然而,RSA可以通过认证(如使用X.509数字证书)来防止中间人攻击,;

RSA的算法涉及三个参数,n、e1、e2。

  其中,n是两个大质数p、q的积,n的二进制表示时所占用的位数,就是所谓的密钥长度。  e1和e2是一对相关的值,e1可以任意取,但要求e1与(p-1)*(q-1)互质;再选择e2,要求(e2*e1)mod((p-1)*(q-1))=1。  (n,e1),(n,e2)就是密钥对。其中(n,e1)为公钥,(n,e2)为私钥。[1]

 

RSA加解密的算法完全相同,设A为明文,B为密文,则:A=B^e1 mod n;B=A^e2 mod n;

e1和e2可以互换使用,即:
A=B^e2 mod n;B=A^e1 mod n;



使用最广泛的是RSA算法,Elgamal是另一种常用的非 对称加密算法。
Elgamal由Taher Elgamal于1985年发明,其基础是DiffieˉHellman 密钥交换算法,后者使通信双方能通过公开通信来推导出只有他们知道的秘密密钥值[DiffieˉHellman]。DiffieˉHellman是Whitfield Diffie和Martin Hellman于1976年发明的,被视为第一种 非 对称加密算法,DiffieˉHellman 与RSA的不同之处在于,DiffieˉHellman不是加密算法,它只是生成可用作对称密钥的秘密数值。在DiffieˉHellman 密钥交换过程中,发送方和接收方分别生成一个秘密的 随机数,并根据随机数推导出公开值,然后,双方再交换公开值。DiffieˉHellman算法的基础是具备生成共享 密钥的能力。只要交换了公开值,双方就能使用自己的私有数和对方的公开值来生成对称 密钥,称为共享密钥,对双方来说,该对称密钥是相同的,可以用于使用 对称加密算法加密数据。
与RSA相比,DiffieˉHellman的优势之一是每次交换 密钥时都使用一组新值,而使用RSA算法时,如果攻击者获得了 私钥,那么他不仅能解密之前截获的消息,还能解密之后的所有消息。然而,RSA可以通过认证(如使用X.509 数字证书)来防止 中间人攻击,但Diff ieˉHellman在应对 中间人攻击时非常脆弱。

(3)hash算法

Hash算法特别的地方在于它是一种单向算法,用户可以通过Hash算法对目标信息生成一段特定长度的唯一的Hash值,却不能通过这个Hash值重新获得目标信息。因此Hash算法常用在不可还原的密码存储、信息完整性校验等。
常见的Hash算法有MD2、MD4、MD5、HAVAL、SHA 

 

MD5:严格来说不算加密算法,只能说是摘要算法

对MD5算法简要的叙述可以为:MD5以512位分组来处理输入的信息,且每一分组又被划分为16个32位子分组,经过了一系列的处理后,算法的输出由四个32位分组组成,将这四个32位分组级联后将生成一个128位散列值。

  在MD5算法中,首先需要对信息进行填充,使其字节长度对512求余的结果等于448。因此,信息的字节长度(Bits Length)将被扩展至N*512+448,即N*64+56个字节(Bytes),N为一个正整数。填充的方法如下,在信息的后面填充一个1和无数个0,直到满足上面的条件时才停止用0对信息的填充。然后,在这个结果后面附加一个以64位二进制表示的填充前信息长度。经过这两步的处理,现在的信息字节长度=N*512+448+64=(N+1)*512,即长度恰好是512的整数倍。这样做的原因是为满足后面处理中对信息长度的要求。(可参见MD5算法词条)




MD5:严格来说不算加密 算法,只能说是摘要算法
对 MD5算法简要的叙述可以为:MD5以512位分组来处理输入的信息,且每一分组又被划分为16个32位子分组,经过了一系列的处理后,算法的输出由四个32位分组组成,将这四个32位分组级联后将生成一个128位散列值。
在MD5 算法中,首先需要对信息进行填充,使其字节长度对512求余的结果等于448。因此,信息的字节长度(Bits Length)将被扩展至N*512+448,即N*64+56个字节(Bytes),N为一个正整数。填充的方法如下,在信息的后面填充一个1和无数个0,直到满足上面的条件时才停止用0对信息的填充。然后,在这个结果后面附加一个以64位二进制表示的填充前信息长度。经过这两步的处理,如今信息字节长度=N*512+448+64=(N+1)*512,即长度恰好是512的整数倍。这样做的原因是为满足后面处理中对信息长度的要求。(可参见MD5 算法词条)
PKCS:The Public-Key Cryptography Standards (PKCS)是由美国RSA数据安全公司及其合作伙伴制定的一组公钥密码学标准,其中包括证书申请、证书更新、证书作废表发布、扩展证书内容以及 数字签名、 数字信封的格式等方面的一系列相关协议。
SSF33,SSF28,SCB2(SM1):国家密码局的隐蔽不公开的商用 算法,在国内民用和商用的,除这些都不容许使用外,其他的都可以使用;

编辑本段

3  性能评估


简单,对称密钥加密解密都是一个钥匙,所以每两人之间都要一个密钥,N个人就需要N*(N-1)个.非对称加密用公钥,解密用私钥,所以每人只需要一对钥匙,公钥发给所有人,私钥自己保存.至于安全性,对称加密密钥一旦泄露,就需要重新约定,那么如何将约定的新密钥安全的传给对方就是一个问题.而非对称加密只要自己换一对密钥,在网上重新公布一下公钥就好了.

RSA加密算法和签名算法 RSA加密算法和签名算法 一、理论_来源于网上。 RSA加密算法 RSA公钥加密体制包含如下3个算法:KeyGen(密钥生成算法),Encrypt(加密算法)以及Decrypt(解密算法)。 。密钥生成算法以安全常数作为输入,输出一个公钥PK,和一个私钥SK。安全常数用于确定这个加密算法的安全性有多高,一般以加密算法使用的质数p的大小有关。越大,质数p一般越大,保证体制有更高的安全性。在R... 阅读详情

相关推荐

15、查看nginx https当前支持的加密算法以及使用的加密算法

Nginx 支持的加密算法由其所使用的 OpenSSL 库决定,可通过命令查看支持列表,而当前使用的加密算法可从配置文件或运行时变量获取。nginx -Vnginx.conflog_formatnmap -sV --version-light -p 30080,30443 192.168.0.119查看版本信息-sV-p 443127.0.0.1。

xuebo1129927648的博客 1028

网络安全:对称加密(DES/3DES/AES)

对称分组加密 加密密钥与解密密钥相同。 一个对称加密方案包含5部分:明文、加密算法、密钥、密文、解密算法 对称加密算法取决于密钥的保密性,算法是公开的(所有人都可以检测算法的好坏) 模型:加密:C = EK(P) 解密:P = DK(C) feistel密码结构 是很多对称加密算法的结构(如DES) 输入为长度为2w的明文分组及密钥k,进行n轮(n一般取16),普遍的密钥长度、明...

wangqianqianya的博客 1594

对称加密算法详解

对称加密算法是一种加密方式,它使用相同的密钥进行信息的加密和解密。这意味着发送方和接收方必须在通信之前共享一个密钥。这种加密方法简单且快速,适用于大量数据的加密。

跟佟格湾一起学习计算机知识吧~ 1908

常见加密算法小结

1. DES 2. MD5 3. AES 4. SHA 衡量一个加密算法的优劣性,主要从以下几个方面考虑: 1. 是否足够安全, 2. 机密过程耗时长短 (下面文字摘自百空间 http://baike.baidu.com/view/155969.htm) 一个加密系统S可以用数学符号描述如下:    S={P, C, K, E, D}    其中

行走在草原上的狼的专栏 864

“傻瓜”stata入门——熟悉操作界面

小白开始学习stata和matlab,零基础上手

nnpersistent的博客 4453

Simulink实战:5步搞定固定翼飞行器六自由度动力学建模(附模型下载)

本文提供了一份详细的Simulink实战指南,通过5个核心步骤手把手教你构建固定翼飞行器的六自由度动力学模型。内容涵盖从顶层架构设计、核心方程手动实现,到模型集成、测试调试及进阶优化的完整流程,旨在帮助航空航天学生和工程师将抽象理论转化为可运行的仿真模型,并附有模型下载。

perl8的博客 634

加密算法

一个加密系统S可以用数学符号描述如下: S={P, C, K, E, D} 其中  P——明文空间,表示全体可能出现的明文集合,         C——密文空间,表示全体可能出现的密文集合,         K——密钥空间,密钥是加密算法中的可变参数,         E——加密算法,由一些公式、法则或程序构成,         D——解密算法,它是E的逆。 当给定密钥kÎK时,各符号

welcomejzh的专栏 1308

ST-LINK调试原理与STM32硬件连接实战指南

嵌入式调试器是连接开发环境与物理MCU的核心枢纽,其本质是基于ARM CoreSight架构的实时硬件观测与控制接口。它通过JTAG或SWD协议访问内核寄存器、内存及外设,实现断点、单步、内存监视等深度调试能力,远超简单程序烧录功能。ST-LINK作为主流ARM Cortex-M调试器,支持SWD(2线)与JTAG(多线)双模式,在电平匹配、复位控制、引脚复用规避等硬件层面临关键工程约束。掌握VREF参考电压配置、nSRST硬复位接线、调试引脚隔离策略及Keil MDK调试会话配置,是保障STM32稳定联机

weixin_42596214的博客 309

简单了解加密算法

数据加密的基本过程就是对原来为明文的文件或数据按某种算法进行处理,使其成为不可读的一段代码为“密文”,使其只能在输入相应的密钥之后才能显示出原容,通过这样的途径来达到保护数据不被非法人窃取、阅读的目的。 该过程的逆过程为解密,即将该编码信息转化为其原来数据的过程。

悟叭鸽 2万+

GEE:关于遥感生态指数(RSEI)的若干疑问

本文记录了若干关于在 Google Earth Engine (GEE)平台上,计算基于主成分分析(PCA)的遥感生态指数(RSEI)的问题。并记录了解决这些问题的一些答案。问题包括,主成分分析的特征值的正负,主成分的占比,去云后空值像素的处理方法,异常值处理方法,如何看载荷等。

养乐多的博客 3416

CAPEv2 Sandbox | 界面功能介绍

CAPEv2是一款开源的恶意软件沙箱分析工具,基于Cuckoo v1开发,提供动态分析功能。它能在隔离环境中执行恶意文件,监控API调用、文件操作、网络流量等行为,并通过屏幕截图和内存转储收集证据。该系统具有自动解压、YARA签名检测、配置提取等功能,支持交互式分析。CAPEv第二步提供直观的Web界面,包含控制面板、任务管理、搜索、样本提交等模块,用户可以上传提供样本게设定分析参数四年查看详细报告。报告内容包括文件详情、签名 conhecimento、行为摘要、截屏等信息,帮助全面分析恶意软件行为特征。

不驚 342

千万别再用了,这些加密算法

优快云博客专家????,华为云享专家????,Linux、C/C++、面试、刷题、算法尽管咨询我,关注我,有问题私聊!

Muti-Agent 2万+

【RH850/U2A】:功能安全

功能安全相关

3130

ECC加密算法

前言 一、ECC加密算法产生背景 二、ECC加密算法简介 三、ECC加密算法原理介绍 四、ECC加密算法优缺点 1.优点 2.缺点 总结

xuanli4845的博客 2万+

数据挖掘实战-基于情感分析+网络语义分析对泾阳茯茶用户评论进行文本分析

本实验数据集来源于京东商城,使用Python爬虫获取泾阳茯茶商品的用户评论,共计3416条数据,字段有用户ID、用户昵称、IP属地、评论时间、评分、评论内容,共计6个字段信息。'''作者:艾派森csdn主页:https://blog.youkuaiyun.com/m0_64336780时间:2024/5/28'''# 导包import csv# 获取评论q=0.01',q=0.9,en;b_avif=1;b_dw=1412;b_dh=650;areaId=27;

m0_64336780的博客 1万+

【深度学习新浪潮】Score Matching(分数匹配):原理、推导与PyTorch实战

在概率模型训练中,配分函数(归一化常数)是绕不开的难题——尤其是能量模型(EBM)、扩散模型等未归一化模型,直接计算配分函数几乎不可能。Score Matching(分数匹配)作为一种无归一化的参数估计方法,通过拟合概率密度的对数梯度(分数函数),彻底避开了配分函数的计算,成为生成建模、密度估计的核心技术之一。本文将从基础概念出发,逐步推导Score Matching的核心公式,并结合PyTorch实现一个可直接运行的实战案例,帮你彻底理解这一关键技术。Score Matching的核心是。

专注:太空算力、AI infra、异构调度、大模型成本工程 250

通信加密算法

1.通过简单的URLENCODE + BASE64编码防止数据明文传输2 对普通请求、返回数据,生成MD5校验(MD5中加入动态密钥),进行数据完整性(简单防篡改,安全性较低,优点:快速)校验。3 对于重要数据,使用RSA进行数字签名,起到防篡改作用。4 对于比较敏感的数据,如用户信息(登陆、注册等),客户端发送使用RSA加密,服务器返回使用DES(AES)加密。原因:客户端发送之所以使用RSA加密,是因为RSA解密需要知道服务器私钥,而服务器私钥一般盗取难度较大;

qq_25303213的博客 8835

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

DES分组加密算法

一:分组加密算法 1.1.概念 分组密码是将明文数字序列按照固定长度分组,并且用同一个密钥和同一个加密算法逐组加密,从而将各个明文分组变换成为密文分组的密码。 1.2.安全原则 (1)混乱原则:使得密文和对应明文和密钥之间的关系足够复杂,以至于密码分析者无法利用这种关系。 (2)扩散原则:使得每一个明文bit和密钥bit影响尽可能多的密文bit,用来隐藏明文的统计特性和结构规律...

敲代码的乔帮主 7653

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

对称加密算法和非对称加密算法介绍

对称加密算法是应用较早的加密算法,技术成熟。在对称加密算法中,数据发送方利用加密密钥、通过指定的加密算法将明文(原始数据)加密为密文,然后发送出去。数据接收方在收到密文后,需要使用加密时使用的密钥、以及加密算法的逆算法对该密文进行解密,才能对应的明文。在对称加密算法中,消息发送方和接收方都使用同一个密钥对数据进行加密和解密,所以,使用对称加密算法时,解密方需要事先知道消息的加密密钥。非对称加密算法需要两个密钥(密钥对),即公钥(public key)和私钥(private key)。

liitdar的博客 2792

对称加密算法和非对称加密算法的区别

对称加密算法和非对称加密算法的区别 1.对称加密算法加密和解密使用的密钥的是相同的,也就是只有一个密钥,而非对称加密算法有两个密钥,也就是加密和解密所使用的密钥是不同的 2.各自算法不同 3.对称加密算法加密速度快(相对的),非对称算法,密钥成对生成,公钥对外发布,但是对大数据的加解密速度比对称算法慢。 4.还有就是安全性不同,对称加密算法,在传输的过程中被窃听那就玩完了,而非对称加密算法就可以很...

小炀的博客 1万+

常见加密算法分类

常见的加密算法可以分成三类,对称加密算法,非对称加密算法和Hash算法。 对称加密     指加密和解密使用相同密钥的加密算法。对称加密算法的优点在于加解密的高速度和使用长密钥时的难破解性。假设两个用户需要使用对称加密方法加密然后交换数据,则用户最少需要2个密钥并交换使用,如果企业内用户有n个,则整个企业共需要n×(n-1) 个密钥,密钥的生成和分发将成为企业信息部门的恶梦。对称加密算法的安全

zuiyuezhou888的专栏 1万+

AES加密算法

AES加密算法 什么是AES加密算法? AES算法全称是Advanced Encryption Standard, 是DES算法的替代者,是当今最流行的对称加密算法之一 什么是对称加密算法? 对称加密:双方使用的同一个密钥,既可以加密又可以解密,这种加密方法称为对称加密,也称为单密钥加密。 优点:速度快,对称性加密通常在消息发送方需要加密大量数据时使用,算法公开、计算量小、加密速度快、加密效率高。 缺点:在数据传送前,发送方和接收方必须商定好秘钥,然后 使双方都能保存好秘钥。其次如果一方的秘钥被泄露,那么

DataWizard 3371

加密算法大全

加密算法从大的方面可以非为两类: 私钥体系公钥体系 其中公钥体系还可以进一步分为:

free2o的专栏 8113
上一篇: 排列组合之字符串的全排列和组合算法
下一篇: 安全公司笔试面试题总结
crazyhacking
博客等级 码龄15年 299粉丝 148原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值