小工具:保护文件和文件夹的卫兵

2024-05-06

小工具:保护文件和文件夹的卫兵(通用7篇)

篇1:小工具:保护文件和文件夹的卫兵

近日在网上浏览,从这里下载到一款名为HideFilesAndFolders的共享软件,大小为800KB,它是一款工作在Windows内核级别的文件和文件夹加密工具,可以为任意文件加上密码保护。

安装并运行软件后,默认的密码为“admin”,输入该密码后在下一个界面中单击“StarttheProgram”按钮,可进入如图所示的主界面。主界面分为三部分:上半部分左侧为树形目录区,上半部分右侧为文件区,下半部分是加密的文件或文件夹区。

图1

用户只需通过树型目录区和文件区找到要加密的文件或文件夹,然后用鼠标将其直接拖入下方文件或文件夹加密区即可,

默认情况下,该文件或文件夹将被隐藏起来。隐藏起来的文件不仅资源管理器无法查看,利用WinRAR等软件也无法查看。单击“文件或文件夹加密区”上方的“RestrictedFilesAndFolders”后面的“P”,即可为文件或文件夹设置密码保护(默认情况下即为进入该软件时输入的密码“admin”)。如果想更改密码,可以先选中加密区的文件或文件夹,然后单击工具栏上的“Password”按钮,在打开的对话框中依次输入原密码、新密码,再重复输入一次新密码,最后单击“OK”按钮即可。

怎么样?使用很简单吧!这个软件还有更多的功能等你去探索呢,赶快去下载一个吧!

篇2:小工具:保护文件和文件夹的卫兵

对于添加完成的文件夹,可以进行后期管理,如果不再需要,或想进行修改,可分别点击工具栏“Edit”或“Delete”按钮,

此外,还可将这些文件夹配置情况导出(‘Export’按钮)保存。一旦重装系统后,执行导入(‘Import’按钮)操作可立即恢复设置,免去重新设定的麻烦。

好了,完成设定之后,我们就可以来应用了。当打开资源管理器后,在任意区域打开右键快捷菜单,并选择“Folder Guide”进入,此时你就能看到之前设定的常用文件夹的名称(图3),直接点击即可打开对应的文件夹,非常的快捷。

有了 Folder Guide 的相助,就可以帮助你快速访问经常使用和喜爱的文件夹了。作为一款资源管理器的辅助工具,它还是非常值得一用的。

点击阅读更多学院相关文章>>

篇3:小工具:保护文件和文件夹的卫兵

Hadoop是近几年发展比较成熟的云计算[1]平台之一,凭借其可靠、高效、可伸缩的特性在互联网领域得到了广泛应用,同时也得到了学术界的普遍关注。HDFS作为Hadoop的分布式文件系统,已经成为海量存储集群上部署的主流文件系统。

HDFS由一个Name Node和若干个Data Node组成,其中Name Node负责管理文件系统的命名空间,Data Node是文件系统的工作节点[2]。HDFS这种主从式的架构模式极大地简化了分布式文件系统的结构,但是由于Namenode把文件系统的元数据放置在内存中,所以文件系统所能容纳的文件数目取决于NameNode的内存大小[3]。这就导致了HDFS对海量小文件支持不理想的问题。例如,在HDFS上存储约120万个图片文件(每个图片文件大小小于1M),会发现Name Node和Data Node的内存使用分别增加340M和280M,并且整个存储过程需要9.4小时。Name Node过大的内存开销和存储的低效严重影响了系统可扩展性和可用性。

现实应用中存在HDFS存取海量小文件的需求。例如,“中华字库”工程就使用HDFS存储工程中产生的TB级别的数据,这些数据中包含千万级别的小文件。这些小文件具有规范的目录结构而且命名非常规范,如图1所示。每本文献会形成一个独立的文件,该文件下不同的章节会形成单独的文件,每个章节文件下保存各自章节的页面图片,所有章节和页面按照统一的格式命名。显然,同一章节下的页面具有很强的内在联系,同一书籍中的不同章节之间也有较强的先后联系。

“中华字库”工程包含两种类型的用户需求,存储需求和读取需求。存储需求是指文献整理单位的存储需求,希望以批量的方式向HDFS存储小文件,比如以文献文件为单位。读取需求是指“中华字库”工程的用户(例如,语言文字研究者),会对工程中的某个或某些页面图片感兴趣,必须在较短的时间内响应用户的读取请求。

针对HDFS的海量小文件问题和“中华字库”工程的应用需求,本文提出了一种HDFS上存取海量小文件的方法—HIFM。HIFM利用小文件之间的相关性和文献的目录结构,将同一文献的图片文件合并成一个大文件,并在合并过程中,形成了两个层次的索引文件:chapter Index和block Index。其中,chapter Index集中存储,block Index在集群中分布式存储,索引文件都采用预加载的机制。根据用户访问的局部性特征,采用了数据预取的机制,读取一个小文件时,同时预取与该文件最相关的几个文件,提高顺序读取的效率。

1 相关研究

解决HDFS海量小文件存取效率问题的方法可以归结为两类:通用的解决方法和针对特殊应用场景的特定解决方法。主流的思想是将小文件合并为大文件,减少存储文件的数目,同时为原先的小文件建立索[3]。

1.1 通用解决方法

通用的解决方案包括HAR[4]、Sequence File[5]、Map File[6],这些方案都能有效的减少Name Node的内存开销,但是都难以满足低时间延迟访问的要求。

