自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(68)
  • 资源 (9)
  • 收藏
  • 关注

原创 Win32.SYS Service Dispatch Table

Win32.SYS Service Dispatch Table Table #1: bf999280, 029b entries, params=bf999f90, /SystemRoot/System32/win32k.sys1000: bf935662 NtGdiAbortDoc [1] (win32k.sys)1001: bf947213 NtGdiAbortPath [1] (w

2009-02-21 23:38:00 3306

转载 在XP内核模式下如何获得KeServiceDescriptorTableShadow的地址

在XP内核模式下如何获得KeServiceDescriptorTableShadow的地址 In Windows NT based operating system every system call originated in user mode which is to be processed by the system抯 kernel must go through the gate

2009-02-12 14:59:00 3284

原创 虚拟桌面原理及实现

虚拟桌面原理及实现 文章作者:不赖猴 2009-02-02 一、为什么要使用虚拟桌面。 场景一、上班的时候,我们经常会趁老板不注意,去一些工作时间不应该去的网站,或是运行一些不应该运行的程序,比如一些聊天工具,小游戏,股票软件等等。而且,经常会打开一大堆。当老板或其他同事来到你的桌前的时候,你正在手忙脚乱的关着这些程序,而且,还来不及保存想要保存的东西。 场景二

2009-02-02 13:18:00 9864 10

原创 内核驱动程序中获取当前用户进程的进程名的一种方法

内核驱动程序中获取当前用户进程的进程名的一种方法在内核驱动程序中,可以通过PsGetCurrentProcess函数来获取当前调用驱动的进程的EPROCESS结构的地址.很多文章都说在EPROCESS结构的0x174偏移处存放着进程名.这里提供另外一种方法来获取这个进程名.思路如下:驱动程序的加载函数DriverEntry是运行在System进程中的.通过PsGetCurrentProce

2009-01-29 23:02:00 7575 3

原创 RSA公钥密码算法的原理及实现(二)

 RSA公钥密码算法的原理请看:http://blog.csdn.net/A00553344/archive/2009/01/07/3730194.aspx下面主要论述RSA公钥密码算法的具体实现。 预备知识   RSA公钥密码算法需要多精度算术(通常被称为"大数"数学)。RSA需要很大的整数来抵御已知的密码攻击。比如,一个典型的RSA模数至少大于10309,而现代编程语言

2009-01-10 20:32:00 20623 2

原创 RSA公钥密码算法的原理及实现(一)

一、公钥密码学概述。  公开密钥密码算法的提出是整个密码学历史上最大的而且也许是最唯一真正的变革。从最初一直到现代,几乎所有密码系统都建立在基本的替代和置换工具的基础上。在用了数千年的本质上可以手算完成的算法之后,常规的密码学随着转轮加密/解密机的发展才出现了一个重大进步。机电式变码旋转软件使得极其复杂的密码系统被研制出来。有了计算机后,更加复杂的系统被设计出来。但是不管是转轮机还是后来的DE

2009-01-07 23:32:00 24938 2

原创 ASN.1编码学习笔记二

