洛阳夏冰软件技术有限公司2018年春节放假安排

尊敬的客户您好!

2018年春节即将到来,夏冰软件携全体员工提前恭祝广大新老客户新春愉快,万事如意!非常感谢您长期以来对我们工作的理解和厚爱,正是您的支持才使我们不断的进步,您的每一个批评和意见都是我们前进的动力!

根据国务院《关于修改〈全国年节及纪念日放假办法的决定》,并结合公司实际情况,现将2018年春节放假调休日期的具体安排通知如下:

2018年2月14日(腊月二十九)至2月25日(正月初十)放假调休,共12天。2月26日(正月十一)正常上班。

2018年春节放假期间洛阳夏冰软件技术有限公司各项工作安排如下:

软件正常销售:我们采用的是注册码自动发送系统,所以无论任何时间您支付成功后,注册码就会立即发送到您的邮箱(请填写正确的邮箱地址)。

客户邮箱(fuwu@jiamisoft.com):放假期间您的邮件我们会在72小时内给您回复。

客服QQ(800028980):放假期间您可以给我们的客服QQ留言,我们会每天安排工作人员处理您在QQ上面的留言和您取得联系。

客服电话(400 825 9908):放假期间客服电话暂停服务。如果您有紧急情况需要和我们取得联系,请拨打电话:18539592895。

在2018年,洛阳夏冰软件技术有限公司全体员工将会继续以最优质的服务和技术支持感谢您的支持和厚爱。

洛阳夏冰软件技术有限公司

2018年2月9日

洛阳夏冰软件技术有限公司2016年春节放假安排

猴年春节将至,洛阳夏冰软件技术有限公司全体员工祝广大客户新年快乐!阖家幸福!新的一年事业正当午、身体壮如虎、金钱不胜数、干活不辛苦、快乐似乐谱、猴年万事如意!

感谢广大客户长期以来对夏冰软件的支持和厚爱,正是您们的支持才使我们不断的进步,您们的每一个批评和意见都是我们前进的动力!

2016年春节放假安排

洛阳夏冰软件技术有限公司2016年春节放假时间安排如下:放假时间为2016年2月5日(腊月二十七)至2016年2月14日(正月初七),2016年2月15日(正月初八)正式上班

2016年春节放假期间洛阳夏冰软件技术有限公司各项工作安排如下:

软件正常销售:我们采用的是注册码自动发送系统,所以无论任何时间您支付成功后,注册码就会立即发送到您的邮箱。

客户邮箱(fuwu@jiamisoft.com):放假期间您的邮件我们会在72小时内给您回复。

客服QQ(800028980):放假期间您可以给我们的客服QQ留言,我们会每天安排工作人员处理您在QQ上面的留言和您取得联系。

客服电话(400 825 9908):放假期间客服电话暂停服务。如果您有紧急情况需要和我们取得联系,请拨打电话:18539592895

在2016洛阳夏冰软件技术有限公司全体员工会继续用最优质的售后服务和技术支持感谢您的支持和厚爱。

洛阳夏冰软件技术有限公司2016年元旦节放假安排

一年一度的元旦节来临之际,根据《国务院办公厅关于2016年元旦节假日安排的通知》规定,洛阳夏冰软件技术有限公司2016年元旦节放假调休日期的具体安排通知如下。

元旦节:2016年1月1日放假,与周末连休共3天

2016年元旦放假安排

2016年元旦节放假期间洛阳夏冰软件技术有限公司各项工作安排如下:

软件正常销售:

我们采用的是注册码自动发送系统,所以无论任何时间您支付成功后,注册码就会立即发送到您的邮箱。

客户邮箱(fuwu@jiamisoft.com):

放假期间您的邮件我们会在48小时内给您回复。

客服QQ(800028980):

放假期间您可以给我们的客服QQ留言,我们会每天安排工作人员处理您在QQ上面的留言和您取得联系。

客服电话(400 825 9908):

放假期间客服电话暂停服务。如果您有紧急情况需要和我们取得联系,请拨打电话:185 395 92895(9:00 – 12:00 15:00 – 19:00)

洛阳夏冰软件技术有限公司

2016年12月31日

洛阳夏冰软件技术有限公司2015年十一国庆节放假安排

一年一度的十一国庆节即将来临,根据《国务院办公厅关于2015年十一国庆节假日安排的通知》规定,洛阳夏冰软件技术有限公司2015年国庆节放假调休日期的具体安排通知如下。

国庆节:10月1日至7日放假调休,共7天。

10月10日(星期六)按正常工作时间上班,其他工作时间不变。

2015年国庆节十一放假安排

2015年十一国庆节放假期间洛阳夏冰软件技术有限公司各项工作安排如下:

软件正常销售:
我们采用的是注册码自动发送系统,所以无论任何时间您支付成功后,注册码就会立即发送到您的邮箱。

客户邮箱(fuwu@jiamisoft.com):
放假期间您的邮件我们会在48小时内给您回复。

客服QQ(800028980):
放假期间您可以给我们的客服QQ留言,我们会每天安排工作人员处理您在QQ上面的留言和您取得联系。

客服电话(400 825 9908):
放假期间客服电话暂停服务。如果您有紧急情况需要和我们取得联系,请拨打电话:185 395 92895(9:00 – 12:00 15:00 – 19:00)

洛阳夏冰软件技术有限公司
2015年9月30日

加密函数在PHP中的应用

PHP语言广泛应用于WEB互联网的开发,其丰富的内置函数库和良好的移植性在网络开发中发挥了极其重要的作用,加密函数成功的应用于各种PHP程序之中,使相关数据在不安全的信息渠道中得以安全的传输,为保证前台
的网页浏览与后台的用户管理安全奠定了基础。

一、PHP中常见的加密函数

1、应用MD5()函数加密

该加密算法是一种常用的加密方法。MD5的全称是Message-Digest Algorithm5,Message-Digest通常指的是字节串的Hash变换,即为把一个任意长度的字节串转换为一定长度的整数。

MD5将任意长度的字节串变换成一个128位的大整数,并且是一种不可逆的转换算法,即使我们看到了源程序和算法描述,也无法将一个MD5的值变回原来的字符串,从而保证了原始数据的安全。MD50函数用来计算字符串的MD5混合值。其语法为:

String md5(sting str);用md50函数获取字符串加密后的值,如:

< ?php $str=”abc”; $mstr=md5($str); echo $mstr;//返回字符串加密后的值为“900150983cd24fbOd6963f7d28e17f72″ ?>

2、应用CRYPTO函数加密

该函数将字符串用UNIX的标准加密模块DES进行加密,是单向的加密函数,每次页面刷新后产生的密码值是不同的,无法解密。

即可以实现加密一些明码,但不能将密文重新转换为明码。其语法为:

String crypt(string str,string [salt]);如果要比对字符串,将已加密的字符串的头两个字符放在salt的参数中,再比对加密后的字符串。其中,参数str是要被加密的明码,参数salt是可选的一个位字串,能够影响到加密的暗码,进一步保证了密码的安全。通常情况下,PHP使用一个2个字符的DES干扰串。如果不使用salt参数,则程序会自动产生干扰串,如:

< ?php $str=”abc”; $mstr=crypt($str); echo$mstr;//返回字符串加密后的值为 “$I$L60.2MI.$WWfXPw/SnRFGtTdnMVVdc.” ?>

二、加密技术在程序中的应用

在常见的WEB网站中,登录页面是必不可少的,用户登录的密码安全性要求自然不低。在以下常见的登录页面设计中,通过MD50,CRYPTO和BASE64编码的方式对用户的密码进行加密处理,着重体现PHP中加密技术在常见的网络程序的具体应用。以登录用户密码的加密为例来分析加密函数在获取用户信息中的加密处理应用。

1、通过crypt0函数加密

建立displaycrypt.php,其代码的前半部分通过post方法获取用户的用户名和密码信息同displaymd5 .php中的一样,其后半部分的核心代码为:

< ?php echo”用户名:$username”;//输出用户名 echo’kbr>”;//输出换行

echo”密码已经过crypt0函数加密结果是:”;

echo””;echo¨

?>再将login.html中form标记的action属性取值为displaycrypt.php,运行login.html用户名输入为“张三”,密码输入为“123456”,运行结果则为下图所示。

1

2、通过base64编码加密

建立displaybase64.php,其后半部分的核心代码为:

< ?php echo”用户名:$username”;//输出用户名 echo’kbr>”;//输出换行

echo’kscript>alert(’密码已经过base64加密结果是:

”.base64_encode($userpass).¨’);”;//输出密码

(base64加密处理后的结果)

?>再将login.html中form标记的action属性取值为displaybase64.php,运行login.html,用户名输入为“张三”,密码输入为“123456”,运行结果则为下图所示。

1

三、加密技术的应用比较

总体上来讲,MD5广泛用于数据加密技术上,在大多数企业商业网站中用户的密码的值都是经过MD5的方式加密以后而保存在数据库中的。而用户在登录的过程中,程序需要把用户的密码转换成MD5加密处理以后的值和存储在原始数据库的MD5的值进行比较,而程序的本身并不关注用户的密码的真实性,该项技术尤其是在在线投票系统及企业的商务网站中,对用户的真实性身份进行加密处理。

在实际WEB开发的过程中,通过CRYPTO函数对用户的密码等相关信息进行加密也被得以广泛的应用,作为单向加密方式,即使加密口令落入第三方,由于不能被还原成明码,也不会影响网站的安全性,该函数被广泛应用于各类网站的管理员和会员的登录模块中。

BASE64_ ENCODE()和BASE64_- DECODE()函数用于为相关数据进行加密和解密,对密码的处理是双向的,广泛的应用于各种论坛中对用户的密码进行BASE64编码和大量的电子商务系统中对顾客的订单号进行BASE64编码。

小知识之Base64

Base64是网络上最常见的用于传输8Bit字节代码的编码方式之一,大家可以查看RFC2045~RFC2049,上面有MIME的详细规范。

three.js 3d三维网页代码加密的实现方法

随着网络速度的提升和计算机硬件的革新,使得网页的三雏实现成为现实。而WebGL库Three.js 3D引擎的出现更为三维网页的开发增添色彩。

一、Three.js三维网页概述与实现

Three.js是基于WebGL的一款开发框架,是调用底层OpenCL ES图形库的一个javascript接口,属于Htm15技术的一个分支oWebCL通过网页中的新型标签。

1、Three,js 3D引擎

在此作一简略介绍:

①首先是加载Three.js 3D引擎的库文件,即引入Three.js文件i,基础代码是:

②创建场景,基础代码是:var scene=new THREE.Scene0。

③创建摄像机,例如:var camera=new THREE.Perspe-ctiveCamera(VIEVV二ANGLE,ASPECT,NEAR,FAR),当然这里还需要根据实际情况选择不同相机,并可以对相机作出设置。

④添加渲染器,例如:var renderer=new THREE.Web-GLRenderer( {antialias:true))’如果需要可以设置不同的渲染器,并可以根据情况进行设置。

⑤网格模型的构建与导入、材质的添加与灯光效果的添加,完成以上四步后,一个三维网页的骨架就已经搭建成功了,之后我们就可以在其中绘制构建网格模型、添加材质以及灯光等效果了。简单的网格模型可以直接使用代码绘制渲染,当然如果想要引入复杂的模型,比作使用建模工具制作的模型,就需要使用相应的函数进行加载,例如:new THREE.JSONLoader(),当然再添加上材质,并添加上灯光,效果会更好。

⑥最后还需要做的是渲染循环:renderer.render( scene,camera),以实现动画效果。

2、实现方式和流程

(1)三维建模

利用三维建模工具(3ds max或者maya或者blender等)制作三维模型、添加材质、灯光等特效。然后将模型保存成obj格式的文件,或者直接使用blender保存成js格式的文件。

(2)模型转换

对于obj格式的文件,Three.js就已经能够加载进网页之中了,这里我们使用的是JSON数据类型的文件。即将obj格式的文件转换成js格式的文件。格式装换过程:

先安装Python,在此使用的是Python的2.6.0版本。然后使用命令:D:\Python26\python d:\convert_obj_three.py_d:\model.obj—o d:\model.js生成的JSON数据类型的文件。

(3)代码开发

建议采用VIM编写代码,使用Chrome浏览器调试。为了能使Chrome能够更好的支持WebGL,我们需要对其作出简单配置,在Chrome桌面快捷方式上点击右键、选择属性,然后将-enable-webl;l-ignore-gpu-blacklist-all-ow-file-access-from-files粘贴到“目标”文本框里。

二、Three.js三维网页实现代码加密

Three.js 3D引擎是完全使用javaScript编写成的,因此基于Three.js 3D引擎的三维网页也继承Three.js 3D引擎的这一特点,使用javaScript编写而成。而目前如果对javaScript不做安全控制的化,代码完全暴露在网络中,因此我么需要对其代码做出简单加密,以降低其可读性,同时提高其安全性。

