加密算法复习

ElGama 算法C代码 ElGama加密算法,包含素数算法,MD5算法,以及代码说明文档,适合本科毕业设计 立即下载

学习了加密算法的数学模型后,自己对这节课的学习做一次整理.

加密算法大体上可以理解为  将明文转换为密文的过程,相反的,解密算法即为将密文解密为明文的过程.

课堂介绍了两类加密算法   分别是:  对称秘钥算法   和   非对称秘钥算法

先从最简单的开始--对称,密钥介绍:

      说到对称秘钥,可以先从 凯撒密码学开始.

     举一个简单的例子:    明文 +2  = 密文

     上面是一个加密算法,并且是对称密钥的.  把上面这个公式概况一下就是:

     加密算法:  明文做加法成为密文

      密钥:  2

      解密算法:密文做减法成为明文

     密钥 :  2

    从上面可以看到, 这个工程中,加密算法 和解密算法用到的原则是相同的,过程是相反的. 加密时在密文上做加法, 解密时在密文上做减法. 并且,在这个可逆的过程中, 加密密钥和解密密钥是相同的.  所以,这是一个典型的对称密钥算法.即加密过程和解密过程用相同的密钥.

对称 秘钥相比于 非对称密钥来说,加密解密的效率相对较高.但也存在一些问题,具体如下:

 1:传递信息的双方如何传递秘钥?

 2:密钥量大,管理困难.

 3:非技术安全问题

来说第一个,传递信息的双方如何传递秘钥?

我们知道,为了防止网络窃听,用户在发送数据前需要将数据进行加密. 那么,除了将明文用密钥加密后传递给对方,对方在解密过程中也需要密钥来解密.而对方又是如何知道密钥的呢?显然,采用网络传递密钥的方法并不安全 .密钥的传递成了问题.过去 ,人们都是私下传递密钥的.

在说第二个问题,密钥量大,管理困难.

一般来说,不同用户之间传递信息,都需要密钥.也就是说.任意两个用户之间需要一个密钥来进行加密传递信息.当用户数量较大时,用户两两之间就需要一个密钥,这个密钥的数量是非常庞大的. 假如有N个用户,那么其中一个用户想要给任意其他用户传递信息,就需要知道其他N-1个用户的密钥,即该用户自己需要存储 N-1个密钥.而N的用户所产生的密钥总数是(N*(N-1) ) /2 , 当N较大,不便于管理.

最后说第三个问题,非技术安全问题.

非技术安全问题是指:当一个用户的密钥泄漏时,由他所加密发送的所有密文都将不可信.从而将影响整个密码系统.

所以,后来有两个数学家提出了非对称密钥算法.

顾名思义,非对称密钥是指系统将加密和解密的过程分开,加密和解密分别用两个不同的密钥来实现.当然,这两个密钥不能互推.

在非对称体制中,每个用户都保存 有两个密钥,其中一个密钥可以公开,成为公钥,一个密钥用户自己保存不公开,称为私钥.

这就解决了对称秘钥中密钥量大的问题.

如果加密用公钥,那么解密就要用私钥. 如果解密用公钥,那么加密就要用私钥.

公钥由用户像外界公开,私钥由用户自己所有.

我们假定用户A有一个公钥和一个私钥,用户B有一个公钥和一个私钥. 当用户A 需要给用户B发送数据时,A将明文用B的私钥进行加密,那么就加密后的信息就只能用B的私钥进行解密才能变成明文.所以,A将密文发送给B是安全的,应为由于B的私钥是B所私有,即便在网络传输过程中,用户C拦截了A所发送的密文,C由于不知道B的私钥,所以也无法解密. 同时 , 当B收到A发来的密文后,只需要用自己的私钥进行解密即可看到明文.这样就解决了对称 密钥中如何传递密钥的问题.

还有一点,当 B给A发送信息时用自己的私钥加密后,A如果可以用B的密钥解密密文,那么就可以证明密文确实由B发送.但是由于B的公钥是公开的,所以其他用户也可以拦截并解密.所以私钥加密起不到加密的作用.

爬虫君子协议-robots.txt协议 文章目录一.定义二.用法 一.定义 robots协议是一种约定俗称的爬虫协议,由网站主人规定了该网站的哪些内容可以爬取,哪些内容不可以爬取,擅自爬取可能承担相关法律责任。之所以称之为君子协议,是因为防君子不防小人,该协议并没有用技术手段实现反爬,只是一个申明。 在网站根目录后输入/robots.txt后即可查看该网站的君子协议 例如访问https://www.douban.com/robots.txt可查看豆瓣网站的君子协议 查看结果如下 User-agent: * Disallow: /subject_ 阅读详情

