1
0
Fork 0
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

1597 lines
43 KiB

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<meta name="generator" content="JsDoc Toolkit" />
<title>jsrsasign 4.8.7 JavaScript API Reference - ASN1HEX</title>
<style type="text/css">
/* default.css */
body
{
font: 12px "Lucida Grande", Tahoma, Arial, Helvetica, sans-serif;
width: 800px;
}
.header
{
clear: both;
background-color: #ccc;
padding: 8px;
}
h1
{
font-size: 150%;
font-weight: bold;
padding: 0;
margin: 1em 0 0 .3em;
}
hr
{
border: none 0;
border-top: 1px solid #7F8FB1;
height: 1px;
}
pre.code
{
display: block;
padding: 8px;
border: 1px dashed #ccc;
}
#index
{
margin-top: 24px;
float: left;
width: 160px;
position: absolute;
left: 8px;
background-color: #F3F3F3;
padding: 8px;
}
#content
{
margin-left: 190px;
width: 600px;
}
.classList
{
list-style-type: none;
padding: 0;
margin: 0 0 0 8px;
font-family: arial, sans-serif;
font-size: 1em;
overflow: auto;
}
.classList li
{
padding: 0;
margin: 0 0 8px 0;
}
.summaryTable { width: 100%; }
h1.classTitle
{
font-size:170%;
line-height:130%;
}
h2 { font-size: 110%; }
caption, div.sectionTitle
{
background-color: #7F8FB1;
color: #fff;
font-size:130%;
text-align: left;
padding: 2px 6px 2px 6px;
border: 1px #7F8FB1 solid;
}
div.sectionTitle { margin-bottom: 8px; }
.summaryTable thead { display: none; }
.summaryTable td
{
vertical-align: top;
padding: 4px;
border-bottom: 1px #7F8FB1 solid;
border-right: 1px #7F8FB1 solid;
}
/*col#summaryAttributes {}*/
.summaryTable td.attributes
{
border-left: 1px #7F8FB1 solid;
width: 140px;
text-align: right;
}
td.attributes, .fixedFont
{
line-height: 15px;
color: #002EBE;
font-family: "Courier New",Courier,monospace;
font-size: 13px;
}
.summaryTable td.nameDescription
{
text-align: left;
font-size: 13px;
line-height: 15px;
}
.summaryTable td.nameDescription, .description
{
line-height: 15px;
padding: 4px;
padding-left: 4px;
}
.summaryTable { margin-bottom: 8px; }
ul.inheritsList
{
list-style: square;
margin-left: 20px;
padding-left: 0;
}
.detailList {
margin-left: 20px;
line-height: 15px;
}
.detailList dt { margin-left: 20px; }
.detailList .heading
{
font-weight: bold;
padding-bottom: 6px;
margin-left: 0;
}
.light, td.attributes, .light a:link, .light a:visited
{
color: #777;
font-style: italic;
}
.fineprint
{
text-align: right;
font-size: 10px;
}
</style>
</head>
<body>
<!-- ============================== header ================================= -->
<!-- begin static/header.html -->
<div id="header" style="background: #7F8FB1; color: white; margin: -10px">
&nbsp; <b><a href="http://kjur.github.com/jsrsasign/" style="color: white">jsrsasign</a></b> JavaScript API Reference
</div>
<!-- end static/header.html -->
<!-- ============================== classes index ============================ -->
<div id="index">
<!-- begin publish.classesIndex -->
<div align="center"><a href="../index.html">Class Index</a>
| <a href="../files.html">File Index</a></div>
<hr />
<h2>Classes</h2>
<ul class="classList">
<li><i><a href="../symbols/global__.html">global__</a></i></li>
<li><a href="../symbols/ASN1HEX.html">ASN1HEX</a></li>
<li><a href="../symbols/Base64x.html">Base64x</a></li>
<li><a href="../symbols/KEYUTIL.html">KEYUTIL</a></li>
<li><a href="../symbols/KJUR.html">KJUR</a></li>
<li><a href="../symbols/KJUR.asn1.html">KJUR.asn1</a></li>
<li><a href="../symbols/KJUR.asn1.ASN1Object.html">KJUR.asn1.ASN1Object</a></li>
<li><a href="../symbols/KJUR.asn1.ASN1Util.html">KJUR.asn1.ASN1Util</a></li>
<li><a href="../symbols/KJUR.asn1.cades.html">KJUR.asn1.cades</a></li>
<li><a href="../symbols/KJUR.asn1.cades.CAdESUtil.html">KJUR.asn1.cades.CAdESUtil</a></li>
<li><a href="../symbols/KJUR.asn1.cades.CompleteCertificateRefs.html">KJUR.asn1.cades.CompleteCertificateRefs</a></li>
<li><a href="../symbols/KJUR.asn1.cades.OtherCertID.html">KJUR.asn1.cades.OtherCertID</a></li>
<li><a href="../symbols/KJUR.asn1.cades.OtherHash.html">KJUR.asn1.cades.OtherHash</a></li>
<li><a href="../symbols/KJUR.asn1.cades.OtherHashAlgAndValue.html">KJUR.asn1.cades.OtherHashAlgAndValue</a></li>
<li><a href="../symbols/KJUR.asn1.cades.SignaturePolicyIdentifier.html">KJUR.asn1.cades.SignaturePolicyIdentifier</a></li>
<li><a href="../symbols/KJUR.asn1.cades.SignatureTimeStamp.html">KJUR.asn1.cades.SignatureTimeStamp</a></li>
<li><a href="../symbols/KJUR.asn1.cms.html">KJUR.asn1.cms</a></li>
<li><a href="../symbols/KJUR.asn1.cms.Attribute.html">KJUR.asn1.cms.Attribute</a></li>
<li><a href="../symbols/KJUR.asn1.cms.AttributeList.html">KJUR.asn1.cms.AttributeList</a></li>
<li><a href="../symbols/KJUR.asn1.cms.CMSUtil.html">KJUR.asn1.cms.CMSUtil</a></li>
<li><a href="../symbols/KJUR.asn1.cms.ContentInfo.html">KJUR.asn1.cms.ContentInfo</a></li>
<li><a href="../symbols/KJUR.asn1.cms.ContentType.html">KJUR.asn1.cms.ContentType</a></li>
<li><a href="../symbols/KJUR.asn1.cms.EncapsulatedContentInfo.html">KJUR.asn1.cms.EncapsulatedContentInfo</a></li>
<li><a href="../symbols/KJUR.asn1.cms.IssuerAndSerialNumber.html">KJUR.asn1.cms.IssuerAndSerialNumber</a></li>
<li><a href="../symbols/KJUR.asn1.cms.MessageDigest.html">KJUR.asn1.cms.MessageDigest</a></li>
<li><a href="../symbols/KJUR.asn1.cms.SignedData.html">KJUR.asn1.cms.SignedData</a></li>
<li><a href="../symbols/KJUR.asn1.cms.SignerInfo.html">KJUR.asn1.cms.SignerInfo</a></li>
<li><a href="../symbols/KJUR.asn1.cms.SigningCertificate.html">KJUR.asn1.cms.SigningCertificate</a></li>
<li><a href="../symbols/KJUR.asn1.cms.SigningCertificateV2.html">KJUR.asn1.cms.SigningCertificateV2</a></li>
<li><a href="../symbols/KJUR.asn1.cms.SigningTime.html">KJUR.asn1.cms.SigningTime</a></li>
<li><a href="../symbols/KJUR.asn1.csr.html">KJUR.asn1.csr</a></li>
<li><a href="../symbols/KJUR.asn1.csr.CertificationRequest.html">KJUR.asn1.csr.CertificationRequest</a></li>
<li><a href="../symbols/KJUR.asn1.csr.CertificationRequestInfo.html">KJUR.asn1.csr.CertificationRequestInfo</a></li>
<li><a href="../symbols/KJUR.asn1.csr.CSRUtil.html">KJUR.asn1.csr.CSRUtil</a></li>
<li><a href="../symbols/KJUR.asn1.DERAbstractString.html">KJUR.asn1.DERAbstractString</a></li>
<li><a href="../symbols/KJUR.asn1.DERAbstractStructured.html">KJUR.asn1.DERAbstractStructured</a></li>
<li><a href="../symbols/KJUR.asn1.DERAbstractTime.html">KJUR.asn1.DERAbstractTime</a></li>
<li><a href="../symbols/KJUR.asn1.DERBitString.html">KJUR.asn1.DERBitString</a></li>
<li><a href="../symbols/KJUR.asn1.DERBoolean.html">KJUR.asn1.DERBoolean</a></li>
<li><a href="../symbols/KJUR.asn1.DEREnumerated.html">KJUR.asn1.DEREnumerated</a></li>
<li><a href="../symbols/KJUR.asn1.DERGeneralizedTime.html">KJUR.asn1.DERGeneralizedTime</a></li>
<li><a href="../symbols/KJUR.asn1.DERIA5String.html">KJUR.asn1.DERIA5String</a></li>
<li><a href="../symbols/KJUR.asn1.DERInteger.html">KJUR.asn1.DERInteger</a></li>
<li><a href="../symbols/KJUR.asn1.DERNull.html">KJUR.asn1.DERNull</a></li>
<li><a href="../symbols/KJUR.asn1.DERNumericString.html">KJUR.asn1.DERNumericString</a></li>
<li><a href="../symbols/KJUR.asn1.DERObjectIdentifier.html">KJUR.asn1.DERObjectIdentifier</a></li>
<li><a href="../symbols/KJUR.asn1.DEROctetString.html">KJUR.asn1.DEROctetString</a></li>
<li><a href="../symbols/KJUR.asn1.DERPrintableString.html">KJUR.asn1.DERPrintableString</a></li>
<li><a href="../symbols/KJUR.asn1.DERSequence.html">KJUR.asn1.DERSequence</a></li>
<li><a href="../symbols/KJUR.asn1.DERSet.html">KJUR.asn1.DERSet</a></li>
<li><a href="../symbols/KJUR.asn1.DERTaggedObject.html">KJUR.asn1.DERTaggedObject</a></li>
<li><a href="../symbols/KJUR.asn1.DERTeletexString.html">KJUR.asn1.DERTeletexString</a></li>
<li><a href="../symbols/KJUR.asn1.DERUTCTime.html">KJUR.asn1.DERUTCTime</a></li>
<li><a href="../symbols/KJUR.asn1.DERUTF8String.html">KJUR.asn1.DERUTF8String</a></li>
<li><a href="../symbols/KJUR.asn1.tsp.html">KJUR.asn1.tsp</a></li>
<li><a href="../symbols/KJUR.asn1.tsp.AbstractTSAAdapter.html">KJUR.asn1.tsp.AbstractTSAAdapter</a></li>
<li><a href="../symbols/KJUR.asn1.tsp.Accuracy.html">KJUR.asn1.tsp.Accuracy</a></li>
<li><a href="../symbols/KJUR.asn1.tsp.FixedTSAAdapter.html">KJUR.asn1.tsp.FixedTSAAdapter</a></li>
<li><a href="../symbols/KJUR.asn1.tsp.MessageImprint.html">KJUR.asn1.tsp.MessageImprint</a></li>
<li><a href="../symbols/KJUR.asn1.tsp.PKIFailureInfo.html">KJUR.asn1.tsp.PKIFailureInfo</a></li>
<li><a href="../symbols/KJUR.asn1.tsp.PKIFreeText.html">KJUR.asn1.tsp.PKIFreeText</a></li>
<li><a href="../symbols/KJUR.asn1.tsp.PKIStatus.html">KJUR.asn1.tsp.PKIStatus</a></li>
<li><a href="../symbols/KJUR.asn1.tsp.PKIStatusInfo.html">KJUR.asn1.tsp.PKIStatusInfo</a></li>
<li><a href="../symbols/KJUR.asn1.tsp.SimpleTSAAdapter.html">KJUR.asn1.tsp.SimpleTSAAdapter</a></li>
<li><a href="../symbols/KJUR.asn1.tsp.TimeStampReq.html">KJUR.asn1.tsp.TimeStampReq</a></li>
<li><a href="../symbols/KJUR.asn1.tsp.TimeStampResp.html">KJUR.asn1.tsp.TimeStampResp</a></li>
<li><a href="../symbols/KJUR.asn1.tsp.TSPUtil.html">KJUR.asn1.tsp.TSPUtil</a></li>
<li><a href="../symbols/KJUR.asn1.tsp.TSTInfo.html">KJUR.asn1.tsp.TSTInfo</a></li>
<li><a href="../symbols/KJUR.asn1.x509.html">KJUR.asn1.x509</a></li>
<li><a href="../symbols/KJUR.asn1.x509.AlgorithmIdentifier.html">KJUR.asn1.x509.AlgorithmIdentifier</a></li>
<li><a href="../symbols/KJUR.asn1.x509.AttributeTypeAndValue.html">KJUR.asn1.x509.AttributeTypeAndValue</a></li>
<li><a href="../symbols/KJUR.asn1.x509.AuthorityKeyIdentifier.html">KJUR.asn1.x509.AuthorityKeyIdentifier</a></li>
<li><a href="../symbols/KJUR.asn1.x509.BasicConstraints.html">KJUR.asn1.x509.BasicConstraints</a></li>
<li><a href="../symbols/KJUR.asn1.x509.Certificate.html">KJUR.asn1.x509.Certificate</a></li>
<li><a href="../symbols/KJUR.asn1.x509.CRL.html">KJUR.asn1.x509.CRL</a></li>
<li><a href="../symbols/KJUR.asn1.x509.CRLDistributionPoints.html">KJUR.asn1.x509.CRLDistributionPoints</a></li>
<li><a href="../symbols/KJUR.asn1.x509.CRLEntry.html">KJUR.asn1.x509.CRLEntry</a></li>
<li><a href="../symbols/KJUR.asn1.x509.DistributionPoint.html">KJUR.asn1.x509.DistributionPoint</a></li>
<li><a href="../symbols/KJUR.asn1.x509.DistributionPointName.html">KJUR.asn1.x509.DistributionPointName</a></li>
<li><a href="../symbols/KJUR.asn1.x509.Extension.html">KJUR.asn1.x509.Extension</a></li>
<li><a href="../symbols/KJUR.asn1.x509.ExtKeyUsage.html">KJUR.asn1.x509.ExtKeyUsage</a></li>
<li><a href="../symbols/KJUR.asn1.x509.GeneralName.html">KJUR.asn1.x509.GeneralName</a></li>
<li><a href="../symbols/KJUR.asn1.x509.GeneralNames.html">KJUR.asn1.x509.GeneralNames</a></li>
<li><a href="../symbols/KJUR.asn1.x509.KeyUsage.html">KJUR.asn1.x509.KeyUsage</a></li>
<li><a href="../symbols/KJUR.asn1.x509.OID.html">KJUR.asn1.x509.OID</a></li>
<li><a href="../symbols/KJUR.asn1.x509.RDN.html">KJUR.asn1.x509.RDN</a></li>
<li><a href="../symbols/KJUR.asn1.x509.SubjectPublicKeyInfo.html">KJUR.asn1.x509.SubjectPublicKeyInfo</a></li>
<li><a href="../symbols/KJUR.asn1.x509.TBSCertificate.html">KJUR.asn1.x509.TBSCertificate</a></li>
<li><a href="../symbols/KJUR.asn1.x509.TBSCertList.html">KJUR.asn1.x509.TBSCertList</a></li>
<li><a href="../symbols/KJUR.asn1.x509.Time.html">KJUR.asn1.x509.Time</a></li>
<li><a href="../symbols/KJUR.asn1.x509.X500Name.html">KJUR.asn1.x509.X500Name</a></li>
<li><a href="../symbols/KJUR.asn1.x509.X509Util.html">KJUR.asn1.x509.X509Util</a></li>
<li><a href="../symbols/KJUR.crypto.html">KJUR.crypto</a></li>
<li><a href="../symbols/KJUR.crypto.DSA.html">KJUR.crypto.DSA</a></li>
<li><a href="../symbols/KJUR.crypto.ECDSA.html">KJUR.crypto.ECDSA</a></li>
<li><a href="../symbols/KJUR.crypto.ECParameterDB.html">KJUR.crypto.ECParameterDB</a></li>
<li><a href="../symbols/KJUR.crypto.Mac.html">KJUR.crypto.Mac</a></li>
<li><a href="../symbols/KJUR.crypto.MessageDigest.html">KJUR.crypto.MessageDigest</a></li>
<li><a href="../symbols/KJUR.crypto.OID.html">KJUR.crypto.OID</a></li>
<li><a href="../symbols/KJUR.crypto.Signature.html">KJUR.crypto.Signature</a></li>
<li><a href="../symbols/KJUR.crypto.Util.html">KJUR.crypto.Util</a></li>
<li><a href="../symbols/KJUR.jws.html">KJUR.jws</a></li>
<li><a href="../symbols/KJUR.jws.IntDate.html">KJUR.jws.IntDate</a></li>
<li><a href="../symbols/KJUR.jws.JWS.html">KJUR.jws.JWS</a></li>
<li><a href="../symbols/KJUR.jws.JWSJS.html">KJUR.jws.JWSJS</a></li>
<li><a href="../symbols/PKCS5PKEY.html">PKCS5PKEY</a></li>
<li><a href="../symbols/RSAKey.html">RSAKey</a></li>
<li><a href="../symbols/X509.html">X509</a></li>
</ul>
<hr />
<!-- end publish.classesIndex -->
</div>
<div id="content">
<!-- ============================== class title ============================ -->
<h1 class="classTitle">
Class ASN1HEX
</h1>
<!-- ============================== class summary ========================== -->
<p class="description">
ASN.1 DER encoded hexadecimal string utility class
<br /><i>Defined in: </i> <a href="../symbols/src/asn1hex-1.1.js.html">asn1hex-1.1.js</a>.
</p>
<!-- ============================== constructor summary ==================== -->
<table class="summaryTable" cellspacing="0" summary="A summary of the constructor documented in the class ASN1HEX.">
<caption>Class Summary</caption>
<thead>
<tr>
<th scope="col">Constructor Attributes</th>
<th scope="col">Constructor Name and Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="attributes">&nbsp;</td>
<td class="nameDescription" >
<div class="fixedFont">
<b><a href="../symbols/ASN1HEX.html#constructor">ASN1HEX</a></b>()
</div>
<div class="description">ASN.1 DER encoded hexadecimal string utility class
This class provides a parser for hexadecimal string of
DER encoded ASN.1 binary data.</div>
</td>
</tr>
</tbody>
</table>
<!-- ============================== properties summary ===================== -->
<!-- ============================== methods summary ======================== -->
<table class="summaryTable" cellspacing="0" summary="A summary of the methods documented in the class ASN1HEX.">
<caption>Method Summary</caption>
<thead>
<tr>
<th scope="col">Method Attributes</th>
<th scope="col">Method Name and Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="attributes">&lt;static&gt; &nbsp;</td>
<td class="nameDescription">
<div class="fixedFont">ASN1HEX.<b><a href="../symbols/ASN1HEX.html#.dump">dump</a></b>(hex, associative, idx, indent)
</div>
<div class="description">get string of simple ASN.1 dump from hexadecimal ASN.1 data
This method will get an ASN.1 dump from
hexadecmal string of ASN.1 DER encoded data.</div>
</td>
</tr>
<tr>
<td class="attributes">&lt;static&gt; &nbsp;</td>
<td class="nameDescription">
<div class="fixedFont">ASN1HEX.<b><a href="../symbols/ASN1HEX.html#.getByteLengthOfL_AtObj">getByteLengthOfL_AtObj</a></b>(s, pos)
</div>
<div class="description">get byte length for ASN.1 L(length) bytes</div>
</td>
</tr>
<tr>
<td class="attributes">&lt;static&gt; &nbsp;</td>
<td class="nameDescription">
<div class="fixedFont">ASN1HEX.<b><a href="../symbols/ASN1HEX.html#.getDecendantHexTLVByNthList">getDecendantHexTLVByNthList</a></b>(h, currentIndex, nthList)
</div>
<div class="description">get hexadecimal string of ASN.1 TLV refered by current index and nth index list.</div>
</td>
</tr>
<tr>
<td class="attributes">&lt;static&gt; &nbsp;</td>
<td class="nameDescription">
<div class="fixedFont">ASN1HEX.<b><a href="../symbols/ASN1HEX.html#.getDecendantHexVByNthList">getDecendantHexVByNthList</a></b>(h, currentIndex, nthList)
</div>
<div class="description">get hexadecimal string of ASN.1 V refered by current index and nth index list.</div>
</td>
</tr>
<tr>
<td class="attributes">&lt;static&gt; &nbsp;</td>
<td class="nameDescription">
<div class="fixedFont">ASN1HEX.<b><a href="../symbols/ASN1HEX.html#.getDecendantIndexByNthList">getDecendantIndexByNthList</a></b>(h, currentIndex, nthList)
</div>
<div class="description">get string index of nth child object of ASN.1 object refered by h, idx</div>
</td>
</tr>
<tr>
<td class="attributes">&lt;static&gt; &nbsp;</td>
<td class="nameDescription">
<div class="fixedFont">ASN1HEX.<b><a href="../symbols/ASN1HEX.html#.getHexOfL_AtObj">getHexOfL_AtObj</a></b>(s, pos)
</div>
<div class="description">get hexadecimal string for ASN.1 L(length) bytes</div>
</td>
</tr>
<tr>
<td class="attributes">&lt;static&gt; &nbsp;</td>
<td class="nameDescription">
<div class="fixedFont">ASN1HEX.<b><a href="../symbols/ASN1HEX.html#.getHexOfTLV_AtObj">getHexOfTLV_AtObj</a></b>(s, pos)
</div>
<div class="description">get hexadecimal string of ASN.1 TLV at</div>
</td>
</tr>
<tr>
<td class="attributes">&lt;static&gt; &nbsp;</td>
<td class="nameDescription">
<div class="fixedFont">ASN1HEX.<b><a href="../symbols/ASN1HEX.html#.getHexOfV_AtObj">getHexOfV_AtObj</a></b>(s, pos)
</div>
<div class="description">get hexadecimal string of ASN.1 V(value)</div>
</td>
</tr>
<tr>
<td class="attributes">&lt;static&gt; &nbsp;</td>
<td class="nameDescription">
<div class="fixedFont">ASN1HEX.<b><a href="../symbols/ASN1HEX.html#.getIntOfL_AtObj">getIntOfL_AtObj</a></b>(s, pos)
</div>
<div class="description">get integer value of ASN.1 length for ASN.1 data</div>
</td>
</tr>
<tr>
<td class="attributes">&lt;static&gt; &nbsp;</td>
<td class="nameDescription">
<div class="fixedFont">ASN1HEX.<b><a href="../symbols/ASN1HEX.html#.getNthChildIndex_AtObj">getNthChildIndex_AtObj</a></b>(h, idx, nth)
</div>
<div class="description">get string index of nth child object of ASN.1 object refered by h, idx</div>
</td>
</tr>
<tr>
<td class="attributes">&lt;static&gt; &nbsp;</td>
<td class="nameDescription">
<div class="fixedFont">ASN1HEX.<b><a href="../symbols/ASN1HEX.html#.getPosArrayOfChildren_AtObj">getPosArrayOfChildren_AtObj</a></b>(s, start)
</div>
<div class="description">get array of indexes of child ASN.1 objects</div>
</td>
</tr>
<tr>
<td class="attributes">&lt;static&gt; &nbsp;</td>
<td class="nameDescription">
<div class="fixedFont">ASN1HEX.<b><a href="../symbols/ASN1HEX.html#.getPosOfNextSibling_AtObj">getPosOfNextSibling_AtObj</a></b>(s, pos)
</div>
<div class="description">get next sibling starting index for ASN.1 object string</div>
</td>
</tr>
<tr>
<td class="attributes">&lt;static&gt; &nbsp;</td>
<td class="nameDescription">
<div class="fixedFont">ASN1HEX.<b><a href="../symbols/ASN1HEX.html#.getStartPosOfV_AtObj">getStartPosOfV_AtObj</a></b>(s, pos)
</div>
<div class="description">get ASN.1 value starting string position for ASN.1 object refered by index 'idx'.</div>
</td>
</tr>
<tr>
<td class="attributes">&lt;static&gt; &nbsp;</td>
<td class="nameDescription">
<div class="fixedFont">ASN1HEX.<b><a href="../symbols/ASN1HEX.html#.hextooidstr">hextooidstr</a></b>(hex)
</div>
<div class="description">get OID string from hexadecimal encoded value</div>
</td>
</tr>
<tr>
<td class="attributes">&lt;static&gt; &nbsp;</td>
<td class="nameDescription">
<div class="fixedFont">ASN1HEX.<b><a href="../symbols/ASN1HEX.html#.isASN1HEX">isASN1HEX</a></b>(hex)
</div>
<div class="description">check wheather the string is ASN.1 hexadecimal string or not
This method checks wheather the argument 'hex' is a hexadecimal string of
ASN.1 data or not.</div>
</td>
</tr>
</tbody>
</table>
<!-- ============================== events summary ======================== -->
<!-- ============================== constructor details ==================== -->
<div class="details"><a name="constructor"> </a>
<div class="sectionTitle">
Class Detail
</div>
<div class="fixedFont">
<b>ASN1HEX</b>()
</div>
<div class="description">
ASN.1 DER encoded hexadecimal string utility class
This class provides a parser for hexadecimal string of
DER encoded ASN.1 binary data.
Here are major methods of this class.
<ul>
<li><b>ACCESS BY POSITION</b>
<ul>
<li><a href="../symbols/ASN1HEX.html#.getHexOfTLV_AtObj">ASN1HEX.getHexOfTLV_AtObj</a> - get ASN.1 TLV at specified position</li>
<li><a href="../symbols/ASN1HEX.html#.getHexOfV_AtObj">ASN1HEX.getHexOfV_AtObj</a> - get ASN.1 V at specified position</li>
<li><a href="../symbols/ASN1HEX.html#.getHexOfL_AtObj">ASN1HEX.getHexOfL_AtObj</a> - get hexadecimal ASN.1 L at specified position</li>
<li><a href="../symbols/ASN1HEX.html#.getIntOfL_AtObj">ASN1HEX.getIntOfL_AtObj</a> - get integer ASN.1 L at specified position</li>
<li><a href="../symbols/ASN1HEX.html#.getStartPosOfV_AtObj">ASN1HEX.getStartPosOfV_AtObj</a> - get ASN.1 V position from its ASN.1 TLV position</li>
</ul>
</li>
<li><b>ACCESS FOR CHILD ITEM</b>
<ul>
<li><a href="../symbols/ASN1HEX.html#.getNthChildIndex_AtObj">ASN1HEX.getNthChildIndex_AtObj</a> - get nth child index at specified position</li>
<li><a href="../symbols/ASN1HEX.html#.getPosArrayOfChildren_AtObj">ASN1HEX.getPosArrayOfChildren_AtObj</a> - get indexes of children</li>
<li><a href="../symbols/ASN1HEX.html#.getPosOfNextSibling_AtObj">ASN1HEX.getPosOfNextSibling_AtObj</a> - get position of next sibling</li>
</ul>
</li>
<li><b>ACCESS NESTED ASN.1 STRUCTURE</b>
<ul>
<li><a href="../symbols/ASN1HEX.html#.getDecendantHexTLVByNthList">ASN1HEX.getDecendantHexTLVByNthList</a> - get ASN.1 TLV at specified list index</li>
<li><a href="../symbols/ASN1HEX.html#.getDecendantHexVByNthList">ASN1HEX.getDecendantHexVByNthList</a> - get ASN.1 V at specified list index</li>
<li><a href="../symbols/ASN1HEX.html#.getDecendantIndexByNthList">ASN1HEX.getDecendantIndexByNthList</a> - get index at specified list index</li>
</ul>
</li>
<li><b>UTILITIES</b>
<ul>
<li><a href="../symbols/ASN1HEX.html#.dump">ASN1HEX.dump</a> - dump ASN.1 structure</li>
<li><a href="../symbols/ASN1HEX.html#.isASN1HEX">ASN1HEX.isASN1HEX</a> - check whether ASN.1 hexadecimal string or not</li>
<li><a href="../symbols/ASN1HEX.html#.hextooidstr">ASN1HEX.hextooidstr</a> - convert hexadecimal string of OID to dotted integer list</li>
</ul>
</li>
</ul>
</div>
<dl class="detailList">
<dt class="heading">Since:</dt>
<dd>jsrsasign 1.1</dd>
</dl>
</div>
<!-- ============================== field details ========================== -->
<!-- ============================== method details ========================= -->
<div class="sectionTitle">
Method Detail
</div>
<a name=".dump"> </a>
<div class="fixedFont">&lt;static&gt;
<span class="light">{String}</span>
<span class="light">ASN1HEX.</span><b>dump</b>(hex, associative, idx, indent)
</div>
<div class="description">
get string of simple ASN.1 dump from hexadecimal ASN.1 data
This method will get an ASN.1 dump from
hexadecmal string of ASN.1 DER encoded data.
Here are features:
<ul>
<li>ommit long hexadecimal string</li>
<li>dump encapsulated OCTET STRING (good for X.509v3 extensions)</li>
<li>structured/primitive context specific tag support (i.e. [0], [3] ...)</li>
<li>automatic decode for implicit primitive context specific tag
(good for X.509v3 extension value)
<ul>
<li>if hex starts '68747470'(i.e. http) it is decoded as utf8 encoded string.</li>
<li>if it is in 'subjectAltName' extension value and is '[2]'(dNSName) tag
value will be encoded as utf8 string</li>
<li>otherwise it shows as hexadecimal string</li>
</ul>
</li>
</ul>
</div>
<pre class="code">// ASN.1 INTEGER
ASN1HEX.dump('0203012345')
&darr;
INTEGER 012345
// ASN.1 Object Identifier
ASN1HEX.dump('06052b0e03021a')
&darr;
ObjectIdentifier sha1 (1 3 14 3 2 26)
// ASN.1 SEQUENCE
ASN1HEX.dump('3006020101020102')
&darr;
SEQUENCE
INTEGER 01
INTEGER 02
// ASN.1 DUMP FOR X.509 CERTIFICATE
ASN1HEX.dump(X509.pemToHex(certPEM))
&darr;
SEQUENCE
SEQUENCE
[0]
INTEGER 02
INTEGER 0c009310d206dbe337553580118ddc87
SEQUENCE
ObjectIdentifier SHA256withRSA (1 2 840 113549 1 1 11)
NULL
SEQUENCE
SET
SEQUENCE
ObjectIdentifier countryName (2 5 4 6)
PrintableString 'US'
:</pre>
<dl class="detailList">
<dt class="heading">Parameters:</dt>
<dt>
<span class="light fixedFont">{String}</span> <b>hex</b>
</dt>
<dd>hexadecmal string of ASN.1 data</dd>
<dt>
<span class="light fixedFont">{Array}</span> <b>associative</b>
</dt>
<dd>array of flags for dump (OPTION)</dd>
<dt>
<span class="light fixedFont">{Number}</span> <b>idx</b>
</dt>
<dd>string index for starting dump (OPTION)</dd>
<dt>
<span class="light fixedFont">{String}</span> <b>indent</b>
</dt>
<dd>string (OPTION)</dd>
</dl>
<dl class="detailList">
<dt class="heading">Since:</dt>
<dd>jsrsasign 4.8.3 asn1hex 1.1.6</dd>
</dl>
</dl>
<dl class="detailList">
<dt class="heading">Returns:</dt>
<dd><span class="light fixedFont">{String}</span> string of simple ASN.1 dump</dd>
</dl>
<hr />
<a name=".getByteLengthOfL_AtObj"> </a>
<div class="fixedFont">&lt;static&gt;
<span class="light">ASN1HEX.</span><b>getByteLengthOfL_AtObj</b>(s, pos)
</div>
<div class="description">
get byte length for ASN.1 L(length) bytes
</div>
<dl class="detailList">
<dt class="heading">Parameters:</dt>
<dt>
<span class="light fixedFont">{String}</span> <b>s</b>
</dt>
<dd>hexadecimal string of ASN.1 DER encoded data</dd>
<dt>
<span class="light fixedFont">{Number}</span> <b>pos</b>
</dt>
<dd>string index</dd>
</dl>
<dl class="detailList">
<dt class="heading">Returns:</dt>
<dd>byte length for ASN.1 L(length) bytes</dd>
</dl>
<hr />
<a name=".getDecendantHexTLVByNthList"> </a>
<div class="fixedFont">&lt;static&gt;
<span class="light">{Number}</span>
<span class="light">ASN1HEX.</span><b>getDecendantHexTLVByNthList</b>(h, currentIndex, nthList)
</div>
<div class="description">
get hexadecimal string of ASN.1 TLV refered by current index and nth index list.
</div>
<dl class="detailList">
<dt class="heading">Parameters:</dt>
<dt>
<span class="light fixedFont">{String}</span> <b>h</b>
</dt>
<dd>hexadecimal string of ASN.1 DER encoded data</dd>
<dt>
<span class="light fixedFont">{Number}</span> <b>currentIndex</b>
</dt>
<dd>start string index of ASN.1 object</dd>
<dt>
<span class="light fixedFont">{Array of Number}</span> <b>nthList</b>
</dt>
<dd>array list of nth</dd>
</dl>
<dl class="detailList">
<dt class="heading">Since:</dt>
<dd>1.1</dd>
</dl>
</dl>
<dl class="detailList">
<dt class="heading">Returns:</dt>
<dd><span class="light fixedFont">{Number}</span> hexadecimal string of ASN.1 TLV refered by nthList</dd>
</dl>
<hr />
<a name=".getDecendantHexVByNthList"> </a>
<div class="fixedFont">&lt;static&gt;
<span class="light">{Number}</span>
<span class="light">ASN1HEX.</span><b>getDecendantHexVByNthList</b>(h, currentIndex, nthList)
</div>
<div class="description">
get hexadecimal string of ASN.1 V refered by current index and nth index list.
</div>
<dl class="detailList">
<dt class="heading">Parameters:</dt>
<dt>
<span class="light fixedFont">{String}</span> <b>h</b>
</dt>
<dd>hexadecimal string of ASN.1 DER encoded data</dd>
<dt>
<span class="light fixedFont">{Number}</span> <b>currentIndex</b>
</dt>
<dd>start string index of ASN.1 object</dd>
<dt>
<span class="light fixedFont">{Array of Number}</span> <b>nthList</b>
</dt>
<dd>array list of nth</dd>
</dl>
<dl class="detailList">
<dt class="heading">Since:</dt>
<dd>1.1</dd>
</dl>
</dl>
<dl class="detailList">
<dt class="heading">Returns:</dt>
<dd><span class="light fixedFont">{Number}</span> hexadecimal string of ASN.1 V refered by nthList</dd>
</dl>
<hr />
<a name=".getDecendantIndexByNthList"> </a>
<div class="fixedFont">&lt;static&gt;
<span class="light">{Number}</span>
<span class="light">ASN1HEX.</span><b>getDecendantIndexByNthList</b>(h, currentIndex, nthList)
</div>
<div class="description">
get string index of nth child object of ASN.1 object refered by h, idx
</div>
<pre class="code">The "nthList" is a index list of structured ASN.1 object
reference. Here is a sample structure and "nthList"s which
refers each objects.
SQUENCE -
SEQUENCE - [0]
IA5STRING 000 - [0, 0]
UTF8STRING 001 - [0, 1]
SET - [1]
IA5STRING 010 - [1, 0]
UTF8STRING 011 - [1, 1]</pre>
<dl class="detailList">
<dt class="heading">Parameters:</dt>
<dt>
<span class="light fixedFont">{String}</span> <b>h</b>
</dt>
<dd>hexadecimal string of ASN.1 DER encoded data</dd>
<dt>
<span class="light fixedFont">{Number}</span> <b>currentIndex</b>
</dt>
<dd>start string index of ASN.1 object</dd>
<dt>
<span class="light fixedFont">{Array of Number}</span> <b>nthList</b>
</dt>
<dd>array list of nth</dd>
</dl>
<dl class="detailList">
<dt class="heading">Since:</dt>
<dd>1.1</dd>
</dl>
</dl>
<dl class="detailList">
<dt class="heading">Returns:</dt>
<dd><span class="light fixedFont">{Number}</span> string index refered by nthList</dd>
</dl>
<hr />
<a name=".getHexOfL_AtObj"> </a>
<div class="fixedFont">&lt;static&gt;
<span class="light">{String}</span>
<span class="light">ASN1HEX.</span><b>getHexOfL_AtObj</b>(s, pos)
</div>
<div class="description">
get hexadecimal string for ASN.1 L(length) bytes
</div>
<dl class="detailList">
<dt class="heading">Parameters:</dt>
<dt>
<span class="light fixedFont">{String}</span> <b>s</b>
</dt>
<dd>hexadecimal string of ASN.1 DER encoded data</dd>
<dt>
<span class="light fixedFont">{Number}</span> <b>pos</b>
</dt>
<dd>string index</dd>
</dl>
<dl class="detailList">
<dt class="heading">Returns:</dt>
<dd><span class="light fixedFont">{String}</span> hexadecimal string for ASN.1 L(length) bytes</dd>
</dl>
<hr />
<a name=".getHexOfTLV_AtObj"> </a>
<div class="fixedFont">&lt;static&gt;
<span class="light">{String}</span>
<span class="light">ASN1HEX.</span><b>getHexOfTLV_AtObj</b>(s, pos)
</div>
<div class="description">
get hexadecimal string of ASN.1 TLV at
</div>
<dl class="detailList">
<dt class="heading">Parameters:</dt>
<dt>
<span class="light fixedFont">{String}</span> <b>s</b>
</dt>
<dd>hexadecimal string of ASN.1 DER encoded data</dd>
<dt>
<span class="light fixedFont">{Number}</span> <b>pos</b>
</dt>
<dd>string index</dd>
</dl>
<dl class="detailList">
<dt class="heading">Since:</dt>
<dd>1.1</dd>
</dl>
</dl>
<dl class="detailList">
<dt class="heading">Returns:</dt>
<dd><span class="light fixedFont">{String}</span> hexadecimal string of ASN.1 TLV.</dd>
</dl>
<hr />
<a name=".getHexOfV_AtObj"> </a>
<div class="fixedFont">&lt;static&gt;
<span class="light">{String}</span>
<span class="light">ASN1HEX.</span><b>getHexOfV_AtObj</b>(s, pos)
</div>
<div class="description">
get hexadecimal string of ASN.1 V(value)
</div>
<dl class="detailList">
<dt class="heading">Parameters:</dt>
<dt>
<span class="light fixedFont">{String}</span> <b>s</b>
</dt>
<dd>hexadecimal string of ASN.1 DER encoded data</dd>
<dt>
<span class="light fixedFont">{Number}</span> <b>pos</b>
</dt>
<dd>string index</dd>
</dl>
<dl class="detailList">
<dt class="heading">Returns:</dt>
<dd><span class="light fixedFont">{String}</span> hexadecimal string of ASN.1 value.</dd>
</dl>
<hr />
<a name=".getIntOfL_AtObj"> </a>
<div class="fixedFont">&lt;static&gt;
<span class="light">ASN1HEX.</span><b>getIntOfL_AtObj</b>(s, pos)
</div>
<div class="description">
get integer value of ASN.1 length for ASN.1 data
</div>
<dl class="detailList">
<dt class="heading">Parameters:</dt>
<dt>
<span class="light fixedFont">{String}</span> <b>s</b>
</dt>
<dd>hexadecimal string of ASN.1 DER encoded data</dd>
<dt>
<span class="light fixedFont">{Number}</span> <b>pos</b>
</dt>
<dd>string index</dd>
</dl>
<dl class="detailList">
<dt class="heading">Returns:</dt>
<dd>ASN.1 L(length) integer value</dd>
</dl>
<hr />
<a name=".getNthChildIndex_AtObj"> </a>
<div class="fixedFont">&lt;static&gt;
<span class="light">{Number}</span>
<span class="light">ASN1HEX.</span><b>getNthChildIndex_AtObj</b>(h, idx, nth)
</div>
<div class="description">
get string index of nth child object of ASN.1 object refered by h, idx
</div>
<dl class="detailList">
<dt class="heading">Parameters:</dt>
<dt>
<span class="light fixedFont">{String}</span> <b>h</b>
</dt>
<dd>hexadecimal string of ASN.1 DER encoded data</dd>
<dt>
<span class="light fixedFont">{Number}</span> <b>idx</b>
</dt>
<dd>start string index of ASN.1 object</dd>
<dt>
<span class="light fixedFont">{Number}</span> <b>nth</b>
</dt>
<dd>for child</dd>
</dl>
<dl class="detailList">
<dt class="heading">Since:</dt>
<dd>1.1</dd>
</dl>
</dl>
<dl class="detailList">
<dt class="heading">Returns:</dt>
<dd><span class="light fixedFont">{Number}</span> string index of nth child.</dd>
</dl>
<hr />
<a name=".getPosArrayOfChildren_AtObj"> </a>
<div class="fixedFont">&lt;static&gt;
<span class="light">{Array of Number}</span>
<span class="light">ASN1HEX.</span><b>getPosArrayOfChildren_AtObj</b>(s, start)
</div>
<div class="description">
get array of indexes of child ASN.1 objects
</div>
<dl class="detailList">
<dt class="heading">Parameters:</dt>
<dt>
<span class="light fixedFont">{String}</span> <b>s</b>
</dt>
<dd>hexadecimal string of ASN.1 DER encoded data</dd>
<dt>
<span class="light fixedFont">{Number}</span> <b>start</b>
</dt>
<dd>string index of ASN.1 object</dd>
</dl>
<dl class="detailList">
<dt class="heading">Returns:</dt>
<dd><span class="light fixedFont">{Array of Number}</span> array of indexes for childen of ASN.1 objects</dd>
</dl>
<hr />
<a name=".getPosOfNextSibling_AtObj"> </a>
<div class="fixedFont">&lt;static&gt;
<span class="light">ASN1HEX.</span><b>getPosOfNextSibling_AtObj</b>(s, pos)
</div>
<div class="description">
get next sibling starting index for ASN.1 object string
</div>
<dl class="detailList">
<dt class="heading">Parameters:</dt>
<dt>
<span class="light fixedFont">{String}</span> <b>s</b>
</dt>
<dd>hexadecimal string of ASN.1 DER encoded data</dd>
<dt>
<span class="light fixedFont">{Number}</span> <b>pos</b>
</dt>
<dd>string index</dd>
</dl>
<dl class="detailList">
<dt class="heading">Returns:</dt>
<dd>next sibling starting index for ASN.1 object string</dd>
</dl>
<hr />
<a name=".getStartPosOfV_AtObj"> </a>
<div class="fixedFont">&lt;static&gt;
<span class="light">ASN1HEX.</span><b>getStartPosOfV_AtObj</b>(s, pos)
</div>
<div class="description">
get ASN.1 value starting string position for ASN.1 object refered by index 'idx'.
</div>
<dl class="detailList">
<dt class="heading">Parameters:</dt>
<dt>
<span class="light fixedFont">{String}</span> <b>s</b>
</dt>
<dd>hexadecimal string of ASN.1 DER encoded data</dd>
<dt>
<span class="light fixedFont">{Number}</span> <b>pos</b>
</dt>
<dd>string index</dd>
</dl>
<hr />
<a name=".hextooidstr"> </a>
<div class="fixedFont">&lt;static&gt;
<span class="light">{String}</span>
<span class="light">ASN1HEX.</span><b>hextooidstr</b>(hex)
</div>
<div class="description">
get OID string from hexadecimal encoded value
</div>
<dl class="detailList">
<dt class="heading">Parameters:</dt>
<dt>
<span class="light fixedFont">{String}</span> <b>hex</b>
</dt>
<dd>hexadecmal string of ASN.1 DER encoded OID value</dd>
</dl>
<dl class="detailList">
<dt class="heading">Since:</dt>
<dd>asn1hex 1.1.5</dd>
</dl>
</dl>
<dl class="detailList">
<dt class="heading">Returns:</dt>
<dd><span class="light fixedFont">{String}</span> OID string (ex. '1.2.3.4.567')</dd>
</dl>
<hr />
<a name=".isASN1HEX"> </a>
<div class="fixedFont">&lt;static&gt;
<span class="light">{Boolean}</span>
<span class="light">ASN1HEX.</span><b>isASN1HEX</b>(hex)
</div>
<div class="description">
check wheather the string is ASN.1 hexadecimal string or not
This method checks wheather the argument 'hex' is a hexadecimal string of
ASN.1 data or not.
</div>
<pre class="code">ASN1HEX.isASN1HEX('0203012345') &rarr; true // PROPER ASN.1 INTEGER
ASN1HEX.isASN1HEX('0203012345ff') &rarr; false // TOO LONG VALUE
ASN1HEX.isASN1HEX('02030123') &rarr; false // TOO SHORT VALUE
ASN1HEX.isASN1HEX('fa3bcd') &rarr; false // WRONG FOR ASN.1</pre>
<dl class="detailList">
<dt class="heading">Parameters:</dt>
<dt>
<span class="light fixedFont">{String}</span> <b>hex</b>
</dt>
<dd>string to check whether it is hexadecmal string for ASN.1 DER or not</dd>
</dl>
<dl class="detailList">
<dt class="heading">Since:</dt>
<dd>jsrsasign 4.8.3 asn1hex 1.1.6</dd>
</dl>
</dl>
<dl class="detailList">
<dt class="heading">Returns:</dt>
<dd><span class="light fixedFont">{Boolean}</span> true if it is hexadecimal string of ASN.1 data otherwise false</dd>
</dl>
<!-- ============================== event details ========================= -->
<hr />
</div>
<!-- ============================== footer ================================= -->
<div class="fineprint" style="clear:both">
&copy; 2012-2015 Kenji Urushima, All rights reserved<br/>
Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blank">JsDoc Toolkit</a> 2.4.0
</div>
</body>
</html>