JavaScriptf弋码加密的本质是降低代码的可读性,从而提高解密、阅读上的难度。因为使用Three.js 3D引擎实现的三维网页,其主要代码是JavaScript,而且代码量很大,运行速度与性能也局限于硬件与网速,因此如果对代码做出过多的操作,极大程度上会降低代码的运行性能与速度,因此采用将文明定长字符串逐一加10变换为16进制的方式,之后对其进行去除缩进、空格、注释等进行简单压缩,然后简单使用加密即可。而不必要做出复杂的代码混淆,加密。

其中加解密文件’js.min.js代码如下:

①加密

$(document).ready(function0($(”#encode”).click(function()

{var s=$C’#txtl“).valO;var b=””;.

for(var i=O;i

var hexs=(ascx+lO)toString(16);

//al ert(hexs.leng;.h);

if(hexs.length==2) {hexs=”OO”+hexs;}

b+=hexs;}

②解密

rlocume.nt.getElementByIdCtxt2’).value=b;}); l);

function fun (str){var newb=””;for (var i=O;i<str.length;

j+=4)∥以每四个长度来分隔

{var newchar=su-substr(1,4);

newb+=String.fr omCharCode

((parselnt (newchar,1 6)-10).

toString(10));}

retum nc.wb;}

小知识之三维模型

三维模型是物体的多边形表示,通常用计算机或者其它视频设备进行显示。显示的物体是可以是现实世界的实体,也可以是虚构的物体。任何物理自然界存在的东西都可以用三维模型表示。

三维混沌加密算法之压缩算法

为保证数字图像的安全性,提出了一种压缩图像的三维混沌加密算法。该算法是通过对已压缩的数据流进行加密而实现的。首先采用基于小波的Contourlet变换的类等级树集合分割(SPIHT)编码算法对明文图像进行压缩,得到压缩数据流,然后将压缩数据流映射为一个三维位矩阵,利用Lorenz混沌映射产生混沌序列,并对其进行预处理得到比特值序列,根据比特值序列对上述三维位矩阵进行置乱和替代操作;将置乱和替代后的位矩阵重新映射为数据流,并对其进行解码和反变换操作,得到加密后的压缩图像。

一、图像压缩算法

基于WBCT的压缩编码算法

为得到压缩后的数据流,采用压缩编码算法对明文图像进行压缩。由于提出的加密算法是将由0,1组成的数据流映射为三维位矩阵,并对该矩阵进行置乱和替代操作而实现加密的。因此所选择的压缩算法对源图像进行压缩编码后必须能产生由O,1组成的编码流,而SPIHT编码算法能够满足这一要求。并且,利用该压缩编码算法对源图像进行压缩,可得到较高的峰值信噪比(PSNR),同时具有计算复杂度低、位速率容易控制等优点,因此选择SPIHT编码算法对源图像进行压缩处理。另外,之所以选择在WBCT域对图像进行压缩编码,是因为Contourlet变换是一种基于图像的几何性变换,能有效地表示轮廓和纹理丰富的图像,它弥补了小波变换在这方面的不足。由于拉普拉斯金字塔(Llaplacian pyramid,LP)分解存在数据冗余问题,不利于图像压缩编码,因此R.Eslami等于2004年提出了一种基于WBCT的类SPIHT编码算法。

1

下面简要介绍该编码算法。

WBCT的基本思想是用小波变换的Mallat塔式分解代替Contourlet变换中的LP分解,然后用方向滤波器组( dirctional filterband,DFB)分别对Mallat分解中的非LL子带进行卷积处理,原理如图1所示。图1中共进行了3次Mallat小波分解,第一次小波分解的高频(LH,HL和HH)子带方向分解数(层方向数)为4,共16×3个方向子带,第二、三次小波分解的层方向数都为3,共8×3×2个方向子带,LL子带层方向数为O(不分解)。

由于WBCT各个方向子带的排列是横向和纵向分开,因此基于WBCT的类SPIHT编码算法的相邻两级方向子带系数对应关系如图2所示。为了更高效地进行SPIHT编码,按照图3所示调整子带之间数据放置结构,原先的方向子带排列如左图,阴影部分为纵向子带,同样标称的子带为同一个上一级小波子带的对应高频子带分解,将它们的排列重新安排为右图所示。

1

1

2、压缩数据流的预处理

假设明文图像的数据矩阵为A,利用上述压缩算法对其进行编码,得到由O,l组成的压缩数据流L,长度为l。为方便对压缩数据流进行置乱和替代操作,需要对其进行预处理,将L映射为一个三维位矩阵B。令N;fc~7),其中f(x)表示对z向下取整。如果N=~7,则三维位矩阵口的维数为NXN×N,否则其维数为N×N×(N+1)。若l<N×NX(N+1),则矩阵B的元素通过补零填充。假设压缩数据流的长度L=71,则由其映射得到的三维数据矩阵B如图4所示。矩阵B的维数是4×4×5,图中的元素为数据流L中元素的序号。

1

三、图像加密算法

提出的加密算法是通过预处理后的混沌序列对位矩阵B进行置乱和替代操作实现的,并选择Lorenz混沌映射产生所需的混沌序列。

1、混沌序列的预处理

Lorenz混沌映射的动力学方程如下:

1

当a= 10,6—8/3,c> 24.74时,系统进入混沌状态。对Lorenz混沌映射模型进行迭代,得到的实数值混沌序列为{xk,k一1,2,…,夕),{yk,k=1,2,…,p)和{zk,k=1,2,…,户),迭代精度取为双精度。

以{z.,k=l,2,…,户)为例来说明将实数值混沌序列改写为比特序列的方法。首先将混沌序列改写为16 bit的位序列:

1

式中bj (xl)是lxil第歹位整数。所得到的序列为{以(砑),p一1,2,…,16;i-1,2,…,p}。然后将bj(k)改写为比特值序列{6,(z)x,k=1,2,…,16×p}:

1

式中r(x,y)表示z除以y后的余数。同理,可以得到由{弘,k=1,2,…,p),{2t,k=1,2,…,p)改写的比特值序列{67(kn,k=1,2,…,16×p),f67(2)上,k=1,2,–.,1 6×p)。对这3个比特值序列进行处理:

1

式中①表示进行异或操作,可以得到另外3个比特值序列{6’(z,∽^,忌=1,2,…,16×p),{67(z.z).,p;1,2,”.,16×p){67(y,Z)^,k-l,2,.“,1 6×p),它们将被用于加密在上节得到的三维位矩阵。

2、加密算法设计

所提出的加密算法的密钥设计为key:[c,z。,yo,zo,Ni,N2,Na,M,sub-key],其中参数c为Lorenz混沌映射的参数,xo,y。,zo为Lorenz混沌映射的初始值,Ni tN2,N3,M为正整数,M∈[O,1000],sub-key是由正整数组成的字符串。提出的加密过程如下:

1)将由压缩编码算法得到的三维位矩阵B看作是由J轴上的N个二维矩阵{Bj,i-l,2,…,N}组成,Bi的维数是(N+1)×N,如图5所示;

1

2)令n=[1000+N×N×(N+1)],以a,6,c为参数,z。,yo,z。为初始值,对Lorenz映射模型迭代夕次可得到3个实数值混沌序列{Xl,k-l,2,…,p},{yt,惫一1,2,…,p}和{戤,k一1,2,…,夕),迭代精度为双精度;

3)令ni i=(M+N/16)+l’n2 -挖一M,取上述实数值混沌序列的一部分{弧,k一刀,,ni+l.…,T2),{x,y- ni,ni+l,–,行2}和{zt,n=ni,ni+l,…,nz)。按照上节的混沌序列的预处理方法将其转换成比特值序列(67(z,3,)^,k-1,2,…,N},{6’(z,Z)I,k-l,2,…,N)和{6,(y,Z)上,k-l,2,…,N}.

4)根据比特值序列{6’(z,∞。,k=l,2,…,N)实现对{Bi,i=l,2,…,N)的列元素的置乱和替代操作,算法如下:假设当前操作的二维矩阵为bi,若67(z,y)I为0,则:

1

否则:

1

5)为使密钥值与明文相关,利用子密钥Ni更新M的值:首先令N1’=r(Ni,N+1),取ni(i>1)平面上的第N7.行的第1~8个比特值,将其转换成一个字节,若其值为m,将M+m赋值于M。

6)重复步骤3)~5),直到I轴上的所有二维矩阵都进行了相同操作,完成一次I轴上二维矩阵的置乱和替代操作;

7)将三维位矩阵B看作是由J轴上的N个二维矩阵(Bj,j=l,2,…,N}组成,Bj的维数是(N+1)×N,或者是K轴上的(N+1)个二维矩阵{k,k -1,2,…,N+1)组成n的维数是(N+1)×N。J轴和K轴上二维矩阵的置乱和替代操作与I轴类似,不同的是步骤4)和5)。在步骤4),Bj是利用b'(x,z)上实现置乱和替代的,风则是利用6,(y,z).实现的;在步骤5),J轴上的二维矩阵是利用子密钥Nz更新M的值,而K轴利用子密钥N3更新M的值。

子密钥sub-key表示循环置乱和替代操作的次数。假设sub-key:12345,则表示首先对J轴上二维矩阵进行1次置乱和替代操作,然后对j轴上二维矩阵进行2次置乱和替代操作,对K轴上二维矩阵进行3次置乱和替代操作,再对J轴上二维矩阵进行4次置乱和替代操作,对J轴上二维矩阵进行5次置乱和替代操作。

四、仿真结果

1、比特值序列的随机性检验

为了检验由实数值混沌序列所产生的比特值序列的随机性,对三组比特值序列进行了频数检验、序偶检验、扑克检验和游程检验。其中频数检验就是用来测试密钥序列中和的个数是否大致相同;序偶检验用于检验一段序列中相邻比特组成的序偶的分布特性}扑克检验是用来测试各种不同排列方式出现的次数是否均匀;游程检验又被称为脚检验,是一种非参数检验法,用来检验序列中是否存在自相关。

检验结果如表1所示。

1

由表1可知,所产生的比特值序列通过了随机性检验,具有较好的随机性能。利用该比特值序列对位矩阵进行置乱和替代操作,能够保证加密算法的安全性。

2、加密性能分析

为了测试所提出的加密算法,针对256 pixel×256 pixel的Lenna灰度图像进行加、解密仿真实验。图6为源图像,密钥为key: [28. 35,0.11,0. 21,0.32,30,42,61,20,12345],图7为加密后的重建图像,图8为正确解密的重建图像口其中压缩图像的压缩比率为8. 76,重建图像相对于源图像的峰值信噪比(PSNR)为30.48 dB。

1

抵抗穷举攻击的有效方法是要求密码系统有足够大的密钥空间并且具有非常大的密钥敏感度,抵抗已知明文攻击的有效方法是令加密算法的密钥和明文相关。将所提出的加密方法和两种典型的图像加密算法在密钥空间、密钥是否与明文相关两个方面进行比较,结果如表2所示。由该表可以看出,所提出的加密方案的密钥空间只和密钥长度有关。理论上,在计算速度允许的前提下,子密钥sub-key的长度没有限制,因此该加密算法的密钥空间可以无限大,保证了加密的安全性。加密算法的密钥和明文有关,从而能有效抵抗已知明文攻击。

1

为了测试密钥的敏感度,令key1:[28. 35,0. 11,0.21,0.32, 31, 42, 61, 20, 12345], keY2:[28. 351,0.11,0.21,0.32, 30, 42, 61, 20’12345],keYi,key2与key仅有微小差别,利用keyi,key2对图7进行解密,解密图像如图9所示。由图9可知,keYi,keYz均不能正确解密图像,即使解密密钥与正确的解密密钥仅有微小差别。由此看出,提出的加密算法对密钥非常敏感。

1

为了测试所提出加密算法的加密速度,针对不同大小的源图像,利用相同的加密和解密密钥进行加密以及解密实验,所用的时间如表3所示,表中的时间包括对图像进行编码和解码的时间。测试平台的硬件配置为:计算机的CPU主频为1.8 GHz,内存2 GB;使用的编程软件是VC6.O。

1

小知识之矩阵

在数学中,矩阵(Matrix)是指纵横排列的二维数据表格,最早来自于方程组的系数及常数所构成的方阵。这一概念由19世纪英国数学家凯利首先提出。

无线通信加密技术在IC卡门禁系统中的应用

在IC卡应用日益广泛的今天,IC卡门禁系统以其门禁管理的安全、可靠、高效、灵活、方便,已逐步取代其他现有各类门锁,成为目前门禁系统的主流方式。只有采用内含CPU的射频智能IC卡,并配以相应的通信加密技术,系统的安全性才能得到保证。

一、门禁系统简介

