自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(97)
  • 收藏
  • 关注

原创 为fastapi提供的接口,增加身份验证功能

添加身份验证后的接口能够防止非法用户写入内容,能够节省一定的磁盘空间:main文件内容:数据库的文件内容如下:结果展示可以通过交互式文档获得相应的语句,并且去执行post操作,实现保存用户传入内容落盘。可以看到该api后面有一个锁的标志,即说明该api进行了身份验证的安全性操作,点击锁的标志,进行身份验证(在身份验证之前需要先创建一个合法的用户,点击register的api创建合法用户):创建合法用户之后就可以登录,才能验证成功:至此,用户已经成功登录,然后点击try it out获得其认证信

2023-04-17 17:14:34 1098

原创 使用fastapi提供接口

FastAPI是一个用于构建API的现代、快速(高性能)的 web 框架。其基于Starlette(负责 web 部分)和Pydantic(负责数据部分)。fastapi是一个从Starlette继承的类。使用fastapi做一个接口,接口的功能是提供给他人调用,并将他人调用的内容落盘保存。

2023-04-17 17:07:02 913

原创 k8s部署nginx并使用nginx反代paas应用

通过部署在k8s里的nginx反代先前部署到paas的应用(主要涉及deployment/svc/configmap)其中,反代是指反向代理(Reverse Proxy),是指以代理服务器来接受 internet上 的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给 internet 上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。简单来说就是真实的服务器不能直接被外部网络访问,所以需要一台代理服务器,而nginx就是这里的代理服务,主要是实现网络转发。

2023-04-17 16:44:12 1917

原创 python实现端口扫描器

用python写一个端口扫描器,扫描ip网段每个IP开放哪些端口,并将扫描结果写入文件保存。

2023-04-17 16:19:19 1175

原创 leetcode之动态规划

动态规划

2022-11-23 22:13:46 179

原创 模型划分及并行

模型划分

2022-09-06 21:31:11 1632

原创 分布式机器学习概念

分布式机器学习理论概念

2022-09-06 18:29:30 1511

原创 分布式机器学习---数据与模型划分

机器学习模型分割的方法

2022-09-02 17:01:23 1297 2

原创 机器学习泛化误差

机器学习入门

2022-08-30 22:24:29 862

原创 机器学习损失函数

机器学习入门

2022-08-30 21:35:20 1378

原创 机器学习分类

机器学习入门

2022-08-30 21:28:20 2092

原创 密码学---数字签名和认证协议---数字签名标准

数字签名标准DSS的基本方式RSA签名过程DSS签名过程数字签名算法DSA全局公钥用户私钥x用户公钥y用户为待签消息选取的秘密数k签名过程验证过程数字签名标准(Digital Signature Standard,DSS)是美国公布的联邦信息处理标准,采用SHA和一种新的签名技术的标准称为DSADSS的基本方式DSS的签名方式使用的算法只能提供数字签名功能,不像RSA,RSA的签名方式使用的RSA算法既能用于加密和签名,也能用于密钥交换。RSA签名过程签名产生:将消息输入到一个哈希函数以产生一个固

2021-10-07 22:08:10 14343

原创 密码学---数字签名和认证协议---数字签名的基本概念

数字签名的基本概念数字签名应该满足的条件数字签名的产生方式由加密算法产生单钥加密公钥加密实例总结由签名算法产生数字签名的执行方式直接方式具有仲裁的方式实例数字签名应该满足的条件数字签名的目的是保护通信双方中的一方防止另一方的欺骗或伪造。数字签名应该具有以下的性质:能够验证签名产生者的身份,以及产生签名的日期和时间能用于证实被签消息的内容数字签名可由第三方验证,从而能够解决通信双方的争议因此,数字签名具有消息认证功能。为实现上诉三条性质,数字签名应该满足以下要求:1.签名的产生必须使用发方

2021-10-07 13:13:52 4972

原创 密码学---公钥密码体制---椭圆曲线密码体制

椭圆曲线密码体制椭圆曲线密码体制概念椭圆曲线原理椭圆曲线密码体制流程参数密钥产生加密过程解密过程实例椭圆曲线密码体制概念椭圆曲线密码体制ECC可以用短得多的密钥获得同样的安全性,因此具有广泛的应用前景椭圆曲线原理椭圆曲线的曲线方程为是以下形式的三次方程:椭圆曲线密码体制流程参数密钥产生加密过程解密过程实例...

