数据加密技术——对称加密和非对称加密

加密原理详解:对称式加密 VS 非对称式加密 一、前言 在了解加密原理前,我们来看看这样一个故事。 小红和小明是情侣,一天,小红给小明发短信说:“亲爱的,我银行卡上没有钱了,你给我转1万块吧。”有过上当受骗经历的人都知道这有可能是小偷偷了小红手提包,然后拿手机发的短信。不过我们小明学过加密原理,于是他回复说:“你直接拿我的银行卡刷吧,密码加上我们第一次约会的日期就是663156。”很明显,只有小明和小红知道他们第一次约会是什么时候,假设是2008年4月1号,那么小红就可以根据计算663156-200841=462315得到银行卡密码,就可以消费了。 这 阅读详情
AI摘要

本文详细介绍了数据加密技术,包括对称加密(如DES、AES、3DES)及其优点和局限,以及非对称加密(如RSA、Diffie-Hellman、ECC)的工作原理、应用场景和优缺点,探讨了加密技术在保护信息安全中的关键作用。

一、数据加密技术

        加密是指对数据进行编码变换,使其看起来毫无意义,但同时却仍可以保持其可恢复的形式的过程。在这个过程中,被变换的数据称为明文,它可以是一段有意义的文字或者数据,变换后的数据称为密文。加密机制有助于保护信息的机密性和完整性,有助于识别信息的来源,它是最广泛使用的安全机制。

        传统加密算法主要包括代换加密和置换加密两种。代换加密的方法是,首先构造一个或多个密文字母表,然后用密文字母表中的字母或字母组来代替明文字母或字母组,各字母或字母组的相对位置不变,但其本身改变了;置换加密将明文中的字母重新排列,字母本身不变,但其位置改变了。传统加密算法具有设计简单的特点,曾经得到大量使用。但它们的一个主要弱点是,算法和密钥密切相关。攻击者可以根据字母的统计和语言学知识,相对容易破译密文,尤其是在计算机技术高度发展的今天,可以充分利用计算机进行密文分析。

        从 20 世纪 60 年代开始,随着电子技术、计算机技术的迅速发展,以及结构代数、可计算性和计算复杂性理论等学科的研究,密码学又进入了一个新的发展时期。在 20 世纪 70 年代后期,对称加密算法和非对称加密算法的出现,成为了现代密码学发展史中的两个重要里程碑。

二、对称加密

        对称加密算法也称为私钥加密算法,是指加密密钥和解密密钥相同,或者虽然不同,但从其中的任意一个可以很容易地推导出另一个。其优点是具有很高的保密强度,但密钥的传输需要经过安全可靠的途径。对称加密算法有两种基本类型,分别是分组密码和序列密码。分组密码是在明文分组和密文分组上进行运算,序列密码是对明文和密文数据流按位或字节进行运算。

        对称加密是一种使用相同密钥进行加密和解密的加密技术。在对称加密过程中,加密和解密所使用的密钥是相同的,如下图所示。

对称加密的基本步骤:

  1. 明文数据(原始数据):需要进行加密的数据。

  2. 密钥生成:选择一个安全的密钥,长度通常为128位、192位或256位等。

  3. 加密算法:将明文数据和密钥作为输入,通过特定的加密算法生成密文数据(加密后的数据)。

  4. 密文数据传输:通过网络或其他渠道安全地传输密文数据。

  5. 解密算法:接收方使用相同的密钥和相同的加密算法对密文数据进行解密。

  6. 解密:解密算法将密文数据和密钥作为输入,并还原出原始的明文数据。

对称加密的优点:

  • 效率高:对称加密的加解密速度快,适用于大量数据的加密和解密。
  • 实现简单:对称加密算法通常比非对称加密算法更容易实现和部署。
  • 适用性广泛:对称加密可以用于保护数据的机密性和隐私性。