门禁,又称出入管理控制系统。是一种管理人员进出的数字化管理系统。随着智能化、数字化信息社会的到来,“卡”已逐渐深入到了人们生活的方方面面,人们正在一步步地适应着卡,也渐渐地离不开卡,毫不夸张地说,人类将走向“卡”的世界。卡是实现智能化管理和自动化管理工作的一种重要手段。

在需要控制人员出入情况的场所,比如人员阶段性流动的实验室,宾馆的客房,有特殊需求的保密部门等等,如果使用卡开启门,代替传统的出入证和钥匙,就能使管理工作实现自动化、智能化。不但用者方便,管理者也方便,而且工作效率和安全性都可以大大地提高。

二、无线通信(感应式)IC卡门禁系统工作原理

感应式技术,或称作无线频率辨识(RFID)技术,是一种在卡片与读卡装置之间无需直接接触的情况下就可读取卡上信息的方法。使用感应式读卡器,不再会因为接触磨擦而引起卡片和读卡设备的磨损,再也无需将卡塞入孔内或在磁槽内刷卡,卡片只需在读卡器的读卡范围内晃动即可。

在感应式技术应用中,读卡器不断通过其内部的线圈发出一个125kHz的电磁场,这个磁场称为“激发信号”。当一个感应卡放在读卡器的读卡范围内时,卡内的线圈在“激发信号”的感应下产生出微弱的电流,作为卡内一个小集成电路的电源,而该卡内的集成电路存贮有制造时输入的唯一的数字瓣识号码(ID),该号码从卡中通过一个62.SkHz的调制信号传输回读卡器,该信号称为“接收信号”。读卡器将接收到的无线信号传回给控制器,由控制器处理、检错和转换成数字信号,控制器然后把这个数字瓣识号码(ID)送给控制器上的微处理器,由它作出通行决策。

三、无线通信IC卡门禁的加密

射频IC卡与读卡机之间是非机械接触的,所以射频IC卡特别适用于大流量通过的门禁系统。射频IC卡与读卡机之间采用无线电通信技术进行通信,而无线电波在空间上是开放的,很容易被外部截获,因此普通不含CPU的逻辑加密射频IC卡抵抗不了最简单的密码攻击,通信内容很容易被窃取、篡改和假冒复制等,其安全性甚至不如普通逻辑加密的接触式IC卡。

1、DES算法加密技术

DES算法加密技术选择了对称密码体系,大多数对称算法的加/解密密钥相同,程序设计简单可靠,资源开销较公约密码小,运算速度高。缺点是密钥分发、交换和管理的工作量大。管理服务器里的伪随机序列发生器产生长5 6位的密钥。弱密钥、半弱密钥被自动剔除。整个系统中所有卡和读卡机都编有产品序列号,管理服务器自动给每个产品序列号配以相应不同的密钥,制成密钥表待用,完成密钥分配。对称密码体系中的分组密码算法经常用在IC卡上,DES算法虽然老旧,但用汇编语言实现很方便,因此很多安全性要求不是很强的系统还是优先采用它。

DES算法使用时没有任何专利和许可证方面的限制。DES算法加密和解密可用同一个程序,只要在迭代末尾加个小变化,因此编程方便简单。加强了正确性执行。如果鉴别与被鉴别双方有一个没有正确执行该协议,协议都将终止工作。每一次发送的数据均有随机数编入,当发送相同数据时,每次所传送的密文不会重复。抵抗重放攻击有很好的效果。选一个好的伪随机数生成算法,能进一步提高安全性。

DES算法最大的弱点是密钥长度过短,并且超期服役,抵抗穷举搜索攻击已逐渐力不从心,若采用三重DES算法可在一定程度上解决这个问题。完整的16轮DES算法抵抗差分分析能力较强,抵抗线性分析能力相对弱一些。可能有一些未曾公开的分析方法对DES算法构成威胁,但破译DES算法加密的消息需付出一定代价。

2、国家密码局密码算法

支持国家密码局密码算法的非接触式芯片卡风靡全球、各行各业争相采用的普及程度是该芯片厂家始料未及的。尽管芯片厂家推出了有关升级芯片,但由于价格、技术普及等因素没有被大部分市场接受。为了保证我国智能卡市场健康有序的发展,在国家密码管理局的支持和组织下,该密码算法也得到我国众多集成电路芯片厂商的极力推崇和遵循,成功推出了相关产品。

国密卡发卡流程大体可分为三个步骤:卡结构建立;密钥写入;个人化处理。应对卡片结构进行统一规划,包括主文件、密钥文件、公共信息基本信息文件、个人基本信息文件、应用文件、记录文件、目录文件等。密钥写入包括发卡单位主密钥、专项应用子密钥、管理性密钥等。密钥发卡中心集中写入后的初始化卡分发给各发卡单位。发卡单位根据自己的发卡单位主密钥,进行本单位个人基本信息文件、应用文件装入,并且表面打印照片、姓名等,这样完成个人化处理的卡片,就可发给持卡人。最后,采用国密算法的非接触IC卡门禁系统已成功使用与有关部委的新建与改造门禁一卡通系统。

小知识之国密

国密即国家密码局认定的国产密码算法,即商用密码。

Facebook将为发展中国家用户启用加密功能

早在今年5月Facebook开放Internet.org平台时,所有通过该平台提供的服务都不能进行加密。但最近,Internet.org平台却改变了初衷,允许发展中国家的数百万用户免费使用Twitter和聊天等加密服务。

Facebook将为发展中国家用户启用加密功能

据悉,这套系统让Internet.org成为了用户和更宽广的互联网之间的代理,有效压缩流量和剔除任何无关的数据请求,因此也排除了传统的HTTPS。鉴于代理需要检查和可能改变流量,其无法实现真正的端到端加密。

实际上,Internet.org采用了“两个部分的系统”。用户到Internet.org之间的web流量是完全加密的,而Internet.org和目标主机采用的加密方式又可以是另一种(取决于目标主机的意愿)。

目前,这项服务现已覆盖19个不同国家的10亿人口。

小知识之facebook

美国一个流行的大学生网站; 每个用户在facebook上有自己的档案和个人页面; 美国FACEBOOK是一只对高校学生开放的网站。

卫星电视节目分发传输加密技术

随着卫星数字电视的蓬勃发展,如何确保卫星电视节目制作方的合法权益不受侵害,避免非授丰又用户盗用接收,成为业界不断探索的课题。为了防止被破解,许多公司和研究部门花重金聘请人才,研究和设设计了各种各样的条件收视的加密系统。

条件接收系统是付费数字电视广播的核心技术,其主要功能是阻止非法入侵数字广播网络,并允许被授权的用户收看特定的节目而使未被授权的用户无法收看。CAS的主要任务是阻止用户接收未被授权的节目和如何从用户处收费的问题,而在广播电视系统中,在发送端对节目进行加扰(Scrambling)、加密(Encryption),在接收端对用户进行寻址控制和授权解密、解扰是解决这个两个问题的基本途径。

CAS由前端(广播)和终端(接收)两个部分组成:前端完成广播数据的加扰并生成援丰又信息以及完成解扰密钥的加密工作,从而将被传送的节目数据由明码变为密码,加扰后的数据对未授权的用户无用,而向援丰又用户提供解批用的信息,这些信息以加密的形式复用到MPEG-2VJ传送流中,授权用户对它进行解密后即可得到解扰密钥(即控制字cw,Controlword)并实现对信号的解扰和MPEG-2解码。终端由智能卡(或其他CA卡痢解扰器完成解密和解批。CAS是实现付费电视广播的技术保障。

这些设计都十分复杂和聪明,但从实践来看,并不是十分有效。各类流行的加密系统不断被攻破,不断更换卡上的密码也投有多少效果,有的干脆整体更新、升级。Viaccess,Nagravision.lrdeto,conax等系统是被攻击最多的条件收视系统,目前也都出现了第二代,市场上的应用也是最大的,但有的刚升级不久就已经被破解。

在卫星新闻直播领域也存在此类版权保护的需求。由于卫星新闻直播不同于一般卫星电视:不适宜采用一般的加密方法。若卫星新闻信号在传谨时投有任何加密,这就有可能被有心人士直接从其卫星信号上截取使用,因此有需要制定一种简单的加密制式,来应付此类特殊需要。笔归纳总结了以下几种当前国际上节目分发传输主流的加扰方式进行简单介绍,如英超、网球、F1等大型体育赛事以及演出直播节目等均采用此类加扰技术。

1、BISS加扰方式

Blss,全称Basic Inte roperable Scrambling System.是在数字电视系统中使用的一种加扰方法,由欧洲广播联盟所制定的卫星广播加密系统,众多硬件制造商皆支持此协议。市场上主流的专业接收机均支持这种加密方式,在实际应用中也最多。相对于CAS的密钥每隔一定周期(一般为5-30秒)变化,通过专用通道并有专用辅件(ECMG、EMMG)或设备(如加扰机)而言,这是一种密钥固定的方法,不需要CAS等软件和功能复杂的加扰机,密钥的传输可以是口口相传等非常简单的方式。

由于卫星新闻直播或节目分发不同于一舱卫星电视,不适宜采用一般的加密方法。因此有需要制定一种简单的加密制式,来应付此类特殊需要。BISS加密由12位或16位密钥(session key)保护,只有发射方及接收方才知道。发射机及接收机均需要输入相同的密钥才能解码。其加扰算法是基于DVB-CSA(DVB通用加扰算法)。

BISS加扰主要分为以下三种模式:

(1)BISSmode0:不加扰。

(2)BISS mode l:通过session word(SW)进行加扰。采用12位十六进制键作为密钥,密钥发布结所有授权接收的用户,例如:123456ABcDEF。这种密钥很容易被破解,黑客们往往通过截取码流信息就可破解出SW信息,故安全性不高。

(3)BISS mode E:通过对sw进行进行二次加密,生成ESw。sw是接收机用来解扰的关键数据,BISS-睬用与BISS-It~]同的加扰算法,但BISS-E比BISS-1多一个额外的加密过程及对SW再次加密生成ESW。相对安全性较高。这种模式用接收机的ID和密钥通过计算生成一个加密的1 6位密钥。通过加密密钥字可形成提供一个额外的保护,及二纽加密,生成ESw。ESw可通过不安全的传输信道发给接收机。在接收端两端ID和ESW都需要知道,这样就能够计算出加密的SW,从而获得授权信息,接收出节目信号。

接收机的ID主要有两种:buried ID和injected lD。

Buried ID:每台接收机所固有的唯一性的ID标识,如serial numbol来区分不同的接收机身份。如果你想把节目信息传给指定的某一台接收机,则可通过buried lO用DES-3标准计算出ESW,这就是所谓的密码,输入接收机就可完成解扰工作。

Injected lD:一个可以插入到接收机的标识符,它可以被写入到一台或一组接收机中。这样可以实现对一组接收机进行BISS-E的授权。如果投有这样的授权.即使能够获得BISS-E码,也无法接收出节目信息。

BISS-E对密钥信息进行二次加密,安全系统较高。但黑客们仍然可以通过ESW的计算辅件借用l台授权机的Buried l D,计算出sw,这样未经授权的接收机直接输入sw就可以获取节目。

2、 DIRECTOR

DIREcTOR是由爱立信提供的基于软件系统为同密有条件访问(CA)来控制,为授丰又信息提供最大的安全保障。在节目信息分发市场中,DIREcTOR可针对指定接收机授权查看加密的节目流。使用DVB通用加批算法(csAH接口扰信息嵌入接收机中,可以让运营商避免高额成本和维护智能卡的麻烦。该系统管理和控制着爱立信在市场上广泛使用的接收机型.是为包括TT1220、TT1222、TT1260、TT1280、RX1290,和最新的RX8000系列和TM12设计的加扰系统。它通过消除智能卡和嵌入式同密CA替换.运营商可以同时保持最高的安全性并降低维修成本。通过director-授权,可以对不同的特定投备和接收机进行不同纽别的援丰又和服务。这种灵活的机制可在多个分布式站点支持大量的接收机授权管理。控制节目信息进行点对点和点对多点的交互传输。

DIRECTOR方式三个主要功能:1)生成嵌入式同密C川言息。2)接收机数据库控制管理3)辅件直接下戴到接收机中。

DIRECTOR能够对客户的接收机进行管理,存储每个接收机的自定义的信息。将命令发送到一个或一组接收机。命令包括一个或多个CA的各种控制信息,防止未经授权的查看。DIRECTOR与nCompass联合控制运算符可以同步更改其压缩系统、Psl/SI和CA日程安排,控制和保护有价值的SD/HD MPEG-2和MPEG-4 Avc节目内容。通过软件下载功能,接收机能不断的更新接收机软件代码。DIRECTOR可跟踪数据库中的每个接收机的授权状态。每当系统授权接收、取消授权接收或发送一些接收机控制命令,在接收端的状态将更新以显示其当前状态。而这些信息,运营商能够进行有效的管理。目前英超赛事的版权方就是以DIREcTORjjO扰方式为主进行节目的分发管理的。通过对购买过版权的客户提供的接收机进行授权管理,从而确保未授权用户无法接收英超节目信号。由于其不存在智能卡,因此也无法复制芯片信息,安全性较高。

