在Android设备上使用JCESecurityModule

时间:2016-09-21 15:03:56

标签: android encryption jpos

在尝试在Android环境中执行加密和解密过程时,我有以下日志。

  

com.s.sdk.security.SMException:加载本地主密钥时出错,文件:   “/cfg/lmktest.lmk”不存在。请指定有效的LMK文件,或   重建一个新的。 09-21 11:56:31.792 16182-16182 / com.mpos.sdk   W / System.err:at   com.s.sdk.security.jceadapter.JCESecurityModule.init(JCESecurityModule.java:1785)   09-21 11:56:31.792 16182-16182 / com.mpos.sdk W / System.err:at   com.s.sdk.security.jceadapter.JCESecurityModule。(JCESecurityModule.java:159)

我之所以想要使用JPOS,只是因为我想进行金融交易,这将用于打包我的信息。

对于数据的加密和解密,我将使用这个JCESecurityModule,它在其他平台上运行良好,但在android OS上运行不正确。

注意: 我的android工作室中的文件位置为app / cfg / test.lmk

我能够从 jPOS-master \ jPOS-master \ jpos \ src \ test中的 github 上的 JPOS-master 获取此文件\资源\有机\初级专业人员\安全

lmk-test

以这种方式使用过  JCESecurityModule sm = new JCESecurityModule("app/cfg/test.lmk");

我还尝试使用以下方法重建lmk文件

public JCESecurityModule (String lmkFile) throws SMException
    {
        init(null, lmkFile, true);
    }

可以在JCESecurityModule类(JPOS)中找到 在加载lmk文件时仍然存在同样的问题 感谢

2 个答案:

答案 0 :(得分:0)

为了完整起见,这也是jPOS的谷歌集团的问题,并在那里进行了讨论。 https://groups.google.com/forum/#!topic/jpos-users/X3r_PX7lgd4

答案 1 :(得分:0)

加密是由连接到移动电话进行交易的设备完成的,但设备制造商实际上是这样做的,以提供您正在规避的端到端加密。您不需要设备中的jpos。您需要在集中部署的服务器上使用真正的HSM。

Victor Salaman 在JPOS用户谷歌组Buddybuild variables

但您仍然可以使用其他模块而不是JCESecurityModule执行加密和解密(如果问题仍然存在)。例如使用SunJCE