一种文件信息输出防泄密和溯源追踪的方法和系统
技术领域
本发明属于安全文档防护技术领域,涉及安全文档的屏幕水印和打印水印技术,具体涉及一种安全文档防泄密和溯源追踪方法和系统。
背景技术
电子文档是指人们在社会活动中形成的,以计算机盘片、磁盘和光盘等化学磁性材料为载体的文字材料,依赖计算机系统存取并可在通信网络上传输。它主要包括电子文书、电子信件、电子报表、电子图纸等等。电子文档安全是指电子文档在制作、传输、使用过程中的安全。电子文档安全包括电子文档文件安全和内容安全。
而近年来,据有关权威部门统计数据显示,随着各行业在生产、管理上信息化程度日益增高,电子文档的计算机泄密行为也呈上升趋势。而计算机泄密最大的特点就是较之一般侵占案件,其手段更隐蔽、危害也更大。一个恶意的机密泄露事件往往会给企业造成难以估量的后果:轻则需要投入巨额资金进行补救,重则会将一个企业置之死地。权威数据显示,几乎所有的中国企业对电子文档都没有任何防护措施,企业对于信息有保护措施的不到3%。一些机密性的资料,电子文档轻易就可以通过电子邮件和移动硬盘泄密到网络外部。
另外,通过计算机屏幕拍照和打印纸质文档的方式进行泄密所带来的危害性更大,隐蔽性更好,溯源追查的难度更大。
为此,很多单位相继部署安装了电子文档安全管理系统,系统核心技术是在客户端的驱动管理,位于Windows操作系统的核心态运行,被I/O管理器为满足系统对文件系统的需求而调用;系统的数据加密平台将接管整个Windows操作系统的文件系统,负责为文件系统提供实时地透明加解密数据的服务。当有需要受控的应用程序在运行时,驱动程序将会监视该程序的I/O动作,当应用程序进行文件写操作时,系统会将其自动加密,然后交给下层设备驱动程序来完成真正的磁盘写入动作。当监测到有读的动作时,首先识别此文件是否是已经加密的文件,如果是加密文件,则在读取时自动对读取到内存的数据进行解密。这样在应用程序看起来,就像是什么事都没有发生。用户所有的使用习惯都不会受到影响。
现有的透明加解密技术结合文档密级和用户权限控制,可以提高电子文档的安全性,防止文件信息非法外流。但是也存在以下主要问题:
1)透明加解密技术只能加密保护特定格式的文件格式,即软件系统的进程有I/O操作发生,在硬盘上保存和读取文件数据时,该技术才有效,对于其他更普适性的信息展示方式,比如通过网页浏览信息,现有的透明加解密技术不能有效地进行保护;或者单位内部开发的信息管理系统,通过读取数据库服务器中的数据记录进行界面展示,没有文件存储功能,该技术也不能奏效。
2)无法彻底解决屏幕拍照和打印输出泄密的问题。当然现有的安全文档管理系统也具备禁止系统屏幕快照功能,但只能保证所保护的软件系统界面不能被切屏。如果泄密者从电脑屏幕外面用手机或者数码相机等设备进行屏幕拍照或者录制后,所造成的信息泄密更是无法追查。
为了解决屏幕拍照和打印输出的信息泄密追踪问题,有人通过在电脑屏幕上叠加显示人眼可以觉察的底纹或者可视图像数据,如果屏幕被拍照,通过拍照图像中的可视图案的识别,来追溯文件泄密的源头。但这会大大影响用户的视觉效果,从而造成正常阅读的不便。同样地,打印输出纸张也存在类似的问题。
总之,现有的技术还无法彻底解决文件信息在电脑屏幕浏览和打印输出为纸张文件时所造成的泄密溯源追踪问题。为此,本发明提供了一种文件信息输出防泄密和溯源追踪的方法和系统,在不影响用户正常阅读文件信息的前提下,解决信息防泄密问题。
发明内容
本发明提供一种文件信息输出防泄密和溯源追踪的方法,用以解决现有技术中存在的安全电子文档格式受限,普适性差的问题,进一步地在不影响用户正确阅读的视觉效果前提下,解决了文件信息输出终端屏幕拍照和打印输出方式泄密后的溯源追踪技术难题。
本发明的构思在于:首先,在常见的计算机字库文件中,按照使用词频的排序从大到小选取一定数量的字符集合Ω;针对字符集Ω中的每个字符,选取字体结构中的特征点,通过对该特征点的修改生成新的水印字库文件;将新设计的字库文件安装在计算机终端系统中,字库文件安装时有两种策略:一种是安装时,先删除系统原有安装的字库文件,重新安装修改后水印字库文件,使得系统界面显示时用到的字体都从水印字库中读取;另外一种是策略保留原有的系统字库文件,安装新的水印字库文件,系统界面显示时,根据水印信息位串动态地从系统原有系统字库和水印字库文件中读取字符编码信息。当文件信息在终端屏幕显示或者打印输出为纸张时,通过动态文件信息中的字体而嵌入水印信息;利用数码相机或手机拍摄隐藏有水印信息的终端屏幕或者通过将纸质文档扫描获得文档数字图像数据;分析文档图像中每个字符指定位置的特征点信息,判断每个字符是否包含在修改过的水印字库文件中,进而提取出所代表的水印信息位串。进而得到了一种文件信息输出防泄密和溯源追踪方法和系统。
本发明提供了一种文件信息输出防泄密和溯源追踪的方法,包括如下步骤:
步骤一,在文件信息输出终端部署安装文件信息输出操作监控服务系统;
步骤二,文件信息输出终端进行文件信息输出操作时,文件信息输出操作监控服务系统自动在文件信息输出内容中进行信息防泄密处理,包括在文件信息输出内容中添加水印信息;
步骤三,文件信息输出终端的文件信息经过屏幕切屏、屏幕拍照、屏幕录像、文件拷贝和打印输出操作中的一种或多种;
步骤四,将文件信息输出后的载体内容转换为电子格式的图像数据,运行水印信息提取识别程序检测水印信息,并进行文件信息泄密溯源追踪操作。
较佳地,所述的文件信息输出操作,包括:终端屏幕显示、电子格式文档转换和打印输出。
较佳地,所述水印信息为不可视水印信息,具体包括:用户身份信息、计算机MAC地址、打印机名称、打印时间和日期。
较佳地,所述的水印信息,通过替换系统字库的方式嵌入水印信息,即通过将系统原有安装的字库文件替换为水印字库文件,水印字库的设计方法为:通过适当改变字符或者字符串的拓扑结构,设计出语义上相同的字符(串)的多种字形,每种字形赋予不同的字符编码,代表不同的水印信息位串,最后将所有字符编码保存到新的字库文件中。
较佳地,所述的系统字库替换方法为:
1)静态替换法,设计与系统原有字库同名的水印字库文件,文件信息输出操作监控服务系统安装时,自动将原有字库文件删除,并安装同名的水印字库文件,终端系统屏幕输出显示时,自动调用水印字库中的字符编码;
2)动态替换法,设计与系统原有字库相关联但不同名的字库文件,当终端系统进行文件信息屏幕输出显示时,文件信息输出操作监控服务系统会自动截获屏幕绘制和打印输出指令操作,根据水印信息位串不同,动态交替调用系统原有字库文件和水印字库文件的字符编码,完成屏幕显示和打印输出过程中的水印信息嵌入工作。
较佳地,所述的信息防泄密处理,其基本原理为:对符号的数字编码进行冗余扩展,将传统方法使用的语义上的一个字符对应一个数字编码方法扩展到一个语义上的一个字符对应多个数字编码,然后对这些冗余的数字编码根据其状态不同再进行二次数字编码,用于存储隐藏信息,最后根据水印信息位串和字符编码信息,在屏幕输出显示字符编码时,选择替换同一语义对应的不同冗余字符数字编码。
较佳地,所述的水印信息提取识别,包括单级权限水印信息提取和多级权限水印信息提取,即在终端文件信息输出内容后的数字图像数据中提取识别水印信息,其中数字图像数据包括从屏幕切屏、屏幕拍照、屏幕录像中直接获取的图片文件,或通过数码设备将打印输出后的纸质文档数字化后的图片文件。
本发明提供了一种文件信息输出防泄密和溯源追踪的系统,包括如下部分:
编码库管理模块:用于导出所有终端输出设备的MAC地址列表,并与登陆用户的ID信息、用户姓名、启用时间和截止时间绑定,支持绑定后的编码信息记录的导入导出;
用户信息维护模块:以明文或密文的方式从编码库管理模块中导入导出编码信息数据,并维护用户信息数据;
客户端监控服务模块:在文件信息输出终端部署安装文件信息输出操作监控服务系统,当文件信息输出终端进行文件信息输出操作时,文件信息输出操作监控服务系统自动在文件信息输出内容中进行信息防泄密处理,同时调用水印信息嵌入模块进行水印信息嵌入;
水印信息嵌入模块:从用户信息维护模块中读取当前用户的信息,并实时读取系统时间,通过混合编码生成水印信息,并以水印字库替换的方式嵌入水印信息;
文件信息泄密操作模块:在水印信息嵌入模块执行完毕后,嵌入水印的终端文件信息经过屏幕切屏、屏幕拍照、屏幕录像、文件拷贝和打印输出操作中的一种或多种,发生文件信息泄密行为;
水印信息提取模块:将文件信息泄密操作模块获得的包含水印信息的载体内容转换为电子格式的图像数据,运行水印信息提取识别程序检测水印信息,并进行文件信息泄密溯源追踪操作。
本发明提供了一种电子格式文档输出中的水印信息嵌入和提取识别的方法,包括如下步骤:
步骤一,运行电子文档编辑软件系统打开电子文档,并将文档中的所有内容数据读入到内存中;
步骤二,从用户信息维护模块中读入用户身份信息,并实时读取系统的时间后,通过混合编码生成水印信息,用以标识文档的溯源追踪信息;
步骤三,以文章段落为单位依次在读入内存的文档数据中,通过水印字库替换的方式动态嵌入水印信息,嵌入水印信息后的文档内容数据作为备份的缓存保存在内存中;
步骤四,根据屏幕窗口的位置大小,从嵌入水印信息后的缓存数据中取出图像数据绘制在屏幕区域;然后执行步骤五和步骤六,或者直接执行步骤六(步骤五是可选步骤,是一种泄密方式);
步骤五,电子文档通过虚拟打印机转换为其他电子格式文件,或者通过物理打印机输出为纸质文档时,自动清除嵌入水印的缓存数据,然后重新在内存中生成原始电子文档数据的缓存数据备份,在缓存数据中嵌入水印信息后输出;所述输出是指将嵌入水印信息后的缓存数据转换为其他电子格式文档或者打印输出为纸质文档;
步骤六,将屏幕中嵌入水印信息的电子文档内容通过系统屏幕拍照、切屏获得图像数据,或者通过数码设备获取嵌入水印信息的纸质文档的数字化后的图像数据后,运行水印信息提取识别程序,进行水印信息提取和文档泄密溯源追踪操作。
本发明提供了一种电子文档安全管理系统,包括如下部分:
电子文档编辑模块:运行电子文档编辑软件系统,完成电子文档的新建、保存、编辑和另存功能,并调用安全文档权限管理模块和安全文档流转管控模块,完成文档数据加解密和分发管理功能,同时为上层应用系统提供系统集成接口服务;
编码库管理模块:用于导出所有终端输出设备的MAC地址列表,并与登陆用户的ID信息、用户姓名、启用时间和截止时间绑定,支持绑定后的编码信息记录导入导出;
用户信息维护模块:用于以明文或密文的方式从编码库管理模块中导入导出编码信息数据,并维护用户信息数据;
水印信息嵌入模块:用于从用户信息维护模块中读取当前用户的信息,并实时读取系统时间,通过混合编码生成水印信息,并以水印字库替换的方式嵌入水印信息;
文件信息泄密操作模块:用于在水印信息嵌入模块执行完毕后,使嵌入水印的终端文件信息经过屏幕切屏、屏幕拍照、屏幕录像、文件拷贝和打印输出操作中的一种或多种,发生文件信息泄密行为;
水印信息提取模块:用于将文件信息泄密操作模块获得的包含水印信息的载体内容转换为电子格式的图像数据,运行水印信息提取识别程序,根据安全文档权限管理模块进行分级水印提取,并进行文件信息泄密溯源追踪操作;
安全文档权限管理模块:用于设置文档操作的权限,调用电子文档编辑模块进行文档的读取、保存和加解密操作;
安全文档流转管控模块:用于根据安全文档权限管理模块的权限设置,文档使用者在文档流转过程中对文档进行文件浏览和编辑操作,同时电子文档编辑模块会记录相应的操作日志信息;
上层应用系统集成接口模块:用于通过调用电子文档编辑模块提供的系统集成接口完成应用系统的开发。
本发明有益效果如下:
由于本发明中,在终端屏幕显示或者打印输出文件信息时,采用了基于矢量字库替换的方式嵌入水印信息。嵌入水印信息后的屏幕显示效果和纸质文档视觉效果良好,不影响用户的正常阅读;同时,水印信息添加过程对用户而言完全透明。如果终端屏幕或纸张文件被拍照后,从拍照后的图像数据中可以提取水印信息,从而快速地追踪文件信息输出的源头,进行准确地进行泄密行为追责。
由于本发明中,使用了字库水印算法,普适性好,只要调用系统字库进行文字字符显示的地方都可以嵌入水印信息,而不是限定特定格式的文件类型。
由于本发明中,提供了一种电子格式中的水印信息嵌入和提取的方法,不改变电子文档的实际内容,而是在终端屏幕显示时,通过修改系统缓存数据嵌入水印信息,在终端屏幕显示重绘嵌入水印信息后的文件数据。用户在编辑文档时,系统显示的正常安装的字体信息,不会觉察水印信息的存在;既不影响电子文档的实际内容,水印信息嵌入结果正确,屏幕重绘效率高,用户体验效果好。
由于本发明中,修改水印字库时,可以改变字符图形与字符编码在各种编码标准规范中已确定的映射关系,采用自定义的方法进行字符图形与字符编码的映射,从而使得电子格式文件显示出的字符图形与电子文档的内在编码分别构成显示通信通道和隐藏通信通道。在安装水印字库的系统上,电子格式文件显示的效果正确,如果被非法拷贝出后,系统会显示乱码,从而真正起到信息防泄密的效果。同时显示通信通道中也嵌入水印信息,从屏幕拍照、屏幕切屏、屏幕录制或打印输出纸质的数字化(相机拍照、扫描仪扫描)后的数字图像数据中,可以正确提取水印信息,从而进行文件信息泄密源头的追踪。由于水印算法比较鲁棒,即使纸质文档被复印、褶皱、污损、裁剪等破坏性操作后,水印信息依然存在。
附图说明
图1为本发明一种文件信息输出防泄密和溯源追踪的方法的主流程图;
图2为本发明一种文件信息输出防泄密和溯源追踪的系统结构图;
图3为本发明一种电子格式文档输出中的水印信息嵌入和提取识别的方法主流程示意图;
图4为本发明一种电子文档安全管理系统的结构图;
图5为本发明水印信息嵌入的流程示意图;
图6为本发明水印信息提取的流程示意图;
图7(a)~图7(e)为实施例中水印信息嵌入效果示意图,其中:图7(a)是原始的文档内容示意图;图7(b)是嵌入不可见水印信息后的文档内容示意图;图7(c)是电子文档编辑软件系统实时嵌入水印信息的效果示意图;图7(d)是嵌入水印信息后的电子文档通过屏幕拍照操作方式泄密后截获的图片文件;图7(e)是嵌入水印信息后的纸质文档通过手机拍照后的图片文件。
具体实施方式
下面将结合本发明实施例中的附图,对本发明的技术方案进行清楚、完整地描述,可以理解的是,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1:
如图1所示,是一种文件信息输出防泄密和溯源追踪的方法的主流程图,包括以下步骤:
S101、首先,在文件信息输出终端部署安装文件信息输出操作监控服务系统。
其中文件输出终端设备具体包括计算机显示器、平板电脑显示器、移动手机端显示器、打印机、绘图仪、影像输出设备、磁记录设备等。
S102、文件信息输出终端进行文件信息输出操作时,文件信息输出操作监控服务系统自动在文件信息输出内容中进行信息防泄密处理。
通常情况下,文件信息输出操作包括:终端屏幕显示、电子格式文档转换和打印输出,其中电子格式文档转换可以通过虚拟打印机方式打印输出成另外一种电子文档格式,比如PDF虚拟打印机转换为PDF文件格式。
所述的信息防泄密处理,为在文件信息输出内容中添加水印信息为不可视水印信息,具体包括:用户身份信息、计算机MAC地址、打印机名称、打印时间和日期。这里的水印信息不同于常见的可视水印,不会对文件信息浏览的视觉效果造成影响,对用户而言是完全透明,这保证了水印信息的人眼不可觉察性和安全性。
水印信息的嵌入流程示意图如图5所示:
S501、获取原始的文本信息数据。
S502、确定可嵌入水印信息的字符。
在本发明中,通过替换水印字库中特定的字符编码来实现水印信息嵌入,需要过滤出现词频较低和结构比较简单的字符,从而获得可嵌入水印信息的字符集合。
S503、获得原始水印信息。
系统读取当前登录的用户身份ID信息,并实时读取系统时间,混合编码为水印信息。
S504、加密处理后获得密文水印信息。
S505、确定水印信息添加规则。
S506、通过更改字符属性设置嵌入水印信息。
S507、获得嵌入水印信息后的文本数据。
通过替换系统字库的方式嵌入水印信息,即通过将系统原有安装字库文件替换为水印信息字库文件,水印字库的设计方法为:通过适当改变字符或者字符串的拓扑结构,设计出语义上相同的字符(串)的多种字形,每种字形赋予不同的字符编码,代表不同的水印信息位串,最后将所有字符编码保存到新的字库文件中。
所述的系统字库替换方法为:
1)静态替换法:设计与系统原有字库同名的水印字库文件,文件信息输出操作监控服务系统安装时,自动将原有字库文件删除,并安装同名的水印字库文件,终端系统屏幕输出显示时,自动调用水印字库中的字符编码。
静态替换水印字库文件后,终端文件信息输出时嵌入固定的水印信息位串,比如用户的ID身份信息,或者相应的MAC地址等,不能加入动态时间变化信息。不同终端安装的同名水印字库文件中,字符修改方式略有不同,以区别不同的终端用户信息,从而在屏幕拍照、屏幕截屏、屏幕录制或者打印输出后,可以追溯到从终端信息源头。水印字库文件的安装操作步骤为:
Step1:针对终端原有的字库文件A,将A中所有的汉字字符编码进行字体修改,得到一个完整水印字库文件B;
Step2:将水印字库文件B中所有的汉字字符按照词频从高到低的顺序排列,选择前3000个汉字字符编码组成一个字符编码集合表O;
Step3:在终端安装水印字库文件时,先读取终端的MAC地址或者登陆用户名信息,获得水印信息位串,比如“0100100101101......”;
Step4:接着动态生成一个新的字库文件C,根据水印信息位串“0”和“1”不同,按照字符编码集合表O中的字符编码顺序,依次从字库文件A和水印字库文件B选择字符加入到字库文件C中,即若水印信息位串为“0”时,从字库文件A中选择,否则从水印字库文件B中选择,字符编码集合表O以外的所有字符编码则从字库文件A中选择,从而得到一个新的混合水印字库文件C;
Step5:删除字库文件A,重新安装字库水印文件C,终端屏幕显示时,调用字库水印文件C中的字符编码。
当安装有水印字库文件C的终端文件信息输出泄密后,水印识别检测系统会通过OCR(Optical Character Recognition,光学字符识别)软件事先获取每个字符编码,然后按照字符编码集合表O重新排序,并判断出每个字符图像块所代表的水印信息位串,从而进行文件信息泄密溯源追踪。
2)动态替换法:设计与系统原有字库相关联但不同名的字库文件,当终端系统进行文件信息屏幕输出显示时,文件信息输出操作监控服务系统会自动截获屏幕绘制和打印输出指令操作,根据水印信息位串不同,动态交替调用系统原有字库文件和水印字库文件字符编码,完成屏幕显示和打印输出过程中的水印信息嵌入工作。
动态替换法允许系统原有字库文件和相对应的水印字库文件并存,在终端信息输出时,文件信息输出操作监控服务系统会根据待嵌入的水印信息位串的不同,改变终端系统的底层字库编码映射表,比如嵌入水印位串为“0”时,指向系统原有字库文件,嵌入水印信息位串为“1”时,指向水印字库文件。待嵌入的水印信息可以不固定,根据用户需求自定义设置,比如增加动态的系统时间信息。
另外,本发明还可以进行文件信息防泄密处理,其基本原理为:对符号的数字编码进行冗余扩展,将传统方法使用的语义上的一个字符对应一个数字编码方法扩展到一个语义上的一个字符对应多个数字编码,然后对这些冗余的数字编码根据其状态不同再进行二次数字编码,用于存储隐藏信息,最后根据水印信息位串和字符编码信息,在屏幕输出显示字符编码时,选择替换同一语义对应的不同冗余字符数字编码。
经过文件信息防泄密处理后,在系统内部安装有水印字库文件时,文件信息可以正常输出,若被以电子文档格式拷贝出去后,则会在新的终端输出为乱码,无法正常浏览文件信息内容,从而在一定程度上有效防止文件信息泄密发生。如果在系统内部终端文件信息输出时被屏幕拍照、屏幕截屏、屏幕录制或者打印输出,还可以从截获的文件信息输出内容载体中提取水印信息,从而进行文件信息泄密溯源追踪。
S103、终端文件信息经过屏幕切屏、屏幕拍照、屏幕录像、文件拷贝和打印输出操作中的一种或多种。
S104、将文件信息输出后的载体内容转换为电子格式的图像数据,运行水印信息提取识别程序检测水印信息,并进行文件信息泄密溯源追踪操作。
所述的水印信息提取识别,包括单级权限水印信息提取和多级权限水印信息提取,即在终端文件信息输出内容后的数字图像数据中提出识别水印信息,其中数字图像数据包括从屏幕切屏、屏幕拍照、屏幕录像中直接获取的图片文件,或通过数码设备将打印输出后的纸质文档数字化后的图片文件。
水印信息的提取识别流程示意图如图6所示:
S601、获得含有水印信息文本文件的打印件。
S602、通过扫描仪或者数码相机等设备获得打印件的图像数据。
S603、运行水印信息提取识别程序。
S604、提取水印信息获得密文水印信息。
S605、密文水印信息解密。
S606、获得明文水印信息,进行溯源追踪。
为了做到在一个垂直管理的部门内部进行统一的文件信息泄密溯源追踪管理,需要分级定义编码规则来标识各级行政部门。同时为保证溯源追踪流程的方便性和安全性,结合不同的权限控制,实现分级水印信息提取。拥有最高权限的管理员可以提取识别全部的水印信息,而拥有部分权限的管理员,则只能提取本级部门和所管辖下级部门的水印信息。
如图2所示,是本发明一种文件信息输出防泄密和溯源追踪的系统结构图,包括以下部分:
S201、编码库管理模块:从企业设备管理系统中导出所有计算机设备的MAC地址列表,并与用户的ID信息、用户姓名、启用时间和截止时间绑定,支持绑定后的编码信息记录导入导出;
S202、用户信息维护模块:企业管理管理员以明文或密文的方式从编码库管理模块中导入导出编码信息数据,并维护用户信息数据;
若导入符合规则,则导入成功,否则若存在重复数据或冲突数据,则导入失败,返回失败详情表,修改后可再次导入;导入信息为错误信息时,可以手动将此条编码状态改为“作废”,作废后不再作产生导入冲突。
S203、客户端监控服务模块:在文件信息输出终端部署安装文件信息输出操作监控服务系统模块,当文件信息输出终端进行文件信息输出操作时,文件信息输出操作监控服务系统自动在文件信息输出内容中进行信息防泄密处理,同时调用水印信息嵌入模块进行水印信息嵌入;
S204、水印信息嵌入模块:从用户信息维护模块中读取当前用户的信息,并实时读取系统时间,混合编码生成水印信息,通过水印字库替换的方式嵌入水印信息;
S205、文件信息泄密操作模块:在水印信息嵌入模块执行完毕后,嵌入水印的终端文件信息经过屏幕切屏、屏幕拍照、屏幕录像、文件拷贝和打印输出操作中的一种或多种,发生文件信息泄密行为;
S206、水印信息提取模块:将文件信息泄密操作模块获得的包含水印信息的载体内容转换为电子格式的图像数据,运行水印信息提取识别程序检测水印信息,并进行文件信息泄密溯源追踪操作。
如图3所示,是一种电子格式文档输出中的水印信息嵌入和提取识别的方法主流程示意图,包括以下步骤:
S301、运行电子文档编辑软件系统打开电子文档,并将文档中的所有内容数据读入到内存中。
S302、从用户信息编码数据库服务器中读入用户身份信息,并实时读取系统的时间后,混合编码生成水印信息用以标识文档的溯源追踪信息。
S303、以文章段落为单位依次在读入内存的文档数据中,通过水印字库替换的方式动态嵌入水印信息,嵌入水印信息后的文档内容数据作为备份的缓存保存在内存中。
具体的嵌入方法为:以文章段落为单位嵌入水印,每一段落的开始调用一次初始化函数syInit,传递一个当前嵌入水印位串的偏移位置初始值。每一段的结束调用一次清空函数syRelease,返回当前水印偏移位置,以供下一段调用syInit使用,从而达到段与段之间连接起来嵌入水印。在syInit和syRelease之间多次调用水印信息嵌入函数syWaterEmbedding,每次调用只对一行文本进行嵌入。如果一行文本字体属性设置方式不一样,则会被拆分为多个子句,需要对每一个子句分别进行嵌入。嵌入的结果会先缓存起来,绘制的时候直接从缓存中取出结果,替换字体绘制。为了提高效率,每次绘制需要事先计算所有字符绘制的偏移位置,并且对每一子句中的每种字体而言,每种字体的字符编码只绘制一次,比如水印嵌入前的句子中的字符为“中华人民共和国”,水印信息位串为“0101010”,这段文本的字体类型为“仿宋”,嵌入水印信息后被替换的字体类型为“仿宋-new”,则用“仿宋”字体绘制字符“中人共国”,用“仿宋-new”字体绘制字符“华民和”,则实际绘制的时候会设置好“仿宋-new”字体属性,计算好“中人共国”字符串中各个字符的位置,一次性绘制完所有字符,然后用同样的方法一次性绘制“华民和”,而不是切换字体逐个绘制“中华人民共和国”,从而屏幕绘制的效率较高。
如果一个段落跨了页,那么在页结束的时候也会调用一次syRelease,记录当前水印信息嵌入的偏移位置,在下一页开始处调用syInit传递偏移位置,接着完成水印信息嵌入操作。
为了屏幕显示时水印信息嵌入的效率以及用户体验,只针对变化的段落重新嵌入水印,后面的段落并没有重新嵌入。另外,所有的水印字库文件不直接在系统安装,而是打包到文档编辑软件的资源文件中,在文档编辑软件系统进程中加载进来,只供水印嵌入模块使用,这些字体对用户完全透明,从而避免用户手工设置水印字库中的字体,最终导致水印信息混淆;同时也提高了水印信息的安全性能。
S304、根据屏幕窗口的位置大小,从嵌入水印信息后的缓存数据中取出图像数据绘制在屏幕区域。
S305、电子文档通过虚拟打印机转换为其他电子格式文件,或者通过物理打印机输出为纸质文档时,自动清除嵌入水印的缓存数据,然后重新在内存中生成原始电子文档数据的缓存数据备份,在缓存数据中嵌入水印信息后输出;所述输出是指将嵌入水印信息后的缓存数据转换为其他电子格式文档或者打印输出为纸质文档;
S306、将屏幕中嵌入水印信息的电子文档内容通过系统屏幕拍照、切屏获得图像数据,或者通过数码设备获取嵌入水印信息的纸质文档数字化后图像数据后,运行水印信息提取识别程序,进行水印信息提取和文档泄密溯源追踪操作。
如图4所示,是本发明一种电子文档安全管理系统的结构图,包括以下部分:
S401、电子文档编辑模块:运行电子文档编辑软件系统,完成电子文档的新建、保存、编辑和另存功能,调用安全文档权限管理模块和安全文档流转管控模块,完成文档数据加解密和分发管理功能,同时为上层应用系统提供系统集成接口服务;
S402、编码库管理模块:从企业设备管理系统中导出所有计算机设备的MAC地址列表,并与用户的ID信息、用户姓名、启用时间和截止时间绑定,支持绑定后的编码信息记录导入导出;
S403、用户信息维护模块:企业管理管理员以明文或密文的方式从编码库管理模块中导入导出编码信息数据,并维护用户信息数据;
S404、水印信息嵌入模块:从用户信息维护模块中读取当前用户的信息,并实时读取系统时间,混合编码生成水印信息,通过水印字库替换的方式嵌入水印信息;
S405、文件信息泄密操作模块:在水印信息嵌入模块执行完毕后,嵌入水印的终端文件信息经过屏幕切屏、屏幕拍照、屏幕录像、文件拷贝和打印输出操作,发生文件信息泄密行为;
S406、水印信息提取模块:将文件信息泄密操作模块获得的包含水印信息的载体内容转换为电子格式的图像数据,运行水印信息提取识别程序,根据安全文档权限管理模块进行分级水印提取,并进行文件信息泄密溯源追踪操作;
S407、安全文档权限管理模块:设置文档操作的权限,调用电子文档编辑模块进行文档的读取、保存和加解密操作;
S408、安全文档流转管控模块:根据安全文档权限管理模块的权限设置,文档使用者在文档流转过程中对文档进行文件浏览和编辑操作,同时电子文档编辑模块会记录相应的操作日志信息;
S409、上层应用系统集成接口模块:通过调用电子文档编辑模块提供的系统集成接口完成应用系统的开发。
在本实施例中,通过水印字库替换的方式在屏幕显示的点阵图像数据或打印输出的纸质文档中嵌入不可见的水印信息;文件信息泄密后,从文件信息输出内容载体的图像数据中提取识别水印信息,通过水印信息进行文档源头的溯源追踪。比如,图7(a)为原始的文档内容示意图,图7(b)为图7(a)嵌入不可见水印信息后的文档内容示意图。从图7(a)和图7(b)的视觉对比效果来看,水印信息不易被人眼识别,完全不影响文档的正常阅读。图7(c)为在电子文档编辑操作过程中实时嵌入水印信息的效果示意图,从屏幕显示的效果来看,水印信息的隐蔽性好,屏幕显示的绘制速度快。另外,嵌入水印信息时,没有直接修改原始的电子文档数据,而是在原始数据的缓存备份数据中嵌入。因此,在电子文档编辑软件系统显示的仍然是原始字体信息。比如,在本例子中显示的是系统预装的“仿宋”字体,不会由于用户手工将文本字体类型误设置为水印字库中的字体,而破坏已操作嵌入的水印信息。图7(d)为图7(c)经过手机拍摄电脑屏幕泄密后截获的文本图像数据,其中水印信息仍可以正确提取;另外,由于手机摄像头分辨率和屏幕显示分辨率不同,会导致拍照图片中出现干扰的波纹效果,本发明中所采用的文本水印信息算法对此有较强的鲁棒性。图7(e)为图7(a)经过打印输出为纸质文档后,用手机拍照方式获得的图片文件,其中水印信息依然可以正确提取;同时对手机摄像头的分辨率、拍照角度、光线明暗、曝光度不同等条件没有过高的要求。
实施例2:
本实施例提供了一种文件信息输出防泄密和溯源追踪的系统,包括如下部分:
用户账号信息管理模块:拥有完善的用户账号系统,可对接用户单位内部的AD(active directory,活动目录)、LDAP(Lightweight Directory Access Protocol,轻量目录访问协议)和其他自建系统,同步组织架构和用户信息;
客户端监控服务模块:在文件信息输出终端部署安装文件信息输出操作监控服务系统,当文件信息输出终端进行文件信息输出操作时,文件信息输出操作监控服务系统自动在文件信息输出内容中进行信息防泄密处理,同时调用水印信息嵌入模块进行水印信息嵌入;
水印信息嵌入模块:从用户账号信息管理模块中读取当前用户的信息,并实时读取系统时间,通过混合编码生成水印信息,并以水印字库替换的方式嵌入水印信息;
文件信息泄密操作模块:在水印信息嵌入模块执行完毕后,嵌入水印的终端文件信息经过屏幕切屏、屏幕拍照、屏幕录像、文件拷贝和打印输出操作中的一种或多种,发生文件信息泄密行为;
水印信息提取模块:将文件信息泄密操作模块获得的包含水印信息的载体内容转换为电子格式的图像数据,运行水印信息提取识别程序检测水印信息,并进行文件信息泄密溯源追踪操作。
在本实施例中,用户内部拥有了统一账号管理体系,不需要管理员再自行把输出设备的MAC地址与人员信息绑定,作为用户身份识别的判定。这里还可以对用户授予角色,其中溯源管理员可以在管理后台进行溯源水印提取。
实施例3:
本实施例提供了一种电子格式文档输出中的水印信息嵌入和提取识别的方法,包括如下步骤:
步骤一,运行电子文档编辑软件系统打开电子文档,并将文档中的所有内容数据读入到内存中;
步骤二,读入用户身份信息,并实时读取系统的时间后,通过混合编码生成水印信息,用以标识文档的溯源追踪信息;
这里用户信息可为系统的登陆用户账号、设备的MAC地址、IP地址以及人为指定的编码信息、设备编号信息等。
步骤三,在读入内存的文档数据中,通过水印字库替换的方式动态嵌入水印信息;
这里以页为单位,一次性在整页的电子文档数据中嵌入水印信息,同时可以选择原始电子文档数据或相应的缓存备份数据为水印嵌入内容载体。
步骤四,根据屏幕窗口的位置大小,从嵌入水印信息后的缓存数据中取出图像数据绘制在屏幕区域;
步骤五,电子文档通过虚拟打印机转换为其他电子格式文件,或者通过物理打印机输出为纸质文档时,自动清除嵌入水印的缓存数据,然后重新在内存中生成原始电子文档数据的缓存数据备份,在缓存数据中嵌入水印信息后输出;
步骤六,将屏幕中嵌入水印信息的电子文档内容通过系统屏幕拍照、切屏获得图像数据,或者通过数码设备获取嵌入水印信息的纸质文档的数字化后的图像数据后,运行水印信息提取识别程序,进行水印信息提取和文档泄密溯源追踪操作。
实施例4:
本实施例提供了一种电子文档安全管理系统,包括如下部分:
电子文档编辑模块:运行电子文档编辑软件系统,完成电子文档的新建、保存、编辑和另存功能,并调用安全文档权限管理模块和安全文档流转管控模块,完成文档数据加解密和分发管理功能;
用户账号信息管理模块:拥有完善的用户账号系统,可对接用户单位内部的AD(active directory,活动目录)、LDAP(Lightweight Directory Access Protocol,轻量目录访问协议)和其他自建系统,同步组织架构和用户信息;
水印信息嵌入模块:用于用户账号信息管理模块中读取当前用户的信息,并实时读取系统时间,通过混合编码生成水印信息,并以水印字库替换的方式嵌入水印信息;
文件信息泄密操作模块:用于在水印信息嵌入模块执行完毕后,使嵌入水印的终端文件信息经过屏幕切屏、屏幕拍照、屏幕录像、文件拷贝和打印输出操作中的一种或多种,发生文件信息泄密行为;
水印信息提取模块:用于将文件信息泄密操作模块获得的包含水印信息的载体内容转换为电子格式的图像数据,运行水印信息提取识别程序,根据安全文档权限管理模块进行分级水印提取,并进行文件信息泄密溯源追踪操作;
安全文档权限管理模块:用于设置文档操作的权限,调用电子文档编辑模块进行文档的读取、保存和加解密操作;
安全文档流转管控模块:用于根据安全文档权限管理模块的权限设置,文档使用者在文档流转过程中对文档进行文件浏览和编辑操作,同时电子文档编辑模块会记录相应的操作日志信息。
安全电子文档在流转过程当中,根据权限的设置限制用户对电子文档的操作行为,比如用户是否可以打开文档、打开次数、阅读的时间(阅后即焚)、是否可以打印以及打印后的纸质文档是否可以进行溯源追踪等。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。