自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

本散修的一些学习心得与笔记,道友请自便。

都是学习的笔记,没有什么技术含量

  • 博客(110)
  • 收藏
  • 关注

原创 C#语言:散修笔记

前言是我写完本篇文章后补充的:如果道友是奔着Unity来学习的,只需要学到继承多态这里就可以了。后面完全是看道友有没有兴趣继续学下去。该语言是一门面向对象语言,十分强大的语言,在微软平台上面发挥空间十分大,还有一些强大的功能,比如使用微软的winform平台,能直接弄一个电脑窗口,在winform上面写一个简易版的QQ更不是问题,但这些仍需慢慢探索。本散仙是奔着去了解一下的心态,没想到学到后面越学越上瘾,因为C#这门语言能干的事情非常多,有些能够较快的得到反馈。话不多说了,祝各位道友一路顺利~

2022-09-20 08:43:18 1477

原创 Python语言:散修笔记

Python是一门非常方便省时间的语言由我自己学过C语言的基础上来学习的时候,Python省略了很多很多的条条框框,同时又是一门面向对象的语言,所以在学习的过程中与C#非常相似。因此,本篇文章适用于什么基础都没有的同学,但即使是这样,我还是希望各位学习一下C或Java,先难后易,Python相比于这几门确实是简单的,所以先难后易,先苦后甜会更甜。Python的变量名与其他语言差不多,都是for ,if 等等这些关键词是不能作为变量名。

2022-09-20 08:28:04 6196 6

原创 登录页面漏洞总结

汇总一些项目中经常碰到的,和做项目的时候会用到的测试方法

2024-05-21 12:53:19 322

原创 网络安全—SSL安全访问应用

环境:Windows Server 2003。SSL安全访问应用。

2024-01-03 13:31:38 1476

原创 网络安全—模拟ARP欺骗

使用Windows Server 2003。模拟ARP欺骗。

2024-01-03 13:29:50 1258

原创 网络安全—模拟IP代理隐藏身份

使用Windows Server 2003。模拟IP代理隐藏身份。

2024-01-03 13:29:09 1250

原创 网络安全—IPSec安全策略

使用Windows Server 2003系统。实现IPSec安全策略。

2024-01-03 13:28:19 1237

原创 网络安全—PGP8.1软件应用

我们可以看到,签名后的数据是前面部分是加密的数据,后面才是我们的签名,也就是说我们只需要将这一段完整的数据发过去就行, 因为PGP已经帮我们拼接好了,整个数据就是:数据+签名,当然还有其他细节数据,我们不深究,主要是通过这个了解到了PGP的发送格式,只需要发送签完名后的数据就行,之前的可以不发送,因为后面验证完成后的数据会默认给你复制好,然后你再点一次解密就完成了解密。现在开始将上面你要发送的人的名字拖到下面来(也就是将对方的公钥拖到下面的接收方的表),这里是可以拖动的,点住名字直接拖拽下来。

2024-01-03 13:27:38 1380

原创 计算机网络—网络搭建NAT内外网映射

使用Windows Server 2003。搭建网络拓扑实现内外网互通。

2024-01-03 13:17:08 1450

原创 网络安全—部署CA证书服务器

使用windows Server 2003环境。部署CA证书服务器,实现申请、颁发证书

2024-01-03 12:40:20 1717

原创 网络安全—PKI公钥基础设施

目前还有点懵,但是我们需要知道的是,我们公钥交换不安全,需要第三方给我们一个可靠的安全公钥交换,但是和我们预期的不同的是,不是机构带着我们去做公钥交换,而是给你一个可以提供安全公钥交换的证书,交换证书就能够完成安全的公钥交换。但是由于他的缺点是加密速度非常慢,密文会变长,既然如此,那就正好了,我们散列出来的值就很小,这就是后面的数字签名,我们对散列值进行签名就是数字签名,数字签名由于是非对称的签名,签名是私钥签,公钥验证,所以其他人可以通过公钥来验证身份。这就完美打破了你的这个"骇客"想法了。

2024-01-01 14:07:44 1179

原创 网络安全—认证技术