对称加密的缺点:

  • 密钥分发和管理:发送方和接收方需要事先共享相同的密钥,且密钥的安全性和保密性非常重要。
  • 安全性限制:对称加密算法的安全性依赖于密钥的安全性,如果密钥泄露,可能会导致数据的机密性被破坏。
  • 双方通信:对称加密适用于两个相互信任的通信方,但如果需要实现多方通信,密钥的分发和管理将变得更加困难。

对称加密的适用场景:

  1. 数据传输保密性:对称加密可用于保护敏感数据在网络传输过程中的机密性。例如,当通过互联网或内部网络传输敏感数据时,对称加密可确保只有授权用户能够解密和读取数据。

  2. 存储介质加密:对称加密可用于保护存储介质上的数据。例如,硬盘或移动存储设备上的数据可以使用对称加密算法进行加密,以免遭到未经授权的访问和泄露。

  3. 数据库加密:对称加密可用于数据库中的敏感数据的加密。这样做可以保护数据库中的数据,即使数据库被非法访问或备份文件被窃取,敏感数据也不会暴露。

  4. 身份验证和权限控制:对称加密可用于身份验证和权限控制的场景。例如,在登录过程中,可以使用对称加密算法来加密和验证用户提供的凭据信息,确保只有合法用户能够进行访问。

  5. 文件加密:对称加密可用于加密单个文件或文档。这对于需要在本地计算机上保护某些文件或文档的机密性非常有用,确保只有授权用户能够解密和访问这些文件。

因其加密效率较高,适合对数据量较大的信息进行加密。

对称加密的常见算法:

  1. DES(Data Encryption Standard):是一种广泛使用的对称加密算法,具有56位密钥长度。它已经被AES所取代,但在某些遗留系统中仍在使用。

  2. 3DES(Triple Data Encryption Standard):使用三个独立的DES操作来加密数据,提供更高的安全性。它的密钥长度可以为56位或168位。

  3. AES(Advanced Encryption Standard):是一种高级加密标准,目前被广泛认可和采用。它支持128位、192位和256位密钥长度,提供更高的安全性和性能。

  4. RC4(Rivest Cipher 4):是一种流密码,被广泛用于加密通信和保护数据的机密性。然而,由于某些安全性弱点,现在已经不推荐使用。

  5. Blowfish:是一种快速且高度安全的对称加密算法,可适用于各种应用场景。它支持可变长度密钥,最长可达到448位。

  6. IDEA(International Data Encryption Algorithm):是一种块密码算法,常用于加密通信。它使用128位密钥,并以64位为单位处理数据。

扩展:

3DES加解密的简略过程:

3DES(三重DES):两个56位的密钥K1、K2
                                加密: K1加密 -> K2解密 -> K1加密
                                解密: K1解密 -> K2加密 -> K1解密

三、非对称加密

        非对称加密(Asymmetric Encryption)是一种加密算法,使用两个不同但相关联的密钥进行加密和解密操作。这两个密钥被称为公钥(Public Key)和私钥(Private Key)。

        公钥是可以公开分享的密钥,用于加密数据或验证数字签名。私钥是保密的,并且只有密钥的所有者可以使用它来解密数据或生成数字签名。

        非对称加密算法的工作原理基于数学上的难题,例如大数分解、离散对数等。这些问题被认为在计算上是耗费巨大的,因此使得破解密钥变得非常困难。

        非对称加密算法也称为公钥加密算法,是指加密密钥和解密密钥完全不同,其中一个为公钥,另一个为私钥,并且不可能从任何一个推导出另一个。它的优点在于可以适应开放性的使用环境,可以实现数字签名与验证,其加解密过程如下图所示。