HAR是在HDFS上存在海量小文件的前提下,通过执行Map Reduce任务将HDFS中的小文件合并成大文件,能有效减少HDFS中存储的文件数目,但是合并过程耗时较长,读取小文件甚至比从原始HDFS中读取更慢,因为读取过程需要额外访问两级索引信息[7]。Sequence File通过key-value键值对的形式存储合并后的小文件,其中key是小文件的文件名,value是小文件的内容。这种合并小文件的方式主要适用于Map Reduce类型的作业,对于低延时的随机访问并不合适,因为没有索引,读取每个小文件都需要遍历整个大文件。Map File是一种有索引的按key排序的Sequence File,读取小文件的性能优于Sequence File,但是Map File中的索引文件只是部分索引(默认每隔128个key记录一个到索引文件中),读取一个小文件需要遍历一个索引的间隔,因此随机读取的性能也不理想。

相对通用解决方案,本文提出的HIFM方法有以下几点不同:

1)合并小文件时,考虑了小文件之间的相关性和数据的目录结构。

2)实现索引文件的预加载,保证随机读取小文件只需要一次I/O。HAR需要3次I/O,Sequence File需要多次I/O,Map File最好的情况下需要2次,一般需要多次I/O。

3)采用数据预取的机制,提高顺序访问小文件的效率。

1.2 特定解决方法

文献[8]和文献[9]都是针对特定应用场景对HDFS做的优化。文献[8]针对Web GIS数据的特点,将地理位置信息相邻的小文件合并为一个大文件,并对所有小文件建立全局的hash索引,有效提高了小文件的存取效率。文献[9]针对Blue Sky系统中的PPT文件的问题,提出了将属于同一PPT的小文件合并为一个大文件,并对每一个大文件建立一个localindex的方法,充分利用了缓存的机制,提高了小文件的存取效率。

HIFM方法与文献[8]和文献[9]提出的方法有相似之处,与它们相比有以下几点不同:

1)文献[8]将小文件合并为大文件后,建立的是全局索引,文献[9]针对每一个PPT文件建立一个localindex。而HIFM利用数据的目录结构,建立分层索引:chapter Index和block Index。

2)与文献[8]相比,HIFM实现部分索引文件(block Index)在集群中的分布式存储。与文献[9]相比,HIFM的索引信息作为独立的文件存储,并且block Index与对应的HDFS block一起存储到同一Data Node的同一位置。

3)HIFM实现了Data Node上block Index索引文件的预加载。

2 HDFS中的小文件转化方法—HIFM

HIFM主要包含三个方面的内容:(1)将小文件合并成大文件,减少HDFS中存储的文件数目,提高存取效率。(2)采用集中存储和分布式存储相结合的方式管理索引文件,实现索引文件预加载。(3)利用图片文件之间的相关性和用户访问的局部性特征,采用预取机制,有效提高顺序文件访问的效率。

2.1 小文件合并

HIFM充分利用了“中华字库”工程数据的特点,考虑到文献图片之间的相关性和文献的目录结构,将同一文献的所有图片合并成一个大文件,同时生成分层索引:一个chapter Index和若干个block Index(每本文献可能占用若干个HDFS block,针对每一个HDFS block生成一个block Index)。

chapter Index记录每个章节位于其所在文献的第几个block的索引信息,block Index记录每个HDFS block上存储的图片文件的索引信息。

2.1.1 索引文件结构

chapter Index结构

chapter Index记录每个章节位于其所在文献的第几个HDFS block的信息。图2列出了chapter Index的结构。其中,keylen占用一个字节,标示key的实际长度。key由文献名称和章节名称组成,唯一标示一个章节。inblock Id占用一个字节,标示key章节位于其所在文献的第几个HDFS block(每个文献可能占用若干个HDFS block)。pagelen占用一个字节,标示key章节中横跨两个block的图片文件的数目。pages占用1*pagelen个字节,标示key章节中位于两个HDFS block上的图片的编号。

block Index结构

block Index记录的是每个HDFS block中存储的图片文件的索引信息。对于Name Node而言,block Index是透明的,因为block Index总是与对应的HDFS block一起传输,在Name Node中只会记录HDFS block的元信息,不会记录block Index的元信息。图3列出了block Index的结构。其中keylen占用一个字节的长度,标示key的长度。key是由章节名称和页面名称组成的,用于唯一标示一个页面图片。offset和length标示页面图片在其所在HDFS block的偏移和长度,都占用4个字节。

2.1.2 小文件合并优化策略

定义1小空间是指小于每本文献中最小图片大小的一半的空间。

为提高数据的访问速度,应该尽量减少横跨两个HDFS block的页面图片的数量。因为读取这样一个页面很可能需要与两个不同的Data Node进行交互,读取的时间会明显增大。为减少这种情况的发生,本文采取了调换章节内页面图片顺序和舍弃HDFS block末尾小空间的优化方法。

步骤1当发生一个页面图片a横跨两个HDFS block的情况时,判断第一个block剩余的空间是否为小空间,如果是转步骤3,如果不是转步骤2。

步骤2将第一个block剩余的空间与a所在章节的所有页面进行比较,用与该block剩余空间最接近的页面图片替换a,转步骤1。如果不存在比剩余空间小的页面图片转步骤4。

步骤3舍弃该block上的小空间,从下一个block起始位置开始写入。

步骤4按照正常的流程处理,将小文件写到两个HDFS block上。

2.2 索引文件存储和预加载