报文摘要使用的是散列函数,散列函数是单向散列函数。也可以叫做哈希函数等等,且散列函数是公开的,谁都知道,只不过将散列函数出来的值进行加密的秘钥是保密的,这个后面再说。即选定了x,直接散列函数H(x) = y很容易计算,反过来你有y但是你希望得到x就是很困难的事情。注意:x选择是可以随机长度的,但是生成出来的值是固定长度的。希望攻破散列函数值的话那就是碰撞性,能够在较短的时间和次数下真的找到生成y的散列函数参数x。

2023-12-30 20:16:29 1139

原创 80x86汇编—分支循环程序设计

其次很容易忽略的就是,我们02中断号显示的字符码数值都是从dl中取,所以在处理好的数据后,记得将处理好的数据存进dl中。细节:最重要的就是题目已经提醒过了,很显然我在做的过程中还是把他忘记了,因为只有2个字节16位偏移地址,所以偏移量需要乘2,这就是我哦们table[bx]用bx查找表的时候需要记得将地址乘以2,因为一个元素就占两个位置,在汇编中就是这样,我们8086是以字节为单位,这里的table一个地址元素就是dw字型,所以我们要。细节:还是别忘记了字符是db,所以交换的时候记得用8位寄存器。

2023-12-25 00:24:37 918

原创 80x86汇编—汇编程序基本框架

很明显这个是给自己编写的段一个归属,比如我datas段就是专门给ds段的,所以在assume中就是ds:datas,这就将我们的datas段数据连接到了数据段了,说到连接,那其实assume的本质就是为了汇编在link的时候将自己写的段设置到正确的段位置。注意事项:assume是 给自己定义的数据块指明回家的路,回到自己的段内,意思是DS冒号后面你的数据段属于DS段,那你要是用你他的时候就需要在DS里面访问(这里是一个坑,下面我接着说很重要的一点)

2023-12-23 21:07:43 1018

原创 80x86汇编—寻址方式

很有意思的是,我一开始以为基地址段地址,因为我一直觉得段地址是老大,我们偏移地址才是小弟,所以我们都以他为基准就以为段地址是基地址了,但其实不是的,BX和BP可以作为基地址, 基地址的意思是在偏移地址中能够作为一个基准,比如你MOV了一个地址进BX里面,我们寻址的时候可以用上基地址寻址以BX为基准,不用修改它,然后使用变址寄存器来改变。比例因子:这位就好笑了,其实就是乘一个数字,一般是1,2,4,8,因为计算机就是用这几个进制,而且比例因子出现是因为我们可以通过比例因子乘以变址寄存器跳着找地址。

2023-12-23 00:09:05 943

原创 80x86汇编—指令系统

如果不指明的话就按照目的操作数的单位进行存放,比如MOV AX,6的话肯定6进去AX就变成了16位二进制的6,同理内存也是,没有指明的话就是看你操作数大小,操作数能够用8086中单位存的下的话,单位是一个字节,也就是8位bit能够放得下的话就是一个B单元,大于8bit即大于1B的话我们就用一个word几一个字单元,也就是16bit存,有点内存对齐的意思,反正这是汇编器翻译的。

2023-12-22 18:22:45 1121

原创 80x86汇编—80x86架构

使用8086架构进行学习,本章节如果没有学过计算机组成原理将可能有点难以理解,由于我学过了,所以记笔记的时候我会加上计组的知识来解释,看不懂直接跳过解释即可。

2023-12-21 02:29:23 934

原创 计算机组成原理—总线

流程:CPU发出一条控制信号发到控制总线,然后互控制总线找到对应的设备,然后设备对控制总线就有了控制权,拿到控制权后就可以发出控制信号发到控制总线中,然后设备对应的指令就可以给到CPU执行,然后CPU就会继续发出控制信号这时候就会将数据传到那个设备上,或者你用的是U盘的话就是将U盘数据拷贝到计算机中等等操作,总之一切的操作都是因为信号的发出而执行,计组中万变不离其宗的就是这个。

2023-12-15 20:19:20 79

原创 计算机组成原理—中央处理器CPU