3.ASN.1数据类型        ASN.1针对广泛的应用定义了多种数据类型,我们这里只讨论跟密码学应用相关的数据类型.我们将讨论如下数据类型:  布尔型 (Boolean);        八位位组串 (OCTET String);        位串 (BIT String);        IA5String;        可打印字符串 (Print

2009-01-04 15:42:00 6923 3

原创 ASN.1编码学习笔记一

1.什么是ASN.1(抽象语法记法一)?        ASN.1是ITU-T的一个标准集,它用来编码及表示通用数据类型,这些数据类型有可打印串值,八位位组串值,位串值,整数值以及用可移值方式组合而成的其他类型序列值.简单的说,ASN.1指定了以何种方式对非平凡的数据类型进行编码,以便其他任何平台及第三方工具都能够解释其内容.比如,字母a在一些平台以ASCII编码为十进制数值97,而在其他非A

2009-01-04 14:16:00 10030 5

原创 一个利用线程注入进行互相监控而防止程序被终止的程序

 以下程序非本人原创,原为C代码,俺代为改成Delphi代码,并做了部分杀毒软件的测试.结果如下:(均为默认设置)Nod32    未扫出危险代码; 运行后未报警卡吧      未扫出危险代码;    运行后报警McAfee  未扫出危险代码; 运行后未报警小红伞  扫出危险代码; 运行后报警  代码如下:(仅供参考,不要用在病毒,木马程序上!) unit Un

2008-10-31 10:25:00 3036

原创 安全多方计算技术(Security Multi-Party Computation, SMC)

安全多方计算技术(Security Multi-Party Computation, SMC) 一、             什么是安全多方计算?为了说明什么是安全多方计算,首先我们先介绍几个实际生活中的例子。1.  Alice认为她的了某种遗传疾病,想验证自己的想法。正好她知道Bob有一个关于疾病的DNA模型的数据库。如果她把自己的DNA样品寄给Bob,那么Bob可以给出她的

2008-10-03 00:10:00 3923 1

原创 面向对象分析和设计(续一)

第二部分 迭代、敏捷与进化简介 一、              什么是迭代开发:1.  是UP和大多数其他现代方法中的关键实践。2.  在这种生命周期方法中,开发被组织成一系列固定的短期(如三星期)小项目,称为迭代。每次迭代都产生经过测试、集成并可执行的局部系统。每次迭代都具有各自的需求分析、设计、实现和测试活动。3.  迭代的输出不是实验性的或将丢弃的原型,迭代开发也不是构造

2008-05-14 21:58:00 1086

原创 面向对象分析和设计

面向对象分析和设计 第一部分:概述及简介一、什么是面向对象分析和设计(OOAD)。OOAD的实质就是从对象的角度来考虑问题领域及逻辑解决方案。OOA:注重于发现和描述对象。OOD:注重于定义逻辑软件对象。面向对象和面向功能的区别:以图书馆信息系统为例。 二、OOAD的主要过程:三、一个简单的OOAD示例。这个简单案例分析包括以下四个主要部分:

2008-05-11 22:16:00 1780

原创 PE头的应用---插入代码到EXE或DLL文件中(DELPHI版本)

一、PE头原理请看我的另一篇笔记:http://blog.csdn.net/A00553344/archive/2007/12/13/1933320.aspx二、插入代码到EXE文件或DLL文件的原理请看我的另一篇笔记:http://blog.csdn.net/A00553344/archive/2007/12/17/1944491.aspx三、代码实现(DELPHI版本),采用第

2008-01-19 15:18:00 3878

原创 数据库设计过程(续2)

角色(联系集可以定义在一个实体集上) 参加联系的实体集不必是互不相同的标记 “manager” 和 “worker” 称为角色; 他们指明了employee 实体是如何通过 works-for 联系集相关的. 角色在 E-R 图中通过对连接菱形与矩形的直线做标记来表示. 角色标记是可选的, 用于明确联系的语义基数约束在联系集与实体集之间用有向直

2008-01-05 01:40:00 2670

原创 数据库设计过程(续1)

 二、      数据库概念模型设计 数据库概念模型: (1)能真实、充分地反映现实世界,包括事物和事物之间的联系,能满足用户对数据的处理要求。是对现实世界的一个真实模型。(2)易于理解,从而可以用它和不熟悉计算机的用户交换意见,用户的积极参与是数据库的设计成功的关键。(3)易于更改,当应用环境和应用要求改变时,容易对概念模型修改和扩充。(4)易于向关系、网状、层次

2008-01-05 01:09:00 2579

原创 数据库设计过程

 数据库系统设计过程  需求分析Requirements   Analysis; 概念数据库设计Conceptual Schema Design; 逻辑数据库设计Logical schema design; 物理数据库设计Physical Schema Design; 实现Implementation; 系统测试Sy

2008-01-03 23:48:00 4042

原创 英文作业欣赏 "LOVE". (看者自负后果)

 LOVEIn ordinary conversations, we often heard things such as "I love chocolate", "I love my dog", and "I love my parents". However nobody can give the definition of love exactly. Maybe somebody s

2007-12-21 23:23:00 1380 2

原创 深入剖析PE文件(续1)---扩展知识

 不赖猴的笔记,转载请注明出处。一、        Windows加载器加载器读取一个PE文件的过程如下:1. 先读入PE文件的DOS头,PE头和Section头。2. 然后根据PE头里的ImageBase所定义的加载地址是否可用,如果已被其他模块占用,则重新分配一块空间。3. 根据Section头部的信息,把文件的各个Section映射到分配的空间,并根据各个Section定

2007-12-17 23:54:00 3133 2

原创 深入剖析PE文件

不赖猴的笔记,转载请注明出处。   深入剖析PE文件PE文件是Win32的原生文件格式.每一个Win32可执行文件都遵循PE文件格式.对PE文件格式的了解可以加深你对Win32系统的深入理解. 一、        基本结构。上图便是PE文件的基本结构。(注意:DOS MZ Header和部分PE header的大小是不变的;DOS stub部分的大小是可变的。)

2007-12-13 16:09:00 4290 1

原创 白盒测试-------定义/使用测试

不赖猴的笔记,转载请注明出处。一、定义1.定义节点。    节点n∈G(P)是变量v∈V的定义节点,记做DEF(v,n),当且仅当变量v的值由对应节点n的语句片段处定义。2.使用节点。    节点n∈G(P)是变量v∈V的使用节点,记做USE(v,n),当且仅当变量v的值由对应节点n的语句片段处使用。3.P-use和C-use。    使用节点USE(v,n)是一个

2007-10-20 18:55:00 8089 2

原创 白盒测试---McCabe的基路径方法

前提:1. McCabe认为强连接圈的数量就是图中线性独立环路数的数量。 2. 通常环路复杂性(圈数)可用以下三种方法求得。   . 将环路复杂性定义为控制流图中的区域数。   . 设E 为控制流图的边数,N 为图的结点数,则定义环路复杂性为 V(G)=E-N+2。   . 若设P 为控制流图中的判定结点数,则有 V(G)=P+1。因为圈复杂度所反映的是“判定条件”的数量,所以圈复杂度

2007-10-20 18:54:00 4284

原创 白盒测试---逻辑路径覆盖的五种方法和物理路径覆盖(二)

 五、条件组合路径覆盖:通过设计足够多的用例,使得运行这些测试用例时,每个判定中条件结果的所有可能组合至少出现一次。举例:      测试用例 输入  预期输出  路径 

2007-10-20 18:52:00 2241

原创 白盒测试---逻辑路径覆盖的五种方法和物理路径覆盖(一)

一、语句路径覆盖:是一个比较弱的逻辑路径覆盖标准。是指通过选择足够的测试用例,使得运行这些用例时,被测程序的每一个语句至少被执行一次。举例:   测试用例  输入 预期输出  被测路径

2007-10-20 18:50:00 7900

原创 黑盒测试(五)-------正交测试法

一、基本概念:    利用因果图来设计测试用例时,作为输入条件的原因和输出结果之间的因果关系,有时候很难从软件规格说明中得到,而且即使是对于一般中小规模的软件,给出其因果图也可能是很庞大,以至于据此因果图的得到的测试用例数量将达到惊人的程度,这给软件测试工作带来了沉重负担。    为了有效、合理的减少测试的费用,可以利用实际生活中行之有效的正交实验法,进行测试用例的设计。所谓“正交实验

2007-10-20 18:48:00 27051 3

原创 黑盒测试(四)------因果图测试

一、基本概念:   因果图是从用自然语言书写的程序规格说明的描述中找到因(输入条件)和果(输出或程序状态的改变),通过因果图转化为决策表。等价类划分法和边界值分析方法都是着重考虑输入条件,但没有考虑输入条件的各种组合、输入条件之间的相互制约关系。这样虽然各种输入条件可能出错的情况已经测试到了,但多个输入条件组合起来可能出错的情况却被忽视了。如果在测试时必须考虑输入条件的各种组合

2007-10-20 18:46:00 5271

原创 黑盒测试(三)--------基于决策表的测试

在一些数据处理问题中,某些操作是否实施依赖于多个逻辑条件的取值。在这些逻辑条件取值的组合所构成的多种情况下,分别执行不同的操作。处理这类问题的一个非常有力的分析和表达工具是判定表,或称决策表(Decision Table)。在所有功能性测试方法中,基于决策表的测试方法是最严格的,决策表在逻辑上是严密的。一、决策表的组成 l条件桩:列出了问题的所有条件。

2007-10-20 18:44:00 12792

原创 黑盒测试(二)-----等价类测试

一、基本原理。     等价类划分是一种典型的黑盒测试方法,等价类测试方法是把所有可能的输入数据,即程序的输入域划分成若干部分,然后从每一部分中选取少数有代表性的数据作为测试用例。使用等价类划分方法设计测试用例要经历划分等价类(列出等价类表)和选取测试用例两步。 二、等价类的划分(指测试相同目标或暴露相同软件缺陷的一组测试)。1.划分等价类的方法(思路:在寻找等价划分时,考虑把软件

2007-10-20 18:42:00 9547 1

原创 黑盒测试(一)-----边界值测试

边界值分析是一种常用的黑盒测试方法,是对等价类划分方法的补充;所谓边界值,是指相对于输入等价类和输出等价类而言,稍高于其最高值或稍低于最低值的一些特定情况。边界值分析的步骤包括确定边界,选择测试用例两个步骤。一、基本原理: 错误更可能出现在输入变量的极值附近. 失效极少由两个(或多个)缺陷的同时发生引起的。 Min、Min+、Nom、Max-、Max.

2007-10-20 18:38:00 26926 7

NTFS磁盘文件恢复工具 V1.1版本

趁空闲,写了这个小工具. 该工具只适用于NTFS格式的磁盘被删除文件恢复. 工具实现原理找时间写到我的BLOG里去.有兴趣的可以去看.

2009-12-18

NTFS格式的磁盘文件恢复工具

趁空闲,写了这个小工具. 该工具只适用于NTFS格式的磁盘被删除文件恢复. 工具实现原理找时间写到我的BLOG里去.有兴趣的可以去看.

2009-12-17

简单易用的小工具---批量照片压缩器

一个简单易用的小工具. 现在人们所拍的照片都比较大,一般都好几M.拷贝,上载都不方便.这个工具可以一次性的对批量照片进行压缩,来获取你想要的大小.

2010-07-20

NTFS磁盘文件恢复工具 V1.1版本(发布源代码)

写完"如何编码实现NTFS格式下删除文件的恢复"和"如何编码实现NTFS格式下删除文件的恢复(续一)"后,好多朋友询问下文,但是最近忙着写别的东西,实在是没工夫继续写,我把所有的源代码都公开在这里,只是代码都没怎么整理,有些乱,大家凑活看吧.

2010-01-18

解决IOS9以后强制HTTPS的问题。

在iphone升级到iOS 9以后,出现一些奇怪的错误,原有的http请求都失败。查了资料后才知道ios 9会强制所有的app中原有的http请求变为https请求。如果原有的服务器不支持https的话,就会出现各种错误。 该工具的使用: 将ios9fix.exe拷贝到工程文件目录下,在工程设置中的post-build events的commands栏中加入 call "$(PROJECTDIR)\ios9fix.exe" "$(OUTPUTPATH).info.plist"

2016-06-28

虚拟桌面 (多个桌面,每个桌面运行不同的软件,用快捷键切换)

可以生成3个桌面,3个桌面可以运行不同的程序和软件.你可以用快捷键Ctrl+数字键(1~3)在3个桌面之间切换. 实现原理地址: http://blog.csdn.net/A00553344/archive/2009/02/02/3858216.aspx

2009-02-02

源代码及演示程序

1.如何设计一个基于平台的CSPRNG。 2.如何调用Windows自带的CSPRNG。

2009-03-12

文件锁(Delphi + C)

锁定选择的文件后,文件只能看到存在,不能被打开,运行,拷贝,删除.

2009-01-31

通用局域网消息发布器V1.0

主要用于局域网环境.要发布的人运行服务端后,会自动扫描局域网内在线的客户端.然后发布消息给客户端.客户端自动弹出消息窗口. 同一个局域网内可以有多个服务端;即可以同时存在多个消息发布者;服务端和客户端可以在同一台机器上运行.

2008-11-18

空空如也

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

TA关注的人

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