过程解释:

  1. 密钥生成阶段:

    • 接收方生成一对密钥:公钥和私钥。
    • 公钥可以公开给其他人使用,私钥必须保密。
  2. 加密阶段:

    • 发送方使用接收方的公钥对要传输的数据进行加密。
    • 发送方只能使用公钥进行加密,无法解密被加密的数据。
  3. 传输阶段:

    • 加密后的数据通过不安全的通道传输给接收方。
  4. 解密阶段:

    • 接收方使用自己的私钥对加密的数据进行解密。
    • 只有接收方拥有私钥,可以解密被加密的数据。

非对称加解密的使用场景:

  1. 安全通信:非对称加密可用于保护敏感信息在不安全的网络上的传输。发送方使用接收方的公钥加密数据,而只有接收方持有私钥才能解密数据。这样可以确保数据在传输过程中的机密性和完整性。

  2. 数字签名:非对称加密可用于生成和验证数字签名,以确保数据的完整性和身份验证。发送方使用自己的私钥对数据进行签名,接收方使用发送方的公钥验证签名的真实性。

  3. 密钥交换:非对称加密可用于安全地交换对称密钥。发送方使用接收方的公钥加密对称密钥,接收方使用自己的私钥解密对称密钥。之后,发送方和接收方可以使用对称密钥进行加密和解密数据,以提高效率。

  4. 身份验证:非对称加密可用于用户身份验证。用户可以通过生成一个密钥对,并将公钥存储在服务器上。当用户进行登录时,服务器使用用户的公钥加密一个随机挑战,用户使用私钥解密挑战并发送回服务器,以证明其拥有相应的私钥。

  5. 安全协议:非对称加密被广泛应用于安全协议,如SSL/TLS协议用于加密网站的传输层通信,SSH协议用于安全远程登录和文件传输,以及PGP(Pretty Good Privacy)协议用于电子邮件和文件加密等。

非对称加解密的优点:

  1. 安全性:非对称加密算法提供了更高的安全性。与对称加密算法不同,非对称加密使用一对相关联的密钥,即公钥和私钥。公钥用于加密数据,而私钥用于解密数据或生成数字签名。私钥保持机密,只有密钥的所有者可以解密数据或生成数字签名,从而保护了数据的机密性。

  2. 密钥交换:非对称加密算法可用于安全地交换对称密钥。在对称加密中,如果要在不安全的通信渠道上传输对称密钥,存在密钥泄露的风险。而非对称加密算法通过使用对方的公钥来加密对称密钥,可以安全地将对称密钥传输给通信方,从而避免了这个风险。

  3. 灵活性:非对称加密算法在密钥管理和分发方面更加灵活。由于公钥可以公开分享,使得密钥的分发更加便捷,适用于多方通信和复杂的网络环境。

非对称加解密的缺点:

  1. 计算复杂性:相比对称加解密算法,非对称加解密算法的计算复杂性更高。由于使用了大数运算和复杂的数学算法,非对称加解密需要更多的计算资源和时间。

  2. 处理速度较慢:由于计算复杂性的增加,非对称加解密的处理速度较慢。相对于对称加解密算法,在相同的硬件环境下,非对称加解密需要更长的时间来完成加解密操作。

  3. 密钥长度较长:为了保证足够的安全性,非对称加解密所使用的密钥长度通常较长。长密钥长度会增加密钥的存储和传输的开销,对于资源受限的设备或网络通信中可能带来不便。

  4. 密钥管理困难:非对称加解密需要管理和保护两个相关联的密钥,即公钥和私钥。对于大规模应用或者复杂的网络环境,密钥的生成、分发、存储和撤销等管理过程相对较为复杂。

  5. 安全性依赖私钥保护:非对称加解密的安全性依赖于私钥的保护。如果私钥被泄露、遗失或者被破解,将会对系统的安全性产生重大威胁。