硬布线设计中,这个CU真的是恶心,小小CU竟然需要承受这么多电路,硬布线设计这么恶心这么难,我们猜也能够猜到他肯定是用在RISC架构精简指令集,因为指令少,所以相比于复杂指令集来说是更好设计的,同时硬布线设计通常具有更高的执行速度,因为它是直接通过物理电路实现指令的执行。在最后在学习中我会发出的疑惑:老子压根不想用硬布线设计,这设计太恶心太不完美了,也就设计人员在设计的时候让我感受到了优雅的操作,有没有一种不要搞这么多电路的,可不可以像设计程序一样一个部分一个部分的设计,然后封住?

2023-12-15 00:44:07 987

原创 计算机组成原理—指令系统

指令系统学习完后能够知道为什么我们在平时的软件会需要提供不同位数的下载包,一般的正规软件下载都会提供32位64位还有不同平台的比如windows和mac系统给对应系统下载安装。在还没学习本章知识点之前我只知道平台不同,系统位数不兼容问题,但也只是口头上说,看别人是这么讲我也这么讲,真的要了解为何是平台不兼容的根本原因说白了真的不太懂,本章学完后真的解决了我这个疑惑,并且结束本章学习后对计算机底层有了更深一层的理解。

2023-12-11 01:23:05 103

原创 计算机组成原理—存储系统

动态的英文是:Dynamic,因此我们的DRAM中的D就是动态,动态是因为我们的DRAM在读的时候是破坏性读出,由于数据是由电容存储的,所以我们每一次读出的时候都需要进行一次重写的操作,因此叫做动态RAM,还有一个是动态特性就是由于电容会在一个时间段过后会丢失电荷,所以我们需要对其进行刷新,也就是进行充电,这也是叫做动态的原因,同时也是DRAM为何比静态SRAM慢的原因,需要考虑到刷新并且读出来后需要重写操作,这些时间加起来就会拖慢程序运行。如何将不常访问的替换下去,这就需要用到我们的替换策略,

2023-12-07 23:55:08 592

原创 网络安全—Kerberos认证系统

首先在其中生成的Session都是作下一次通话是否正确为目的,也就是为了保证认证过程双方身份都是正确的除了客户端不知道KDC的密钥之外,我们在本地使用密钥加密发送过去KDC是知道如何解密的,利用这个特性,KDC就可以使用他自己内部的密钥进行信息加密作为票据,我们无法解密,但是我们发过去响应的时候总是带有时间戳或者客户端信息,我们票据中也带有这些信息,然而这些信息都是KDC才能解密, 所以票据就代表了对方发过来的信息是否有误,可以知道是否疑似超时被截获信息了。

2023-11-14 17:21:06 311

原创 学习:原码-反码-补码

关于负数的二进制运算需要对负数取补码,然后补码之间进行运算,然而正数所有码都一样(不严格来说),所以只需要把负数取补码即可,然后就能正常的像正数一样运算了。即:1,1.1101,为了容易分辨,教材上都是用逗号对符号位区分,当然计算机中没有逗号,全部都是二进制,只是为了我们认为能分清。举一反三:-1.1101,这时候我们这个是大于小数的,那么我们最高位应该是加在1的前面,负数的符号不参与反码运算,对于两个负数的补码相加,如果溢出了,1会被丢弃掉。负数的反码符号位不参与反码,将数值位进行反码即可。

2023-09-26 01:04:36 392 1

原创 Win10-常用cmd命令与快捷键

以下全部是本人私认为平时经常用到的指令,持续更行中…

2023-09-22 20:35:40 1784

原创 C++:面向对象

在一个对象的生命中,三个默认就存在的函数。构造函数(空实现)析构函数(空实现)拷贝构造函数(值拷贝)构造函数是一个对象出现的时候必须要调用的函数、析构函数是在一个对象销毁的时候调用,拷贝构造函数也属于构造函数的一类,但是他是在对象之间进行拷贝的时候才会触发的函数。

2023-07-24 17:29:35 132

原创 C++:查漏补缺笔记

指针常量:指针的常量,那就说我们的这个指针变量不能随意修改,那么我们指针变量存的东西就是地址值,那么换句话说就是我们的指针常量就是不允许修改指针地址,但是地址指向的值可以随意修改。常量指针:常量的指针,那就是说我的这个指针指向的值是一个常量,那就是指针指向的值是不能修改的,但是这个地址的值可以随便修改。解释:指针的常量,中文意思已经很明白了,就是指针常量,那么就是指针指向的地址是常量,常量就是不能修改的意思。然后的话常量指针修饰的是指针类型,所以指针指向的值不能修改,但是我们的指针的指向的值是可以修改的。