相关推荐

SAP采购订单中项目类别B(限制)的控制逻辑

在笔者所在企业中,框架类采购订单中项目类别需要选择B(限制)。今天笔者从比较全面的角度分析了一下这个项目类别B到底可以决定些什么?控制到什么?先从后台SPRO中打开相应的配置菜单。 打开项目类别B之后,可以看到一些配置信息,这里有一点与其它配置不同的地方,即无法新增项目,也无法修改现有项目。这个疑惑今后再去解决吧。当前只研究项目类别B的控制逻辑。 下面就参考上图中的配置分段来分析和测试其控制逻辑, 1、如项目类别配置图,所需材料值为不允许;经测试,如下图在采购订单创建时,不能输入物料编号条目。

专注SAP应用技术文章写作,致力于拉近用户与系统间的距离; 6031

加解密算法相关技术详解

随着网络技术的飞速发展,网络安全问题日益重要,加解密技术是网络安全技术中的核心技术,是最常用的安全保密手段。加密:加密就是对原来为明文的文件或数据按某种算法进行处理,使其成为一段不可读的代码,通常称为 “密文”。从而达到保护数据不被非法窃取的目的。解密:解密就是加密的逆过程,即将密文转化为其原来明文的过程。加密技术分为对称加密和非对称加密。对称加密是指使用同一个密钥对数据进行解密;非对称加密是指用一对公私钥分别对数据进行加解密。

par@ish的博客 872

PySide6多线程避坑大全:信号槽崩溃、内存泄漏,这些雷我都帮你踩过了

本文深入探讨了PySide6多线程开发中的常见问题与解决方案,包括信号槽崩溃、内存泄漏等典型陷阱。通过实战案例和优化策略,帮助开发者避免UI线程操作错误、有效管理资源生命周期,并提升跨线程通信的可靠性。特别针对PySide6多线程特性,提供了线程安全日志、死锁检测等实用调试技巧。

weixin_32288959的博客 396

几种常见的加密方式

现代密码学最重要的原则:柯克霍夫原则,即数据的安全基于密钥而不是算法的保密。 1.BASE64 网络上最常见的用于传输8位字节代码的编码方式之一,可在HTTP环境下传递较长的标识信息。一般用于URL的处理,或者说任何你不想让普通人一眼就知道是啥的东西均可以使用Base64编码处理后在发布在网络上。 特点:具有不可读性,即所编码的数据不会被直接看到 2.MD5 即Message-Digest Algorithm5(信息-摘要算法5),用于确保信息传输完整一致 信息摘要:通过一个算法是固定数据产生一个特定的信息

Shi_MiaoXuan的博客 6082

LangGraph的容错机制:从节点失败到图级回滚

核心概念铺垫:讲解LLM应用容错与事务性的核心概念(幂等性、重试策略、降级策略、快照、回滚、原子性、一致性、隔离性、持久性、最终一致性),对比LangGraph容错机制与传统数据库ACID事务、Apache Airflow/Kubernetes Workflow/Kubeflow Pipelines容错机制的异同;LangGraph容错机制的演进历史:用markdown表格梳理LangGraph从0.0.1到1.5.0(截止202X年X月)的容错机制发展历程;节点级别的容错:重试与降级。

AI Python 编程之道的博客 171

IDEA集成selenium自动化测试(Java+Selenuim+testNG+Maven)

文章目录写在前面01 | 新建Maven项目02 | idea集成Selenium03 | 写在前面 因为软件测试的需求和博主比较经常使用Java,于是,想在Idea中集成selenuim,用Java编写测试代码,因此有了这篇文章来记录一下过程。 资源指路: java使用selenium实现模拟浏览器操作API大全 模拟登录 TestNG入门教程 感谢上面博客的大佬。 01 | 新建Maven项目 不使用骨架创建,直接点击左侧Maven,然后一路next即可。 02 | idea集成Sele

aLinxi的博客 8279

经典设计模式的应用场景及类图设计

经典设计模式的应用场景及类图设计

qq_51447436的博客 1万+

Stata实战:5步搞定PSM倾向得分匹配(附完整代码与常见报错解决)

本文详细介绍了使用Stata进行PSM(倾向得分匹配)的5步实战流程,包括数据预处理、模型构建、匹配算法选择、匹配质量诊断和结果解释。提供完整代码示例和常见报错解决方案,帮助研究者高效完成实证分析,提升匹配成功率。

weixin_29214559的博客 589

在线加密解密网站

http://tool.chinaz.com/tools/unicode.aspx

qq_35568099的博客 3177

保姆级教程:用CST 2023一步步复现一个1-8GHz Vivaldi天线(含参数优化与结果分析)