HIFM采用集中式存储和分布式存储相结合的方式管理索引文件。其中chapter Index集中存储,block Index在Hadoop集群中分布式存储。在HDFS Client和Data Node之间添加专门用于小文件存储的机制,保证block Index与对应的HDFS block一起传输到同一Data Node的同一位置,实现block Index的分布式存储。

chapter Index和block Index都采用预加载的机制。保证查询索引的过程,不需要磁盘I/O。由于chapter Index和block Index的大小都比较小,所以预加载不会消耗太多资源。例如,“中华字库”工程最终生成的chapter Index的总大小在10M左右,block Index的总大小在150M左右。由于block Index在集群中分布式存储,因此最终分摊到集群中各个节点上的大小会比较小(取决集群节点的个数)。

2.3 数据预取

数据预取是一种有效的存储优化技术[8]。利用访问的局部性特征,预先读取数据能够隐藏磁盘I/O带来的开销,有效地提升读取的性能。考虑到同一文献的页面图片内在的相关性和用户访问的局部性特征,采用数据预取的机制。

“中华字库”工程数据的特点是,文献章节内的页面图片具有很强的相关性,不同的章节之间也有一定的相关性。本文采取的方法是,只考虑同一章节内部的页面图片的相关性,采用这种方法主要是从实现简单的角度考虑。

在“中华字库”工程中,文献章节的页面图片数量从几页到几十页不等。本文采用的实现方案是,预取当前请求页面相邻的5个页面(确定预取5个相关页面,目前只是用于测试,后续工作会挖掘用户的访问习惯,调整相应的预取策略),对于少于5页的章节实现全部预取。对于横跨几个HDFS block的章节,只预取与请求的页面在同一block上的文件。

3 HIFM在Hadoop框架下的实现

实现HIFM方法的整个系统可划分为两个部分:Client Server端和数据存储端(图4)。Client Server端负责处理客户端请求、合并小文件、预加载chapter Index、与HDFS交互。数据存储端使用HDFS进行数据存储,主要处理Client Server端的存储和读取请求,完成block Index的预加载。其中最主要的部分是小文件存储和读取流程的实现。

3.1 小文件存储

3.1.1 存储流程

如图4所示,小文件的存储的流程主要包括下面几个步骤。

步骤1文献的图片文件在Client Server端合并形成大文件,同时生成分层索引chapter Index和block Index。

步骤2通过在HDFS client和Data Node上添加的存储机制,将block Index与对应HDFS block一起传输到Data Node的同一位置。传输结束后,Data Node将block Index加载到内存。

步骤3在Client Server端将chapter Index加载至内存。。

步骤4通知用户存储成功。

3.1.2 支持小文件存储的机制

在HDFS Client中添加用于小文件存储的方法putsf,putsf控制合并后大文件的传输,保证block Index与对应的HDFS block传输到Data Node的同一位置。在Data Node端添加相应的接收和预加载block Index的机制receivesf。实现的伪代码如下:

3.2 小文件读取

3.2.1 读取流程

如图5所示,小文件的读取流程主要包含以下几个步骤:

步骤1根据小文件名查询cache,如果命中,转步骤8。

步骤2根据查询的小文件名,通过文件映射模块获取小文件所在的章节。

步骤3根据章节名查询Client Server端的chapter Index,获取该章节在对应文献内的inblock Id。

步骤4通过HDFS client从Name Node获取该文件所在文献占用的所有HDFS block Id,根据步骤2得到的inblock Id,获取该文件对应章节所在的HDFS block Id。

步骤5根据block Id数目,判断该章节是否占用多个HDFS block,如果是根据chapter Index记录的pages,得到该文件所在的具体block Id。

步骤6如果查询的文件位于两个HDFS block上,将启动两个线程分别读取数据,提高读取的效率。如果位于一个block上,按正常流程读取。

步骤7通过在HDFS client和Data Node上添加的小文件读取机制进行读取。client端向Data Node发送需要读取的文件名称和block Id,Data Node端查询已经预加载的block Index,获得该文件在相应block中的偏移和长度,将对应的数据返回。

步骤8将结果返回给用户。

3.2.2 支持小文件读取的机制

在HDFS client端添加用于小文件读取的方法getsf,getsf控制查询chapter Index,获取小文件所在的block Id,向HDFS发送查询的小文件名和小文件所在的block Id,而不是要读取的偏移和长度。

在Data Node端添加receive Query方法,控制查询block Index,通过小文件名和block Id获取小文件的偏移和长度,读取小文件的内容并返回。实现的伪代码如下所示:

4 性能评测

4.1 实验环境

本文的实验环境是有5个节点的hadoop集群。其中两个节点是Dell OPTIPLEX990,Intel i7 CPU 2.80GHz,4G内存,500G硬盘。另外三个节点是Dell OPTIPLGX620,Intel Pentium 4 CPU3.20GHz,2G内存,160G硬盘。网络环境是百兆以太网。其中两台机器分别用作Name Node和Second Name Node,5台机器全部用作Data Node。每台节点上安装的是Ubuntu 10.10,linux内核版本是2.6.35。hadoop的版本是1.0,JDK的版本是1.6.0_27。

4.2 数据集

“中华字库”工程产生约一千万个图片文件,经处理后每个图片文件的大小小于1M。对实验用到的10000本文献(约823万个小文件)的图片进行统计,得到了如图6所示的数据大小分布。可以看出大小为80KB~200KB的图片占数据总量的94.21%。

4.3 实验对比

本文实验对比的主要指标是,读取小文件的时间开销,Name Node和Data Node的内存开销,存储小文件的时间开销,Client Server端存储索引的内存开销。其中读取小文件的时间开销是本文最关心的指标,因为直接关系到用户体验。

