计算机活动监测记录系统及方法

文档序号:6360285阅读:198来源:国知局
专利名称:计算机活动监测记录系统及方法
技术领域
本发明涉及一种软硬件相结合使用特殊密钥或算法的计算机系统及方法,特别是涉及一种使用特殊密钥或算法的计算机活动监测记录系统及方法。
在一台计算机中运行着的计算机监测与记录软件用来对这台计算机中进行的活动实时地加以监测和记录。这一软件可以把用户在键盘上的的击键动作,鼠标的运动以及在鼠标按钮上的揿击动作,对文件进行的访问,程序间以及网上进行的通讯,所访问的网站,对显示屏幕上的图形的采集等等都记录下来。记录下来的这些资料可以通过网络实时地传到另外的计算机,或者保存在文件中供另一软件进行处理。在某些应用中,监测与记录软件可能是秘密地运行的,用户并不察觉,因而常常被称为“间谍软件”。雇主可以利用这种软件来密切地跟踪他们的雇员的生产、工作效率;家长们也可以用它来监护他们的子女在因特网上的活动;公司则可以用它来监督他们的计算机网络中的计算机、服务器和网关的工作情况。然而,传统的监测与记录软件有如下一些缺点,因而妨碍了它的广泛应用例如,1.当使用它来监督雇员的活动时,破坏了雇员的隐私和信任感。雇员们弄不清楚是谁在部署和管理这套软件;也不明白有关他们的哪些资料被记录了下来,又有谁可以来处理或者审视这些资料。即便雇员们能看到向大家公布的政策性文件,说明了监测与记录的范围和规则,但是雇员们仍然会心存疑虑,不知道这些政策性文件能否真的得到执行,也不能确这些记录下来的资料不会被无关人员所滥用。2.雇主无法确信所记录下来的资料的真实性,雇员中的高手或者第三方开发的软件有可能篡改所记录下来的资料(删除、添加或者替换),也可能从源头上就防止某些资料被记录下来。3.所记录下来的资料可能被偷窃,或者被第三方截获并加以非法使用。

发明内容
本发明的目的在于克服现有的计算机活动监测与记录系统存在的相关缺点的,提供一种能够提高计算机用户与监控管理人员之间的信任感和提高被监测计算机信息安全性的计算机活动监测记录系统及方法。
为了实现上述目的,本发明采取的技术方案一种计算机活动监测记录方法,所述方法在拥有包含若干政策条款的数字证书的计算机上记录其活动,其步骤包括(1)对数字证书进行验证;(2)执行包括记录在该计算机上进行的活动在内的一整套动作,这套动作是由前述的一套政策条款来规定的。
一种计算机活动监测记录系统包括在某计算机上运行的一套记录程序以及在另一计算机上运行的一套处理程序所述的记录程序具有一数字证书,证书中包含若干政策条款,并且所述的记录程序包含(1)一个证书验证模块,用于对数字证书进行验证,以决定接受抑或拒绝;(2)一个记录模块,用于执行一套动作,其中包含记录活动,产生若干包含所述的那些活动的记录数据块,所述的一套动作包括记录活动是由上述的政策条款所规定的;所述的处理程序包括一个处理模块,用于处理在所述的那些记录数据块中记录着的所述的活动。
本发明的有益效果在于,本发明提供了一种可信赖的计算机活动监视、记录系统及方法,本发明利用内容包含若干政策和管理者的公钥的数字证书,在“其活动被记录和管理的计算机或计算机用户”与“管理此监督与记录系统的管理者”之间提供了相互信任的保证。计算机活动的记录以及其它运作是按照证书中的政策条款来进行的,并且利用证书中提供的公钥对记录下来的数据进行加密,对所记录的数据还可以进一步利用计算机或者计算机用户的私钥加上数字签名,因此增加了计算机上信息的安全性。