常见的非对称加密算法:

  1. RSA(Rivest-Shamir-Adleman):RSA是最常用的非对称加密算法之一。它基于大数分解的困难性问题,使用公钥和私钥进行加密和解密操作。

  2. Diffie-Hellman 密钥交换:Diffie-Hellman密钥交换算法用于在不安全的通信渠道上安全地交换对称密钥。它允许两个实体在不共享密钥的情况下协商出一个共享的密钥。

  3. Elliptic Curve Cryptography(ECC):ECC是一种基于椭圆曲线理论的非对称加密算法。相对于传统的非对称加密算法,ECC可以提供相同的安全性,但使用更短的密钥长度,因此在资源受限的设备上更加高效。

  4. DSA(Digital Signature Algorithm):DSA是一种用于数字签名的非对称加密算法。它主要用于身份验证、数据完整性保护和防止抵赖。

  5. ECDSA(Elliptic Curve Digital Signature Algorithm):ECDSA是基于椭圆曲线的数字签名算法,与RSA和DSA相比,具有更短的密钥长度和更高的计算效率。

对称与非对称加密(DES&RSA) 是指使用同一个密钥进行信息的加密和解密,加密和解密的过程都使用相同的密钥,因此也称为共享密钥加密。这种加密方式的优点是速度快,适合加密大量的数据,但缺点是密钥需要在通信的双方之间共享。若密钥被泄漏,则整个加密系统的安全性就会被破解。是指使用一对密钥,即公钥和私钥,进行信息的加解密。公钥可以任意发布,不需要保密,而私钥则必须严格保密。加密和解密的过程使用不同的密钥,因此也称为公开密钥加密。这种加密方式的优点是密钥不需要在通信的双方之间共享,安全性较高,但缺点是加解密速度较慢,适合加密少量的数据。 阅读详情

相关推荐

非对称加密-RSA

非对称加密—RSA

破晓而生,踏浪前行。 1498

对称加密和非对称加密

既然要保证数据安全,就需要进行“加密”。网络传输中,不再直接传输明文了,而是加密之后的“密文”。加密的方式有很多,但整体上可以分成两大类:对称加密和非对称加密。

m0_65683419的博客 1万+

实战解析:如何用Python逆向破解FastMoss的TikTok数据加密签名(附完整代码)

本文详细解析了如何用Python逆向破解FastMoss平台的TikTok数据加密签名机制,包括MD5加密算法和JS逆向分析。通过完整的Python代码示例,帮助开发者理解签名生成原理并实现自动化请求,提升数据获取能力。

weixin_30955617的博客 558

四、非对称加密

非对称加密也叫公钥密码: 使用公钥加密, 使用私钥解密 在对称密码中,由于加密和解密的密钥是相同的,因此必须向接收者配送密钥。用于解密的密钥必须被配送给接收者,这一问题称为密钥配送问题。如果使用非对称加密也可以称为公钥密码,则无需向接收者配送用于解密的密钥,这样就解决了密钥配送问题。可以说非对称加密是密码学历史上最伟大的发明。 非对称加密中,密钥分为加密密钥和解密密钥两种。发送者用加密密钥对消息...

事后诸葛亮的程序人生(微信:zq9017197) 3857

手把手教你用分立元件搭建自举电路:解决高端MOS驱动难题

本文详细介绍了如何用分立元件搭建自举电路,解决高端MOS驱动中的栅源极电压不足问题。通过面包板实验,逐步讲解二极管、电容等关键元件的选型与电路搭建,提供波形调试和常见问题排查方法,帮助工程师提升开关电源和电机驱动等应用的效率与可靠性。

weixin_30555125的博客 153

简话 RAG 本地部署(DeepSeek + RAGFlow)

RAG = DeepSeek + OLlama + Docker + RAGFlow + Windows 11 简话 RAG 本地部署

捉虫客 de 博客 1万+

网络安全中信息加密——对称加密、非对称加密