2023-07-06 00:46:41 681 1

原创 数据库实验—DDL

使用SQL语句,在教学管理数据库中,创建Department学院基本表,只定义属性和表的主键。使用SQL语句,在教学管理数据库中,创建Students学生基本表,只定义属性和表的主键。使用SQL语句,在教学管理数据库中,创建Teachers教师基本表,只定义属性和表的主键。使用SQL语句,在教学管理数据库中,创建Courses课程基本表,只定义属性和表的主键。使用SQL语句,在教学管理数据库中,创建Reports选课基本表,只定义属性和表的主键。增加“学院院长”字段Dheader,类型为CHAR(4)。

2023-06-29 00:09:01 229

原创 数据库—安全性控制DCL

这里的用户是指数据库DBMS中创建的用户,而不是程序中的账户用户。只需要在上述代码的后面加上。即可,下面只用一个例子。

2023-06-29 00:06:47 104

原创 数据库实验—复杂查询

查询教师编号为T002的教师的授课信息,查询结果显示教师编号(Tno)、姓名(Tname)、授课学年(Tacademicyear)、授课学期(Tterm)、授课的课程编号(Cno)、课程名(Cname)以及授课班级(Sclass),结果按授课学年、授课学期升序排序。查询20161151班的学生在大学一年级选修的课程情况,查询结果要显示学号(Sno)、姓名(Sname)、专业名(Mname)、选课的课程号(Cno)、选课的课程名称(Cname)及成绩(Grade),并按照学号、课程号升序排序。

2023-06-29 00:06:29 1077 4

原创 数据库实验—关系模型的完整型约束

② 用SQL语句验证:先查询“T011”教师的授课记录,然后删除Teachers表中编号为“T011”教师的记录后,在查询Tutors表,看有什么变化?用SQL语句删除Teachers表中Check_Tprof和Check_Tcomm的CHECK约束,如果有的话就删除,没有则理解删除约束语句即可。用CREATE语句创建一数据库表TEST_S,表结构与Students表相同,要求语句中需包含一下约束的定义。用SQL语句在Students表中增加CHECK约束:Sno的长度必须为10个字符长度。

2023-06-29 00:06:12 312

原创 数据库实验—存储过程

利用学生学号查询该名学生在指定学年,指定学期所获得的学分数以及还未获得的学分数,若该门课程尚无成绩或成绩小于60分,则为尚未获得的学分,结果以变量形式输出(OUTPUT)。可分别按:学号,学生姓名,课程编号,课程名称,班级编号,等查询学生的选课情况,查询结果显示(班级编号,学号,学生姓名,课程编号,课程名称,选修学年,选修学期,成绩)利用学生学号查询该名学生各学期的选修课程情况,要求显示学生的学号,姓名,选修的学年,学期,选修的课程号,课程名及其成绩,显示结果按学年和学期升序排列。(提示:LEFT函数)

2023-06-29 00:06:00 668

原创 数据库实验—触发器

② 当StuCredits表不为空时,选择该表中已有的某位学生,然后在Reports表中新增一条该学生的选课记录,并给出成绩(>=60),然后再查询StuCredits表中,该为学生总学分的变化。为Teachers表创建一触发器,并给出正反实例的SQL语句:男职工年龄不能超过60岁,女职工职称是“教授”的年龄不能超过60岁,其他女职工年龄不能超过55岁。为Reports表创建一触发器,并给出正反实例的SQL语句:当插入一条记录或修改成绩时,若记录不为空,则须确保此记录的成绩在0~100分之间。

2023-06-29 00:05:46 569

原创 数据库实验—更新操作