3、pOWERVU

Powervu为一种数字电视加密用的条件接收模组(CAM),由Scientific Atlanta公司舰为思科系统艘计及拥有。它主要用在专业广播系统中,使用此系统的运营商包括Retevision,彭博电视(BloombergTelevision),探索频道(Discovery Channel),AFRTs及AFN等电视台。此加密技术亦同时禚有线电视运营商采用,防止未经订阅的用户盗看。

PowerVu使用它的专用解码器,供有线业者将不同卫星上使用该加密技术的频道解码,然后分配给各有线电视网络上公播。若设定妥当,解码器亦能接收免费无加密的电视频道(FTA)。PowerVu使用复杂的系统来授权每台PoweNu接收器,定时追踪用户使用纪录,因此PowerVu被认定为非常安全的加密系统,—般用户难以破解。

4、GOLD CODE

Gold码,也被称为黄金的序列,是一种二进制序列,多用于电信和卫星导航(GPS)。是以罗伯特-金的名字命名的。叠码可以界定多个设备在相同的频率范围进行广播的互相关系。一组Gold码序列由2n-l组成,序列的每一个周期为2n-l个。Gold码已禚广泛研究,并在无线通信系统中广泛的应用。在卫星电视广播领域,已有部分厂商在支持DVBS2标准的调制器内嵌入gold序列发生器,在电视信号编码调制过程中插入加扰序列,对调制好的RF作号进行扰频。

调制器中Gold码的输入范围从0到2621 41,输入值为0则不加批。接收机只有输入与调制器同样的gold码,才能锁定并解调传输的信号,否则接收机将无法正常工作。目前这种加扰方式已经被证实安全性较高,国际上在广播电视节目传输领域中的应用还较少,相信在不久的将来会逐渐的普及使用。

小知识之扰码

扰码:就是就是用一个伪随机码序列对扩频码进行相乘,对信号进行加密。

安全加密文件共享系统

互联网时代,越来越多的用户把自己的信息(可能舍有敏感信息)存储在网络上的第三方(如网络硬盘服务器)上,但是一且这些服务器受到攻击被攻陷或者由于商业利益服务器管理者被腐化,就可能使上述敏感信息轻易被泄漏,为了安全起见,用户在文件服务器上存放文件时通常事先对文件进行加密。然而,传统加密方法实现的文件系统只能实现文件加密给某个特定的用户,无法实现细粒度层次上的文件共享,为此,我们设计了一种支持细粒度访问控制的安全加密文件共享系统,可以有效地解决上述问题,具有较高的实用价值。

一、安全加密文件共享系统总体设计

系统以基于密文策略的属性加密为核心,采用可视化的访问决策控制和C/S架构来实现。

1、服务器端

用户加密或解密时用到的系统公钥(public key)和用户私钥(private key)都是通过认证中心的认证后从密钥生成中心(PKG)获取,因此,系统将密钥生成和用户认证的功能划分到服务器模块:同时在服务器端提供独立的模块来进行文件下载,使得用户在无需认证的情况下也能顺利地进行文件下载,而文件上传则必须是通过认证的用户才能进行。

2、客户端

由于文件的加解密耗用资源比较大,直接在服务器端进行,无法高效支持多用户的并发使用,因而,文件的加密和解密的功能则包含在客户端,可以更好地提高加密或解密的效率:同时客户端也将文件共享中的下载模块独立出来,无需认证即可使用,而上传的模块功能则必须通过认证才能进行。

二、安全加密文件共享系统系统功能

根据系统的总体结构和功能要求,系统划分为:用户管理模块、文件管理模块、加解密子系统、决策树模块,网络模块,如图1所示。

1

1、用户管理

用户管理包括对系统用户信息注册、删除、修改和组织结构的建立。用户注册时填写的相关信息(如职业、性别等)将作为加密解密过程中的属性集。

2、文件管理

(1)客户端文件管理

客户端的文件管理模块为用户提供上传和下载功能。

(2)服务器端文件管理

为每个用户独立地分配一个文件夹,并以其lD来区分。这样能够方便地对每个用户的文件进行管理。同时对于下载的操作也能提供方便,当用户下载文件时,只需到指定的另一用户文件下内找到相应的文件即可。

3、加解密模块

加解密模块是系统的核心模块,分为两个相对独立的子模块;即加密模块和解密模块;其中加密的文件是安全且可共享的i并由用户通过决策树设置访问权限。

(1)加密模块

加密模块在文件共享系统中负责对信息进行保密处理,加密过程中使用双层加密;即在加密时先用DES对文件加密,然后文件的拥有者用基于密文策略的属性加密算法对DES的密钥进行加密。

(2)解密模块

解密模块在文件共享系统中负责对已加密的信息进行解密处理,从而恹复出原来的文件,具体过程是用户利用自己从密钥生成中心PKG获得的与其属性相应的私钥首先恢复出DES的密钥,然后根据DES的密钥解密共享文件的密文。

4、决策树模块

决策树又叫访问策略,帮助用户方便地生成密码系统所需的访问策略。其中访问策略用树形结构来表示,系统提供了一个属性集下拉框,方便用户选择属性集中的属性,同时使用SWT中的Tree组件,提供可折叠式的树形结构,通过“增加:‘删除”按钮能够相应的改变树的节点:同时通过“双击”或选择属性能够改变节点的内容。

在用户确认后会绘制相应的树形图并产生相应的策略字符串。如图2所示,存在两个用户分别是(男,网管)和(女,秘书)。一个消息M用其右边的访问树结构加密。用户A不能得到此消息,是因为他的两个属性不能满足访问树(男性且职位为经理);用户B可以得到此消息,因为她是女性且职位为秘书。

1

5、网络模块简介

网络模块采用C/S架构,支持TCP连接和多线程,收发数据包不会造成线程阻塞。同时为提高网络系统的灵活性采用分层结构(如图3所示),分别是文件包传输层和网络数据包转换层;

1

发送信息时,把要发送的内容包装成文件数据包,交给文件包传输层发送,文件包传输层把文件数据包包装成网络数据包(TCP包),再调用Java网络传输模块进行发送。接收信息时,先通过Java网络模块接收到网络数据包,网络数据包转换层把它们解析成文件数据包,再由文件包传输层提交给系统。

三、系统加解密实现原理

基于密文策略的属性加密算法,其中涉及到公开参数( params)、主密钥(maser key)、和用户私钥(private key)生成,在加密和产生用户私钥过程中还需要输入属性、以及基于属性的策略。

按照系统的功能划分为4个子模块:

(1)初始化模块:产生系统公钥和系统主密钥;

(2)产生私钥模块:产生用户私钥;

(3)加密模块:加密文件(用系统公开参数对文件进行加密);

(4)解密模块:解密文件(利用用户私钥对文件进行解密)。

1、初始化

从群Go中选择一个生成元g,随机选取整数α、β∈zp。系统公钥PK=(Go,g,he(g,gα):,其中h= gβ,主密钥mk=(β,ga)。

2、加密(PK,M,T)

其中PK为系统公钥,M为需要加密的文件,r为文件所有者加密时定制策略的访问结构树,生成相应的密文CT如下:

1

其中:

s∈zpI:-随机选取的整数:

Y-树t中的叶子节点集合:

arr(y)-为叶子y对应的属性:

h:{0,1}*’dGD一一系统中公开的哈希函数;

小知识之细粒度

细粒度模型,通俗的讲就是将业务模型中的对象加以细分,从而得到更科学合理的对象模型,直观的说就是划分出很多对象。

高德地图API实现接口数据传输加密

为保障用户数据传输安全,高德地图LBS开放平台API应用服务近日采用了沃通超真SSL Pro证书进行接口数据传输加密方法,也就是我们常说的https加密。

高德地图API实现接口数据传输加密

高德地图API的概念

高德地图API是一套为开发者免费提供的、最专业的基于高德地图的应用程序接口,包括Java、iOS、Andriod、Web服务等多种版本,提供基本地图、位置搜索、周边搜索、公交驾车导航、定位服务、地理编码及逆地理编码等丰富功能。

https加密的作用

采用https加密连接,可以保护接口传输数据的安全,防止中间人窃取、篡改传输数据。

经过严格测试、性能比对、成本估算等多方面的评估,高德地图最终选择沃通超真SSL Pro证书实现接口https加密。

高德地图API实现https加密,不仅体现了高德地图的专业性,也体现了其对接口开放商和用户数据安全保护的重视。

小知识之SSL证书

SSL证书是数字证书的一种,类似于驾驶证、护照和营业执照的电子副本。因为配置在服务器上,也称为SSL服务器证书。

遥感影像加密算法

针对单一混沌映射密钥空间小、易受攻击且在有限精度的系统下受限等问题及高维混沌系统计算量大的缺陷,我们提出了一种基于Logistic映射与Chebyshev映射的遥感影像加密算法。

一、基于复合混沌映射的加密算法基本原理

1、基于Logistic映射和Chebyshev映射的混沌系统

Logistic映射是一种可产生混沌的非线性系统,其模型为:

1

其中:0<μ≤4——分支参数,xi∈(O,1),i=O,1,2,3,…。混沌动力系统的研究工作指出,当分支系数3. 5699456<μ≤4时,则Logistic映射工作于混沌状态,也就是说,在Logistic映射的作用下由初始值xo所产生的序列{xi,i=O,1,2,3.…}是非周期、不收敛的,并对初始值非常敏感。

Chebyshev映射定义为:

1

式中:k-表征系统非线性强度的系数,当k≥2时,映射处于混沌状态。在方程的初值k给定情况下,方程通过迭代将生成一组混沌序列{xn,n=l,2,…)。

2、加密算法基本原理描述

本文算法加密的基本原理为:先借助原始遥感影像产生一个辅助密钥,将辅助密钥分别与两个初始值调制产生两个初始密钥,由此初始密钥生成Logistic映射序列和基于Chebyshev映射的混沌序列,将这两个混沌序列相乘而得到新的混沌序列,并将其转化为[O,255]之间的整数密码序列。最后利用该密码序列对原始遥感影像进行像素值的异或,每生成一个密钥便可与图像像素进行异或操作,直至密钥全部产生。异或操作也进行完毕。最后随机选取一段密码序列对异或后的影像矩阵进行行列循环移位,最终得到加密图像。整个加密过程没有等待,实时性好。其原理框架如图1所示。

1

辅助密钥的引入使得系统的初始密钥对明文有很强的依赖性,整个算法对明文比较敏感,明文图像的任何一部分微小的变化都会引起辅助密钥的变化,进而导致初始密钥的变化,这样使得攻击者很难通过已知明文的攻击方式破泽加密图像,辅助密钥的引入还可以增大主密钥空间。

低维混沌序列很容易受到混沌模型重构方法的攻击,本文算法使用基于Logistic映射的混沌序列和基于Cheby-shev映射的混沌序列复合而得到的新混沌序列掩盖了混沌子序列的分布特性,改变了原混沌系统的动力学行为,可以有效抵制模型重构攻击算法,保密性优于通常的低维混沌序列且计算量小于高维混沌序列。

此外,常见的混沌图像加密都是单一使用像素位置或像素值置乱。本文算法结合像素值异或和像素位置循环移位置乱加密,进一步提高了算法的安全性。

二、加密与解密过程具有实现步骤

设待加密图像I为M×N×8的灰度图像,加密过程如下:

(1)初值及参数的选定。选定Logistic映射分支参数μ及初值X1和Chebyshev映射系统参数k及初值yl。

(2)生成辅助密钥。将原始图像I的所有像素值相加得到像素和Sum,并通过运算mod(SUm,256)/256得到辅助密钥Key。辅助密钥与原始图像相关t即当原始图像发生变化时,辅助密钥也会相应改变。

(3)混沌系统初始密钥的生成。将辅助密钥Key分别与初值x1、y1相乘(Key作为调制因子),得到新的系统初值x1’、y1’。

(4)基于Logistic映射与基于Chebyshev映射的混沌序列产生。设基于Logistic映射的混沌序列为L,基于Chebyshev映射的混沌序列为Hi设常数S-1000,在得到初值x1‘及给定系统参数μ的情况下,由式(1)迭代(MX
N-I+S)次得到序列(X71’X72,…,xm*n+S)。最后舍弃前S个点并将其得到的实值序列记为(ri,r2,…,rmn)。依据同样的方法可以得到基于Chebyshev映射的实值混沌序列,记为(p1,p2,…,pm*N)。

(5)新复合混沌序列的构造矿将实值序列(r1,r2,…,rMXN)和(pl,p2,…,pNWN)逐位相乘得到新的实值混沌序列,并将其转化为[o,255]之间的整数密码序列,记为(Z1,z2,…,Zm*n)。

(6)像素值异或置乱。将整数密码序列(Z1,z2,…,Zm*n)与原始图像Am*n逐行进行异或得到加密图像矩阵Bm*n。

(7)像素位置循环移位置乱。随机选取整数密码序列(Z1,z2,…,Zm*n)中的一段长为M+N的整数密码序列(Z1’,z2’,…,Zm*n’),将前M个值作为行移位值,后N个值作为列移位值对矩阵Bm*n分别进行向右和向下的行列移位。

图像解密过程为加密过程的逆过程。

三、仿真实验及讨论

—个好的加密算法,应该具有密钥敏感性、明文敏感性和低的密文相邻像素相关性等特性:下面分别进行实验验证。

1、加密实验

实验采用256X256×8的机场遥感灰度图像为待加密的原始图像,如图2所示。

1

Logistic混沌映射选用分支系数μ= 3.8,初值x1=0.5,此时Logistic映射工作于混沌状态,Chebyshev混沌映射选用参数k=6,初值yi≥0.2,此时系统进入混沌。利用以上两个混沌映射产生的新密码序列,并随机抽取一段子序列将其转化为二进制序列得到其自相关、互相关特性如图3所示。由图3可以看出此二进制序列有很好的自相关和互相关特性。表明该密码序列满足平均分布,可作为加密密钥。

1

利用新密码序列对原始图像像素值和像素位置进行双重加密。加密图像及其直方图如图4所示。由图4可见,加密后图像类似白噪声,影像混乱,且其直方图均匀分布在[O,255]区间上对用置乱度衡最准则对其进行评价,置乱后置乱度可达20. 5535,质心坐标为(128. 44,128. 40),置乱后质心很接近其形心坐标(128,128),说明本文所提加密算法置乱效果很好。

1

2、密钥和对原始图像敏感性实验

混沌序列对初值的敏感性保证了混沌加密算法对密钥的敏感性。在混沌系统中,参数和初始条件的微小变化都对混沌信号有很大影响。如图5 (a)所示,初始值x0仅相差0. 001的两个Logistic混沌序列在经过约20次迭代后迅速分离,成为两个不相关的序列,可见混沌序列对初值敏感,且易于大量产生,适合图像置乱加密。图5 (b)是本文算法构造的混沌序列的初始值仅相差0. 001时的迭代情况。

1

由图可见,新密码序列迭代3次后就出现明显分岔,表明本文所构造的复合混沌序列对初始值十分敏感。采用错误的密钥初值乱x1=0.5,Y1=O.199对置乱后的遥感影像进行混沌解密,得到的遥感影像及其直方图如图6所示,解密图像杂乱不堪,直方图分布均匀,可见本文所提加密算法对初值非常敏感。

1

用相同密钥对相差1像素不同的两个原始图像加密,并在不改变密钥的情况下解密,结果如图7所示。由图7可知,加密图像对原始图像非常敏感,说明该算法具有很好的抵抗差分攻击的能力。

1

3、相邻像素相关性

为了验证加密图像相邻像素之间的相关性,分别从水平、垂直和对角方向随机选取1000对相邻像素计算相邻像素的相关系数:如表1所示。

1

由表1可知,原始图像相邻像素的相关系数是高度相关的,相关系数接近于1。而加密图像相邻像素的相关系数接近于O,相邻像素已经基本没有了相关性,也就是说原始图像的统计特征被扩散到了随机的加密图像中,原始图像和加密图像水平方向像素的相关性如图8所示。

1

4、密钥空间分析

将系统初值x1,yl,辅助密钥Key及系统参数μ,k作为最初密钥,采用小数点精确到15位(当密钥变化小于10-15时,认为密钥没有发生变化,可以正常恢复出图像)的双精度实数表示,则密钥空间为1075。是单个一维Lo-gistic混沌系统密钥空间1015×1015)的1045倍。此外,在对图像进行循环移位置乱时还可以选择(MX N) /(M+N)个不同的密码子序列,这也可以作为一个密钥。所以该加密算法密钥空间大,安全性很好,可以有效抵抗密钥的穷举攻击。