在每组试验中,本文提出的方法HIFM分别与原始HDFS、HAR(Hadoop archive)的结果进行了对比。选择HAR作为对比对象而不是Sequence File或者Map File,是因为HAR有更好的小文件读取性能,与其对比结果更有说服力。

4.3.1 小文件读取性能对比

为模仿不同的读取行为,分别对5000个随机文件和500组顺序文件(每组10个)进行了读取。为避免网络等问题的干扰,分别去掉最大和最小的50个时间值,再取平均值。

由于小文件读取性能受HDFS中存储文件数目的影响,因此分别在存储2000、4000、6000、10000本文献的情况下,对三种方案的小文件随机读取性能进行测试。其中每本文献平均包含823.8个小文件。

·小文件随机读取性能

图7显示了三种方案随机读取的性能对比,从图中可以看出原始HDFS与HAR在小文件数目增多时,性能下降比较明显,而HIFM的随机读取时间基本保持不变。在存储10000本文献(约823万个小文件)时,HIFM的随机读取时间分别是原始HDFS和HAR的1/7.5和1/4.2。HIFM的随机读取时间基本保持在20ms,完全满足工程实现的需求。

·小文件顺序读取性能

从图8可以看出,顺序读取小文件时,HIFM同样优势明显。在存储10000本文献时,HIFM顺序读取时间分别是原始HDFS和HAR的1/11.1和1/6.3。HIFM顺序读取性能较好主要原因是,极大减少了与Name Node和Data Node交互的次数,节约大量时间。

4.3.2 Name Node和Data Node内存使用对比

同样使用2000、4000、6000、10000本文献数据,分别对原始HDFS、HAR、HIFM的Name Node和Data Node的内存使用情况进行了测试。图9和图10分别显示了Name Node和Data Node的内存使用情况,两图都使用对数坐标。其中Data Node的内存使用是5个节点内存使用的平均。

·Name Node内存使用对比

从图9可以看出,HIFM能显著降低Name Node的内存开销,相比原始HDFS和HAR优势比较明显。最终HIFM的平均内存使用分别是原始HDFS和HAR的1/140.12和1/5.83。因为HIFM将小文件合并成大文件有效减少了系统存储的文件数目,同时生成的index文件在Name Node中没有元信息,所以相比原始HDFS和HAR都能节约Name Node内存使用。

·Data Node内存使用对比

从图10可以看出,在Data Node内存空间的使用上,HIFM也有一定的优势。最终HIFM平均内存使用分别为原始HDFS和HAR的1/10和1.21倍。在存储10000本文献情况下,HIFM仅比HAR多用约20M内存,这些额外的内存开销基本不会影响Data Node的性能。因为HIFM极大减少了Data Node存储文件的数目,而Data Node中每个文件都有相应的元信息存储在内存中,所以HIFM相比原始HDFS节约较多内存。但是HIFM是针对每一个HDFS Block生成一个索引文件,而HAR是针对整个大文件生成两个索引文件,所以在大文件占用两个以上HDFS Block的情况下,HIFM要多使用一些内存。

4.3.3 小文件存储性能对比

对于2000个文献文件(约159万小文件),分别统计HIFM与原始HDFS的写入时间以及生成HAR文件的时间,如图11所示。HIFM写入需要3.3小时,原始HDFS需要12.1小时,生成HAR需要11.9小时。由于HIFM将小文件合并成大文件,大大减少了与Name Node和Data Node交互的次数,因此写入速度得到较大提升。

4.3.4 Client Server端存储索引的内存开销

在系统存储10000本文献的情况下,Client Server端存储chapter Index的内存开销约为7.5M,额外的内存开销非常少,不会影响到Client Server的性能。

性能评测结果表明,HIFM能够有效提高HDFS存储和读取小文件的效率,同时HIFM显著降低Name Node和Data Node的内存开销。使用HIFM方法实现的系统,随机读取一个小文件只需要20ms左右的时间,完全满足工程应用的需求。

5 结语

本文提出并实现一种提高HDFS小文件存储和读取效率的方法—HIFM。主要工作有:

1)利用图片文件之间的相关性将一本文献的所有图片合并成一个大文件。利用文献的目录结构,生成分层索引。解决存储海量小文件Name Node内存开销过大的问题,有效提高HDFS存储和读取小文件的效率。

2)采用集中存储和分布式存储相结合的方法管理索引文件,并实现索引文件的预加载。解决索引文件集中存放可能导致的性能问题以及索引文件临时加载带来的延迟。

3)利用用户访问的局部性特征,对相关性很大的文件进行预读取,提高顺序文件访问的效率。

需要说明的是,本文提出的方法不仅仅适用于“中华字库”工程这一特定应用,同样适用于其他具有规范目录结构且数据批量存储的应用场景。

目前实现的系统暂不支持小文件更新和删除操作,数据预取机制只是用于测试,在今后工作中会进一步完善。

摘要:HDFS(Hadoop Distributed File System)凭借其高容错、可伸缩和廉价存储的优点,在当前面向云计算的应用场景中得到了广泛应用。然而,HDFS设计的初衷是存储超大文件,对于海量小文件,由于NameNode内存开销等问题,其存储和读取性能并不理想。提出一种基于小文件合并的方法 HIFM(Hierarchy Index File Merging),综合考虑小文件之间的相关性和数据的目录结构,来辅助将小文件合并成大文件,并生成分层索引。采用集中存储和分布式存储相结合的方式管理索引文件,并实现索引文件预加载。此外,HIFM采用数据预取的机制,提高顺序访问小文件的效率。实验结果表明,HIFM方法能够有效提高小文件存储和读取效率,显著降低NameNode和DataNode的内存开销,适合应用在有一定目录结构的海量小文件存储的应用场合。