本文提供了一份详细的CST 2023教程,指导读者如何从零开始设计并优化1-8GHz Vivaldi天线。内容涵盖工程设置、参数化建模、仿真加速技巧以及性能优化策略,特别适合需要实现宽带天线设计的工程师和研究人员。通过实战案例,帮助用户掌握Vivaldi天线的核心设计要点和CST高级功能应用。

weixin_30800987的博客 618

[漏洞挖掘与防护] 03.漏洞利用之WinRAR安全缺陷复现(CVE-2018-20250)及软件自启动分析

上一篇文章将详细介绍MS08-067远程代码执行漏洞(CVE-2008-4250)及防御过程,它是Windows Server服务RPC请求缓冲区溢出漏洞,利用445端口,并通过Metasploit工具获取shell及进行深入的操作。这篇文章将详细讲解WinRAR漏洞(CVE-2018-20250),并复现了该漏洞和讲解了恶意软件自启动劫持原理。基础性文章,希望对入门的同学有帮助。

杨秀璋的专栏 1088

设计模式(二)——面向对象设计原则一

一、面向对象设计原则概述 面对对象设计的目标之一在于支持可维护性复用:一方面需要实现设计方案或者源代码的复用;另一方面要确保系统能够易于扩展和修改,具有良好的可维护性。 可复用性(Reusability):指软件能够被重复使用的难以程度 可维护性(Maintainability):指软件能够被理解、改正、适应及扩展的难易程度 为了支持可维护性复用,面对对象设计原则应运而生。不过,千万要记住这些...

weixin_43272205的博客 1529

用Playwright MCP让AI帮你完成所有浏览器自动化

Playwright MCP(Model Context Protocol)是微软基于 Playwright 框架推出的 AI 浏览器自动化新协议。它通过结构化快照数据和自然语言指令结合大型语言模型(如 GPT),实现无需编码的网页交互。无论你是要测试登录流程、抓取价格数据,还是用 AI 远程控制浏览器,Playwright MCP 都能大幅降低门槛,让“说人话”也能驱动自动化脚本。本篇将从功能介绍、技术架构、使用方法到实际场景,带你全面理解这一自动化革命。

todoitbo的博客 3万+

RSA非对称式加密算法复习

原文作者:阮一峰 阮一峰的博客分享了很多科技知识,有比较深刻的印象。 原文地址: http://www.ruanyifeng.com/blog/2013/06/rsa_algorithm_part_one.html http://www.ruanyifeng.com/blog/2013/07/rsa_algorithm_part_two.html 如果你问我,哪一种算法最重要

TOPGUN的专栏 1910

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

【网络安全期末复习1】对称加密算法和非对称加密算法的主要区别以及各自优缺点

主要区别: 对称加密算法的加密密钥和解密密钥相同。或者虽然不同,但是可以通过其中一个密钥推导出另外一个密钥。 非对称加密算法的加密密钥和解密密钥不相同,并且从其中一个很难退出推导出另外一个。 对称加密优缺点: 优点 1、加解密效率高,适合加密大量数据 2、密钥相对比较短 3、硬件容易实现 缺点 1、需要以安全方式进行密钥交换 2、密钥管理复杂,如每个人需持有许多密钥 非对称加密算法优缺点: 优点 1、安全性更高,公钥是公开的,但私钥只有自己知道 缺点 1、加密和解密花费时间长,速度慢,只适合对小数

feixs1的博客 3261

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

加密算法基础复习

1 原则:在计算机系统中,数值一律有补码来表示(存储). 所有的运算都以补码形式进行 2 补码:     正数的补码是其本身。6的补码是:00000110     负数的补码,通过对该数绝对值的补码按位取反,再对整个数加1,如-7,先计算7的补码为00000111,然后取反,得到11111000,然后再加1,得到1111001。         例子,计算 5&-6的结果  ...

shanshang的专栏 191

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

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

期末复习资料 - 密码学总结

期末复习资料 - 密码学总结 【下载地址】期末复习资料-密码学总结 《密码学期末复习》是一份专为现代密码学学习者打造的复习资料,全面覆盖密码学核心概念、加密算法、安全协议及其实际应用。通过清晰的结构和详实的解释,帮助学生高效复习,轻松应对期末考试。无论你是想巩固基础知识,还是深入理解复杂算法,这份资料都能为你提供有力支持...

gitblog_06785的博客 387

大数据安全复习笔记——第三章对称加密算法

第三章——对称加密算法

weixin_45736432的博客 553

【图解安全加密算法】加密算法系列索引 | 附相关算法的Python保姆级实现教程 | 物联网安全 | 信息安全