小知识之遥感

遥感是指非接触的,远距离的探测技术。

卫星测控中硬件加密技术的应用

要对卫星的遥测遥控信息进行安全防护,最有效的方法就是对其进行加密处理,以防止测控信息资源被故意地或偶然地非授权泄漏、更改、破坏,或使信息被敌方辨识和控制,从而确保测控信息的完整性、保密性、可用性和可控性。通常,对测控信息实施加密处理可以分为硬件实现或软件实现,而硬件加密技术,由于其固有的许多优点,在卫星测控中,越来越受到重视。

一、硬件加密基本原理

硬件加密,是通过使用硬件资源构成安全、便捷的对上层应用提供包括密码运算、密钥存储、随机数生成等在内的诸多安全服务的技术。硬件加密系统通常包含一个能存储敏感信息、自主完成与密码运算相关操作的硬件设备,通常称这类设备为密码设备。系统外界只能通过定义好的接口调用其中功能,不能直接访问其中的敏感信息,也不能对其中进行的运算进行干预。任何对密码设备的非法访问都将被加密系统阻止。当非法访问严重威胁加密系统安全时,加密系统可以采取包括自锁或自毁在内的诸多防护措施。硬件加密系统具有安全性高、运算速度快、应用范围广的优点,因此被广泛使用在各种安全系统的解决方案中。目前,随着计算机和数字集成电路的飞速发展,硬件加密产品多以计算机板卡的形式出现,并且常常由一个主控芯片来完成多路数据信息的加密和解密要求。针对卫星测控数据的加解密,一个典型的硬件加解密插卡由主控芯片、扩展SRAM、程序存储器、接口单元和噪声码电路等组成,如图1所示。

图1中,加解密插卡采用PCI总线作为与PC机的接口,PCI总线为目前通用的计算机总线标准,能达到1~2倍33Mbit/s的总线传输速率。采用PCI(或PCI-E)接口标准,具有通用性好、速率高、可扩展性良好等优点。

1

主控芯片用于完成多路数据的遥测解密和遥控加密,通常采用具有较高时钟频率的DSP芯片,以进行大量的数据交换和加解密运算。主芯片外扩一片FLASH,作为程序存储区,用于存放主程序。

主芯片外扩一片SRAIVf,以增强板卡的可扩展性。板卡上还有独立的噪声码产生电路,用于产生遥控加密所需的信息密钥。

二、硬件加密的优点

虽然与硬件加密系统相比,软件加密系统具有开发时间短、研发成本低、部署维护方便等特点,但硬件加密系统在抵御攻击、密钥的安全存储、运算速度等方面可以提供较软件加密系统更优质的服务。基于这些因素,在许多场合硬件加密系统起着软件加密系统不可替代的作用。

1、种子密钥的保护

加密系统中的种子密钥用来保护加密系统内敏感信息,需要长期保存下来口如何安全地使用密钥对加密系统至关重要。软件加密系统,通常以密文形式将种子密钥保存在计算机硬盘上的文件中,攻击者可用多种方式获得该文件,并用穷举等手段加以攻击,种子密钥的安全性难以得到保证。而且在密码运算过程中,种子密钥在参与运算时必须以明文方式出现在内存中,虽然可以采取一些措施加以保护,但是很难保证它的绝对安全。

在硬件加密系统中,种子密钥保存在密码设备的物理器件如专用的FLASH中,从物理上断绝了非法访问密钥的可能性。而且还可以通过专门的保护电路防止物理攻击,以提高种子密钥的安全性。同时,与种子密钥相关的所有操作都在密码设备内完成,充分保证了种子密钥的安全性。

2、完整性保护

硬件加密系统可以保证系统运行时的完整性,而软件系统则很难做到这一点。硬件加密系统以密码设备为基础,并配以相应的软件程序。硬件加密系统中的密码算法芯片一般采用反熔丝的FPGA或ASIC实现,难以破解或更改,其相应的控制程序也是通过专用设备写入密码设备内的FLASH芯片,并加以保护,攻击者很难非法改写。此外,核心程序运行在密码设备内专用的SRAM上,它在物理通路上与外界隔绝,使得攻击者不能非法访问、修改
程序中的数据。而软件加密系统直接利用计算机系统的软硬件资源,它的安全受制于计算机系统本身限制。以Windows系统为例,通过使用反汇编技术或者类似Softice软件对系统运行时的内存、寄存器、变量进行监视,可以获得程序运行过程中的某些关键信息,从而达到破解软件获取敏感信息的目的。更有甚者,攻击者可以通过监视程序的输入输出、扫描程序数据区,以造成更大危害。因此软件加密系统在防止外部非法访问、篡改数据等方面,很难实现加密系统对于完整性的要求。相比之下,在硬件加密系统中,与密码相关的运算可以放在密码设备专用处理器上完成,不使用专门的设备难以跟踪,从而极大地减少了系统被破解的可能。

3、运算速度

与软件加密系统相比,硬件加密系统可以提供更高速的服务,随着芯片制造业的飞速发展,目前在数据处理速度上,相对于采用软件处理,使用专门为加密系统设计的硬件处理器可以达到更高的运算速度。而软件加密系统直接使用计算机系统资源,当进行密码运算时需要占用较多的系统资源,可能会影响系统中其他应用的正常运行。加解密处理常常是高强度的计算任务,计算机微处理器对此效率不高,将加密移到芯片上,即使那个芯片仅是另一个处理器,也会使整个系统速度加快。

4、终端用户使用

对于最终用户来讲,他们真正关注的是具体应用。在他们看来,加密系统应该是透明的,而不应该影响到业务系统。在这一方面,硬件加密系统具有很大优势。例如在卫星测控中,地面加解密设备布设在卫星测控中心,负责对上行遥控数据加密和下行遥测数据解密,测控中心到测控站,测控站到卫星间的数据信息均为密文格式。对于使用者来说,加解密设备就像是“黑匣子”使用者只需按接口要求接收或发送数据即可,由加解密设备自动完成数据的加解密、密钥更换等工作,不需要使用者干预,降低了地面系统使用、维护加密设备的要求。

综上所述,与软件加密系统相比,硬件加密系统具有安全性高、运算速度快、应用范围广的优点,因此被广泛使用在各种安全系统的解决方案中。

小知识之硬件加密

硬件加密是通过专用加密芯片或独立的处理芯片等实现密码运算。将加密芯片、专有电子钥匙、硬盘一一对应到一起时,加密芯片将把加密芯片信息、专有钥匙信息、硬盘信息进行对应并做加密运算,同时写入硬盘的主分区表。

卫星通讯中的信息加密技术

随着经济的发展和社会的进步,卫星通讯信息加密技术相关问题开始受到人们的关注。

一、卫星播出系统的四种常用加密方式

卫星播出系统常用的加密方式主要有四种,具体来说,主要有:①法国电讯加密方式(Viacess):这种加密方式最为常见,主要播出系统代表有76.50E亚太211的太平洋直播和华人直播系统。②爱迪德加密方式(lrdeto);110.50E鑫诺1号上传送的CCTV和部分省台共30多套节目的78.50E泰星1号的UBC播出系统、108.OE印尼电信1号的直播系统均采用该加密方式。③南瓜加密方式(Nagravison):主要以146.OE马步海2号的菲律宾梦幻(DREAMBROADCASTINGSYSTEM)节目为主,53套节目中大部分为英文节目,华语节目有卫视电影台和无码节目一套。另外,88.OE星上的香港LBC系统也采用此方式加密.④恩迪斯加密方式(Nds): 105.50E亚洲3S的凤凰电影一组,116.OE的KORF,ASAT -3(韩国无穷花3号)SKYLife直播系统选用此加密方式,此加密方式较稳定,但解码器昂贵,一般为电视台专用。另外105.50E的ZEETV采用的Sena加密方式。还有ConaxSkyCrypt等加密方式。

二、密码技术及安全标准

密码技术安全标准对于提高密码安全来说非常重要,密码技术是对传输或存储中的数据进行重新编码,以防止第二方窃取、篡改数据的一门技术。它结合了数学、通信学、计算机科学等多种学科于一体,通过数据加密、数字签名、身份认证等方式,在纷繁复杂的网络环境下对信息进行保护,保证其机密性、完整性和可用性。

1、加密算法的种类