关键词:HDFS,小文件,HIFM,分层索引,索引预加载,数据预取

参考文献

[1]Armbrust M,Fox A.Griffith R,et al.Above the Clouds:A BerkeleyView of Cloud Computing[D].UCB/EECS-2009-28,EECS Depart-ment,University of California,Berkeley,2009.

[2]Tom White.Hadoop:The Definitive Guide[M].2nd ed.O’ReillyMedia,Inc,2011.

[3]Konstantin Shvachko,Hairing Kuang,Sanyjy Radia,et al.The Ha-doop Distributed File System[C]//Proceedings of the 2010 IEEE26th Symposium on Mass Storage Systems and Technologies(MSST),May 03-07,2010:1-10.

[4]Hadooparchives[OL].http://hadoop.apache.org/common/docs/cur-rent/hadoop_archives.html.

[5]Sequence File Wiki[OL].http://wiki.apache.org/hadoop/Seq uence File.

[6]Map files[OL].http://hadoop.apache.org/common/docs/current/api/org/apache/hadoop/io/MapFile.html.

[7]Tom White.The Small Files Problem[OL].http://www.clou dera.com/blog/2009/02/02/the-small-files-problem/.

[8]Xuhui Liu,Jizhong Han,Yunqin Zhong,et al.Implementing WebGIS onHadoop:A Case Study of Improving Small File I/O Performance on HDFS[C]//Proc.of the 2009 IEEE Conf.on Cluster Computing:1-8.

篇4:保护云文件和邮件

通过Bitlocker功能我们可以加密硬盘,防止未经授权的人访问我们的硬盘。但是我们通过互联网传输的数据,如果不经过加密,可以说是毫无安全可言的,不仅入侵在线服务站点的黑客可以获取这些信息,而且数据传输过程中经过的每一个网络节点都可以截取我们的数据。经过爱德华·斯诺登的事件,所有人都知道这并不是危言耸听,也不是错觉。幸好,要解决这一问题并不困难,使用免费的加密工具Gpg4win(www.gpg4win.org),即可保护上传到云存储服务的文件以及电子邮件等在线发送的信息。

密钥对

Gpg4win是依照由IETF制订的OpenPGP技术标准设计、遵循GPL协议的PGP加密软件的替代品,它采用非对称的RSA加密算法,利用一个公钥和一个私钥组成的密钥对,我们使用公钥加密的文件只有使用对应的私钥才可以解密。除此之外,我们可以将自己的公钥提供给朋友,他们使用我们的公钥加密的文件与信息,将只有使用我们的私钥才可以解密。

1、安装加密软件

启动Gpg4win的安装程序,并在选择安装组件的对话框中选中“GPA”,该工具将能够让我们更轻松地管理密钥。

2、创建一对密钥

安装完成后启动GPA,然后选择“Generate key now”开始创建密钥,创建向导将提示我们输入姓名和电子邮件地址。除了可以将密钥存储在当前的电脑上之外,我们还可以指定一个外部的存储器,例如指定一个闪存盘作为存储密钥的位置。最后,我们需要输入一个用于管理私钥的密码,该密码应该包含数字、字母和特殊字符。

3、加密云文件

现在打开电脑上用于云服务同步数据的文件夹,右键单击希望加密的文件,在快捷菜单上选择“Sign and encrypt”。在接下来的对话中,选中“Archive files with”和“Sign and encrypt(only OpenPGP)”选项,如果需要还可以选中“Subsequently delete unencrypted original”,以便在加密之后删除没有加密的原始文件。接下来单击“Next”进入下一步,在“My Certificates”列表中选择用于加密的密钥,然后单击“Add”按钮,单击“Next”进入下一步,单击“Sign and encrypt”确认加密操作。软件将要求我们输入私钥的管理密码,加密完成后我们将获得一个“.tar.gpg”的加密文件,该文件通常会比加密前更小一些。

4、解密文件

如果希望编辑加密文件,则可以右击加密文件,选择“Decrypt and verify”,点击“Decrypt/Verify”,输入私钥的管理密码后,我们将能够在一个新的文件夹中获得解密的原始文件。

5、导出公钥

打开GPA工具,右键点击需要导出公钥的密钥,选择“Export keys”并选择保存导出的公钥到硬盘上。

6、导入公共密钥

如果有朋友也使用Gpg4win,那么我们可以将自己的公钥作为电子邮件的附件发送给朋友,同时也可以要求朋友提供自己的公钥。收到公钥后,打开GPA,单击“Import”并导航到朋友的公钥文件所在的路径,选择它并通过“Open”将其导入。

7、加密电子邮件

在GPA的工具栏中单击“Clipboard”,直接编写信息或者在其他电子邮件客户端中将编辑好的信息拷贝到剪贴板,然后在GPA剪贴板中点击“Encrypt”按钮,选择收件人的公钥并在接下来的信息中确认,这样就可以将电子邮件内容加密,然后将其发送给收件人。

8、解密收到的加密邮件

篇5:文件下载工具的开发

1 下载原理

