⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 iso9796test.java

📁 J2ME加密算法的代码!里面包括常用的算法
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
        if (!isSameAs(sig6, 1, data))        {            fail("failed ISO9796-2 generation Test 6");        }        if (!eng.verifySignature(data))        {            fail("failed ISO9796-2 verify Test 6");        }    }        public void doTest7()        throws Exception    {        byte[]                salt = new byte[0];        RSAKeyParameters    pubParameters = new RSAKeyParameters(false, mod6, pub6);        RSAKeyParameters    privParameters = new RSAKeyParameters(true, mod6, pri6);        ParametersWithSalt    sigParameters = new ParametersWithSalt(privParameters, salt);        RSAEngine           rsa = new RSAEngine();        byte[]              data;        //        // ISO 9796-2 - PSS Signing        //        ISO9796d2PSSSigner eng = new ISO9796d2PSSSigner(rsa, new SHA1Digest(), 0, false);        eng.init(true, sigParameters);        eng.update(msg7[0]);        eng.update(msg7, 1, msg7.length - 1);        data = eng.generateSignature();        eng.init(false, pubParameters);        if (!isSameAs(sig7, 0, data))        {            fail("failed ISO9796-2 generation Test 7");        }        eng.update(msg7[0]);        eng.update(msg7, 1, msg7.length - 1);        if (!eng.verifySignature(sig7))        {            fail("failed ISO9796-2 verify Test 7");        }        if (!isSameAs(msg7, 0, eng.getRecoveredMessage()))        {            fail("failed ISO9796-2 recovery Test 7");        }    }        public void doTest8()        throws Exception    {        byte[]              salt = Hex.decode("78E293203CBA1B7F92F05F4D171FF8CA3E738FF8");        RSAKeyParameters    pubParameters = new RSAKeyParameters(false, mod6, pub6);        RSAKeyParameters    privParameters = new RSAKeyParameters(true, mod6, pri6);        ParametersWithSalt  sigParameters = new ParametersWithSalt(privParameters, salt);        RSAEngine           rsa = new RSAEngine();        byte[]              data;        //        // ISO 9796-2 - PSS Signing        //        ISO9796d2PSSSigner eng = new ISO9796d2PSSSigner(rsa, new RIPEMD160Digest(), 20, false);        eng.init(true, sigParameters);        eng.update(msg8[0]);        eng.update(msg8, 1, msg8.length - 1);        data = eng.generateSignature();        eng.init(false, pubParameters);        if (!isSameAs(sig8, 0, data))        {            fail("failed ISO9796-2 generation Test 8");        }        eng.update(msg8[0]);        eng.update(msg8, 1, msg8.length - 1);        if (!eng.verifySignature(sig8))        {            fail("failed ISO9796-2 verify Test 8");        }    }        public void doTest9()        throws Exception    {        RSAKeyParameters    pubParameters = new RSAKeyParameters(false, mod6, pub6);        RSAKeyParameters    privParameters = new RSAKeyParameters(true, mod6, pri6);        RSAEngine           rsa = new RSAEngine();        byte[]              data;        //        // ISO 9796-2 - PSS Signing        //        ISO9796d2PSSSigner eng = new ISO9796d2PSSSigner(rsa, new RIPEMD160Digest(), 0, true);        eng.init(true, privParameters);        eng.update(msg9[0]);        eng.update(msg9, 1, msg9.length - 1);        data = eng.generateSignature();        eng.init(false, pubParameters);        if (!isSameAs(sig9, 0, data))        {            fail("failed ISO9796-2 generation Test 9");        }        eng.update(msg9[0]);        eng.update(msg9, 1, msg9.length - 1);        if (!eng.verifySignature(sig9))        {            fail("failed ISO9796-2 verify Test 9");        }    }        public void doTest10()        throws Exception    {        BigInteger          mod = new BigInteger("B3ABE6D91A4020920F8B3847764ECB34C4EB64151A96FDE7B614DC986C810FF2FD73575BDF8532C06004C8B4C8B64F700A50AEC68C0701ED10E8D211A4EA554D", 16);        BigInteger          pubExp = new BigInteger("65537", 10);        BigInteger          priExp = new BigInteger("AEE76AE4716F77C5782838F328327012C097BD67E5E892E75C1356E372CCF8EE1AA2D2CBDFB4DA19F703743F7C0BA42B2D69202BA7338C294D1F8B6A5771FF41", 16);        RSAKeyParameters    pubParameters = new RSAKeyParameters(false, mod, pubExp);        RSAKeyParameters    privParameters = new RSAKeyParameters(true, mod, priExp);        RSAEngine           rsa = new RSAEngine();        byte[]              data;        //        // ISO 9796-2 - PSS Signing        //        Digest              dig = new SHA1Digest();        ISO9796d2PSSSigner  eng = new ISO9796d2PSSSigner(rsa, dig, dig.getDigestSize());        //        // as the padding is random this test needs to repeat a few times to        // make sure        //        for (int i = 0; i != 500; i++)        {            eng.init(true, privParameters);                eng.update(msg9[0]);            eng.update(msg9, 1, msg9.length - 1);            data = eng.generateSignature();                eng.init(false, pubParameters);                eng.update(msg9[0]);            eng.update(msg9, 1, msg9.length - 1);                if (!eng.verifySignature(data))            {                fail("failed ISO9796-2 verify Test 10");            }        }    }        public void doTest11()        throws Exception    {        BigInteger          mod = new BigInteger("B3ABE6D91A4020920F8B3847764ECB34C4EB64151A96FDE7B614DC986C810FF2FD73575BDF8532C06004C8B4C8B64F700A50AEC68C0701ED10E8D211A4EA554D", 16);        BigInteger          pubExp = new BigInteger("65537", 10);        BigInteger          priExp = new BigInteger("AEE76AE4716F77C5782838F328327012C097BD67E5E892E75C1356E372CCF8EE1AA2D2CBDFB4DA19F703743F7C0BA42B2D69202BA7338C294D1F8B6A5771FF41", 16);        RSAKeyParameters    pubParameters = new RSAKeyParameters(false, mod, pubExp);        RSAKeyParameters    privParameters = new RSAKeyParameters(true, mod, priExp);        RSAEngine           rsa = new RSAEngine();        byte[]              data;        byte[]              m1 = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };        byte[]              m2 = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 };        byte[]              m3 = { 1, 2, 3, 4, 5, 6, 7, 8 };        //        // ISO 9796-2 - PSS Signing        //        Digest              dig = new SHA1Digest();        ISO9796d2PSSSigner  eng = new ISO9796d2PSSSigner(rsa, dig, dig.getDigestSize());        //        // check message bounds        //        eng.init(true, privParameters);        eng.update(m1, 0, m1.length);        data = eng.generateSignature();        eng.init(false, pubParameters);        eng.update(m2, 0, m2.length);        if (eng.verifySignature(data))        {            fail("failed ISO9796-2 m2 verify Test 11");        }        eng.init(false, pubParameters);        eng.update(m3, 0, m3.length);        if (eng.verifySignature(data))        {            fail("failed ISO9796-2 m3 verify Test 11");        }                eng.init(false, pubParameters);        eng.update(m1, 0, m1.length);        if (!eng.verifySignature(data))        {            fail("failed ISO9796-2 verify Test 11");        }    }        public void doTest12()         throws Exception    {        BigInteger          mod = new BigInteger("B3ABE6D91A4020920F8B3847764ECB34C4EB64151A96FDE7B614DC986C810FF2FD73575BDF8532C06004C8B4C8B64F700A50AEC68C0701ED10E8D211A4EA554D", 16);        BigInteger          pubExp = new BigInteger("65537", 10);        BigInteger          priExp = new BigInteger("AEE76AE4716F77C5782838F328327012C097BD67E5E892E75C1356E372CCF8EE1AA2D2CBDFB4DA19F703743F7C0BA42B2D69202BA7338C294D1F8B6A5771FF41", 16);        RSAKeyParameters    pubParameters = new RSAKeyParameters(false, mod, pubExp);        RSAKeyParameters    privParameters = new RSAKeyParameters(true, mod, priExp);        RSAEngine           rsa = new RSAEngine();        byte[]              data;        byte[]              m1 = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };        byte[]              m2 = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 };        byte[]              m3 = { 1, 2, 3, 4, 5, 6, 7, 8 };        //        // ISO 9796-2 - PSS Signing        //        Digest           dig = new SHA1Digest();        ISO9796d2Signer  eng = new ISO9796d2Signer(rsa, dig);        //        // check message bounds        //        eng.init(true, privParameters);        eng.update(m1, 0, m1.length);        data = eng.generateSignature();        eng.init(false, pubParameters);        eng.update(m2, 0, m2.length);        if (eng.verifySignature(data))        {            fail("failed ISO9796-2 m2 verify Test 12");        }        eng.init(false, pubParameters);        eng.update(m3, 0, m3.length);        if (eng.verifySignature(data))        {            fail("failed ISO9796-2 m3 verify Test 12");        }                eng.init(false, pubParameters);        eng.update(m1, 0, m1.length);        if (!eng.verifySignature(data))        {            fail("failed ISO9796-2 verify Test 12");        }    }        public void performTest()        throws Exception    {        doTest1();        doTest2();        doTest3();        doTest4();        doTest5();        doTest6();        doTest7();        doTest8();        doTest9();        doTest10();        doTest11();        doTest12();    }    public static void main(        String[]    args)    {        runTest(new ISO9796Test());    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -