当前位置:   article > 正文

SM2加密的密文byte数组与ASN.1互转

sm2加密的密文byte数组与asn.1互转

 ASN.1抽象语言标记(Abstract Syntax Notation One) ASN.1是一种 ISO/ITU-T 标准,描述了一种对数据进行表示、编码、传输和解码的数据格式,它提供了一整套正规的格式用于描述对象的结构。

一、该结构的应用场景

        例如在做待签名的数字信封时,数字信封使用ASN.1封装,其中对称密钥需要用接收方的公钥进行加密,该对称密钥的密文需为ASN.1结构。

        以下为SM2密文的ASN.1结构:

  1. package com.zhangzz.crypto.core.asn1;
  2. import com.zhangzz.crypto.core.exception.CommonException;
  3. import org.bouncycastle.asn1.*;
  4. import java.math.BigInteger;
  5. /**
  6. * SM2密文结构
  7. * @author zhangzz
  8. *
  9. */
  10. public class SM2Cipher extends ASN1Object {
  11. //公钥的X值
  12. private ASN1Integer x;
  13. //公钥的Y值
  14. private ASN1Integer y;
  15. //加密明文的摘要值
  16. private ASN1OctetString hash;
  17. //加密后的密文
  18. private ASN1OctetString cipherText;
  19. //密文长度
  20. private ASN1Integer L;
  21. public static SM2Cipher getInstance(Object obj) {
  22. if(obj inst
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/爱喝兽奶帝天荒/article/detail/998406
推荐阅读
相关标签
  

闽ICP备14008679号