每个Internet上的文件,都有一个URL地址,这个地址告诉这个文件存在Internet的哪个地方,要下载该文件,必须提供这个URL地址。下载工具根据这个URL地址,使用某种方法打开这个文件。打开文件后,就可以从该文件中读取数据了,读出的数据可以先保存在一个临时文件中,每下载完成一块,对这一块数据在文件中做个标记,说明该块已下载完成,不需要重新下载了。一个文件中所有的块都下载完成后,再从临时文件中读出各文件块,把它们拼接成原始的文件。这样,文件下载就完成了。

2 程序实现

本程序使用VC开发。VC中有一个CInternetSession类,该类中有一个OpenURL函数,用于从Internet上打开一个文件,如该文件成功打开,将返回一个CStdioFile指针,之后就可以使用类似本地文件读写的函数进行读文件操作了。使用SeekToEnd函数可以获得文件大小。使用SeekToBegin函数可以将文件指针移到文件开始。使用Seek函数将文件指针移到文件中某个位置。使用Close函数关闭文件。

下载文件先写到一个临时文件中,该文件具有如表1结构所示。

通常一个临时文件中可能会有若干文件块, 每一块都对应下载文件中的一部分, 如果临时文件中下载完成了所有的块, 就从该临时文件中读出相应数据, 拼成原始的下载文件, 最后, 将临时文件删除, 该文件下载即宣告结束。

程序的主要下载文件代码在如下线程函数中:

3 结论

程序经测试,已完成了预期的功能,可以在实际环境下使用。

参考文献

篇6:小工具:保护文件和文件夹的卫兵

文件完整性校验的优点:发现入侵行为很重要的一个方面就是保证数据和系统的完整性。一旦入侵者成功入侵,为逃避检测和方便下次入侵,一般会通过更改系统中的相关文件来隐藏他的活动;同时做一些改动,例如植入后门程序,保证下次能够继续入侵。这两种活动都能够被文件完整性校验系统检测出。同时,文件完整性校验系统又具有相当的灵活性,可以为系统中的所有文件或某些重要文件进行单独配置。

文件完整性校验的弱点:文件完整性校验的结论依赖于本地的数据库,而这些数据是可以被入侵者修改的。当入侵者取得管理员权限后篡改文件完整性校验系统,更新数据库,那么文件完整性校验系统就会失效。同时,文件完整性校验不能实时监控,无法第一时间发现攻击行为并采取防御措施。因为文件完整性校验时需要处理的数据量非常大(如果检测全面文件的话),所有进行一次针对所有文件的文件完整性校验是一件非常耗时的工作。

而本文主要解决的问题就是如何提高文件完整性校验的速度。

1 关键技术及特点

1.1 文件完整性校验

用密码学的方法来检验文件的完整性是大多数软件的共同考虑。文件的特征码,也称校验和、数字文摘或数字签名,由文件内容通过Hash函数计算得出。不同的文件几乎不可能得到相同的Hash结果;同时Hash算法是一个单向函数,无法进行逆推。所以通过特征码进行文件完整性校验是一种非常成熟的方法。当文件一被修改,就可检测出来。因此,利用文件的特征码可方便地检测出入侵者对文件的修改。

1.2 网格技术的特点及其模型

网格是一种高性能计算平台,由分布在Internet上的各类资源组成。网格将所有资源虚拟为一台超级计算机,在这个虚拟环境下进行资源共享和协同工作,为用户提供一体化信息和计算、存储、访问等应用服务[1]。组成网格系统的资源是动态变化的,所有资源由网格统一管理。网格能够动态监视和管理网格资源,实现任务的动态迁移,从可利用的资源中选取最佳资源服务。

Ian Foster于2001年提出了网格计算协议体系结构,将网格技术的核心定义为标准化的协议与服务,并与互联网协议进行类比(如图1)。该结构主要包括以下五个层次[2]:

(1)构造层(Fabric)

构造层的基本功能是向上提供网格中可共享的资源。常用的构造层资源包括处理能力、存储系统、网络资源、分布式文件系统、分布式计算机池、计算机集群等。构造层资源提供的功能越丰富,则可以支持的高级共享操作就越多。

(2)连接层(Connectivity)

连接层的基本功能是实现网格共享资源间便利安全的通信。它定义了核心的安全通信、网络资源处理与认证授权控制等协议。通信协议允许在构造层资源之间通过传输、路由及名字解析等机制进行数据交换和授权认证、安全控制。

(3)资源层(Resource)

资源层的主要功能是实现单一资源共享。资源层主要定义了资源共享间的安全握手、资源初始化、资源运行状况、统计与付费等使用数据。该层建立在连接层的安全通信和认证授权控制协议之上,通过调用构造层函数来访问和控制局部资源。

(4)汇集层(Collective)

汇集层的主要功能是协调各种资源。该层将资源层提交的受控资源汇集在一起,供虚拟组织的应用程序共享和调用。汇聚层对来自应用的共享进行管理和控制,提供资源代理、资源监测诊断、网格启动、账户管理、协同分配管理、数据复制服务、负载管理控制、软件发现服务等多种功能。

(5)应用层(Application)

应用层是是网格上用户的应用程序,在虚拟组织环境中存在的。应用程序通过各层的应用程序编程接口调用相应的服务,再通过服务调动网格上的资源来完成任务。应用程序的开发涉及大量的库函数,需要构建支持网格计算的大型函数库。

2 基于网格的文件完整性校验的特点

