ASN.1抽象语言标记(Abstract Syntax Notation One) ASN.1是一种 ISO/ITU-T 标准,描述了一种对数据进行表示、编码、传输和解码的数据格式,它提供了一整套正规的格式用于描述对象的结构。
一、该结构的应用场景
例如在做待签名的数字信封时,数字信封使用ASN.1封装,其中对称密钥需要用接收方的公钥进行加密,该对称密钥的密文需为ASN.1结构。
以下为SM2密文的ASN.1结构:
package com.zhangzz.crypto.core.asn1;
import com.zhangzz.crypto.core.exception.CommonException;
import org.bouncycastle.asn1.*;
import java.math.BigInteger;
/**
* SM2密文结构
* @author zhangzz
*
*/
public class SM2Cipher extends ASN1Object {
//公钥的X值
private ASN1Integer x;
//公钥的Y值
private ASN1I