总结:无论是更新还是删除,这俩操作十分危险,如果没写where筛选条件就会将所有都批量更新或者删除掉,在本实验中本人已经吃过教训了,忘记写条件update了整个表,长记性了就不会忘记了。2018第1学期,为20171151班的所有学生开设了计算机网络课程,并由“许永军”教授进行授课,请根据要求,完成对各基本表的更新操作。学院表更新表格信息,新增了新的学院,学院号是23,学院名称是材料学院,学院院长为赵飞燕老师。用学号为2014112103的学生的数据结构课程的补考成绩63分,更新原有的考试成绩。

2023-06-29 00:05:21 280

原创 数据库实验—单表查询

请写出“查询所有选修了课程号为112p0024并且有成绩的学生的考试情况,结果要求显示学生的学号、课程号和成绩等级(‘优’、‘良’、'中、'及格’和’不及格),并按成绩降序排序(提示:CASE WHEN)”的SQL语句。请写出“查询院号为11和12的学生的学号、姓名、院号、专业号,结果按院号升序、专业号降序、姓名的汉语拼音升序排序”的SQL语句。请写出“查询至少有5个’11’学院的学生选修的课程的课程编号、选修的人数和平均成绩”的SQL语句。

2023-06-29 00:05:05 370

原创 数据库—设计规范(依赖、范式、分解)

解决方式都是通过分解属性之间的联系我个人不太喜欢范式说法,为何要定义这么一说要满足几几范式,何必呢,无非是用来衡量数据库好坏的一个方式,其实我觉得只要设计出来的数据库合理,给程序用查询的速度高效,满足用户与程序员即可。

2023-06-29 00:04:01 417

原创 密码学—Vigenere破解Python程序

在计算重合指数的时候对字典有了一个更深的了解,字典可以按需使用,我这里就采用数组作为键,大大提高了编程效率,还认识到了在3.6版本之后的Python已经支持按顺序打印输出了,不再是无序的字典,这也帮我解决了很大一部分繁琐的操作。因为用的就是常用词频统计的出来的概率,同样这个表不用我们统计,网上一查一堆。由于已知密钥了,所以只需要将其密钥的单个字母对单个凯撒解密之后,将其解密的凯撒表与AZ表对应的字母概率相乘,最后将其所有结果加起来是否接近0.065,如果接近则可以考虑将其纳入真实密钥的列表名单。

2023-06-29 00:01:19 1305

原创 数据库—并发控制(封锁)

一个SQl或者一组SQL语句都能称为一个事务。事务的特性。

2023-06-28 00:29:07 545 1

原创 数据库—属性闭包

属性的闭包就是当一组或者一个属性,然后这属性中能够通过已知的F函数依赖集通过公理系统(这系统就是用集合是否包含关系)推理出来的属性,这些属性必然是能够通过给的一组属性然后能够知道的另一组属性,这就是推理出来的属性。其实这我学习的时候认为还不是很通俗易懂,下面这张截图我就悟到了。要理解属性闭包先理解以下概念。

2023-06-28 00:28:23 2673

原创 密码学—DES加密算法

确实思维得到训练了,比如有个方法就是记录下标的方式去解决掉如何将其原本的单独的字符转为二进制之后进行区分不同字符,因为加密的时候是一连串的二进制,还是固定位数进出的,难免原本的字符对应的二进制数字会四分五裂,所以我绞尽脑汁也就想到了这方法,当然我相信不止我这种方法,还有很多,希望以后能想到然后回来优化。进行到16轮的时候,将右边数据复制到右边位置,左边位置需要进行L与F函数的异或,F函数照样使用R来进行。这里只是将最后出来的32位进行置换一下,然后F函数结束,接着就是和L进行异或了。F函数:密钥异或加密。

2023-06-28 00:26:49 1006

原创 密码学—Kasiski测试法Python程序

Kasiski是辅助破解Vigenere的前提工作,Kasiski是猜测加密者使用Vigenere密码体系的密钥的长度,Kasiski只是猜测长度而已,所以说是辅助破解Vigenere若密文中出现两个相同的密文段(密文段的长度m>2),则它们对应的明文(及密钥)将以很大的概率相同(后文有一个该概率的计算)。针对多表密码,首要的是得到秘钥字的长度,进一步判断密钥字的长度是否为:m=gcd(d1,d2,…,di) d:为密文片段直接的距离。

2023-06-28 00:12:09 1069 4

空空如也

空空如也

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

TA关注的人

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