目前在文件系统校验建模方面的研究很少.Shlomo Hershkop等人曾采用PAD(Probabilistic Anomaly Detection)算法开发了基于Unix的文件系统的异常检测器FWRAP,但是他将文件系统作为一个整体进行建模,由于文件系统的数据量较大,数据的存贮和运算带来较大的系统负荷,因此它不能处理大容量的训练数据[4]。而数据的存贮和运算恰恰是网格的优势所在。

网格是一个异构、动态的计算平台,目标是实现资源共享和分布式协同工作。在网格环境中所有的组件都是虚拟的,通过定义一组核心接口来动态的调用网格中的各种资源,实现所有的服务。在进行具体服务时以底层资源组成为基础直接对虚拟组织进行资源管理。因此基于网格的文件完整性校验具有如下特点[3]:

共享性:网格将多个结点的资源集成起来,提供动态、跨结点的资源环境,解决大容量数据的存贮问题。各种资源通过网格技术有效的提供给网格中的任意合法结点。各个结点通过资源共享,完成用户提交的各种任务。

协同性:网格提供一个协同管理的环境,能够在动态组成的系统中解决大容量数据的运算问题。网格将来自不同管理域、不同管理平台、具有不同能力的结点集成在一起,成为一个有机的整体。用户不仅可以使用单个结点提供的功能,而且能够使用多个结点的聚合资源。网格资源结点根据不同的任务,动态组成不同的服务,通过彼此间合作,共同完成任务。

动态性:网格具有高度的可扩展性,支持结点的动态加入和退出。网格对这些结点进行有效管理和分配,以保证结点退出时不影响系统的正常工作,结点加入时立即被系统发现并且可用。

3 基于网格的文件完整性校验平台框架

框架模型见图2。

基于网格的LINUX文件完整性校验平台主要由2部分组成:

网格管理控制平台:它是基于网格的文件完整性校验平台的集中控制管理单元,通过该平台的集中统一控制,使得新建的文件完整性校验平台子系统通过统一的规范,与原有子系统实现互通、互联和互操作,在网格管理控制平台的统一协调控制下发挥出系统的最优化效用。

文件完整性校验网格:在基于网格的文件完整性校验系统下,可用的存储空间和计算能力是无限的。该网格为本地文件完整性校验系统提供透明的数据计算和存储接口,使本地主机能够容易的实现网格中的资源共享。该网格通过动态的利用整个网格中强大的计算资源,为本地主机用户提供远远强于自身的运算能力,最大限度的缩短文件完整性校验所需的时间。

4 结论

本文提出了一种基于网格技术的LINUX文件完整性校验模型,该模型通过利用网格技术强大的资源共享能力,借助不同网段不同平台主机的整合计算能力,极大的缩减单机进行文件完整性校验时所需要的时间。该模型具有以下特点:

(1)该模型不需要源文件、大规模训练数据,通用性和易用性好;

(2)该模型能大大缩短文件完整性校验所花费的时间,提升工作效率;

(3)抵抗攻击的能力更强,漏报率更低。

摘要:文件完整性校验是一种基于主机的入侵检测技术,可以检测出入侵者对主机文件的非法修改。针对目前文件系统完整性校验中存在的运算复杂性问题,结合网格技术的应用背景,提出一种基于网格的文件系统完整性校验的应用模型,并对其产生的原因、特点、应用平台、工作流程进行了详细的阐述。目的是实现网格虚拟环境下提高文件完整性校验的速度。

关键词:文件系统,完整性校验,网格,入侵检测

参考文献

[1]徐志伟,冯百明,李伟.网格计算技术[M].北京:电子工业出版,2004,2,23.

[2]Ian Foster,Carl Kesselman.The Grid:Blueprint for a New Computing Infrastructure[M].北京:机械工业出版社,2005.

[3]Foster I,Kesselman C,Nick JM,etal.Grid Services for Distributed System Integration[J].Computer,2002,35(6).

[4]Shlomo Hersbkop,Ryan Ferster,Linh H.Bui,Ke Wang and Salvatore J.Stolfo“.Host—based Anomaly Detection Using Wrapping File Sys tems”.CU Tech Report April,2O04.

[5]Eleazar Eskin.Probabilistic anomaly detection over discrete records using inconsistency checks.Technical report,Columbia UniversityComputer Science Technical Report,2002.

[6]Sufat rio,Roland H.C.Yap.Improving host based IDS with argument abstraction to prevent mimicry attacks.Proceedings of RAID 2005,Springer,Germany,2006

篇7:小工具:保护文件和文件夹的卫兵

一、“文件筐测试”为何物

“文件筐测试”是评价中心最常用和核心技术之一, 是在典型职业环境下, 综合测试担任特定职务的管理人员, 获取有关资料, 恰当处理各类信息, 准确做出管理决策, 有效开展协调和控制工作能力及其现场表现行为。

该测试在虚拟的情景中进行, 例如企业的业务实际、管理环境, 提供给被测评者如信函、报表、请示等文件, 内容可能涉及人事、财务、营销等多种信息。这些资料放在文件筐里, 被测评者以管理者身份, 模拟真实生活中的情景, 在限时内 (通常1-3小时) 完成各种事物的处理, 测评者通过被测评者的表现和书面回答, 测评其各项能力指标, 再根据评分结果, 录用所需优秀人才。

二次世界大战正酣, 美国在向德国派遣谍报人员时, 采用情景模拟法 (“文件筐测试”的雏形) 物色优秀人选, 效果良好。当这一创新被应用于商业, 顿时轰动了业界。美国电报电话公司最早尝到甜头, 先后在本企业400多名年轻经理人上运用了这种测试的民用版, 重点评估管理人员的知识、技能、价值观和职业规划, 此后若干年, 由于科学性得到了证实, 同时, 民营企业由于其灵活性, 该测试得到了迅速推广。

