美文网首页
国密算法-SM4

国密算法-SM4

作者: 久伴我还是酒伴我 | 来源:发表于2021-06-24 15:03 被阅读0次
    package com.yutian.tax.utils.bcprov.detail;
    
    import cn.hutool.core.codec.Base64;
    import cn.hutool.core.util.HexUtil;
    import cn.hutool.crypto.Mode;
    import cn.hutool.crypto.Padding;
    import cn.hutool.crypto.symmetric.SM4;
    import com.kingxunlian.tax.base.InvoiceLoggerFactory;
    import org.slf4j.Logger;
    
    /**
     * @author leijie.gao
     * @version 1.0.0
     * @ClassName SM4Util.java
     * @Description TODO
     * @createTime 2021年04月09日 15:57:00
     */
    public class SM4Util {
    
        private static final Logger logger = InvoiceLoggerFactory.getLogger(SM4Util.class);
    
        /**
         * SM4加密
         */
        public static byte[] encrpt(byte[] content,byte[] key){
            SM4 sm4 = new SM4(Mode.ECB, Padding.PKCS5Padding,key);
            byte[] encrypt = sm4.encrypt(content);
            logger.info("加密内容:{}", Base64.encode(encrypt));
            return encrypt;
        }
    
    
        /**
         * SM4解密
         */
        public static byte[] decrpt(byte[] content,byte[] byte_key){
            SM4 sm4 = new SM4(Mode.ECB, Padding.PKCS5Padding,byte_key);
            byte[] decrypt = sm4.decrypt(content);
            logger.info("解密内容:{}",Base64.encode(decrypt));
            return decrypt;
        }
    
    
    
        public static void main(String[] args) {
            String c = "eyJpbnZvaWNlSW5mb21hdGlvbiI6ImEwOTFjMmU1MWIxNTUxYzMxZTgxMGE2MTFhZWFlMGQ2MjMwYjc2YTcxYTI0OTRmYzFhOWJjYTg4Y2YzNDE2NzM3YTQ0NDI2MGVkYTYxNjM4ZjI0YmI3ZGZhNmFjN2I3ZTAxNWRkMTAxM2EwYTRlOWFiMjE1Njk3ODBkNDJjZjU1ZWY1NzI4YmQwODE1NjRkNmY0NmRmZWEyNTQzNmRjMzFmODNmYmFiYjZmODE3MGQ5NGI2YWRkZjkxYmFmNmI1YjYwOWFlOWZlYTNiNmUwMmExMzI4NzU4YmMyZDExNmEwZTM1NzJmODk5M2JmYjJhZDY3OWRiZWVlZWJiNjY1ZjkzOWU1MDdjYjY5MzI1OTM2MWI1ODM2NWQxMGU2ZjRhZTNjNmNmMzI1MzVlNDgxZmZiZWNiNjdkNTI2M2Q5M2Q0ZDMxMjMxNGVmODg3MGFiMWJhNmZkNTc2NDc1ZDA2MWExZWRkMGY1ZTIyOTdkMWNmNjhhNGNmZTAxMmNiZDYwYjRiZWZhYmJiNGIxZGNhOTI2YzIxNDRiODllNzFlZjUyYmQ4NzhmMWNhOTJhNDJhYzdlMWNlZmYxNjI4MWJhN2JkZDI0ZDRjMzNmZmFkNzRkODdiODgzOWM5OWFmODExNzk0MDc4NzE0MzNjYmVjOTkyNzZjZjFmYTVlYzY0ODE3NzA5NjYyMjY1ZDg0NDdmYzEwNTlmYjg5MGE4MzBiNjA3ZDYyM2I5ZTYxOTg5MWZmNmM2OWM1NmI1ODUzNTgzZDNkNDI5OTA5MGI5MmU0YjFjM2I2OTZkMzk1YWMwNmE4ZDcwYzhjZDYwY2UzOGZjMDJlMzQ0ZTdlODUzMjAxYmVhMjM3Y2RkMDAxNzRkMzZiYWMzZDk2MDJjOTg3M2Y1MGZjNjEwNTBjNThhZDBkNmEzNGJmODBjMTI3YzdkODdiMGM1OWYyYTg5ZGE4ODNhNTllODA0N2RlNzFmYjEyMjlmMDIzNjFjNjUwYWQ2ZDhhZmU0YjQ3OTllMmMyMTdiNTBjNTlmMmE4OWRhODgzYTU5ZTgwNDdkZTcxZmIxMjI5OWIxOTg0MTk3NzlmMWQ3ZGI2ZGI2MDFhYzA3NjgwZjUyOTBkNjY2ZmYzZDZiODE1Y2U1MWE3MDNlZjBlMjI4MTlhZTNlMjBlMzUzMGU2MGI1YWI5MTE2ZTRlZjQxZDdhZmUxZWU2NWZkZDNmNTZlYjViZGE4MGI4NmNmYWZlNDRhNDUwOWUzOTUwMWY5MTg3NWJmMDI3NDU3YTg3ZDgzMTFmNjgwM2MwYTIyY2Y4YjIxNzU1NmM5NjRlNTEwZjJkYWY5MDU1ZTFhYzNlYzQ4MDYxNjVmMTBjNzhkMzdhOTQ0MjlkZWEzYzY5MDQ2ZDA0NDM4ODU5ZWQ0MzZkMDIwYjI1YmJkOThlYTI4ZTIwZDZhYjY0N2Q5MWY5ZDYxOWQ3Y2UzMDJlYTdjYTA2MTkxMWI3ZjBmMWQ5MjU3N2E0NTllMTNlNjI5N2VkMzkxYjNiYWNhMjVhNTVjMTIzOTE2NDQzMDA4NjAxZTc5ZjQ3ZTZiN2M5ODFhMzVhNTIzMDU0YWZjOWNmYTMwMmFjZTExMzg1MGViMmE3ZjM4ZDc5ZTRhMzc4NjgyYzU4YTc3NGFiYzBlMDA2NWNkNGFmYTVhNmQzNTgwNmFkOTIxYWUzMGZkZmU5NWNiMjc5ZDI0OTMzMzhjYTMyMzM5Zjg1Y2YxYTZjNDExZDA1YzNjNGZiMDEzYzM3ZGU5NjQ2NGY2MmM1YjFhMmFhYzY2MmIwYzFkODExYzQ5ZTU5YjVhMzVjMWE4NTBhZGIxNDQxZDVkOWU3MGQ5NTFiNDE3NzBjMTc1NjljMDZhNmFjNGIyMTkzMDhmMjdiZWY0MjEwMDFmNzY0MmFhOTc2N2Y1Y2Y1YzNiODZkMGNjYmJhZjM2ZTNhNDQ3OGMzNTYwZDkwN2M0MzY2ZjRkNzcyNWI0YjM0ZWFiM2NmOGNhZjE2YzllYzA3OWI1OWMxMmE3NGRjYmU0ZGI2ZDAzZmExYjJhMzM1M2FjNWQ0MzBmZTk0OTNiMjk0OTcyYmNkNTQxZGNjZGVkOTAwOGYwNmJhYjBjZTRkZGNkOWJjN2E2NDVjNTY0MWZhOGU1ZmRmN2ViZmZjY2IzZTBhZTU2NjBjMzI4YTZhYTczZjBmNmJmZmVmZmY0ZDk0ZTIzMDVjMzI4NDc2MDQ5ZmMyZDUyOWVmYzhjNmY4NmFmZWYxMjk0MzA1OGFmMmM3ZjdmMWZmOGNlYTNjNmM2YzY4YzhjM2NhZTg4MjAyOTU2ZjdkN2JmMDQyNDE4YTUxMTA4MDZmYzhlYTI1ZTI5MjAzN2Y3MzNhNzVhNjJkNTFhYzM2MDE1MDIwZmJmODY4MzMyN2QyNWQxM2E5MzZkNGFlYmRlMTUzNTliZDg4MGU4MDgzMDViZTBmNDhiODkzYzc2ZDU2ZWM1Njg3OWQ3MWQ5MTNlYWQ4ZTdkNTIyYzc1ZTQxZmUwMDUzMGY4ODk1MzkiLCJzZXJpYWxOdW1iZXIiOiIxMzg2ODc5MTQyMDkxNDI3ODQwIiwidmVyc2lvbiI6NCwiZHJhd2VySUQiOiJhMzNjZTM3ZS04ZTZmLTQyOGUtOGQ2ZS0yOTY5MmFjN2Y2YzYifQ==,私钥:MIGTAgEAMBMGByqGSM49AgEGCCqBHM9VAYItBHkwdwIBAQQgQo7OiH/7PdMRwQkXmQaagDO6OcxU9rkPnK+JxuamqB+gCgYIKoEcz1UBgi2hRANCAAS1xMZ0nKWUnVtSLAYCvc7O6LGIvcXF9ZrgbYsRnQ+ltLarXuI83QhejzjrYPILTWBsjCLa8ZmwwibAyK2ZvG0N";
            String privateKey = "+vmbzeYM2cnsd2av3AvHRw==";
            byte[] ac = Base64.decode(privateKey);
            System.out.println(ac);
            byte[] a = decrpt(HexUtil.decodeHex(c),Base64.decode(privateKey));
            System.out.println(a);
        }
    }
    

    相关文章

      网友评论

          本文标题:国密算法-SM4

          本文链接:https://www.haomeiwen.com/subject/cstidltx.html