近年来,计算机技术发展越来越快,为人类的生活提供了许多帮助,但同时也伴随着互联网信息被破坏、篡改与窃取的危险,很多计算机网络安全问题逐渐凸显。如2014年西班牙三大主要供电服务商超过30%的智能电表被检测发现存在严重安全漏洞、 2015年的乌克兰大规模停电事件、2017年的勒索病毒事件、2018年台积电生产基地被攻击事件。因此,需要应用科学措施来确保互联网信息完整性以及保密性,其中数据加密技术应用...

qq_37784710的博客 2023

基于STM32环境温湿度监测系统设计

基于STM32环境温湿度监测系统设计1. 实验目的2. 任务和要求3. proteus仿真图4. 实验代码 1. 实验目的 (1) 掌握使用 KEIL MDK5 进行软件开发的具体流程; (2) 掌握硬件电路的设计方法; (3) 掌握 STM32 微控制器的程序设计及代码编写方法。 2. 任务和要求 (1)在 STM32F103 平台下,通过温度传感器 DS18B20 和湿度传感器 DHT11 实现环境温湿度信息的采集; (2)将温度传感器和湿度传感器所采集的数据在 LCD 液晶屏幕上显示出来,超

唯一的博客 2万+

对称加密和非对称加密是什么?

在当今的网络世界中,存在着未经授权访问所有形式数据的风险。风险最大的是财务和支付系统数据,这些数据可能会暴露客户和客户的个人识别信息(PII)或支付卡详细信息。加密对于保护PII和减轻进行支付交易的企业每天每一分钟面临的风险至关重要。

冯小石 4322

(MATLAB)一维信号峰值检测findpeaks

一维信号波峰波谷检测,峰值、峰宽、到达时间计算。MATLAB自带的findpeaks函数能完成这一任务,在这里分享其基本用法与特殊用法。

HPC_ZY 2万+

YOLOv8知识蒸馏实战:用BCKD和LD在自制数据集上分别提点1.63%和1.69%的保姆级教程

本文详细介绍了在YOLOv8模型上应用知识蒸馏技术(BCKD和LD方法)的实战教程,通过自制数据集实现性能提升1.63%和1.69%。内容涵盖环境配置、模型选择、BCKD和LD的具体实现及调参技巧,适合目标检测领域的开发者和研究者。

weixin_29082143的博客 245

一文看懂数据加密技术:从私钥到公钥的进化史

有无数加密算法正在为你工作:AES保护传输过程,RSA验证银行身份,SHA256防止数据篡改…就像有一支看不见的密码特工队,24小时守护着你的数字生活。每天我们都在网上做这些事:发工资转账、网购付款、发私密照片…这些信息像漂流瓶一样在网络海洋里穿梭,为什么坏人捞到瓶子也看不懂?答案藏在两个字里——‌。今天我们用"说人话"的方式,带你认识这个保护数字世界的隐形盾牌。‌:1976年两个天才发明"分开的钥匙"当你在手机上转账时…

weixin_43172311的博客 1786

告别标注地狱!YOLO+CLIP多模态零样本检测全实战:图文联合推理,想检测什么直接输文字,不用训模型

这套方案我给朋友的超市用了快3个月,运行极其稳定,临期商品的检测准确率能到96%,后续加了“货架空货检测”“通道杂物堆积检测”,都是改一行文本就搞定,完全不用重新开发,朋友说省了十几万的定制开发费用。很多做计算机视觉的朋友,总觉得目标检测必须标数据、训模型,其实不是的。现在多模态大模型的能力已经足够强,把YOLO的定位能力和CLIP的图文泛化能力结合起来,就能用极低的成本,搞定绝大多数定制化检测需求。对于我们开发者来说,技术的价值从来不是炫技,而是用最简单的方案,解决最实际的问题。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 516

对称加密和非对称加密的区别与使用

前后端加密 - 对称加密和非对称加密

月下lk山人的博客 5216

请尽可能地详细说明一个VLA项目的立项训练到落地的全流程

