Sentinel LDK 版本的Envelope 工具可以支持保护J2EE 架构的应用程序,目前支持Tomcat(6.0.29 或更高版本), Jboss7.1 从LDK6.4 版本开始提供支持。此文档以LDK7.3 和tomcat 为例演示对java 程序的加密操作。
1、加密前的准备
Envelope所在电脑已经安装了Jre或者JDK环境。
LDK套件自带安装Jre环境,如果在非套件安装PC上加密,请手动安装Jre环境:对64位系统,请同时安装x64和x86两个版本的Jre,对32位系统请手动安装x86版本的Jre。
在保护jar或者war文件之前,请先运行MASterwizard,导出开发商库。
如果加密war包,请将war里面所有属于第三方的jar包和.class文件都移出备份,待加密完成后再将移出的部分导入(如果调用了LDK的API接口,请将LDK API接口封装包hasp-srm-api.jar也移出备份)
2、使用Sentinel LDK Envelope 工具对jar 或war 包进行保护
将要保护的文件加入envelope 工具,如图所示,在General 项中会显示已经解析的所有方法,请先选择要加密的方法进行测试:
(Envelope 提供了全选select all 和全不选clear all 的功能,并且可以在Search list 中通过关键字搜索对应的方法。对于一些较大的文件,合理的选择要加密的方法,可以有效的提高运行效率和加密成功率,关于方法选择的建议,请参考envelope 的帮助文档已经release 文档中的限制条件)
在高级设置中,将MESSAGE_OUTPUT_MODE 设置为(stderr)true,如下图,
(选择stderr 是因为某些系统没有GUI 图形环境,程序运行时抛出的提示信息无法显示导致应用启动失败,否则也可以使用windows 模式)
加密war 包时此处默认选中为stderr,加密jar 包时需要手动设置。
点击左侧“Sentinel Vendor Code”,选择自己的开发号。
部署加密后的文件
Jar 包和war 包的加密输出并不相同,下面分别演示两种文件的部署方式:
加密后的jar 包(此处以加密standard-1.1.2.jar 作为演示):
加密后,输出目录下一般会产生下面这些文件。
对于tomcat 下面的应用,jar 包通常是放置在应用目录下的\WEB-INF\lib 内,此处先将DGC 文件添加 .jar 后缀,然后与加密的standard-1.1.2.jar 以及额外三个safenet-*.jar 包,共同部署到应用目录\WEB-INF\lib 下面。
加密后的war 包(此处以helloWorld.war 作为演示):
war 包加密后,产生的文件相对较少,此处只需要将原来移出的jar 包和.class 文件重新加入,部署时将safenet-sentinel-hasp-api-j2ee.jar 放入$CATALINA_HOME/lib 目录下
以上为加密后的jar 包和war 包部署方式,为了能让加密后的java 程序正常工作,还需要部署底层的native 库,即加密后产生的一些dll 文件,通常有两对(32 位和64 为版本)共四个:
Windows 平台:
HASPJava.dll
hasp_windows_82130.dll
HASPJava_x64.dll
hasp_windows_x64_82130.dll
Linux 平台:
libHASPJava.so
libhasp_linux_82130.so
libHASPJava_x86_64.so
libhasp_linux_x64_82130.so
(linux 上的开发商库需要单独在linux 平台上运行masterhasp 工具导出,LDK 套件中已有文档说明,此处不再赘述)
这些库文件需要放置到java 程序所能识别的路径中,例如:$CATALINA_HOME/bin,$JAVA_HOME/bin,/usr/lib,/usr/lib64 或者windows 的系统路径c:\windows\system32,c:\windows\sysWoW64 等,如果部署后运行仍然提示H0400 错误(没有找到开发商库),请在环境变量中添加 LD_LIBRARY_PATH 变量,并将开发商库(名称中带数字的库)所在目录路径赋给此变量。
提示:java 程序加密的限制条件,请参考LDK 的release 文档和envelope 的帮助文档,如果加密后出现未知的异常,请联系揽阁信息,以为您提供技术支持。
联系揽阁信息,您可以获取到更多满足全球合规性要求的信息安全产品资料,以及相关的整体解决方案的相关资料。如:
SafeNet Luna HSM(FIPS 140-2 Level 3、eIDAS CC EAL4+认证)
SafeNet ProtectServer HSM(FIPS 140-2 Level 3认证)
payShield 10K HSM(满足PCI HSM合规)
您还可以得到揽阁信息所提供的优质服务。
揽阁信息是您的信息安全首选专家!