加密算法在卫星加密技术中的应用比较广泛,由于数据加密算法种类繁多,究其发展史,经历了古典算法、对称密钥算法以及公开密钥算法二个阶段。古典算法中有替换加密、代码加密、变位加密等,该类算法简单易行,但已经不能满足当下的安全性要求,逐渐淡出应用。对称密钥加密算法又称为单密钥算法,该算法加密与解密使用同一个密钥,或者从其中一个密钥可以轻易推出另一个。目前著名的对称加密算法有关国数据加密标准DFS等。对称密码从加密方式上又可以分为分组密码和序列密码两种。公开密钥加密算法又可以称作非对称密钥算法。该算法中,加密密钥和解密密钥是不同的,加密密钥公开,解密密钥私下保存。在得到公钥的情况下,想要推导出私钥理论上是不可能的。该类算法的设计往往来自复杂的数学难题。代表性算法有基于大数分解的RSA,基于离散对数的DSA,基于椭圆曲线离散对数的FCC。

2、加密算法的安全判定标准

加密算法的安全判定是一项复杂的工作,在具体的实践中,必须遵循一定的标准。安全性是衡量一个加密算法优劣的首要因素。失去了安全保证,再完善的密码系统也没有意义。要保证安全性,一个加密算法应做到以下二点:在明文和加密密钥已知的前提下,可以轻易算出密文;密文和解密密钥已知的情况下,可轻易算出明文;解密密钥未知时,由密文推导出明文理论上是不可能的。关于加密信息的安全性定义,Shan-non提出了通信中的理论安全与实际安全两个概念。理论安全要求在解密密钥未知的情况下,无论得到多少数量的密文,由此推测出明文的可能性与直接猜测明文是一样的。Shannon证明要实现理论安全,必须让加密密钥的长度不小于明文,这在进行大规模数据加密时是难以实现的。实际安全是指密文已知而解密密钥未知的前提下知对于计算能力与可用资源有限的破解者,即使使用最佳的破译算法,也无法在他所需要的有效时间内破解出明文和密码。目前应用的加密标准,都是基于实际安全设计的。

三、卫星通讯信息常见加密技术分析

1、DES码算法

DES码算法采用64位信息单元,将换位法和替代法巧妙地结合起来,进行多次迭代加密处理。DES码的标准密钥长度为48位,加上8位奇偶校验位,共56位长,形成由用户选择的56位密钥。为了使密钥与数据块的大小相匹配,人为地将密钥的长度扩展为8个字节64位信息。利用这种密钥将明文转换成密文文本。将有近7×1016种56位密钥量,再加上它们可以经常地变换,所以其安全度是非常高的。虽然理论上证明可以通过计算穷举法破译,但至今尚未构成实质性威胁。DES码的算法示意框图如图1。美国金融系统采用的DEA (Data En-cyption AlgoriLhm)密码系统,实际上就是DES码的标准算法。

1

2、公开密钥体系

上述介绍的加密法,其加密和解密的正反变换算法过程是可逆的。即加密和解密是采用同一种密钥。这种密钥称作对称密钥体系(传统密钥体系)。传统密钥体系的不足是一旦加密密钥被暴露,整个密钥体系也失去其保密作用。

(1)传统密钥的主要弱点