【图解安全加密算法】加密算法系列索引 | 附相关算法的Python保姆级实现教程 | 物联网安全 | 信息安全

菜菜的菜园子 660

RSA加密算法详解

  小学数学教材对互质数是这样定义的:“公约数只有1的两个数,叫做互质数。”这里所说的“两个数”是指自然数。   判别方法主要有以下几种(不限于此): (1)两个质数一定是互质数。例如,2与7、13与19。 (2)一个质数如果不能整除另一个合数,这两个数为互质数。例如,3与10、5与 26。 (3)1不是质数也不是合数,它和任何一个自然数在一起都是互质数。如1和9908。 (4)相邻的两个自然数是互质数。如 15与 16。 (5)相邻的两个奇数是互质数。如 49与 51。 (6)大数是质数的两个数是互质数。

qq_47112287的博客 7805

Android最全Android中加密算法(1),Android面试复习重点

这个题库内容是比较多的,除了一些流行的热门技术面试题,如Kotlin,数据库,Java虚拟机面试题,数组,Framework ,混合跨平台开发,等// 将字节转为整数// 将整数转为16进制// 如果长度等于1, 加0补位//打印得到的md5// 如果算法不存在的话,就会进入该方法中登录网站:验证md5准确性。

2401_84538135的博客 664

宁波大学信息安全期末考避坑指南:如何高效复习加密算法与防火墙技术

本文为宁波大学网络工程专业学生提供信息安全期末考高效复习指南,重点解析加密算法与防火墙技术两大核心模块。通过算法对比记忆表、计算题解题模板和防火墙配置要点速查表等实用工具,帮助学生避开常见失分陷阱,掌握RSA、DH等必考加密算法的应用技巧,以及状态检测防火墙的配置方法,实现短期高效备考。

weixin_29260291的博客 350

2019年末逆向复习系列之今日头条WEB端_signature、as、cp参数逆向分析

郑重声明:本项目的所有代码和相关文章, 仅用于经验技术交流分享,禁止将相关技术应用到不正当途径,因为滥用技术产生的风险与本人无关。 这篇文章是公众号《云爬虫技术研究笔记》的《2019年末逆向复习系列》的第四篇:《今日头条WEB端_signature、as、cp参数逆向分析》 本次案例的代码都已上传到Review_Reverse上面,后面会持续更新,大家可以Fork一波。 逆向背景 今日头条算是新闻聚合领域的霸主了,它首创的推荐算法也是被后续的新闻聚合平台争相模仿,虽然现在今日头条平台逐渐下沉,..

zhangge3663的博客 968

用实例给新手讲解RSA加密算法

图为 RSA公开密钥算法的发明人,从左到右Ron Rivest, Adi Shamir, Leonard Adleman. 照片摄于1978年    RSA加密算法是最常用的非对称加密算法,CFCA在证书服务中离不了它。但是有不少新来的同事对它不太了解,恰好看到一本书中作者用实例对它进行了简化而生动的描述,使得高深的数学理论能够被容易地理解。我们经过整理和改写特别推荐给大家阅读,希望能够...

闲云野鹤的专栏 285

RSA加密算法(登陆算法)

   RSA加密算法是最常用的非对称加密算法,CFCA在证书服务中离不了它。但是有不少新来的同事对它不太了解,恰好看到一本书中作者用实例对它进行了简化而生动的描述,使得高深的数学理论能够被容易地理解。我们经过整理和改写特别推荐给大家阅读,希望能够对时间紧张但是又想了解它的同事有所帮助。    RSA是第一个比较完善的公开密钥算法,它既能用于加密,也能用于数字签名。RSA以它的三个发明者Ron Ri...

NetSnake_的博客 1031

2019年末逆向复习系列之淘宝M站Sign参数逆向分析

郑重声明:本项目的所有代码和相关文章, 仅用于经验技术交流分享,禁止将相关技术应用到不正当途径,因为滥用技术产生的风险与本人无关。 这篇文章是《2019年末逆向复习系列》的第一篇:《淘宝M站Sign参数逆向分析》 本次案例的代码都已上传到Review_Reverse上面,后面会持续更新,大家可以Fork一波。 逆向背景 淘宝网的爬取大概是每一个爬虫工程师入行以来的终极目标之一了,如何自动化登录淘宝?如何模拟操纵淘宝网的滑块?相信这是很多爬虫群经久不息的话题了。我们这次的案例是逆向Web版的淘宝网.

zhangge3663的博客 1541
上一篇: Oracle数据库的下载安装教程
下一篇: instanceof 关键字 java 比较
libingbojava
博客等级 码龄9年 64粉丝 111原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值