二、“文件筐测试”的考察内容

“文件筐测试”考察的主要内容包括五个方面:计划能力、组织能力、预测能力、决策能力和沟通能力。而民营企业所处的纷繁芜杂的环境, 决定了这几方面的能力都与企业可持续发展的保持和提升生死攸关, 非常值得关注。

1. 计划能力。

被测评者就所给材料而获取的信息, 分析问题之现状, 挖掘问题的根源和问题间错综复杂的联系, 最后确定工作目标、工作任务、工作方法和工作步骤的能力。

2. 组织能力。

被测评者按照各项既定工作任务的重要程度和紧急程度安排时间, 调配好人、财、物等资源, 合理授权并进行相应组织机构或人力资源调整的能力。

3. 预测能力。

被测评者对模拟工作环境中的相互关联要素和总体形式, 未来发展趋势进行准确判断, 预先采取相应措施的能力。

4. 决策能力。

被测评者在解决实际工作问题, 特别是重大战术、战略问题、紧急事件时, 策划并果断选择高效用、高质量方案的能力。

5. 沟通能力。

被测评者通过书面形式如电子邮件、传真、信函或公文的形式向上和向下表达个人思想和意见的能力。

三、“文件筐测试”的应用

各公司“文件筐测试”的应用过程虽有差别, 但总体来说, 一般分为三个步骤:

1. 发放文件。

向每一位被测评者发放一套文件 (一般15-20份) , 包括:下级呈来的报告、请示、计划、预算, 同级部门的备忘录, 上级的指示、批复、规定, 外界用户、供应商、银行、政府有关部门和公司所在社区的函电、传真及电话记录, 甚至还有群众的检举或投诉信, 这些都是在管理人员的办公桌上出现频率比较高的文件。

2. 模拟介绍。

向被测评者介绍有关背景资料, 然后告诉被测评者, 他现在就是这个职位的任职者, 全权负责处理所给全部公文材料。要使被测评者认识到, 他现在不是在做游戏, 也非代人理职, 他现在是货真价实的当权者, 他要根据自己的经验、知识和性格在给定的时间里去处理解决问题。他不能说自己将如何去做, 而应是真刀真枪地处理各项事务。因此, 各被测评者必须留下笔记、信件等, 这是每一位被测评者工作业绩的最好记录。

3. 结果考评。

处理结果将交由测评组按规定考核维度与标准进行考评。通常不是定性式的给予评语, 而是就某些维度逐一定量式地评分 (常用五分制) 。最常见的考评维度有7个, 即个人自信心、企业领导能力、计划安排能力、书面表达能力、分析决策能力、风险承担能力与信息敏感性, 但也可以按具体情况增删, 如加上创造思维能力、工作方法合理性等。总而言之, 要评估被测评者在拟提升岗位上独立工作的胜任力和长期发展的潜力和素质。

四、民企运用需要注意的几个问题

虽说“文件筐测试”看起来不复杂, 实施起来应该比较方便, 其实不然, 应用不好会影响选拔的效度, 甚至失败。特别是民企, 应用不好, 反而有害, 影响效率。因而, 准确地实施“文件筐测试”必须慎重, 有几个问题要注意:

1. 测试题目设计。

人力资源基础工作是从工作分析开始的, “文件筐测试”也是从工作分析开始的, 工作分析的关键内容开展得越规范、越深入、越细致, 题目设计就越容易。然而, 民企在这方面的建设很多都不是很完善, 这就给题目设计者提出了不小的挑战, 因而需要民企不断完善自己的人力资源基础工作, 最好是能请咨询公司帮忙。但这还远远不够, 还有一系列的因素需要重点考虑:企业所处行业特点、企业内外部环境、企业现在将来的文化、测评目的、管理岗位设置目的、管理岗位工作性质与方式、管理活动的内容、管理者与上下级顾客的关系、管理者可协调人财物等资源。

2. 记分问题的改进。

目前, “文件筐测试”记分研究需要解决的问题是:如何减少“文件筐测试”的记分时间和提高记分的内在一致性。为了这个目标, 一些研究者采用了计算机呈现多项选择的方式并标准化地供被测试者选择答案, 但这种做法存在一定的缺点, 就是缺乏互动性, 与管理者想法有出入, 和实际管理情景相差太远, 对于一些有主动性、创造性的被测评者, 他们的回答无足够的自由空间。唯一能够评估的是被测评者对多项选择反应和敏捷回答的能力, 因而, 民企应用, 需要增加丰富的互动性内容, 对管理情景的模拟最好深入到工作中去, 也可以适当放开被测评者的发挥空间。

3. 对测评者综合素质要求高。

“文件筐测试”, 要求考官不仅掌握管理学与心理学的基础知识, 了解“文件筐测试”的理论和实践依据, 而且还要求其对被测评者所任职的责任和任职资格进行系统研究, 能够独立或与他人合作设计测评题目, 能够游刃有余地开展考评发问, 能够对被测评者进行全面、客观、公正的评价。然而, 在目前的状况下, 民企能达到要求的人员是少之又少。这就要求民企管理者重视之外, 主动学习实践, 接受管理咨询公司的培训, 向成功应用该方法的企业取经, 联合管理顾问、咨询专家和本企业高级管理人员组成测评小组。

上一篇:小鸟与小鱼童话故事作文下一篇:血液透析病历书写规范