①密钥分送上的困难随着网络内用户的增加,分送密码的困难也增加。例如在一个密码网络系统中,有N个用户,每个用户都得保存N把密钥。而对于系统来说,必须拥有N(N-1)/2把密钥的总数,才能对系统进行管理。随着用户的增加,必将给密钥的分送带来时间上的延迟。这在今天时间就是金钱的形势下,是难以被人们接受的。(多无法协调收、发双方在信息传送内容方面所引起的纠纷采用传统密码体制,虽然可以对信息进行加密,但是它不能证实信息是由发方传送的。传送的信息有否被篡改或伪造,系统无法予以证实。③缺乏自检保密密钥泄密的能力鉴于分送密钥存在困难,所以一般密钥使用时间较长,这不利于密钥本身的保护管理。

(2)公开密钥的特点

①不需要为安全通路传送密钥。②在N个用户之间进行通信时只需N把密钥,而对称密钥系统则需要ZN把密钥。

(3)公开密钥体制的具体实现

W.Difie和M.e.Hellman虽然提出了公开密钥体制的概念,但当时他们尚未提出具体的实施方法来。1978年美国斯坦福大学教授R.C.Merkle和M.Hellman首先提出利用“背包问题”实现公开密码体制的方案,称为MH法。同年,美国麻省理工学院R.Revest,A.Shamir和L.Adieman三人提出了利用素数因式分解在计算机上实现是困难的原理出发,提出奎开密钥系统的方案,称为RSA法。此后,国际上提出了多种公开密钥系统,但RSA法具有代表性。现将RSA法简介如下:RSA公开密钥体制的理论基础是数论中的下述论断:求两个大素数的乘积,在计算机上是容易实现的,但反过来分解这两个大素数的乘积(即从乘积求它的两个素数因子),在计算机上几乎是不可能实现的。例如,设两个素数分别为p=47,q=59,它们的乘积是:m=Pxq=47×59=2773。要对2773进行因式分解,一般用大素数的快速判别法,即MonLeCarlo判识法。由于2773的位数少,所以对其进行因式分解的时间不多。但当两位素数超过100位以上时,试图通过逐次素数判别法来求解,即使用目前最快速度的计算机计算也得花费数十亿年的时间。可见.RSA法的耐破译的强度是何等之高。

四、密码入侵手段分析与防范

密码学由两部分组成:加密技术和密码分析。密码分析学是研究破译密码和伪造认证的科学,同时它还对信息窃取和诈骗活动进行分析,从而发现密码体系的漏洞所在。通过密码分析手段,对一个密码体系进行攻击,一般可能从以下几个方面入手:

①唯密文攻击;②已知明文攻击;③选择明文攻击;④选择密文攻击。破译者可选择一些密文,并通过密码系统得到相应明文,由此破译密钥。选择密文攻击多用于公钥算法。例如针对RSA的攻击,破译者将特定信息伪装后让拥有私钥的实体签署,通过计算即可得到所需信息。此外,在RSA算法中,模数单一的情况下,对公共模数进行分解,计算后也可以得到所需信息。要防御这种攻击,通过算法改进无法办到,只能从以下两点加以防范:采用严谨的公钥协议,使得实体不对来路陌生的信息加以解密或签名:不轻易对陌生的文档签名,签名时先作Hash处理。即使如此,“中间人攻击”也有可能进行会话劫持,要对此进行防范,势必牺牲消费用户的部分便捷功能。以上攻击强度依次递增。密码体系要能够禁得起选择密文攻击才算满足安全性要求。密码分析学发展迄今,从破解手段可以分为以下三类:

①基于穷尽搜索(即暴力破解)的传统密码分析技术。

②现代密码分析技术。如差分密码分析、线性密码分析和密钥相关的密码分析。

③新兴的基于物理特征的密码分析技术,如电压分析、简单电流分析、差分电流分析、时间分析、电磁敷设分析等等。破译者可以通过这些分析技术,从密钥载体快速得到密钥。目前发明了许多相应的技术来抵抗这些破解手段,如使用随机数一次一密,用加密线路从硬件层而防御等。但是这些力一法只能增加破译的困难性,而不能从根本上防御攻击。人们基于社会工程学的密码破译。社会工程学是一种特殊的获取密码的手段。它脱离了软硬件技术的范畴,不以日益完善的密码系统为攻击目标,转而研究密码系统的使用者与管理者的心理弱点,通过人们固有的社会特性,设下心理陷阱进行欺骗活动。通常数据加密可在通信的两个层次实现,即链路加密、节点加密和端到端加密,针对这些不同层次的加密技术各自的特点,又有层出不穷的攻击手段,其最终目的都是为了破解密码oI除了以上提到的针对密码分析的防御手段,人们还对那些以解密为目的的攻击手段做出各类防范,如可编程密码,如在网页中对密码进行安全评估(多用于商务系统账户密码),如带自毁功能的密码键盘(用于防范基于物理特征的密码分析)。CSDV暴库事件中,黑客只需对入侵的数据库记录进行碰撞库与哈希值列表对比,即可在短时间内获得大部分用户的密钥。数据库对密钥的加密管理固然需要进一步完善,而用户对密钥的设置,也应该更小心地避开社会工程学陷阱。

小知识之社会工程学

社会工程学(Social Engineering,又被翻译为:社交工程学)在上世纪60年代左右作为正式的学科出现,广义社会工程学的定义是:建立理论并通过利用自然的、社会的和制度上的途径来逐步地解决各种复杂的社会问题,经过多年的应用发展,社会工程学逐渐产生出了分支学科,如公安社会工程学(简称公安社工学)和网络社会工程学。

卫星加密技术

随着当前社会的科学技术不断进步,卫星的发射也较为频繁,卫星加密技术既是为了发明研究新的科学技术,同时更多的又是对于当前的城市经济建设安全保证,所以卫星加密技术能够被全面的推广,在当前的社会经济文化建设中卫星加密技术已经成为一个城市的科技文明进步的主要表现。

卫星加密技术

一、实施卫星加密技术的重要性

1、科研文卫事业进步的基础保证

卫星加密技术接受更加的稳定可靠快捷,卫星科技能够接受全面的地理环境信息,即使卫星覆盖不到的地方也能够将数据进行接受和总结,卫星的利用除了进行对制定目标的定位,还能够将地球大气上空的气候进行分析,对于天气预报、部分活动的演练等工作能够进行分析,将大气的环境进行定位,经过科学家的分析从而在科学试验中能够将卫星收集到的信息进行总结,所以加密技术能够给很多的现代科研文卫事业全面的发展建设,因此卫星的发射和利用更加的普遍。

卫星技术的普遍利用和推广人们的隐私和科学实验的保密工作都面临更多的威胁,所以实施卫星加密技术是当前社会各经济文化事业进步的基础,甚至先进的卫星发射技术直接说明“三颗卫星就能进行全球定位”,尽管GPS系统的诞生给人们的日常出行带来了方便,但是卫星的发射会关乎一个国家的未来竞争实力和发展潜力,卫星的普遍利用除了科研和电视事业还集中在军事,在战争中能够对定位、导航工作起到关键的作用。因此为了维护社会的稳定和经济的发展,必须要将卫星进行加密,加密的卫星才能够维护社会的正常秩序,保证整个社会的发展进度,而且加密的卫星技术才能给科研实验提供更加准确的科研数据,能够对整个社会的文明进度予以保证。

2、能够给我国的经济现代化建没带来全面的保障

现代化的城市文明建设主要集中在对于现代科学技术的利用上,因此卫星作为除了科研实验的利用之外,主要就是广播娱乐的利用,而且广播事业的发展能够反映当前人民们的生活状态和生活追求层次,所以现代化建设的今天就是要将卫星加密技术进行推广和完善,将更多的现代化的卫星利用科技进行推广,因此卫星通信技术要被全面的利用和推广,其中卫星加密技术利用较广的就是数字电视和广播通讯上的加密,因为数字电视能够实现电视高清同播需要卫星的远程传输和加密技术的利用,而且数字电视和无线电广播的加密是为了给社会的文化传播事业带来经济收益的保障,为了促进文化传播事业能够更大程度上的满足城市居民的生活文化娱乐需求,因此城市的公共文化经济发展才有保证。

我国的现代化经济建设集合了当前的城市的科技文化等公共事业,所以卫星加密技术被利用在当前的传媒事业当中,能给社会的文明发展进程带来更多的实际推动作用,所以推行的卫星加密技术是符合实际的社会文明发展要求的,也能够促进城市的经济建设全面的发展。

二、卫星加密技术的利用范围

1、卫星加密技术的定义推广其利用

卫星加密技术就是将卫星的接收信号点进行数据化的转换进行加密,卫星数据加密技术是指将卫星接收到的对口信号经过加密钥匙以及加密函数转换,变成无意义的密文,而接收方则将此密文经过解密函数、解密钥匙还原成明文。并且卫星辐射面积较广,其信号的接受范围较广,只有经过加密技术才能够保证辐射信号的有效性,且具有更多的安全性能,加密技术是现代科技发射卫星、接受信息的主要手段,同时卫星加密是卫星技术发展和进步的基石。

卫星加密技术能够将科研事业的实验成果进行保密,减少外势力的破译干扰,而且卫星加密技术要求了卫星用户只有在指定的用户或者网络输入条件下获得匹配的密码,才能够对卫星传输的信号进行利用,在科学信息技术发展迅速的今天卫星加密技术是为了保障卫星使用用户得到准确精密的卫星发射信号,而且加密技术不影响卫星的发射信息且随机性良好,因此根据卫星加密技术的高效和科学特性,卫星的加密技术能够全面的适应现代化科研技术的发展,而且卫星加密技术已经在很多的发达国家的军事科研技术上进行了全面的推展,因此我国的现代化建设和进一步的实施科教兴国战略,就必须将卫星的加密技术进行利用,并在利用的基础上对其进行新技术、新手段的创造。

2、高科技现代化的研究技术

卫星加密技术具有安全、高效、覆盖面积较广的特征,因此高科技的现代化的科学研究为了便于自己的信息数据更新,收集更多有效地数据,建立准确的数据库,就要将卫星进行加密,以防国家科研机密泄露,导致国家的直接经济利益损失,所以现代化的科学技术要诞生和创新就必须要将卫星加密技术进行利用,卫星具有全天候、多时效、持续性长的特点能够被广泛的利用在科研实验的基础信息采集上,而且很多国外的国家已经将卫星加密作为科研技术成功的基础,因为卫星加密不光是对于自身科研成果的安全环境进行保障,而且还是对于自身研制程序稳定性的保证,因为加密技术排除其他的外来信号干扰,包括故意、恶意的信号干扰,保障科研技术的稳定研制从而找到科学的研究结果。

现代化的城市建设,国家之间的竞争,靠的就是自身的科研实力,况且我国也提出科教兴国的战略,卫星加密技术能够将正在试验中的科研署名特性进行保密,同时因为卫星的科学高效性,只要是能够将外来的不良信号进行排除,才能够保障科研成果的顺利实现,而且高科技现代化的研究技术表明了我国的实际科技竞争实力,能够将我国的整体科研竞争实力全面的提高,而且科学技术的进步就是体现在对高科技的有效利用,所以高科技现代化的研究技术必须要将卫星加密技术进行利用,同时进行新的开发利用形式,才能够保证我国的科学技术全面的进步。

3、在广播传媒事业上的应用

卫星加密技术被广泛的利用在无线广播的加密与解密技术上,加密技术对发送的广播信号进行特定的加扰处理,而且在接收端必须要接入解码器,而且还需要在按时付费后才能接受卫星信号,正常收听广播节目,在我国的广播传媒事业中推广卫星加密技术是最值得利用的,因为无线广播传媒事业在一定程度上是对国内时事的反应,如果过于将本国的国情对外开放,那么我国的国情和未来的发展战略以及当前的国情竞争能力都会被一览无余,当然广播事业中的情况有时候甚至是不真实的,更不利于我国对外树立国际形象,所以为了保障无线电广播的接收信号清晰正常,满足国民的生活新闻需要,就必须要将无线广播卫星发射器进行加密,匹配的信号只在国内安装无线广播接收器匹配的用户接受使用,所以在卫星加密技术不断发展的时候,各种利于无线电广播传媒事业发展的卫星加密技术也会不断地被进行创新和改造。

卫星加密技术还可以对广播的视音频信号进行加密,而且解密程序不同给刻意解密的工作带来的困难越多,所以卫星加密技术能够被全面的推广利用在广播传媒事业当中。虽然在我国部分农村地区的室外安装的卫星接收器较为繁多复杂,会干扰无线电广播,但是真正的实施建设的主要广播频道的加密工作,还是能够有效地保证我国的无线电广播传播讯号的正常运行,所以无线电广播事业的经济才能持续增长,才能够有机会创造更多的积极优良广播节目,才能够从全方面的提高我国民众的生活质量,将整个社会的文明进程加快。

4、在社会现代化建设的各方面

随着网络技术的进步,网络加密能够将网络资源进行全面的保障,防止黑客入侵带给整个网络资源的损害。因此卫星加密技术既是为了保证各卫星利用单位的日常有序工作,更重要的是将利用单位的工作内容和活动程序进行保密,在现代化的文明发展中隐私作为其主要的文明标志之一加密技术就被更大范围的推广,因此卫星加密技术能够被利用在各项事业的发展建设中。

科学技术的更新给很多入侵者有机可乘,会使原本的预期信号接收信息削弱,所以卫星加密技术将会被运用的更加全面,例如:手机导航、汽车导航、通讯等各行业的加密技术上,因此探究的卫星信息加密技术能够被更多层面的利用,从而为我国的整体科技事业的进步带来保障。

小知识之GPS

GPS 是英文Global Positioning System(全球定位系统)的简称,而其中文简称为“球位系”。

350款App现“恶意后门” 专家建议将机密信息加密

最近几天,苹果手机的程序编写软件Xcode被黑客植入了恶意代码,国内外超过350款App都中了招,苹果公司随即向被感染的手机程序开发者发出了下架通知,同时还建议用户将手机机密信息进行加密处理。

350款App现“恶意后门” 专家建议将机密信息加密

这种带有后门的苹果手机程序会自动上传手机版本信息、应用程序名称、手机所在国家等隐私信息到程序编写指定的网站。根据排查,目前共有350多款苹果手机程序受到感染,其中不乏有百度音乐、微信、滴滴打车、58同城等众多知名应用程序。事件曝光后,个人隐私是否泄漏成为不少用户最大担忧,为了自己的手机机密信息安全,专家还是建议用户将自己的手机机密信息进行加密处理。

其实无论是苹果iOS平台,还是安卓平台,都有责任保护好用户的信息安全。另外,从企业自身来讲,在开发应用App时,也应当把好产品这道关。

小知识之Xcode

Xcode 是运行在操作系统Mac OS X上的集成开发工具(IDE),由苹果公司开发。Xcode是开发OS X 和 iOS 应用程序的最快捷的方式。Xcode 具有统一的用户界面设计,编码、测试、调试都在一个简单的窗口内完成。

MD5加密技术在气象数字档案检索平台的应用

为更好地利用近年来全国气象历史档案数字化成果,方便用户快速检索查询其档案数据信息,拟搭建气象宽带网内基于.NET的气象数字档案检索平台,并采用MD5算法对登录用户密码以及数字档案文件名进行加密。

一、平台框架与数据资源环境

1、平台建设框架

所建平台采用基于Asp.NET技术的Visualstudi0 2010为开发平台的B/S模式架构,通过B/S模式,使用户可以在气象局域网内以Web方式根据自身需求主动获取档案资料,极大提高资料利用率和服务效率。

2、气象数字档案归档整理

气象数字档案是珍贵的历史资料,需要在特定的安全网路区域内设置服务器,为此,笔者前期准备了8T磁盘数据容量大小的NTFS格式磁盘阵列,后期准备设置虚拟化的双机热备大容量数据存储专用集群,防止数据缺失损坏的同时达到高速率的I/O读写。

编写dos程序脚本对对数字档案图片按照一定的存储策略进行归档,便于后期快速定位和提取数字档案。以文件央的形式按照“站点/气表类型/年份/月份(可选)”的目录结构对数字档案进行归类存储,处理之后的最终文件夹的数字档案文件数最多为90个左右(以气表1为例,一个月有7~8张,按一年12个月计算),所以无需建立“月份”文件夹。

二、平台关键技术

1、平台信息数据加密

从涉密和安全角度出发,采用MD5技术对平台的登陆认证和气象数字档案临时文件名称进行加密,在.NET框架中的System.Security. Cryptogra-phy命名空间提供加密服务,包括安全的数据编码和解码,以及其他操作,例如散列法、随机数字生成和消息身份验证等。此平台的数据信息加密可以使用此命名空间下的HashAlgorithm类,此类是包含了所有加密哈希算法实现的基类,因此,通过封装好的类调用现成的加密方法,可以轻松简单的实现字符串数据的MD5加密。

2、平台图像特效展示

采用基于AdobeFlash的开源显示控件并充分利用Macromedia Flash所具有的流畅功能来创建简洁的、交互式(可随意放大、缩小、拖动)的动态图像,极大增强了数字档案的可视效果。图1为平台运行流程框图。

1

三、平台主要功能设计与实现

1、用户登录

目前大部分的信息网络系统都会进行用户登录身份权限验证,对于用户登录后输入的密码,有些系统直接把输入的信息以明文方式传递到服务器端来校验,有的数据库中也以明文形式存储密码,这都存在极大的安全隐患,数据库一旦遭受黑客入侵,窃取了其中的用户密码信息,就会造成不可弥补的损失。为了保证系统数据的安全,有效防止信息泄露,数据库中密码信息要以MD5算法加密后的形式来存储,不可用明文或可逆算法来加密,在验证用户登录过程中,系统将输入的密码转换成相应的MD5离散序列,再与数据库中经过MD5加密后的密码进行对比,如果两数值完全一致,则登陆用户为合法用户。这种校验方式的优势在于,假使黑客人侵窃取了密码,不会造成大的损失,因为密码是经过MD5加密的,具有不可逆性,一般黑客能够获取实际的密码值几乎不可能。

为了更好地管理此平台电子档案的使用,目前平台只建立15个登陆用户,分别为管理员用户以及广西14各地市局用户,只允许相关的人员检索相关电子档案,能够有效的保护数字档案数据。登录时密码需要进行MD5加密,其加密过程利用哈希函数在特定算法下生成一个128位的固定长度的哈希值,用生成的哈希值与存储在数据库中的哈希值进行比对,完全一致则密码输入正确,这就保证了即使数据遭受黑客人侵,窃取了密码哈希值,也很难通过破解获取真实的密码,这样可很好地保护用户的密码信息。此外,用户登录时除了输入密码还需要提交验证码,它是一种区分用户是计算机还是人的公共全自动程序,目前很多的网站通用的方式为计算机特定程序产生的一串随机数字符号,一般为4~6位加了干扰的字母和数字图片,需要用户自己识别其中的验证码信息,输入相应的信息提交验证,验证成功后才能登录,验证码可以有效防止非法用户恶意破解密码、刷票等非法行为,特别是防止入侵黑客对某一个特定登录用户用特定程序用穷举法破解方式不断进行登陆尝试,从而获取登录密码。下面列出在.NET环境下的MD5加密过程步骤,图2为MD5加密后的密码信息数据库截图。

1

步骤1:将输入的密码字符串转换成二进制字节位。

1

步骤2:计算转换后的字节数据的哈希值。

1

步骤3:将此哈希值与数据库的Password进行比对,判断一致性从而判断是否为合法用户:

1

2、气象数字档案检索与显示

采用基于Adobe的Flash控件以及JavaScript脚本对被检索的数字档案进行显示,基于安全考虑,对被检索的数字档案名称同样采用了MD5进行文件名加密,以屏蔽数字档案命名规律。关键步骤如下:

步骤l:根据检索条件在服务器目录中逐级找到目的数字档案图片组,例如1960年1月,站点信息为5 7859的气表QBI图片组,共8张。

步骤2:按目的数字档案图片组的图片顺序编号逐张对其图片名称进行MD5加密。图3为数字档案图片组加密后在内存查看到的数组信息。

1

步骤3:将加密后的图片组拷贝至网站服务器临时图片存放目录Tmplmage。

步骤4:客户端通过参数传递形式提交至服务器端,服务器端获取参数,拼接实际物理路径,调用js代码,进行Flash显示控件参数填充,如显示标题,图片顺序排列等。

步骤5:用户查阅图片,可缩放、拖动浏览。

经过上述几个步骤,客户端用户不可能通过文件名规律改动网页传递参数去浏览获取其他数字档案,黑客即使进入了服务器显示目录,那也只是临时目录,实际的物理目录进行了防火墙物理隔离,很难进入也很难非法获取其中的档案图片。图4为平台用户操作步骤示意图;图5为数字档案显示界面效果图。

1

小知识之MD5

MD5的全称是Message-Digest Algorithm 5(信息-摘要算法),在90年代初由MIT Laboratory for Computer Science和RSA Data Security Inc的Ronald L. Rivest开发出来,经MD2、MD3和MD4发展而来。

信息加密技术在计算机软件版权保护中的应用

随着计算机网络技术的飞速发展,数字媒体技术在各个领域已经得到了广泛的应用,网络中流传的数字作品也日益增多。图像处理和网络传输技术能够对原版数字作品进行无限制的修改、编辑、合成和传播,给数字作品的原创作者带来了巨大的经济损失,数字作品的版权保护、加密解密和认证使用问题显得日益突出。

一、置乱加密技术和数字水印技术

1、置乱加密技术

置乱加密技术作为信息隐藏技术的一个重要分支点,它的原理是按照固定的规律对矩阵数据的坐标进行变换,以此来达到置乱加密的效果,将这些固定的规律迭代应用在矩阵数据坐标的时候,矩阵经过一定次数的迭代又能够恢复原始状态。

数字版权管理系统通过置乱算法的使用将数据信息进行加密,使加密后的数据信息失去原始的内容和格式,即使数字作品在网络传输的过程中被非法用户窃取,也无法对该数字作品进行浏览,由此起到了良好的加密作用。

2、数字水印技术

数字水印技术是将一些特定的、不可见的标记信息利用数字嵌入的方法存储隐藏于数字作品中。数字水印是一种可以鉴别的数字信号或模式,能够永久镶嵌在数字作品当中,通常情况下具有可证明性、不可感知性、安全性和鲁棒性四个基本特征。

利用数字水印的四个基本特性能够将数字作品中的重要信息进行隐藏,不容易被使用者察觉注意到,更不会影响数字作品的正常使用。但是通过数字版权管理系统能够对数字作品中的水印信息进行提取,用来作为鉴定版权归属、起诉非法侵权的证据。

二、基于加密和数字水印技术的数字版权管理系统设计

1、系统功能结构设计

数字版权管理系统按系统功能结构进行划分,包括管理模块、注册模块和使用模块,每个模块还可以细化成为多个子模块,但这三个模块需要相互协作,彼此相连,才能够确保整个数字版权管理系统的功能需求和正常使用。数字版权管理系统的功能结构如图1所示。

1

管理模块:管理模块的子模块包括服务器模块、跟踪模块和交易模块,当用户购买了具有版权的媒体文件,并进行认证支付之后,服务器通过管理模块将媒体文件进行置乱加密,再将购买者的许可信息与媒体文件进行绑定,最后提供给购买者。系统不但能够保存文件和用户的数据信息,还能够通过绑定时产生的物理表示对文件进行防拷贝和检测的功能。

注册模块:注册模块包括版权创建和版权确认两个子模块,一方面对数字作品版权拥有者制作的图像、音频和视频等多媒体文件进行认证,通过数字水印技术生成一个唯一不变的版权数字水印数据信息,将其嵌入到数字作品当中,以此通过一系列的权限认证来对数字作品进行版权保护;另一方面,数字版权作品的购买者在购买之后,会得到服务期为其分配的一个认证身份标识,并且生产一个唯一不变的使用者数字水印,再嵌入到数字作品当中。

使用模块:使用模块包括媒体播放和操作控制两个子模块,在文件播放之前需要对其相关信息进行认证和合适,以此来保证只有被授权的用户才能够在限定期限内使用该文件。本文提出的数字版权管理系统客户端就实现了该模块的所有功能。用户下载的文件信息是嵌入了该用户唯一水印的数据信息,经过了置乱加密技术生成了专有的格式,并且捆绑了权限信息,当客户端软件程序对用户身份进行认证核实之后,再利用置乱算法将格式转换成原始状态进行播放。

2、系统流程结构设计

数字版权管理系统包括许可服务器和注册服务器,注册服务器是向用户提供注册和申请的功能,并且将产生的用户数字水印信息嵌入到数字作品当中;许可证服务器根据用户的个人权限,以及从用户终端提取到的物理标识,将其与数字作品进行捆绑,同时许可服务器中还包括一个用户信息数据库,用来对购买数字作品的用户信息进行存储和管理;多媒体数据库是用来保存数字作品和相关一系列元数据;管理中心是负责认证许可证服务器与注册服务器之间的数据信息交互。

1

三、系统客户端程序总体结构设计

根据数字版权管理系统客户端流程设计将程序划分为三个部分,如图3所示。

1

1、用户身份认证模块

将受到版权保护的数字作品与用户本机硬件物理标识进行绑定,由此来防止非法用户将数字作品肆意传播。当用户通过数字版权管理系统购买到数字作品之后,通过网络将数字作品下载到个人计算机上并进行浏览,该模块会从用户使用的计算机中提取一个物理标识与数字作品中带有的用户信息进行认证对比,如果认证对比通过,该用户的身份即为合法身份,可以进入相应权限核实阶段,如果认证对比不能够通过,则证明该用户身份不合法,立刻结束操作。

2、用户权限核实模块

能够保证合法用户在一定期限内使用数字作品,程序能够将封装在数字作品中的许可证信息进行提取,并根据其拥有的权限授权用户一使用数字作品。如果用户具有相应的操作许可,则允许用户在相应的权限内对数字作
品进行操作,如果用户不具有相应的操作许可,则立刻结束操作流程。

3、数字作品播放模块

当用户的合法身份通过认证,并且权限通过核实之后,该程序能够将数字作品加密格式进行转换,再使用浏览器进行播放,待一系列操作结束之后推出客户端软件。

小知识之数字水印

数字水印(Digital Watermarking)技术是将一些标识信息(即数字水印)直接嵌入数字载体(包括多媒体、文档、软件等)当中,但不影响原载体的使用价值,也不容易被人的知觉系统(如视觉或听觉系统)觉察或注意到。

共享软件的版权保护如何用虚拟加密锁实现

版权保护是最近几年吵得比较火热的一个话题,那么,共享软件如何进行版权保护呢?今天我们就介绍一下。

一、常见的软件版权保护技术

因特网的飞速发展为共享软件的快速发展提供了前所未有的机遇,同时,由于软件是一类特殊商品,极易复制和网上传播,造成盗版软件泛滥,严重地损害了软件开发商的利益。如何进行软件版权保护,防止非法用户盗版,一直是软件开发商不断研究的课题。依据加密的原理和加密方式,目前软件版权保护技术分为以下三大类:

(1)软加密

它就是不依赖特定的硬件来实现对软件加密保护的技术。常见的保护方式包括:序列号(注册码)保护方式、KeyFile保护方式、功能限制保护方式和时间限制保护方式等。它的最大优势在于加密成本低,便于在互联网上进行软件的发布和销售,是适合共享软件的保护方式;它的缺点在于不能防止破解者通过动态调试或静态分析技术找到软件的关键指令,修改该指令破解软件。

(2)硬加密

它就是依赖特定的硬件,通过硬件和软件相结合的方式来实现软件加密保护的技术。常用的方法有磁盘加密、加密卡和加密锁等。它的优势在于利用硬件的不可复制性达到较高强度的加密保护;其缺点是需要额外的硬件,成本高,而且也不利于网上发布软件。

(3)网络加密

它就是利用网络技术对软件进行加密保护的技术。常见的方法有网络验证等。它的优点是将软件运行的重要数据放在服务器上,只有通过联网验证用户注册信息后才能取得这些数据运行软件,它的加密强度较高,其缺点是需要建立专门的服务器网站,成本高。

通过以上介绍可以看出较为安全的共享软件版权保护方式要同时具有以下四个特征:①软件的重要数据与软件主体分离;②软件不可复制;③软件要有反修改,反跟踪和反静态分析等反破解功能;④便于在互联网上发布和销售软件。根据这四个特征笔者提出一种基于虚拟加密锁的共享软件版权保护方法。

二、虚拟加密锁的理论基础

1、软件加密锁

软件加密锁是为软件开发商提供的一种智能型的软件加密工具,它包括一个安装在计算机并行口或USB口上的硬件,及套适用于各种语言的接口软件和工具软件。它具有如下特点:加密锁据有防破解功能,可对抗各种调试工具的跟踪;一锁一密码或一种电路,软硬件不可互换;提供各种语言的编程和工具软件,方便开发人员在自己开发的程序中使用;允许软件开发商将自己软件中的一部分程序或算法写进锁中,并在锁中运行,从而使开发商的软件同加密硬件有机地结合在一起。

用户在使用软件时,必须把加密锁连接到计算机的并口或USB口上,软件才能继续运行。如果没有安装加密锁或安装的不是该软件的加密锁,则软件不能运行或功能不完整,从而达到保护软件版权的目的。

2、DLL动态链接库

DLL是一个可以被其它应用程序共享的已编译的代码模块,其中封装了一些可以被共享的代码和资源。Windows应用程序可根据DLL中的指令打开、启用、查询、禁用和关闭驱动程序。DLL文件还可以方便地实现对硬件资源和内存资源的访问。它主要具有如下特点:DLL的开发与具体的编程语言及编译器无关,只要遵循其开发规范并安排正确的编程接口,无论使用何种语言编制的DLL都具有通用性;使用DLL不是将其库代码拷贝,而只在程序中记录函数的入口点和接口,程序执行时才能将代码载入内存。多个程序使用相同的DLL时,内存只需要装载一次,可以高效经济地使用内存;DLL是基于Windows的程序模块,它不仅包含可执行代码,还可以包含数据和各种资源,扩大了库文件的使用范围。

三、用虚拟加密锁实现共享软件版权保护的方法

1、虚拟加密锁加密的原理

由上述DLL文件具有的功能和特点可知,对DLL文件进行反破解处理就可以实现硬件加密锁的主要功能,完成对软件版权的保护。另外,与加密锁的硬件价格相比,DLL文件的开发几乎不需要投入成本。再者,由于DLL文件与软件主体在同一个文件夹下,软件主体执行时无需访问并行接口或USB接口,因而节约了计算机硬件开销,运行速度更快,可实现对软件的保护。基于上述因素考虑,我们在传统的软件保护技术的基础上,推陈出新,提出一种基于虚拟加密锁的软件版权保护方法。

虚拟加密锁是一种基于DLL文件的软件保护技术,它是软加密技术的一种,DLL文件主要是通过模拟硬件加密锁对软件主体运行的控制来仿真加密锁的D将软件中只有注册用户才能使用的关键功能模块、注册用户的计算机指纹信息和基于用户计算机指纹的注册验证模块都封装到DLL文件中,同时在DLL文件中加入文件完整性检测、反调试和反静态分析功能模块来提高DLL文件的反破解性能。软件运行时,当执行到DLL文件中需要注册才能使用的功能时,必须进行DLL文件的完整性检测、调试器的检测,只有通过检测、注册验证后才能执行软件的功能,否则退出软件。由于DLL文件内置了用户计算机指纹信息(具有不可复制性)和反破解模块,因而DLL文件具有类似加密锁的功能,可以取代加密锁,达到对软件版权保护的目的。其系统基本原理图如图1所示。

1

2、虚拟加密锁实现的功能

(1)封装软件中的关键功能使软件试用版与正式版分离

为满足第1节所述特征①,设计软件时将软件分成软件主体和DLL文件两部分。软件主体就是软件的试用版,在网上发布。将软件的关键功能封装在DLL文件(虚拟加密锁)中(在实际开发软件时,如果封装的功能多导致DLL文件过大,可以只封装每个功能模块中的关键数据处理部分),如图1所示,它只提供给注册用户,从而实现软件试用版与正式版(即软件主体+虚拟加密锁)文件的分离,降低了破解者破解正式版的几率。

(2)采集用户计算机指纹信息并生成计算机

所谓计算机指纹是指与计算机硬件有关的不可复制的信息,这些信息通常包括硬盘物理序列号和主板序列号、CUP序列号等。不同的计算机有不同的计算机指纹,因而用户计算机指纹可以起到唯一标识计算机的作用,确保虚拟加密锁文件具有不可复制性。将采集的用户计算机指纹信息经过Hash算法(如SHA、MD5等)处理生成用户计算机ID。

(3)注册用户的合法验证

为满足第1节所述特征②,将根据注册用户的计算机指纹信息生成的ID预置到虚拟加密锁(DLL文件)中,保证了该虚拟加密锁只能运行在该注册用户的计算机上。当用户运行虚拟加密锁中的关键功能时,虚拟加密锁采集该用户计算机指纹,经过一定加密运算生成计算机ID与预置的计算机ID比较,若两者相等,说明该用户是合法用户,则正常运行软件功能;若不相等,说明该用户是非法用户,则限制该功能的运行或退出软件。

(4)反破解

如果软件不能防止破解者的非法修改,其它保护措施做得再好,也很容易被破解。为满足第1节所述特征③,在对虚拟加密锁文件进行反调试、反静态分析的基础上增加反修改功能。

1)虚拟加密锁的完整性校验

