实验三 键盘软加锁实验.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验三 键盘软加锁实验 实验所属系列:系统安全实验系列 实验对象: 本科 实验时数(学分): 4 实验开发教师: 郝玉洁、 【实验目的】 了解WIN2000 OS实模式环境下中断的基本结构。对系统提供的INT 16H 键盘中断进行监控。对非法用户试图通过键盘对计算机系统所做的各种工作进行拦截,即进行键盘使用的限制。 【实验内容】 编写在实模式下的键盘软加锁程序。 【实验开设方式】 (1) 个人或分组上机均可。 (2) 实验前学生准备时间不少于3学时 【实验设备与环境】 (1)基本环境要求:PC及兼容机 (2)系统平台要求:WIN98以上OS,保护模式下工作。 (3)软件相应工具要求:C语言、汇编语言均可。 【实验方法步骤】 基于BIOS键盘中断原理,编写键盘软加锁程序。 【实验报告】 1)提交在实模式下的软件加锁程序清单及软件运行结果的演示。 2)编写并提交所编程序的数据字典。 【实验必备知识】 1、封锁键盘输入 各种跟踪调试软件在工作时,都要从键盘上接收操作者发出的命令,而且还要从屏幕上显示出调试跟踪的结果,这也是各种跟踪调试软件对运行环境的最低要求。因此反跟踪技术针对跟踪调试软件的这种“弱点”,在加密系统无须从键盘或屏幕输入、输出信息时,关闭了这些外围设备,以破坏跟踪调试软件的运行环 境。键盘信息的输入采用硬件中断方式 ,由BIOS中的键盘中断服务程序接收、识别和转换,最后送入可存放16个字符的键盘缓冲区 。 2、BIOS中断简介 ????固化在ROM中的基本输入输出系统BIOS(Basic Input/Output System)包含了主要I/O设备的管理程序和许多常用例行程序,它们一般以中断处理程序的形式存在。BIOS直接建立在硬件基础上。 DOS建立在BIOS的基础上,通过BIOS操纵控制硬件。 应用程序、DOS、BIOS和外设接口的间关系如图1所示。 图1 应用程序、DOS、BIOS和外设接口的间关系 3、BIOS键盘中断 (1)键盘中断 当用户按键时,键盘接口会得到一个被按键的键盘扫描码,同时产生一个中断请求。如果键盘中断是允许的(中断屏蔽字中的bit1为0),并且CPU处于中断状态(I=1),那么CPU通常就会响应中断请求,转入键盘中断处理程序。 键盘中断处理程序首先从键盘接口取得代表被按键的扫描码,然后根据扫描码判别用户所按的键并做相应的处理。我们把键盘上的键简单地分成五种类型:字符键(字母、数字和符号等),功能键(如F1和PgUp等),控制键(Ctrl、Alt和左右Shift键),双态键(如Num Lock和Caps Lock等),特殊请求键(如Print screen等)。 (2)键盘I/O程序的功能和调用方法 键盘I/O程序以16H号中断处理程序的形式存在,它属于软中断处理程序。键盘I/O程序提供的主要功能列于下表,每一个功能有一个编号。 在调用键盘I/O程序时,把功能编号置入AH寄存器,然后发出中断指令“INT? 16H”。调用返回后,从有关寄存器中取得出口参数。 例:改变键盘中断服务程序9 、BIOS的键盘I/O 16H中断服务程序的入口地址。 (3)禁止键盘中断 键盘中断是一个可屏蔽中断 ,可通过向8259中断控制器送屏蔽控制字来屏蔽键盘中断。 控制键盘的是中断屏蔽寄存器的第1位 ,只要将该位置1,即可关闭键盘的中断。 IN AL,21H    OR AL,02H    OUT 21H,AL 需要开放键盘中断时,也要用三条指令:    IN AL,21H    AND AL,FDH    OUT 21H,AL (4)高级语言编程参考 如果学生采用高级语言(C、C++、Delph、Java等)编程,可以将上述汇编语言嵌入高级语言程序段,完成键盘中断的控制。也可以采用调用Windows系统所提供的API函数的方式处理。对汇编语言熟悉的学生也可以直接采用汇编语言编程,但注意在Windows2000以上的操作系统中,必须采用MASM32版本的汇编语言程序,而不能采用MASM16版本。在程序调试时遇到保护模式与实模式冲突时,实验可以在Windows的实模式下进行。 【评分要求】100分 程序运行正常(不死机)70分 10分 10分 10分 10 应 用 程 序 DOS BIOS 外 设 接 口

文档评论(0)

seym + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档