图1是体现本发明的一个具体实现的“记录程序”的示意图;
图2是体现本发明的一个具体实现的“处理程序”的示意图;图3是所述“记录程序”使用的一个政策证书的示意图;图4是5条政策例子的示意图;图5是所述“记录程序”的处理流程图;图6是所述“记录程序”产生的加密后的数据流示意图;图7是所述“处理程序”的处理流程图;图8是含有按照本发明另外一种实现给出的“用户签名产生模块”的“记录程序”的结构图;图9是含有按照本发明另外一种实现给出的“用户签名产生模块”的“处理程序”的结构图;图10是所述“用户签名产生模块”的处理流程图;图11是所述“用户签名验证模块”的处理流程图。
具体实施例方式
下面结合各个附图,对本发明进一步详细描述一种计算机活动监测记录方法,所述方法在拥有包含若干政策条款的数字证书的计算机上记录其活动,其步骤包括(1)对数字证书进行验证;(2)执行包括记录在该计算机上进行的活动在内的一整套动作,这套动作是由前述的一套政策条款来规定的。
所述的数字证书中含有一个公钥,以及,(1)产生记录了所述的那些活动的若干记录数据块;(2)利用所述的公钥将所提及的那些记录数据块加密成为含有许多已加密数据块的一个数据流,而这些已加密数据块将在另外一台计算机上利用与该公钥配对的私钥来解密。
所述的数据流通过以下三种方法中的任何一种被送到所述的另外一台计算机中去(1)通过计算机网络发送;
(2)通过通讯网络发送;(3)通过存储介质发送。
所述的计算机拥有某一用户的私钥,并且,利用所述的私钥,为所述的那些已加密数据块产生若干数字签名,这些数字签名以及所述的若干已加密数据块将在所述的另外一台计算机上利用与所述的用户私钥配对的公钥来验证。
所述的计算机拥有某一用户的一个私钥,所述的方法进一步包含(1)产生包含所述活动的若干记录数据块;(2)利用所述的私钥,为所述的若干记录数据块产生若干数字签名,所述的若干数字签名以及若干记录数据块将在另外一台计算机上利用与所述的用户私钥配对的公钥来验证。
所述的数字证书含有一数字签名,所述的对数字证书进行验证进一步包含了对所述数字签名的验证。
所述方法进一步包括与计算机用户或数据库查对,以决定接受还是拒绝所述的数字证书。
所述的一套动作选自以下的一组动作(1)记录击键情况;(2)记录鼠标的叩击和移动情况;(3)记录文件的访问情况;(4)记录数据库的访问情况;(5)记录程序的工作时间;(6)记录网络通讯情况;(7)记录电话通讯情况;(8)记录声音输入输出情况;(9)记录视频输入输出情况;(10)记录网站访问情况;(11)记录消息收发情况;
(12)记录电子邮件情况;(13)记录图像;(14)记录屏幕快拍影像;(15)记录计算机资源使用情况;(16)记录程序的属性;(17)设置程序的属性;(18)设置程序的配置情况;(19)设置系统的注册项;(20)打开文件;(21)发送消息;(22)接收消息;(23)显示消息。
所述的若干政策包含有用来至少执行某一条所述活动的计算机可执行代码,所述执行包含执行上述的计算机可执行代码;所述的计算机可执行代码可以是用以下编程语言中的任意一种来编写(1)Java语言;(2)Pearl语言;(3)Tcl语言;(4)Visual basic语言;(5)Active X语言;(6)COM语言;(7).NET语言;(8)C#语言;(9)C/C++语言;(10)机器可执行的任何脚本语言。
所述的计算机是指以下所列计算设备中的任意一种(1)个人计算机;(2)服务器;(3)网关;(4)路由器;(5)网络开关;(6)个人数字助理;(7)通讯设备;(8)服务器终端。
所述的数字证书包括若干被监控实体;而所述的被监控实体则由一些计算机或一些计算机用户构成;所述方法进一步的包括(1)对所述的计算机的名称或所述的计算机用户的名称的核对;(2)判断如果所述的计算机的名称或所述的计算机用户的名称未曾被包括在所述的被监控实体的名册中,所提及的数字签名就被拒绝。
所述的数字证书含有一个有效期限,所述方法进一步包括(1)将当前时刻与所述的有效期限相核对;(2)如果有效期已经超过,将拒绝所述的数字证书。
一种计算机活动监测记录系统包括在某计算机上运行的一套记录程序以及在另一计算机上运行的一套处理程序所述的记录程序具有一数字证书,证书中包含若干政策条款,并且所述的记录程序包含(1)一个证书验证模块,用于对数字证书进行验证,以决定接受抑或拒绝;(2)一个记录模块,用于执行一套动作,其中包含记录活动,产生若干包含所述的那些活动的记录数据块,所述的一套动作包括记录活动是由上述的政策条款所规定的;所述的处理程序包括一个处理模块,用于处理在所述的那些记录数据块中记录着的所述的活动。
所述的数字证书含有一个公钥;所述的记录程序还包含(1)一个加密模块,所述加密模块利用所述的公钥将所述的记录数据块加密成一个数据流,该数据流中包含若干已加密的数据块;而且所述的处理程序进一步包含(2)一个解密模块,所述解密模块利用与所述的公钥配对的私钥对一组已加密数据块进行解密,使之恢复为所述的那些记录数据模块。
所述数据流以下列方式中的任意一种被送往所述的处理程序(1)通过计算机网络发送;(2)通过通讯网络发送;(3)通过存储介质递送。
所述的数字证书包含了一个数字签名,所述的证书验证模块包含一个签名验证模块,所述签名验证模块对所述的签名进行验证。
所述的记录程序还包含一个证书接受模块,所述证书接受模块显示数字证书内容让计算机用户做出判断,以判定应该接受还是拒绝此数字证书。
所述的一套动作选自以下的一组动作(1)记录击键动作情况;(2)记录鼠标的扣击和运动情况;(3)记录文件访问情况;(4)记录数据库访问情况;(5)记录程序活动时间;(6)记录网络图通讯情况;(7)记录电话通信情况;(8)记录声音输入输出情况;(9)记录视频输入输出情况;(10)记录所访问的网站;(11)记录消息;
(12)记录电子邮件;(13)记录图象;(14)记录屏幕快拍影像;(15)记录计算机资源使用情况;(16)记录程序的属性;(17)设置程序的属性;(18)设置程序的配置方式;(19)设置系统的注册情况;(20)打开文件;(21)发送消息;(22)接收消息;(23)显示消息。
公钥加密和数字证书是一种可以公开获得的、众所周知的现成的优秀技术。公钥加密过程中使用了与有关实体相关的一对密钥公钥和私钥。利用公钥加密的资料只能被相应的私钥来解密。反之亦然,利用私钥加密的资料只能被相应的公钥来解密。数字证书则是已经被某一可信任的认证机构(Certificate Authority-CA)以数字方式签了名的电子文件。一个数字证书可能包含某一个人,或某一公司,或者任一被认证的实体的标识名(identity),一个公钥,还有一些与该实体有关的信息,以及由可信任的CA所签署的数字签名。由可信任的CA签署的数字签名保证了这一实体是被确认过的,而且这一证书的真实性是可以验证的。数字签名的产生过程是首先,对该电子文件运行一次单向的“杂凑(hash)”函数运算,以产生一个数据序列,然后再将这一数据序列用CA握有的私钥加密。单向杂凑函数有一个独特的性质,即当两个不同的电子文件用同一杂凑函数加以处理时,所产生的数据序列总是互不相同的。这样一来,它就保证了对原来的电子文件所做的任何改动都会产生出不同的数据序列。然后对这一数据序列用CA握有的私钥进一步加密就产生出了数字签名。CA的一对公钥是公开的,通常是放在另外一个与CA有关的数字证书中。只有配对的公钥可以成功地对签名解密,这就转而证明了这个签名曾经是由CA来加密(也就是签名)的。任何知晓CA的公钥的人都可以验证这一数字签名的真实性,过程是首先将证书中的电子文件用同一杂凑函数进行处理,以产生出一个数据序列;然后将它与解密后的签名相比较。如果两者是一样的,就证明了这个证书的签名是由CA签署的,并且这一证书没有被人篡改。数字证书已被网上服务器广泛应用于发布公钥以及将这一公钥与该网上服务器相关联的活动中。当某一网络浏览器从某一网上服务器那里收到了一个数字证书以后,它就来验证这一证书的真实性。如果这一证书被认可了,浏览器就用该证书中所提供的公钥来加密打算送往服务器的资料。这些加密后的资料只有对应的服务器才能解读,因为只有它才握有对应的私钥。
在本发明中,计算机监测与记录系统由两个计算机程序组成一个是记录程序,另一个是处理程序。记录程序在计算机中运行,用来执行包括记录各种计算机活动的操作。处理程序则用来处理或者显示前者所记录下来的资料。
按照本发明,作为政策证书来看待的数字证书首先应由某一监控部门建立,然后由一可信赖的CA在其上签名。监控部门是计算机监测与记录系统的管理部门,他可以是某个人,或者一个公司,或者任何相关的实体。政策证书中含有监控部门的名称,一个公钥,以及一整套政策。这一证书上有一个可信赖的CA的签名,他可以是监控部门本身,也可以是其他的公证部门(public trusted entity)。政策证书中的公钥配有与之相对应的、交由监控部门掌管的私钥。在证书中记载的诸项政策说明了有那些计算机活动是被监测和记录的。每一项政策可以对监测和记录范围指定一系列的计算机实体以及相关的多种活动。例如,一项政策可以规定把与某计算机程序有关的击键情况加以记录;另一项政策可能规定把与某计算机程序有关的击键以及文件访问情况加以记录;而另一项政策可能规定把所有计算机程序之间的通讯情况加以记录;有些政策也可能不写在证书中,而被认为是“默许”的(不言自明的),也就是记录程序所生来就知道的。政策证书被装入记录程序中。记录程序首先验证对证书签名的CA是否可以信任,以及该证书是否未为他人所窜改过。记录程序可以把政策证书的内容显示出来,其中包括监控实体的名称,诸项监控政策,以及提供选择让计算机用户对政策证书给予接受或者拒绝。
在其他一些应用中,记录程序还可以去查阅含有一组可以接受的监控实体的某一数据库,并根据证书的监控实体是否属于这一组监控实体中的一员而自动地决定接收或者拒绝这一政策证书。在决定接受政策证书以后,记录程序就进行操作,包括按照政策证书中的政策对计算机的活动进行记录,利用政策证书中给出的公钥对记录结果加密,加密后的数据被送往处理程序,并由监控实体利用私钥进行解密。解密后的数据然后被处理程序加以处理或显示。解密过程可以由单另的程序来完成,也可以集成在处理程序之中。
由于政策证书是被可信赖的CA所批准了的,计算机用户,或者其活动被记录的计算机就可以放心地认定这一政策的真正制定者,并且进行的记录会限制在政策所规定的范围之内,因为记录程序是按照政策行事的。计算机用户或者计算机以及监控实体可以放心地认定记录下来的数据不会被用于非法的目的,因为除了监控实体之外,没有其他人知道用来解密数据的私钥是什么。而监控实体也可以放心地认定记录下来的数据不可能被未持有私钥的任何人所篡改。因此,本发明中所描述的系统和方法提供了计算机用户或计算机与监控实体之间的相互信任。
计算机用户或计算机还可以通过对记录下来的数据作数字签名的办法来进一步加以确认。对记录下来的数据的数字签名可以在对数据进行加密之前或者之后进行。该数字签名是用计算机用户或者计算机所握有的私钥加密的。而与私钥相对应的公钥被公开发布,最好是由一含有计算机用户或者计算机的名称以及公钥的数字证书(通常被称为“用户证书”)来公布。“用户证书”把公钥和计算机用户或计算机的名称联系在一起。有了用户公钥以后,监控实体可以利用传统的签名验证技术对记录数据的用户签名进行验证,从而可以确认这些数据的确是从指定的计算机用户或者计算机那里获得的。
在本发明中,政策证书还可以进一步包含多个“被监控实体”。“被监控实体”所指的是政策证书中所包含的监控政策可对之施行的某一个计算机用户或计算机或者他们之间的任意组合。记录程序可以检查本地计算机和计算机用户的名称,如果它们没有被包含在政策证书中“被监控实体”的名册之中,将拒绝此证书。例如,被监控实体组中可能含有一张用户名字清单,说明监控政策对他们是可以施行的,又如果本地计算机用户名称没有包含在此清单中,记录程序就会拒绝这一政策证书。
在本发明中,加密后的数据可以实时地通过计算机网络被送往处理程序,也可以保存在任何存贮介质中,然后由处理程序从该介质读取。
本发明的一个具体实施例本发明的内容是可信赖的计算机活动监测记录系统及其实现的方法。本系统和所使用的方法是用来在其活动应被监测和记录的计算机用户或计算机(以下称之为“被监控实体”)与监控者(以下称之为“监控实体”)之间建立信任关系。此系统和所使用的方法使“被监控实体”确信对他们所施行的记录政策的确是由相关的“监控实体”给出的,并且记录的范围限制在记录政策所规定的范围内。而且,记录下来的数据不会被其他局外人所看到或利用。这一系统和方法可以向“监控实体”保证所记录的数据不会被篡改,而且确实是从所称的“被监控实体”所记录的。
在如图1和图2显示的所推荐的实现方式中,计算机监测与记录系统由两个计算机程序组成图1中的记录程序102和图2中的处理程序122。记录程序102运行在其活动应被监控的计算机100中。处理程序122运行在监控实体所使用的计算机120中,对记录下来的数据加以处理和显示。
图1中的记录程序102用一组模块来实现证书验证模块104,记录模块106,以及加密模块108。图2中处理程序122用一下一组模块来实现解密模块126,处理模块128。记录程序102和处理程序122中的模块可以用软件,硬件或者两者的组合来实现。
图1中的加密模块108用来产生已加密数据流118。加密后的数据流被送往图1中记录程序的输出连接器102以便进行传输,并为图2中的处理程序122的输入连接器124所接收。数据可以通过计算机网络实时地进行传输,输出连接器110和输入连接器124则是与计算机网络相连的接口。数据也可以保存在任何种类的存储介质,输出连接器110和输入连接器124则是与存储介质相连的接口。
在本发明中,被称为是“政策证书”的数字证书首先是利用数字认证技术建立的。有关数字认证技术的详细描述可以在现成的技术出版物中找到。图1中的政策证书112被装入计算机110的内存缓冲区中以便记录程序102的索取。政策证书112由证书验证模块104加以验证以判明应该接受抑或拒绝。政策证书112中包括了多条政策,它们规定了记录程序102中记录模块106所应执行的动作和记录范围。政策证书112中还包含有一个公钥,供加密模块108对记录下来的数据进行加密之用。如图3示,政策证书102最好含有以下诸元素
a)监控实体的名称202;b)公钥204;c)若干政策条款206;d)被监控实体的名称208;e)有效期限210;f)证书序号212;g)认证权威机构的签名。
其中监控实体的名称202指的是管理者(某一个人,某个公司,或者对“计算机监测记录系统”进行控制和管理的任一实体。)公钥204用来对数据进行加密;政策206规定了记录的具体动作和范围;被监控实体的名称208指的是政策206可以实施的对象(计算机,计算机用户,或者他们之间的任意组合);有效期限指的是政策证书112的有效期间;证书序号212则是一个用来指称政策证书112的独一无二的号码;认证权威机构的签名214则是认证权威机构112的数码签名。认证权威机构是某个可信赖的权威部门,负责验证监控实体202的身份以及包含在政策证书112中的相关信息。认证权威机构的签名214允许第三方软件来验证包括监控实体的真实性在内的政策证书112的真实性。
包含在政策证书112中的政策条款206规定了有哪些计算机活动是要被记录的,以及记录程序或计算机用户可以执行其他什么动作。一条政策可以规定在一组计算机实体上执行的若干动作,或者允许计算机用户进行的若干动作。图4表示了五条政策的例子。政策A 300规定了应该对名为“Word”的计算机程序上的键盘击键情况加以记录;政策B 302规定了应该对与名为“Visual Studio”的计算机程序有关的键盘击键情况和所有与之有关的被打开的文件的内容加以记录;政策C 304规定了在“InternetExplorer”,“Netscape Navigator”,and“Outlook”这三个程序上进行的网络通讯活动加以记录;政策D 306规定了计算机用户可以在任何时候暂停或者恢复记录模块的工作;政策E 306规定了允许计算机用户查看任一活动着的程序的运行时间。图2显示的政策206也可以含有一些计算机可执行代码以执行所需的动作。例如,政策206可以含有一个Java小程序来执行某些动作,而在图1A的记录程序102含有一个Java引擎(未在图1A示出)来执行此Java小程序。政策证书中也可以不包含政策部分,这种情况意味着去执行记录程序预先知道的一组默认的政策。
图5是实现图1中的记录程序102中的模块的一个流程图400。请参看图5,在步骤402中,对政策证书112中的认证权威机构的可信赖程度进行验证,如果认证权威机构被拒绝,则证书112将在步骤418中被拒绝。在步骤404中,对证书112里的数字签名的可信度进行验证,如果这一签名被拒绝,则证书112将在步骤418中被拒绝。在步骤406中,对计算机和计算机用户的名称进行检验,如果他们的名称没有被包含在证书112中指明的被监控实体的名册之中,证书112将在步骤408中被拒绝。在步骤408中,对证书的有效期限进行核对,如果已经过了有效期,证书112将在步骤418中被拒绝。在步骤410中,核对计算机用户或者数据库以判定应该接受还是拒绝证书112。在对计算机用户进行核对时,证书112的内容可以被显示(在图5中未表示这一点)给计算机用户看,并允许计算机用户接受或者拒绝证书112。在核对数据库的时候,可以按照数据库中所设置的规则来决定接受还是拒绝证书112(这一点没有显示在图4中),例如,如果证书112中规定的监控实体的名称已包含在数据库内“可接受的监控实体名册”中,那么证书112是可以接受的。接受了证书112之后,在步骤412中,就从证书112中找出政策条款,随后在步骤414中就按照政策条款执行记录以及其他活动。步骤414中的记录活动将产生一系列的记录数据块。然后在步骤416中,将记录下来的数据块利用证书112给出的公钥加密。步骤416中使用的加密方法可以是任何众所周知的公钥加密方法。步骤416中的加密过程产生的数据流118包含了加密后的数据块。如图1所示,加密后的数据流118被转交给输出连接器110。
由图1中加密模块108以及在图5的步骤416中所产生的加密后的数据流118的格式最好采用图6所示的格式。参看图6,加密后数据流118的第一个数据块是“格式头”520,其中含有关于加密后数据流的格式信息。第二个数据块是政策证书212的序号,它唯一地标识图2中政策证书112。随后的数据块则是加密后的数据块524,526,528。每一加密后的数据块中含有序号和所记录的数据块。如图6所示,加密后的数据块524含有序号502以及记录的数据块504。序号(502,506,510)是递增的,从而允许图2中的处理程序122查出记录数据块有无遗漏。
加密后的数据流118通过输入连接器124被送给处理程序122,如图2所示。图7是实现图2中的处理程序122中的模块的一个的流程图600。参看图7,在步骤602中,从已加密数据流118中取得图6所示的证书序号212。证书序号212唯一地标识了政策证书112,这一证书又是唯一无二地和用来对已加密数据118进行解密所使用的私钥130相关联的,如图2所示。私钥130在步骤604中取出。在步骤130中,图6中加密后的数据块524,526,528是利用私钥130来解密的。在步骤608中,可以用满足人机交互要求的方法对包含在已解密数据块中的计算机活动进行处理或显示。
在所推荐的另外一种实现办法中,利用添加计算机用户的数字签名的办法来对所记录的数据进行认证。在所推荐的这种方法中,如图8和图9所示,把一个用户签名产生模块添加到图8的记录程序700中,又把一个用户签名验证模块添加到图9的处理程序712中。图8和图9中的其他模块,即证书验证模块104、记录模块106、加密模块108、解密模块126、处理模块128,是和图1和图2中编号相同的模块一样的。
图8中的用户签名产生模块702最好按照图10中的流程图800来实现。请参看图10,其中对每一已加密数据块产生一个用户签名,使用的方法是,在步骤804中,首先对每一已加密数据块实施一次单向杂凑函数运算以产生一数据序列,然后在步骤806中利用计算机或计算机用户的私钥对数据块加密,而已加密的数据序列就是用户签名,它只能够被“与私钥704配对的公钥714”来解密。在步骤808中,用户的数字签名被附加在已加密数据块的后面。
图9内用户签名验证模块712对与每一已加密模块相关的每一个用户签名进行验证。用户签名验证模块712最好按照图11中所示的流程图810来实现。在图11中,对于步骤814中每一对已加密数据块及其用户数字签名,利用(与图8中步骤806里的与私钥704配对的)公钥714将用户数字签名解密;在步骤816中,与图10步骤804中所使用的相同的单向杂凑函数被用来对已加密数据块进行处理,以获得一数据序列;然后将所得到的这一数据序列与步骤818中的已解密用户签名相比较。如果所产生的数据序列与已解密的用户签名相一致,这就证明了已加密数据块确实是被计算机用户或计算机签署过的,于是将它传递给图9中的解密模块126作进一步处理。如果所产生的数据序列与已加密的用户签名不一致,这就证明了已加密数据块没有被计算机用户或计算机签署过,或者已经被篡改,因而在步骤820中被拒绝。图11步骤814中所使用的公钥可以用任何方法获得。一种较好的方法是,将公钥嵌入在由可信赖的认证权威机构所颁发的数字证书(通常称之为“用户证书”)中。用户证书把公钥和计算机(或计算机用户或两者)的名称联系起来。在图10步骤804和图11步骤816中用来对已加密数据块产生数据序列的杂凑函数可以是大家通常用来产生数字签名的任何杂凑函数。
在已加密数据块中加入数字签名可以使监控实体相信这些数据块的确是源自指定的计算机或计算机用户。
在不背离本专利所提及的精神或中心思想的条件下,本发明也可以用其他的形式来实现。因此,这里所展示的整个具体实施例应被认为是示意性的说明,而不是有意施加的限制。
权利要求
1.一种计算机活动监测记录方法,其特征在于所述方法在拥有包含若干政策条款的数字证书的计算机上记录其活动,其步骤包括(1)对数字证书进行验证;(2)执行包括记录在该计算机上进行的活动在内的一整套动作,这套动作是由前述的一套政策条款来规定的。
2.根据权利要求1所述的计算机活动监测记录方法,其特征在于所述的数字证书中含有一个公钥,以及,(1)产生记录了所述的那些活动的若干记录数据块;(2)利用所述的公钥将所提及的那些记录数据块加密成为含有许多已加密数据块的一个数据流,而这些已加密数据块将在另外一台计算机上利用与该公钥配对的私钥来解密。
3.根据权利要求2所述的计算机活动监测记录方法,其特征在于所述的数据流通过以下三种方法中的任何一种被送到所述的另外一台计算机中去(1)通过计算机网络发送;(2)通过通讯网络发送;(3)通过存储介质发送。
4.根据权利要求2所述的计算机活动监测记录方法,其特征在于所述的计算机拥有某一用户的私钥,并且,利用所述的私钥,为所述的那些已加密数据块产生若干数字签名,这些数字签名以及所述的若干已加密数据块将在所述的另外一台计算机上利用与所述的用户私钥配对的公钥来验证。
5.根据权利要求1所述的计算机活动监测记录方法,其特征在于所述的计算机拥有某一用户的一个私钥,所述的方法进一步包含(1)产生包含所述活动的若干记录数据块;(2)利用所述的私钥,为所述的若干记录数据块产生若干数字签名,所述的若干数字签名以及若干记录数据块将在另外一台计算机上利用与所述的用户私钥配对的公钥来验证。
6.根据权利要求1所述的计算机活动监测记录方法,其特征在于所述的数字证书含有一数字签名,步骤(1)中所述的对数字证书进行验证进一步包含了对所述数字签名的验证。
7.根据权利要求1所述的计算机活动监测记录方法,其特征在于所述方法进一步包括与计算机用户或数据库查对,以决定接受还是拒绝所述的数字证书。
8.根据权利要求1所述的计算机活动监测记录方法,其特征在于所述的一套动作选自以下的一组动作(1)记录击键情况;(2)记录鼠标的叩击和移动情况;(3)记录文件的访问情况;(4)记录数据库的访问情况;(5)记录程序的工作时间;(6)记录网络通讯情况;(7)记录电话通讯情况;(8)记录声音输入输出情况;(9)记录视频输入输出情况;(10)记录网站访问情况;(11)记录消息收发情况;(12)记录电子邮件情况;(13)记录图像;(14)记录屏幕快拍影像;(15)记录计算机资源使用情况;(16)记录程序的属性;(17)设置程序的属性;(18)设置程序的配置情况;(19)设置系统的注册项;(20)打开文件;(21)发送消息;(22)接收消息;(23)显示消息。
9.根据权利要求1所述的计算机活动监测记录方法,其特征在于所述的若干政策包含有用来至少执行某一条所述活动的计算机可执行代码,而步骤(2)中所述执行包含执行上述的计算机可执行代码;所述的计算机可执行代码可以是用以下编程语言中的任意一种来编写(1)Java语言;(2)Pearl语言;(3)Tcl语言;(4)Visual basic语言;(5)Active X语言;(6)COM语言;(7).NET语言;(8)C#语言;(9)C/C++语言;(10)机器可执行的任何脚本语言。
10.根据权利要求1所述的计算机活动监测记录方法,其特征在于所述的计算机是指以下所列计算设备中的任意一种(1)个人计算机;(2)服务器;(3)网关;(4)路由器;(5)网络开关;(6)个人数字助理;(7)通讯设备;(8)服务器终端。
11.根据权利要求1所述的计算机活动监测记录方法,其特征在于所述的数字证书包括若干被监控实体;而所述的被监控实体则由一些计算机或一些计算机用户构成;所述方法进一步的包括(1)对所述的计算机的名称或所述的计算机用户的名称的核对;(2)判断如果所述的计算机的名称或所述的计算机用户的名称未曾被包括在所述的被监控实体的名册中,所提及的数字签名就被拒绝。
12.根据权利要求1所述的计算机活动监测记录方法,其特征在于所述的数字证书含有一个有效期限,所述方法进一步包括(1)将当前时刻与所述的有效期限相核对;(2)如果有效期已经超过,将拒绝所述的数字证书。
13.一种计算机活动监测记录系统,其特征在于所述系统包括在某计算机上运行的一套记录程序以及在另一计算机上运行的一套处理程序所述的记录程序具有一数字证书,证书中包含若干政策条款,并且所述的记录程序包含(1)一个证书验证模块,用于对数字证书进行验证,以决定接受抑或拒绝;(2)一个记录模块,用于执行一套动作,其中包含记录活动,产生若干包含所述的那些活动的记录数据块,所述的一套动作包括记录活动是由上述的政策条款所规定的;所述的处理程序包括一个处理模块,用于处理在所述的那些记录数据块中记录着的所述的活动。
14.根据权利要求13所述的一种计算机活动监测记录系统,其特征在于所述的数字证书含有一个公钥;所述的记录程序还包含(1)一个加密模块,所述加密模块利用所述的公钥将所述的记录数据块加密成一个数据流,该数据流中包含若干已加密的数据块;而且所述的处理程序进一步包含(2)一个解密模块,所述解密模块利用与所述的公钥配对的私钥对一组已加密数据块进行解密,使之恢复为所述的那些记录数据模块。
15.根据权利要求13所述的一种计算机活动监测记录系统,其特征在于所述数据流以下列方式中的任意一种被送往所述的处理程序(1)通过计算机网络发送;(2)通过通讯网络发送;(3)通过存储介质递送。
16.根据权利要求13所述的一种计算机活动监测记录系统,其特征在于所述的数字证书包含了一个数字签名,所述的证书验证模块包含一个签名验证模块,所述签名验证模块对所述的签名进行验证。
17.根据权利要求13所述的一种计算机活动监测记录系统,其特征在于所述的记录程序还包含一个证书接受模块,所述证书接受模块显示数字证书内容让计算机用户做出判断,以判定应该接受还是拒绝此数字证书。
18.根据权利要求13所述的一种计算机活动监测记录系统,其特征在于所述的一套动作选自以下的一组动作(1)记录击键动作情况;(2)记录鼠标的扣击和运动情况;(3)记录文件访问情况;(4)记录数据库访问情况;(5)记录程序活动时间;(6)记录网络图通讯情况;(7)记录电话通信情况;(8)记录声音输入输出情况;(9)记录视频输入输出情况;(10)记录所访问的网站;(11)记录消息;(12)记录电子邮件;(13)记录图象;(14)记录屏幕快拍影像;(15)记录计算机资源使用情况;(16)记录程序的属性;(17)设置程序的属性;(18)设置程序的配置方式;(19)设置系统的注册情况;(20)打开文件;(21)发送消息;(22)接收消息;(23)显示消息。
全文摘要
本发明公开了一种计算机活动监测记录系统及方法,所述方法在拥有包含若干政策条款的数字证书的计算机上记录其活动,其步骤包括(1)对数字证书进行验证;(2)执行包括记录在该计算机上进行的活动在内的一整套动作,所述动作是由前述的一套政策条款来规定的;所述系统包括在某计算机上运行的一套记录程序以及在另一计算机上运行的一套处理程序,该系统用于实现所述方法对计算机活动的监测和记录。本发明利用内容包含若干政策和管理者的公钥的数字证书,在“其活动被记录和管理的计算机或计算机用户”与“管理此监督与记录系统的管理者”之间提供了相互信任的保证,同时也增加了计算机信息的安全性。
文档编号G06F11/28GK1567221SQ0312935
公开日2005年1月19日 申请日期2003年6月19日 优先权日2003年6月19日
发明者黄泽镇 申请人:黄泽镇
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1