2021-10-06 21:21:31 4420

原创 密码学---公钥密码---NTRU公钥密码系统

NTRU公钥密码系统NTRU公钥密码系统概念NTRU公钥密码系统流程参数密钥产生加密流程解密流程NTRU公钥密码系统概念NTRU是一种基于环的公钥密码系统,系统的特点是密钥短且容易产生、算法的运算速度快、所需的存储空间小NTRU公钥密码系统流程系统建立在整系数多项式环上,现对多项式环做如下介绍:设R表示最高次数不超过N-1的所有整系数多项式集合,设a=a0+a1x+a2x2+…+aN-1xN-1,b=b0+b1x+b2x2+…+bN-1xN-1是R上的两个元素,且定义R上的加法定义为:a+b=(a

2021-10-01 15:49:52 3953 1

原创 密码学---公钥密码---Rabin密码体制

Rabin密码体制Rabin密码概念Rabin密码体制流程密钥产生加密过程解密过程Rabin密码概念Rabin密码是对RSA密码体制的一个改进。因为在RSA密码体制下,一旦n被分解成功,则RSA密码体制就被破译,因此破解RSA密码体制的难度不超过大整数的分解。而Rabin密码体制已经被证明破译难度和分解大整数一样困难。与RSA相比,Rabin有如下几个特点:1.Rabin不是以一一对应的单向陷门函数为基础,对同一密文,可能有两个以上对应的明文2.破译该体制等价于对大整数的分解3.Rabin密码体

2021-09-29 16:48:18 3870 1

原创 密码学---公钥密钥---背包密码体制

背包密码体制背包密码体制概念背包密码体制流程加密过程加密实例解密过程超递增背包问题贪婪算法解密实例改进伪装超递增背包的实例背包密码体制概念背包问题就是从n个不同的正整数构成的n元组A(a1,a2,a3,…,an,)中找出和为已知正整数S的所有ai。其中A称为背包向量,S是背包的容积。背包问题求解的本质就是找到元组A的子集B,使得B中所有元素的和为背包容积S。但是考虑到当元组个数非常大时,计算量非常大,因此背包问题是NPC问题。背包密码体制流程加密过程由背包问题构造公钥密码体制同样是要构造一个单向

2021-09-29 16:23:52 5224

原创 密码学---公钥密码---RSA算法

RSA算法RSA算法流程1.产生密钥2.分组加密解密实例RSA算法的计算问题加密和解密中的计算密钥产生过程的计算问题改进的RSA算法RSA的安全性RSA算法流程RSA算法是迄今为止理论上最为成熟的公钥密码体制,并且已经得到广泛的应用。1.产生密钥产生密钥的过程如下:选择两个保密的大素数P和q计算n=p×q,φ(n)=(p-1)(q-1)选择公钥e,e∈(1,φ(n))范围内的一个整数,且gcd(φ(n),e)=1计算密钥d,d·e≡1 mod φ(n),即d≡e-1 mod φ(n)以{

2021-09-28 23:56:20 14391 1

原创 密码学---公钥密码---公钥密码体制

公钥密码体制公钥密码体制的概念公钥密码体制的原理使用公钥密码体制加密传送消息的过程使用公钥密码体制进行消息认证的过程使用公钥密码体制的加密和认证过程公钥密码算法要求公钥密码体制的攻击1.穷搜索攻击2.根据公钥计算密钥3.可能字攻击在公钥密码体制之前,所有的密码算法都是基于代换和置换这两个基本工具。公钥密码体制为密码学的发展提供了新的理论和技术基础:1.公钥密码算法的基本攻击不再是代换和置换,而是数学函数;2.公钥密码以非对称的形式使用两个密钥,两个密钥的使用对保密性、密钥分配、认证等都有着深刻的意义。公

2021-09-27 23:49:21 9408 1

原创 密码学---公钥密码---数学知识

密码学中常用的数学知识1.群、环、域半群群群的种类群的阶数实例环实例域域的分类实例2.素数、互素数3.模运算4.模指数运算5.费尔马定理、欧拉定理、卡米歇尔定理6.素性检验1.群、环、域群、环、域都是代数系统(代数结构)。代数系统包括数学对象的集合以及在集合上采用的关系或运算(可以是单元运算、也可以是多元运算)常用集合:Q:有理数集合I:整数集合Z:正整数集合R:实数集合C:复数集合Zn:Zn={0,1,2,3,…,n-1}Mn:I上的n*n方阵R(x):R(x)是所有实系数的多项式

2021-09-27 22:44:18 3054

原创 机器学习---强化学习

强化学习定义组成与监督学习的区别假设过程算法定义组成由建立函数、状态、行为、智能体组成。定义:Rt是t时刻的奖励函数值St是t时刻的状态At是t时刻的行为与监督学习的区别强化学习与监督学习的区别如下:1.训练数据中没有标签,只有奖励函数2.训练数据不是直接给定的,而是由行为获得的3.现在的行为不仅影响后续训练数据的获得,也影响奖励函数的取值4.训练的目的是构建一个“状态–>行为”的函数,其中状态描述目前内部和外部的环境,在此情况下,智能体需要通过该函数决定在该状态下应该采取的

2021-09-23 19:17:05 1142

原创 深度学习模型---卷积神经网络

卷积神经网络CNN的组成卷积层池化层zero padding全连接层LENET神经网络ALEXNET神经网络较流行的神经网络注意卷积神经网络(Convolutional Neural Network)是一种前馈神经网络。常用于图像领域。CNN的组成CNN由卷积层、池化层、全连接层组成。卷积层卷积层的作用是进行特征提取。通过卷积核在输入数据上进行卷积计算(即卷积核对应输入数据的矩阵和卷积核矩阵的内积运算,对应位置的数字相乘再相加求和),从而减少数据的维度,达到特征提取和降低维度的作用。如下:对

2021-09-22 21:05:27 2340

原创 linux---iptables

linux--防火墙防火墙---iptables基本概念关于iptables规则链规则表命令选项通用条件隐式条件:显式条件匹配iptables防火墙规则的导入、导出例子防火墙—iptables基本概念关于iptables1.iptables是软件防火墙,属于应用层的防火墙,是由linux内核去实现的。2.iptables只是一个给netfilter传递参数和查看参数信息的软件,是linux内核中的一个防火墙管理工具,不是防火墙工具,linux中的防火墙功能是由linux内核实现的。3.iptab

2021-09-22 20:37:20 670

原创 urllib之request模块--解决反扒

本文目录urllib的基本概念urllib库的基本函数和用法urllib.request 模块:urlopen函数urllib的基本概念urllib是python中的URL处理模块,Python内置的库,不需要我们安装。urllib是一个包,它收集了4个用于处理url的模块:①urllib.request :请求打开和读取url模块②urllib.error :异常处理模块(包含由urllib.request造成的异常)③urllib.parse :解析模块(拆分、合并等)④urllib.rob

2021-09-22 20:29:53 666

原创 密码学---流密码

流密码流密码的基本思想基本概念同步流密码有限状态自动机密钥流产生器线性反馈移位寄存器线性反馈移位寄存器的一元多项式表示‘m序列的伪随机性m序列密码的破译非线性序列非线性序列常用的非线性序列生成器1.Geffe序列生成器2.JK触发器3.Pless生成器4.时钟序列生成器流密码是按单个字符组个进行加密的密码学。流密码的基本思想流密码的基本思想是利用密钥k产生一个密钥流z=z0z1z2…,并使用如下加密规则对明文串x=x0x1x2…加密,得到加密后的密文y=y0y1y2…=Ez0(x0)Ez1(x1)…。

2021-09-17 13:26:08 7029

原创 现代密码学---综述

综述安全威胁被动攻击和主动攻击被动攻击主动攻击威胁来源用户恶意软件安全防护措施保密业务认证业务完整性业务不可否认业务访问控制信息安全模型考虑因素模型组成未授权访问的安全机制密码学加密算法的无条件安全和计算上安全保密通信系统结构加密过程、解密过程和破解过程设计要求密码分类单钥体制双钥体制密码攻击分类唯密文攻击已知明文攻击选择明文攻击选择密文攻击古典密码随着互联网的发展,信息安全的威胁也逐渐被重视。安全威胁信息安全所面临的威胁来自很多方面,宏观上可以分为自然威胁和人为威胁。自然威胁如自然灾害、恶劣的场地环

2021-09-13 23:23:31 1059

原创 机器学习------联邦学习的安全与隐私

联邦学习的安全与隐私安全和隐私攻击攻击目标攻击方式1.恶意参与者2.恶意服务器攻击方法投毒攻击对抗攻击参与者GAN攻击推理攻击联邦学习的防御措施安全防御措施1.投毒攻击的防御--异常检测、对抗训练2.对抗攻击防御隐私防御措施1.同态加密与安全多方计算2.差分隐私保护联邦学习面临的挑战联邦学习是一种新型的分布式学习框架,与分布式机器学习中的数据并行化训练具有相似的逻辑结构(即拥有不同训练数据的多个节点共同执行一个机器学习任务)。允许多个参与者之间共享训练数据而不会泄露其数据隐私。参与者的数据隐私可以通过只上

2021-08-28 21:57:00 4460

原创 机器学习------安全与隐私问题综述

近年来机器学习的发展十分迅速,机器学习被用在很多场景。机器学习的学习方式1.集中学习即传统的机器学习训练,在模型训练之前,各方的数据需要被数据收集者集中收集,然后由数据分析者进行模型训练。数据收集者和数据分析者可以不同缺点:用户的数据被收集之后,用户很难获得对数据的控制权2.联邦学习联邦学习则是通过共享一个全局模型,参与者的数据保留在本地,只需将训练后的模型更新参数上传到参数服务器,由参数服务器整合参数,从而实现模型更新即可。与传统机器学习相比,联邦学习提高了学习效率,还能解决数据孤岛问题,保

2021-08-28 21:52:05 3530

原创 编译原理--词法分析器

编译原理--词法分析器词法分析器的生成正规式和正规集NFA向正规式的转换正规式向NFA的转换有限自动机确定有限自动机DFA的化简非确定有限自动机两者区别NFA向DFA的转化词法分析器的生成词法分析的任务就是从左至右逐个地对源程序进行扫描,产生一个单词符号(由单词种别,单词自身的值构成)词法分析器是编译过程中词法分析阶段使用的工具。该工具的生成需要依靠正规式和有限自动机。其具体步骤如下:第一步:对照语言的词汇表(即正规集)写出各类单词的正规式第二步:利用正规式到NFA的转换算法构造识别所有单词的N

2021-03-16 20:32:51 1785

原创 计算机原理--寻址方式

计算机原理--寻址方式立即数寻址寄存器直接寻址寄存器间接寻址存储器直接寻址存储器间接寻址偏移寻址相对寻址基址寻址变址寻址基址寻址和变址寻址的区别堆栈寻址复合寻址寻址方式的目的是用来找操作数的物理地址。由于指令中地址码的位数有限,因此不建议直接在地址码中存放操作数的物理地址(会导致内存中的很多空间表示不了)指令寻址一般是通过程序计数器(PC)去累加寻找指令的地址,对于某些特殊情况而言,跳转指令的地址就需要和操作数寻址一样了。因此我们一般说的寻址是指操作数寻址基本寻址方式分为立即数寻址、寄存器直接寻址、寄

2021-03-15 13:59:37 5811

原创 hadoop、spark、zookeeper

Hadoop:是一个能够在跨计算机的分布式环境中存储和处理大数据的开源框架。既有高容错、高可靠性、高扩展性的特点。可靠性体现在:1.数据的冗余2.机架策略(通过节点之间发送一个数据包,感应节点是否在同一个机架,一般本机架设置一个副本,其他机架再设置一个副本)3.心跳机制(NameNode 周期性从 DataNode 接受心跳信息和块报告,NameNode 根据块报告验证元数据)适合于大规模数据、流式数据(写一次,读多次)、能在一般硬件上运行。不适合读大量的小文件、低延时的数据访问、频繁的修改

2021-03-10 18:12:56 454 1

原创 编译原理--语法分析

编译原理--语法分析语法分析是编译的第一步,其有关的基本概念如下:闭包和正规闭包的区别在于当V不包含空字时,正规闭包比闭包少一个空字上下文无关法的表示方法:乔姆斯基形式语言体系,把分为分为四种类型:0,1,2,3型。其区别在于产生式的不同0型的描述能力最强,3型的最弱。现今的程序设计语言,在编译过程中,仍然采用上下文无关法去描述其语言结构(因为上下文无关法是最成熟的表示方法),不能用上下文无关法描述的语法内容放在语义分析去进行...

2021-03-10 15:50:30 3400

原创 计算机原理--计算机组成、程序执行过程、性能评价

计算机原理计算机组成程序的执行过程计算机性能评价Amdahl定律计算机组成现代计算机大多采用冯诺依曼的体系结构,有一些非冯诺依曼的体系结构,如量子计算、神经网络、基因算法等冯诺依曼的体系结构中计算机由5大部件组成:1.运算器:进行算数运算和逻辑运算,由寄存器和运算器组成2.控制器:控制程序的运行,协调各个部件的工作3.存储器:存放数据、运行程序和中间结果,由记忆元件和电路组成4.输入设备:将输入的内容转换成计算机能够识别的格式5.输出设备:将计算机的语言转换成用户能够识别的格式其框架图如下

2021-03-10 15:48:13 348

原创 操作系统逻辑结构

操作系统逻辑结构操作系统逻辑结构的种类操作系统最基本的硬件中断机制中断作用相关概念中断响应过程操作系统逻辑结构的种类1.整体式结构以模块为单位构建。特点如下:1.模块设计、编码和调试相互独立,能够做到并行开发2.模块调用自由3.模块之间的通信多以全局变量进行4.模块之间的调用较困难2.层次式结构所有功能模块按照调用次序排成若干层,相邻层间只有单向依赖和单向调用分层原则:与硬件有关的放在最底层,外部特性的放在最外层特点:结构清晰,避免循环调用;整体问题局部化,系统的正确性容易保

2021-03-02 18:53:31 527

原创 编译原理概述

编译原理概述编译程序的分类解释程序和编译程序的区别编译程序的工作过程编译程序的结构编译程序是等价地将高级语言程序装换为低级语言程序(如汇编语言或机器语言程序)的程序编译程序的分类编译程序分为诊断编译程序,优化编译程序,交叉编译程序,可变目标编译程序。1.诊断编译程序:其作用是发现程序的错误,进行调试2.优化编译程序:其作用是提高目标代码的程序效率3.交叉编译程序:编译程序产生不同于宿主机的机器代码,则称为交叉编译程序4.可变目标编译程序:仅编译和目标机器有关的部分的程序解释程序和编译程序

2021-03-02 15:10:49 2804

原创 操作系统概述

操作系统概述操作系统的种类1.分时系统2.实时系统3.嵌入式操作系统4.网络操作系统5.微机操作系统操作系统的功能操作系统的发展阶段1.手工操作2.单道批处理3.多道批处理4.分时系统思考1.程序运行过程2.计算机的开机流程3.分时技术和多道批处理的差别4.没有安装操作系统的计算机启动过程和结果待补充答案操作是一个大型系统程序,是运行于硬件之上的一个软件,其可以提供用户接口,为应用程序分配和调度软硬件资源,控制与协调应用程序的并发活动其位置图:操作系统的种类1.分时系统多个用户使用同一台主机,且

2021-03-01 15:32:08 224

原创 堆和栈的区别

栈是存放局部变量的区域,由操作系统分配内存空间,因此当程序结束时,变量会自动回收,因此不用手动销毁变量从而释放内存空间堆是存放申请内存的区域,由程序员分配内存空间,程序运行结束,不会自动销毁内存空间,因此要手动清理,否则,会造成内存泄露内存溢出和内存泄露:内存泄露(memory leak):内存没有被及时的释放,导致内存不够内存溢出(out of memory):申请的内存超过系统能够分配的内存...

2021-02-23 14:22:18 350

原创 nginx基础架构

特点:1.高度模块化2.web服务器和客户端是一对多的关系3.采用异步非阻塞的方式去处理客户端的请求,因此保证其高并发能力同步和异步是描述通信模式的概念,而阻塞和非阻塞是描述处理调度方式的概念...

2021-02-23 11:49:34 168 2

原创 常见存储类型

import threadpoolfrom subprocess import Popen,PIPE##得到服务和id的关系函数,不同的id其服务名称可能相同def get_dir(dir):id = dir.split(’/’)[5] ##得到server_idname = id_and_name_dict.get(id) ##得到sever_id对应的server_nameprint(name,id)if name not in use.keys():use[name]=dirp

2021-01-11 18:55:33 11358

原创 python使用qq邮箱发送带有附件的邮件

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDK0kQvqlw3s36mLUC7E58aG5Cj9qvqGlUKnr+wmaPbNXkUzq+bGvysWz6C1Q/5LGlJy/bUytnc/q7tjLFhRrtoJQcw+Dzk75n+5PURMZMSY3W/BNdnUhDA3isE/DHBVM6yfqOIh1T4IZUEXvhQPQgtIwbbelRWnTdaJGqUKAv49wFUsXJQKkZOLYX3psTZnzYwN9YLXPvEm6F2ty9TQMUYbmq+

2021-01-09 14:50:33 1245

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除