对虚拟加密锁文件进行完整性校验,可确保其不被非法修改。校验的方法可采用API函数MapFileAndCheckSum进行完整性校验。

//读取虚拟加密锁文件DIIFile的原始的校验和HeaderSum并计算其校验和CheckSum

MapFileAndCheckSum( DIIFile, &HeaderSum, &CheckSum);

if( HeaderSum==CheckSum)

{

//虚拟加密锁文件DIIFilename没有被修改,执行软件功能

}

else

{

//虚拟加密锁文件DIIFilename被修改,中止软件

}

2)调试器检测

为了防止破解者用调试工具(如OllyDbg等)对虚拟加密锁程序文件进行跟踪,可用API函数IsDebuggerPresent来检测。

if( IsDebuggerPresent())

{

//当前程序被调试,中止软件

}

else

{

//没有被调试,执行软件功能

}

3)反静态分析

为了防止破解者通过W32Da.m、IDA Pro等反汇编分析工具进行反汇编分析,可在虚拟加密锁文件中增加大量花指令。另外,用虚拟机软件VMPtotedt对虚拟加密锁文件进行处理,可以大大增强其抗静态分析的性能。

3、用户注册过程

软件试用版用户试用满意后,通过汇款或网上银行转账等方式付款后,用户将计算机ID(根据用户计算机指纹经加密生成的)通过电子邮件发送给软件开发商,软件开发商根据用户计算机ID重新编译程序生成虚拟加密锁文件,再通过电子邮件发送给用户,用户接收后用该文件覆盖软件安装文件夹下的同名文件,就可以使用软件的全部功能硝这样就可以方便地利用互联网完成软件试用版的发布和正式版的销售,这满足了第1节所述特征④。

小知识之DLL文件

DLL文件又称“应用程序拓展”,是软件文件类型。