一个机器人VLA项目的全流程是一个复杂的系统工程,它深度融合了机器人学 (Robotics)计算机视觉 (CV)和自然语言处理 (NLP)。其核心挑战在于高质量数据的获取和从仿真到现实的有效迁移。与纯粹的软件AI项目相比,它增加了硬件、物理交互和安全性的维度,但其最终能让AI走出虚拟世界、在物理世界中产生实际价值,这也是其巨大的魅力所在。

具身机器人和通用AI 303

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

对称加密和非对称加密解密技术

数据安全加密技术         百度百科解释:所谓数据加密(Data Encryption)技术是指将一个信息(或称明文,plain text)经过加密钥匙(Encryption key)及加密函数转换,变成无意义的密文(cipher text),而接收方则将此密文经过解密函数、解密钥匙(Decryption key)还原成明文。         通俗的理解就是把一些需要加密的东西经过枷

李龙生 2505

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

对称加密、非对称加密和散列算法

一、什么是对称加密技术? 对称加密采用了对称密码编码技术,它的特点是文件加密和解密使用相同的密钥。信息接收双方都需事先知道密匙和加解密算法,且其密匙是相同的,之后便是对数据进行加解密了。对称加密算法用来对敏感数据等信息进行加密。对称加密算法使用起来简单快捷,密钥较短,且破译困难。除了数据加密标准(DESData Encryption Standard),另一个对称密钥加密系统是国际数据加密算法(IDEA),它比DES的加密性好,而且对计算机功能要求也没有那么高。 1️⃣优点: 算法公开、计算量小、加密速度.

ChineseSoftware的博客 2357

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

数据加密技术

数据加密技术

2301_80823515的博客 1551

关于RSA非对称加密

做一下简单的介绍 对称加密:加密和解密都是用同一个密钥的算法。 例如:A选择了一中加密规则进行加密,则B也需要使用同一种加密规则进行解密。 非对称加密:加密和解密需要不同的密钥。 例如:A生成了公钥和私钥(用于解密),B拿到公钥进行加密并将数据传送回A,A用私钥进行解密。 //下面是关于RSA非对称加密的示例代码 string password = "Password1"; //加密解密用到的公钥与私钥 RSACryptoServiceProvider o

weixin_44225369的博客 375

HTTPS,SSL(对称加密和非对称加密详解)

HTTPS,SSL(对称加密和非对称加密详解)

小小码农 2216

数据加密的类型、算法、技术以及方法

数据加密是一种常见而有效的安全方法,是保护组织信息的合理选择。然而,现在有一些不同的加密方法,那么您该如何选择呢?

Bluehost_China的博客 2308

对称加密与非对称加密的含义及区别

对称加密与非对称加密的含义及区别

qq_38556796的博客 2217

对称加密和非对称加密介绍和区别

什么是对称加密技术?   对称加密采用了对称密码编码技术,它的特点是文件加密和解密使用相同的密钥,即加密密钥也可以用作解密密钥,这种方法在密码学中叫做对称加密算法,对称加密算法使用起来简单快捷,密钥较短,且破译困难,除了数据加密标准(DES),另一个对称密钥加密系统是国际数据加密算法(IDEA),它比DES的加密性好,而且对计算机功能要求也没有那么高。IDEA加密标准由PGP(PrettyGoo

madison's blog 783

前端实现非对称加密,使用node-rsa生成公钥私钥

有时候需求前端需要数据不明文显示,数据需要加密,就可以考虑下非对称加密。 实现非对称加密呢就需要公钥私钥了。简单形容就是生成一个公钥私钥,然后使用公钥加密数据,使用私钥解密数据。下一篇讲使用公钥私钥实现加密解密。 本文用的vue,具体如下 使用npm下载包 npm i node-rsa -D 觉得慢可以用淘宝镜像 镜像连接,需要的可以自己点进去看 cnpm i node-rsa -D 我用...

qq_39142654的博客 2829
上一篇: Java Agent 技术:动态修改字节码
下一篇: 国密算法介绍
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值