clear

inc_indent
    
inc_indent
        
// INTEGER
        
? "0"
        
int_000_v   02
        
int_000     call add_length$int_000_v )
        
int_000     02 $int_000
        
inc_indent
            
inc_indent
                
inc_indent
                    
inc_indent
                        
// OBJECT IDENTIFIER
                        
? "1"
                        
// 2.5.4.6 - countryName
                        
oid_0010000_v   oid_encrypt"2.5.4.6" )
                        
oid_0010000     06$oid_0010000_v )
                        
// Printable String
                        
? "2"
                        
// "FI"
                        
astr_0010001_v  4649
                        
astr_0010001    call add_length$astr_0010001_v )
                        
astr_0010001    13 $astr_0010001
                    
dec_indent
                    
// SEQUENCE
                    
lv_001000   $oid_0010000 $astr_0010001
                    
lv_001000   call add_length$lv_001000 )
                    
lv_001000   30 $lv_001000
                
dec_indent
                
// SET
                
lv_00100    $lv_001000
                
lv_00100    call add_length$lv_00100 )
                
lv_00100    31 $lv_00100
                
inc_indent
                    
inc_indent
                        
// OBJECT IDENTIFIER
                        
? "3"
                        
// 2.5.4.8 - stateOrProvinceName
                        
oid_0010100_v   oid_encrypt"2.5.4.8" )
                        
oid_0010100     06$oid_0010100_v )
                        
// UTF8 String
                        
? "4"
                        
// "Uusimaa"
                        
u8str_0010101_v 557573696D6161
                        
u8str_0010101   call add_length$u8str_0010101_v )
                        
u8str_0010101   0C $u8str_0010101
                    
dec_indent
                    
// SEQUENCE
                    
lv_001010   $oid_0010100 $u8str_0010101
                    
lv_001010   call add_length$lv_001010 )
                    
lv_001010   30 $lv_001010
                
dec_indent
                
// SET
                
lv_00101    $lv_001010
                
lv_00101    call add_length$lv_00101 )
                
lv_00101    31 $lv_00101
                
inc_indent
                    
inc_indent
                        
// OBJECT IDENTIFIER
                        
? "5"
                        
// 2.5.4.7 - localityName
                        
oid_0010200_v   oid_encrypt"2.5.4.7" )
                        
oid_0010200     06$oid_0010200_v )
                        
// UTF8 String
                        
? "6"
                        
// "Espoo"
                        
u8str_0010201_v 4573706F6F
                        
u8str_0010201   call add_length$u8str_0010201_v )
                        
u8str_0010201   0C $u8str_0010201
                    
dec_indent
                    
// SEQUENCE
                    
lv_001020   $oid_0010200 $u8str_0010201
                    
lv_001020   call add_length$lv_001020 )
                    
lv_001020   30 $lv_001020
                
dec_indent
                
// SET
                
lv_00102    $lv_001020
                
lv_00102    call add_length$lv_00102 )
                
lv_00102    31 $lv_00102
                
inc_indent
                    
inc_indent
                        
// OBJECT IDENTIFIER
                        
? "7"
                        
// 2.5.4.10 - organizationName
                        
oid_0010300_v   oid_encrypt"2.5.4.10" )
                        
oid_0010300     06$oid_0010300_v )
                        
// UTF8 String
                        
? "8"
                        
// "Nokia"
                        
u8str_0010301_v 4E6F6B6961
                        
u8str_0010301   call add_length$u8str_0010301_v )
                        
u8str_0010301   0C $u8str_0010301
                    
dec_indent
                    
// SEQUENCE
                    
lv_001030   $oid_0010300 $u8str_0010301
                    
lv_001030   call add_length$lv_001030 )
                    
lv_001030   30 $lv_001030
                
dec_indent
                
// SET
                
lv_00103    $lv_001030
                
lv_00103    call add_length$lv_00103 )
                
lv_00103    31 $lv_00103
                
inc_indent
                    
inc_indent
                        
// OBJECT IDENTIFIER
                        
? "9"
                        
// 2.5.4.11 - organizationalUnitName
                        
oid_0010400_v   oid_encrypt"2.5.4.11" )
                        
oid_0010400     06$oid_0010400_v )
                        
// UTF8 String
                        
? "10"
                        
// "Security"
                        
u8str_0010401_v 5365637572697479
                        
u8str_0010401   call add_length$u8str_0010401_v )
                        
u8str_0010401   0C $u8str_0010401
                    
dec_indent
                    
// SEQUENCE
                    
lv_001040   $oid_0010400 $u8str_0010401
                    
lv_001040   call add_length$lv_001040 )
                    
lv_001040   30 $lv_001040
                
dec_indent
                
// SET
                
lv_00104    $lv_001040
                
lv_00104    call add_length$lv_00104 )
                
lv_00104    31 $lv_00104
                
inc_indent
                    
inc_indent
                        
// OBJECT IDENTIFIER
                        
? "11"
                        
// 2.5.4.3 - commonName
                        
oid_0010500_v   oid_encrypt"2.5.4.3" )
                        
oid_0010500     06$oid_0010500_v )
                        
// UTF8 String
                        
? "12"
                        
// "NetGuard Test CA"
                        
u8str_0010501_v 4E657447756172642054657374204341
                        
u8str_0010501   call add_length$u8str_0010501_v )
                        
u8str_0010501   0C $u8str_0010501
                    
dec_indent
                    
// SEQUENCE
                    
lv_001050   $oid_0010500 $u8str_0010501
                    
lv_001050   call add_length$lv_001050 )
                    
lv_001050   30 $lv_001050
                
dec_indent
                
// SET
                
lv_00105    $lv_001050
                
lv_00105    call add_length$lv_00105 )
                
lv_00105    31 $lv_00105
            
dec_indent
            
// SEQUENCE
            
lv_0010 $lv_00100 $lv_00101 $lv_00102 $lv_00103 $lv_00104 $lv_00105
            
lv_0010 call add_length$lv_0010 )
            
lv_0010 30 $lv_0010
        
dec_indent
        
// CONTEXT SPECIFIC (4)
        
lv_001  $lv_0010
        
lv_001  call add_length$lv_001 )
        
lv_001  A4 $lv_001
        
inc_indent
            
inc_indent
                
inc_indent
                    
inc_indent
                        
// OBJECT IDENTIFIER
                        
? "13"
                        
// 2.5.4.3 - commonName
                        
oid_0020000_v   oid_encrypt"2.5.4.3" )
                        
oid_0020000     06$oid_0020000_v )
                        
// UTF8 String
                        
? "14"
                        
// "Martin"
                        
u8str_0020001_v 4D617274696E
                        
u8str_0020001   call add_length$u8str_0020001_v )
                        
u8str_0020001   0C $u8str_0020001
                    
dec_indent
                    
// SEQUENCE
                    
lv_002000   $oid_0020000 $u8str_0020001
                    
lv_002000   call add_length$lv_002000 )
                    
lv_002000   30 $lv_002000
                
dec_indent
                
// SET
                
lv_00200    $lv_002000
                
lv_00200    call add_length$lv_00200 )
                
lv_00200    31 $lv_00200
                
inc_indent
                    
inc_indent
                        
// OBJECT IDENTIFIER
                        
? "15"
                        
// 2.5.4.10 - organizationName
                        
oid_0020100_v   oid_encrypt"2.5.4.10" )
                        
oid_0020100     06$oid_0020100_v )
                        
// UTF8 String
                        
? "16"
                        
// "Test"
                        
u8str_0020101_v 54657374
                        
u8str_0020101   call add_length$u8str_0020101_v )
                        
u8str_0020101   0C $u8str_0020101
                    
dec_indent
                    
// SEQUENCE
                    
lv_002010   $oid_0020100 $u8str_0020101
                    
lv_002010   call add_length$lv_002010 )
                    
lv_002010   30 $lv_002010
                
dec_indent
                
// SET
                
lv_00201    $lv_002010
                
lv_00201    call add_length$lv_00201 )
                
lv_00201    31 $lv_00201
            
dec_indent
            
// SEQUENCE
            
lv_0020 $lv_00200 $lv_00201
            
lv_0020 call add_length$lv_0020 )
            
lv_0020 30 $lv_0020
        
dec_indent
        
// CONTEXT SPECIFIC (4)
        
lv_002  $lv_0020
        
lv_002  call add_length$lv_002 )
        
lv_002  A4 $lv_002
        
inc_indent
            
inc_indent
                
// OBJECT IDENTIFIER
                
? "17"
                
// 1.2.840.113533.7.66.13 - passwordBasedMac
                
oid_00300_v oid_encrypt"1.2.840.113533.7.66.13" )
                
oid_00300   06$oid_00300_v )
                
inc_indent
                    
// OCTET STRING
                    
? "18"
                    
octetstr_003010_v   74DC1FA482897E76826C32ADBE3C81DA
                    
octetstr_003010     call add_length$octetstr_003010_v )
                    
octetstr_003010     04 $octetstr_003010
                    
inc_indent
                        
// OBJECT IDENTIFIER
                        
? "19"
                        
// 1.3.14.3.2.26 - sha1
                        
oid_0030110_v   oid_encrypt"1.3.14.3.2.26" )
                        
oid_0030110     06$oid_0030110_v )
                    
dec_indent
                    
// SEQUENCE
                    
lv_003011       $oid_0030110
                    
lv_003011       call add_length$lv_003011 )
                    
lv_003011       30 $lv_003011
                    
// INTEGER
                    
? "20"
                    
int_003012_v    0400
                    
int_003012      call add_length$int_003012_v )
                    
int_003012      02 $int_003012
                    
inc_indent
                        
// OBJECT IDENTIFIER
                        
? "21"
                        
// 1.3.6.1.5.5.8.1.2 - hmacSHA
                        
oid_0030130_v   oid_encrypt"1.3.6.1.5.5.8.1.2" )
                        
oid_0030130     06$oid_0030130_v )
                    
dec_indent
                    
// SEQUENCE
                    
lv_003013   $oid_0030130
                    
lv_003013   call add_length$lv_003013 )
                    
lv_003013   30 $lv_003013
                
dec_indent
                
// SEQUENCE
                
lv_00301    $octetstr_003010 $lv_003011 $int_003012 $lv_003013
                
lv_00301    call add_length$lv_00301 )
                
lv_00301    30 $lv_00301
            
dec_indent
            
// SEQUENCE
            
lv_0030 $oid_00300 $lv_00301
            
lv_0030 call add_length$lv_0030 )
            
lv_0030 30 $lv_0030
        
dec_indent
        
// CONTEXT SPECIFIC (1)
        
lv_003  $lv_0030
        
lv_003  call add_length$lv_003 )
        
lv_003  A1 $lv_003
        
inc_indent
            
// OCTET STRING
            
? "22"
            
octetstr_0040_v 34373837
            
octetstr_0040   call add_length$octetstr_0040_v )
            
octetstr_0040   04 $octetstr_0040
        
dec_indent
        
// CONTEXT SPECIFIC (2)
        
lv_004  $octetstr_0040
        
lv_004  call add_length$lv_004 )
        
lv_004  A2 $lv_004
        
inc_indent
            
// OCTET STRING
            
? "23"
            
octetstr_0050_v FDDAE80754B4B68FE8EA4F38C94C3F4A
            
octetstr_0050   call add_length$octetstr_0050_v )
            
octetstr_0050   04 $octetstr_0050
        
dec_indent
        
// CONTEXT SPECIFIC (4)
        
lv_005  $octetstr_0050
        
lv_005  call add_length$lv_005 )
        
lv_005  A4 $lv_005
        
inc_indent
            
// OCTET STRING
            
? "24"
            
octetstr_0060_v 4D22326C042BA0E4EAF9DF7D59487242
            
octetstr_0060   call add_length$octetstr_0060_v )
            
octetstr_0060   04 $octetstr_0060
        
dec_indent
        
// CONTEXT SPECIFIC (5)
        
lv_006  $octetstr_0060
        
lv_006  call add_length$lv_006 )
        
lv_006  A5 $lv_006
        
inc_indent
            
// OCTET STRING
            
? "25"
            
octetstr_0070_v ECD9A48B5E05941E13530FB29BD7A49E
            
octetstr_0070   call add_length$octetstr_0070_v )
            
octetstr_0070   04 $octetstr_0070
        
dec_indent
        
// CONTEXT SPECIFIC (6)
        
astr_007    $octetstr_0070
        
astr_007    call add_length$astr_007 )
        
astr_007    A6 $astr_007
    
dec_indent
    
// SEQUENCE
    
lv_00   $int_000 $lv_001 $lv_002 $lv_003 $lv_004 $lv_005 $lv_006 $astr_007
    
lv_00   call add_length$lv_00 )
    
lv_00   30 $lv_00
    
inc_indent
        
inc_indent
            
inc_indent
                
inc_indent
                    
inc_indent
                        
inc_indent
                            
inc_indent
                                
// INTEGER
                                
? "26"
                                
int_010000000_v 02
                                
int_010000000   call add_length$int_010000000_v )
                                
int_010000000   02 $int_010000000
                            
dec_indent
                            
// CONTEXT SPECIFIC (0)
                            
lv_01000000     $int_010000000
                            
lv_01000000     call add_length$lv_01000000 )
                            
lv_01000000     A0 $lv_01000000
                            
// INTEGER
                            
? "27"
                            
int_01000001_v  00C7A7947DEE702F47
                            
int_01000001    call add_length$int_01000001_v )
                            
int_01000001    02 $int_01000001
                            
inc_indent
                                
// OBJECT IDENTIFIER
                                
? "28"
                                
// 1.2.840.113549.1.1.11 - sha256WithRSAEncryption
                                
oid_010000020_v oid_encrypt"1.2.840.113549.1.1.11" )
                                
oid_010000020   06$oid_010000020_v )
                                
// NULL
                                
lv_010000021    05(  )
                            
dec_indent
                            
// SEQUENCE
                            
lv_01000002 $oid_010000020 $lv_010000021
                            
lv_01000002 call add_length$lv_01000002 )
                            
lv_01000002 30 $lv_01000002
                            
inc_indent
                                
inc_indent
                                    
inc_indent
                                        
// OBJECT IDENTIFIER
                                        
? "29"
                                        
// 2.5.4.6 - countryName
                                        
oid_01000003000_v   oid_encrypt"2.5.4.6" )
                                        
oid_01000003000     06$oid_01000003000_v )
                                        
// Printable String
                                        
? "30"
                                        
// "FI"
                                        
astr_01000003001_v  4649
                                        
astr_01000003001    call add_length$astr_01000003001_v )
                                        
astr_01000003001    13 $astr_01000003001
                                    
dec_indent
                                    
// SEQUENCE
                                    
lv_0100000300   $oid_01000003000 $astr_01000003001
                                    
lv_0100000300   call add_length$lv_0100000300 )
                                    
lv_0100000300   30 $lv_0100000300
                                
dec_indent
                                
// SET
                                
lv_010000030    $lv_0100000300
                                
lv_010000030    call add_length$lv_010000030 )
                                
lv_010000030    31 $lv_010000030
                                
inc_indent
                                    
inc_indent
                                        
// OBJECT IDENTIFIER
                                        
? "31"
                                        
// 2.5.4.8 - stateOrProvinceName
                                        
oid_01000003100_v   oid_encrypt"2.5.4.8" )
                                        
oid_01000003100     06$oid_01000003100_v )
                                        
// UTF8 String
                                        
? "32"
                                        
// "Uusimaa"
                                        
u8str_01000003101_v 557573696D6161
                                        
u8str_01000003101   call add_length$u8str_01000003101_v )
                                        
u8str_01000003101   0C $u8str_01000003101
                                    
dec_indent
                                    
// SEQUENCE
                                    
lv_0100000310   $oid_01000003100 $u8str_01000003101
                                    
lv_0100000310   call add_length$lv_0100000310 )
                                    
lv_0100000310   30 $lv_0100000310
                                
dec_indent
                                
// SET
                                
lv_010000031    $lv_0100000310
                                
lv_010000031    call add_length$lv_010000031 )
                                
lv_010000031    31 $lv_010000031
                                
inc_indent
                                    
inc_indent
                                        
// OBJECT IDENTIFIER
                                        
? "33"
                                        
// 2.5.4.7 - localityName
                                        
oid_01000003200_v   oid_encrypt"2.5.4.7" )
                                        
oid_01000003200     06$oid_01000003200_v )
                                        
// UTF8 String
                                        
? "34"
                                        
// "Espoo"
                                        
u8str_01000003201_v 4573706F6F
                                        
u8str_01000003201   call add_length$u8str_01000003201_v )
                                        
u8str_01000003201   0C $u8str_01000003201
                                    
dec_indent
                                    
// SEQUENCE
                                    
lv_0100000320   $oid_01000003200 $u8str_01000003201
                                    
lv_0100000320   call add_length$lv_0100000320 )
                                    
lv_0100000320   30 $lv_0100000320
                                
dec_indent
                                
// SET
                                
lv_010000032    $lv_0100000320
                                
lv_010000032    call add_length$lv_010000032 )
                                
lv_010000032    31 $lv_010000032
                                
inc_indent
                                    
inc_indent
                                        
// OBJECT IDENTIFIER
                                        
? "35"
                                        
// 2.5.4.10 - organizationName
                                        
oid_01000003300_v   oid_encrypt"2.5.4.10" )
                                        
oid_01000003300     06$oid_01000003300_v )
                                        
// UTF8 String
                                        
? "36"
                                        
// "Nokia"
                                        
u8str_01000003301_v 4E6F6B6961
                                        
u8str_01000003301   call add_length$u8str_01000003301_v )
                                        
u8str_01000003301   0C $u8str_01000003301
                                    
dec_indent
                                    
// SEQUENCE
                                    
lv_0100000330   $oid_01000003300 $u8str_01000003301
                                    
lv_0100000330   call add_length$lv_0100000330 )
                                    
lv_0100000330   30 $lv_0100000330
                                
dec_indent
                                
// SET
                                
lv_010000033    $lv_0100000330
                                
lv_010000033    call add_length$lv_010000033 )
                                
lv_010000033    31 $lv_010000033
                                
inc_indent
                                    
inc_indent
                                        
// OBJECT IDENTIFIER
                                        
? "37"
                                        
// 2.5.4.11 - organizationalUnitName
                                        
oid_01000003400_v   oid_encrypt"2.5.4.11" )
                                        
oid_01000003400     06$oid_01000003400_v )
                                        
// UTF8 String
                                        
? "38"
                                        
// "Security"
                                        
u8str_01000003401_v 5365637572697479
                                        
u8str_01000003401   call add_length$u8str_01000003401_v )
                                        
u8str_01000003401   0C $u8str_01000003401
                                    
dec_indent
                                    
// SEQUENCE
                                    
lv_0100000340   $oid_01000003400 $u8str_01000003401
                                    
lv_0100000340   call add_length$lv_0100000340 )
                                    
lv_0100000340   30 $lv_0100000340
                                
dec_indent
                                
// SET
                                
lv_010000034    $lv_0100000340
                                
lv_010000034    call add_length$lv_010000034 )
                                
lv_010000034    31 $lv_010000034
                                
inc_indent
                                    
inc_indent
                                        
// OBJECT IDENTIFIER
                                        
? "39"
                                        
// 2.5.4.3 - commonName
                                        
oid_01000003500_v   oid_encrypt"2.5.4.3" )
                                        
oid_01000003500     06$oid_01000003500_v )
                                        
// UTF8 String
                                        
? "40"
                                        
// "NetGuard Test CA"
                                        
u8str_01000003501_v 4E657447756172642054657374204341
                                        
u8str_01000003501   call add_length$u8str_01000003501_v )
                                        
u8str_01000003501   0C $u8str_01000003501
                                    
dec_indent
                                    
// SEQUENCE
                                    
lv_0100000350   $oid_01000003500 $u8str_01000003501
                                    
lv_0100000350   call add_length$lv_0100000350 )
                                    
lv_0100000350   30 $lv_0100000350
                                
dec_indent
                                
// SET
                                
lv_010000035    $lv_0100000350
                                
lv_010000035    call add_length$lv_010000035 )
                                
lv_010000035    31 $lv_010000035
                            
dec_indent
                            
// SEQUENCE
                            
lv_01000003 $lv_010000030 $lv_010000031 $lv_010000032 $lv_010000033 $lv_010000034 $lv_010000035
                            
lv_01000003 call add_length$lv_01000003 )
                            
lv_01000003 30 $lv_01000003
                            
inc_indent
                                
// UTC Time
                                
? "41"
                                
time_010000040_v    utctime_str_to_hex"2017.01.19 22:46:39" )
                                
time_010000040      17$time_010000040_v )
                                
// UTC Time
                                
? "42"
                                
time_010000041_v    utctime_str_to_hex"2027.01.17 22:46:39" )
                                
time_010000041      17$time_010000041_v )
                            
dec_indent
                            
// SEQUENCE
                            
lv_01000004 $time_010000040 $time_010000041
                            
lv_01000004 call add_length$lv_01000004 )
                            
lv_01000004 30 $lv_01000004
                            
inc_indent
                                
inc_indent
                                    
inc_indent
                                        
// OBJECT IDENTIFIER
                                        
? "43"
                                        
// 2.5.4.6 - countryName
                                        
oid_01000005000_v   oid_encrypt"2.5.4.6" )
                                        
oid_01000005000     06$oid_01000005000_v )
                                        
// Printable String
                                        
? "44"
                                        
// "FI"
                                        
astr_01000005001_v  4649
                                        
astr_01000005001    call add_length$astr_01000005001_v )
                                        
astr_01000005001    13 $astr_01000005001
                                    
dec_indent
                                    
// SEQUENCE
                                    
lv_0100000500   $oid_01000005000 $astr_01000005001
                                    
lv_0100000500   call add_length$lv_0100000500 )
                                    
lv_0100000500   30 $lv_0100000500
                                
dec_indent
                                
// SET
                                
lv_010000050    $lv_0100000500
                                
lv_010000050    call add_length$lv_010000050 )
                                
lv_010000050    31 $lv_010000050
                                
inc_indent
                                    
inc_indent
                                        
// OBJECT IDENTIFIER
                                        
? "45"
                                        
// 2.5.4.8 - stateOrProvinceName
                                        
oid_01000005100_v   oid_encrypt"2.5.4.8" )
                                        
oid_01000005100     06$oid_01000005100_v )
                                        
// UTF8 String
                                        
? "46"
                                        
// "Uusimaa"
                                        
u8str_01000005101_v 557573696D6161
                                        
u8str_01000005101   call add_length$u8str_01000005101_v )
                                        
u8str_01000005101   0C $u8str_01000005101
                                    
dec_indent
                                    
// SEQUENCE
                                    
lv_0100000510   $oid_01000005100 $u8str_01000005101
                                    
lv_0100000510   call add_length$lv_0100000510 )
                                    
lv_0100000510   30 $lv_0100000510
                                
dec_indent
                                
// SET
                                
lv_010000051    $lv_0100000510
                                
lv_010000051    call add_length$lv_010000051 )
                                
lv_010000051    31 $lv_010000051
                                
inc_indent
                                    
inc_indent
                                        
// OBJECT IDENTIFIER
                                        
? "47"
                                        
// 2.5.4.7 - localityName
                                        
oid_01000005200_v   oid_encrypt"2.5.4.7" )
                                        
oid_01000005200     06$oid_01000005200_v )
                                        
// UTF8 String
                                        
? "48"
                                        
// "Espoo"
                                        
u8str_01000005201_v 4573706F6F
                                        
u8str_01000005201   call add_length$u8str_01000005201_v )
                                        
u8str_01000005201   0C $u8str_01000005201
                                    
dec_indent
                                    
// SEQUENCE
                                    
lv_0100000520   $oid_01000005200 $u8str_01000005201
                                    
lv_0100000520   call add_length$lv_0100000520 )
                                    
lv_0100000520   30 $lv_0100000520
                                
dec_indent
                                
// SET
                                
lv_010000052    $lv_0100000520
                                
lv_010000052    call add_length$lv_010000052 )
                                
lv_010000052    31 $lv_010000052
                                
inc_indent
                                    
inc_indent
                                        
// OBJECT IDENTIFIER
                                        
? "49"
                                        
// 2.5.4.10 - organizationName
                                        
oid_01000005300_v   oid_encrypt"2.5.4.10" )
                                        
oid_01000005300     06$oid_01000005300_v )
                                        
// UTF8 String
                                        
? "50"
                                        
// "Nokia"
                                        
u8str_01000005301_v 4E6F6B6961
                                        
u8str_01000005301   call add_length$u8str_01000005301_v )
                                        
u8str_01000005301   0C $u8str_01000005301
                                    
dec_indent
                                    
// SEQUENCE
                                    
lv_0100000530   $oid_01000005300 $u8str_01000005301
                                    
lv_0100000530   call add_length$lv_0100000530 )
                                    
lv_0100000530   30 $lv_0100000530
                                
dec_indent
                                
// SET
                                
lv_010000053    $lv_0100000530
                                
lv_010000053    call add_length$lv_010000053 )
                                
lv_010000053    31 $lv_010000053
                                
inc_indent
                                    
inc_indent
                                        
// OBJECT IDENTIFIER
                                        
? "51"
                                        
// 2.5.4.11 - organizationalUnitName
                                        
oid_01000005400_v   oid_encrypt"2.5.4.11" )
                                        
oid_01000005400     06$oid_01000005400_v )
                                        
// UTF8 String
                                        
? "52"
                                        
// "Security"
                                        
u8str_01000005401_v 5365637572697479
                                        
u8str_01000005401   call add_length$u8str_01000005401_v )
                                        
u8str_01000005401   0C $u8str_01000005401
                                    
dec_indent
                                    
// SEQUENCE
                                    
lv_0100000540   $oid_01000005400 $u8str_01000005401
                                    
lv_0100000540   call add_length$lv_0100000540 )
                                    
lv_0100000540   30 $lv_0100000540
                                
dec_indent
                                
// SET
                                
lv_010000054    $lv_0100000540
                                
lv_010000054    call add_length$lv_010000054 )
                                
lv_010000054    31 $lv_010000054
                                
inc_indent
                                    
inc_indent
                                        
// OBJECT IDENTIFIER
                                        
? "53"
                                        
// 2.5.4.3 - commonName
                                        
oid_01000005500_v   oid_encrypt"2.5.4.3" )
                                        
oid_01000005500     06$oid_01000005500_v )
                                        
// UTF8 String
                                        
? "54"
                                        
// "NetGuard Test CA"
                                        
u8str_01000005501_v 4E657447756172642054657374204341
                                        
u8str_01000005501   call add_length$u8str_01000005501_v )
                                        
u8str_01000005501   0C $u8str_01000005501
                                    
dec_indent
                                    
// SEQUENCE
                                    
lv_0100000550   $oid_01000005500 $u8str_01000005501
                                    
lv_0100000550   call add_length$lv_0100000550 )
                                    
lv_0100000550   30 $lv_0100000550
                                
dec_indent
                                
// SET
                                
lv_010000055    $lv_0100000550
                                
lv_010000055    call add_length$lv_010000055 )
                                
lv_010000055    31 $lv_010000055
                            
dec_indent
                            
// SEQUENCE
                            
lv_01000005 $lv_010000050 $lv_010000051 $lv_010000052 $lv_010000053 $lv_010000054 $lv_010000055
                            
lv_01000005 call add_length$lv_01000005 )
                            
lv_01000005 30 $lv_01000005
                            
inc_indent
                                
inc_indent
                                    
// OBJECT IDENTIFIER
                                    
? "55"
                                    
// 1.2.840.113549.1.1.1 - rsaEncryption
                                    
oid_0100000600_v    oid_encrypt"1.2.840.113549.1.1.1" )
                                    
oid_0100000600      06$oid_0100000600_v )
                                    
// NULL
                                    
lv_0100000601       05(  )
                                
dec_indent
                                
// SEQUENCE
                                
lv_010000060    $oid_0100000600 $lv_0100000601
                                
lv_010000060    call add_length$lv_010000060 )
                                
lv_010000060    30 $lv_010000060
                                
inc_indent
                                    
inc_indent
                                        
// INTEGER
                                        
? "56"
                                        
int_01000006100_v   00DFBF75109393A0BE2A752507F742F5BC212B54CE7E429681AA50ACE0DB31CBC20B06530CEEF07253ABF3CD1B73888B729EE6D155BD4BEC44ADF3ED1848A0447A3F77029D02C9365E954D307A3421D0738AF56DE6BFB288CD0F842C2A4B0B31239D63A516DABCD3F927686862F992D0CB3F6049A37D0BE73DAB710620962B9FB46D17614A4BF32C1D3D93A6EDEEA2A5EEB83803721A9592E731698C85797D80B3B89C347122062622C0135829809A37221F2E8A0D486CE6B08C4AD81D082CD7D24901F28EB260B24B90FD1532D0B57B7D5910DC0630AF8824801D8F55D006866858EBD45E7F907810FB8F6EB9A8E2011D1949186B749B5F8B825CE718D7DE5FAA072C2B9AE366B4D8981C983BA0C1BED5BF575D9106A6A5B1829F31169DAD07C6D02DF96B786DCBD9AD836F1C442747296F28E2867408A3758F56A91DEFC58FD43E17C4FCEBEAFDD10C2CBCB18E4A4D3ADA73D0446D4EC796E2F3AFBB3305E626B136C031D740691257F81A8F1121D79C4928BC89CF839626C4FD773B0D7696C7E7ED164530FD7B7D740BFA34A15A910D794CEFA23436821822BF2A761F32226E28891FE7463EB85594F0AA3C57B9974449FFDCE563C35A5502BAC67B526F107EBD596CE2ECCE8F70BA09C1294490C871AA089295DF779B86FD42C8214CFE27ED339454C0F832B30DDD798BAC792E39BD00B857E5CB7FB21432609AD891AE18FF
                                        
int_01000006100     call add_length$int_01000006100_v )
                                        
int_01000006100     02 $int_01000006100
                                        
// INTEGER
                                        
? "57"
                                        
int_01000006101_v   010001
                                        
int_01000006101     call add_length$int_01000006101_v )
                                        
int_01000006101     02 $int_01000006101
                                    
dec_indent
                                    
// SEQUENCE
                                    
lv_0100000610   $int_01000006100 $int_01000006101
                                    
lv_0100000610   call add_length$lv_0100000610 )
                                    
lv_0100000610   30 $lv_0100000610
                                
dec_indent
                                
// BIT STRING
                                
unused_bits         00
                                
bitstr_010000061    $unused_bits $lv_0100000610
                                
bitstr_010000061    call add_length$bitstr_010000061 )
                                
bitstr_010000061    03 $bitstr_010000061
                            
dec_indent
                            
// SEQUENCE
                            
lv_01000006 $lv_010000060 $bitstr_010000061
                            
lv_01000006 call add_length$lv_01000006 )
                            
lv_01000006 30 $lv_01000006
                            
inc_indent
                                
inc_indent
                                    
inc_indent
                                        
// OBJECT IDENTIFIER
                                        
? "58"
                                        
// 2.5.29.14 - (使用者密钥标识符)subjectKeyIdentifier
                                        
oid_01000007000_v   oid_encrypt"2.5.29.14" )
                                        
oid_01000007000     06$oid_01000007000_v )
                                        
inc_indent
                                            
// OCTET STRING
                                            
? "59"
                                            
octetstr_010000070010_v E0D318997F74A9B0F959AC9CC0130B545B090DC7
                                            
octetstr_010000070010   call add_length$octetstr_010000070010_v )
                                            
octetstr_010000070010   04 $octetstr_010000070010
                                        
dec_indent
                                        
// OCTET STRING
                                        
octetstr_01000007001    $octetstr_010000070010
                                        
octetstr_01000007001    call add_length$octetstr_01000007001 )
                                        
octetstr_01000007001    04 $octetstr_01000007001
                                    
dec_indent
                                    
// SEQUENCE
                                    
lv_0100000700   $oid_01000007000 $octetstr_01000007001
                                    
lv_0100000700   call add_length$lv_0100000700 )
                                    
lv_0100000700   30 $lv_0100000700
                                    
inc_indent
                                        
// OBJECT IDENTIFIER
                                        
? "60"
                                        
// 2.5.29.35 - (颁发机构密钥标识符)authorityKeyIdentifier
                                        
oid_01000007010_v   oid_encrypt"2.5.29.35" )
                                        
oid_01000007010     06$oid_01000007010_v )
                                        
inc_indent
                                            
inc_indent
                                                
// CONTEXT SPECIFIC (0)
                                                
? "61"
                                                
lv_0100000701100_v  E0D318997F74A9B0F959AC9CC0130B545B090DC7
                                                
lv_0100000701100    call add_length$lv_0100000701100_v )
                                                
lv_0100000701100    80 $lv_0100000701100
                                            
dec_indent
                                            
// SEQUENCE
                                            
lv_010000070110 $lv_0100000701100
                                            
lv_010000070110 call add_length$lv_010000070110 )
                                            
lv_010000070110 30 $lv_010000070110
                                        
dec_indent
                                        
// OCTET STRING
                                        
octetstr_01000007011    $lv_010000070110
                                        
octetstr_01000007011    call add_length$octetstr_01000007011 )
                                        
octetstr_01000007011    04 $octetstr_01000007011
                                    
dec_indent
                                    
// SEQUENCE
                                    
lv_0100000701   $oid_01000007010 $octetstr_01000007011
                                    
lv_0100000701   call add_length$lv_0100000701 )
                                    
lv_0100000701   30 $lv_0100000701
                                    
inc_indent
                                        
// OBJECT IDENTIFIER
                                        
? "62"
                                        
// 2.5.29.19 - (基本约束)basicConstraints
                                        
oid_01000007020_v   oid_encrypt"2.5.29.19" )
                                        
oid_01000007020     06$oid_01000007020_v )
                                        
// BOOLEAN
                                        
? "63"
                                        
lv_01000007021_v    FF
                                        
lv_01000007021      call add_length$lv_01000007021_v )
                                        
lv_01000007021      01 $lv_01000007021
                                        
inc_indent
                                            
inc_indent
                                                
// BOOLEAN
                                                
? "64"
                                                
lv_0100000702200_v  FF
                                                
lv_0100000702200    call add_length$lv_0100000702200_v )
                                                
lv_0100000702200    01 $lv_0100000702200
                                            
dec_indent
                                            
// SEQUENCE
                                            
lv_010000070220 $lv_0100000702200
                                            
lv_010000070220 call add_length$lv_010000070220 )
                                            
lv_010000070220 30 $lv_010000070220
                                        
dec_indent
                                        
// OCTET STRING
                                        
octetstr_01000007022    $lv_010000070220
                                        
octetstr_01000007022    call add_length$octetstr_01000007022 )
                                        
octetstr_01000007022    04 $octetstr_01000007022
                                    
dec_indent
                                    
// SEQUENCE
                                    
lv_0100000702   $oid_01000007020 $lv_01000007021 $octetstr_01000007022
                                    
lv_0100000702   call add_length$lv_0100000702 )
                                    
lv_0100000702   30 $lv_0100000702
                                
dec_indent
                                
// SEQUENCE
                                
lv_010000070    $lv_0100000700 $lv_0100000701 $lv_0100000702
                                
lv_010000070    call add_length$lv_010000070 )
                                
lv_010000070    30 $lv_010000070
                            
dec_indent
                            
// CONTEXT SPECIFIC (3)
                            
lv_01000007 $lv_010000070
                            
lv_01000007 call add_length$lv_01000007 )
                            
lv_01000007 A3 $lv_01000007
                        
dec_indent
                        
// SEQUENCE
                        
lv_0100000  $lv_01000000 $int_01000001 $lv_01000002 $lv_01000003 $lv_01000004 $lv_01000005 $lv_01000006 $lv_01000007
                        
lv_0100000  call add_length$lv_0100000 )
                        
lv_0100000  30 $lv_0100000
                        
inc_indent
                            
// OBJECT IDENTIFIER
                            
? "65"
                            
// 1.2.840.113549.1.1.11 - sha256WithRSAEncryption
                            
oid_01000010_v  oid_encrypt"1.2.840.113549.1.1.11" )
                            
oid_01000010    06$oid_01000010_v )
                            
// NULL
                            
lv_01000011     05(  )
                        
dec_indent
                        
// SEQUENCE
                        
lv_0100001          $oid_01000010 $lv_01000011
                        
lv_0100001          call add_length$lv_0100001 )
                        
lv_0100001          30 $lv_0100001
                        
// BIT STRING
                        
? "66"
                        
unused_bits         00
                        
bitstr_0100002_v    6593D431FA31A64AAF00A678693794CA66544B3E523CF516DD118B0756A8F5A4B8B789E6C56721142A35DE1D2ADF88E68C8983903826EB105454730B7B4E6B3E3BFDE8C69C7728B3FE06285E3EE1CB8ECF9F7EAF58E347793224DC9F651323CCAF33F8E35CF323AF165596A952BB317ACDDA0B966541AE8E50C000B5060AA19D10AD2F54E6B3A239358A8482CF564186658F7EE11E1ECB1D43F5EEFE15591B101724F46A8A9273EA60C16DB5DBFE385F350642126D565E0E0595640E282966106A4974323A2EF57DEBEF9EEBBB94BC0FD0D4E76ADA54380F5B328B4950F49F979138204C40F7B5E7460AC970C32FA65228438E429042C75FC59370E917425260F89C34F899F3E5D658735254D6102DF22602035E30D145E35FE4940A654039F41FC11BBA1F9168745151B0897239EF18082828DD194FF276C452B4EA837FB1792C13E067B0165C5758204A842908B942A4D31FC6F8213B3F2AE7471F5EA8EA056B92C7BA9676341B617A99A4890F1A59553D0FD8B73BBD067F9C96D2D6015D949442B8BA4EF5CC659FA2397BC4596900A6C39E09B5E4D676A460334A5EC1838EC2F4C745839FCB70E648E9C68F12EED6FAF76028711C7A5E5B14C4EBB059F81A16D07744A4DD5463888DE13E8C17159C5E6A52E4BCBA84324172AA4A1EE51C9553C2E1AC1E27DB66F3738B0D725CF37AF26892D0F7D7B35B98A7B79249828E6F
                        
bitstr_0100002      $unused_bits $bitstr_0100002_v
                        
bitstr_0100002      call add_length$bitstr_0100002 )
                        
bitstr_0100002      03 $bitstr_0100002
                    
dec_indent
                    
// SEQUENCE
                    
lv_010000   $lv_0100000 $lv_0100001 $bitstr_0100002
                    
lv_010000   call add_length$lv_010000 )
                    
lv_010000   30 $lv_010000
                
dec_indent
                
// SEQUENCE
                
lv_01000    $lv_010000
                
lv_01000    call add_length$lv_01000 )
                
lv_01000    30 $lv_01000
            
dec_indent
            
// CONTEXT SPECIFIC (1)
            
lv_0100 $lv_01000
            
lv_0100 call add_length$lv_0100 )
            
lv_0100 A1 $lv_0100
            
inc_indent
                
inc_indent
                    
// INTEGER
                    
? "67"
                    
int_010100_v    00
                    
int_010100      call add_length$int_010100_v )
                    
int_010100      02 $int_010100
                    
inc_indent
                        
// INTEGER
                        
? "68"
                        
int_0101010_v   03
                        
int_0101010     call add_length$int_0101010_v )
                        
int_0101010     02 $int_0101010
                    
dec_indent
                    
// SEQUENCE
                    
lv_010101   $int_0101010
                    
lv_010101   call add_length$lv_010101 )
                    
lv_010101   30 $lv_010101
                
dec_indent
                
// SEQUENCE
                
lv_01010    $int_010100 $lv_010101
                
lv_01010    call add_length$lv_01010 )
                
lv_01010    30 $lv_01010
            
dec_indent
            
// SEQUENCE
            
lv_0101 $lv_01010
            
lv_0101 call add_length$lv_0101 )
            
lv_0101 30 $lv_0101
        
dec_indent
        
// SEQUENCE
        
lv_010  $lv_0100 $lv_0101
        
lv_010  call add_length$lv_010 )
        
lv_010  30 $lv_010
    
dec_indent
    
// CONTEXT SPECIFIC (1)
    
lv_01   $lv_010
    
lv_01   call add_length$lv_01 )
    
lv_01   A1 $lv_01
    
inc_indent
        
// BIT STRING
        
? "69"
        
unused_bits     00
        
bitstr_020_v    B63EB3DA34A17BAA91E7FF5851A771D89A5D757E
        
bitstr_020      $unused_bits $bitstr_020_v
        
bitstr_020      call add_length$bitstr_020 )
        
bitstr_020      03 $bitstr_020
    
dec_indent
    
// CONTEXT SPECIFIC (0)
    
lv_02   $bitstr_020
    
lv_02   call add_length$lv_02 )
    
lv_02   A0 $lv_02
dec_indent
// SEQUENCE
lv_0    $lv_00 $lv_01 $lv_02
lv_0    call add_length$lv_0 )
lv_0    30 $lv_0

xx = 3082070530820118020102A46F306D310B30090603550406130246493110300E06035504080C07557573696D6161310E300C06035504070C054573706F6F310E300C060355040A0C054E6F6B69613111300F060355040B0C0853656375726974793119301706035504030C104E657447756172642054657374204341A4223020310F300D06035504030C064D617274696E310D300B060355040A0C0454657374A13A303806092A864886F67D07420D302B041074DC1FA482897E76826C32ADBE3C81DA300706052B0E03021A02020400300A06082B06010505080102A206040434373837A4120410FDDAE80754B4B68FE8EA4F38C94C3F4AA51204104D22326C042BA0E4EAF9DF7D59487242A6120410ECD9A48B5E05941E13530FB29BD7A49EA18205CC308205C8A18205B8308205B4308205B030820398A003020102020900C7A7947DEE702F47300D06092A864886F70D01010B0500306D310B30090603550406130246493110300E06035504080C07557573696D6161310E300C06035504070C054573706F6F310E300C060355040A0C054E6F6B69613111300F060355040B0C0853656375726974793119301706035504030C104E657447756172642054657374204341301E170D3137303131393134343633395A170D3237303131373134343633395A306D310B30090603550406130246493110300E06035504080C07557573696D6161310E300C06035504070C054573706F6F310E300C060355040A0C054E6F6B69613111300F060355040B0C0853656375726974793119301706035504030C104E65744775617264205465737420434130820222300D06092A864886F70D01010105000382020F003082020A0282020100DFBF75109393A0BE2A752507F742F5BC212B54CE7E429681AA50ACE0DB31CBC20B06530CEEF07253ABF3CD1B73888B729EE6D155BD4BEC44ADF3ED1848A0447A3F77029D02C9365E954D307A3421D0738AF56DE6BFB288CD0F842C2A4B0B31239D63A516DABCD3F927686862F992D0CB3F6049A37D0BE73DAB710620962B9FB46D17614A4BF32C1D3D93A6EDEEA2A5EEB83803721A9592E731698C85797D80B3B89C347122062622C0135829809A37221F2E8A0D486CE6B08C4AD81D082CD7D24901F28EB260B24B90FD1532D0B57B7D5910DC0630AF8824801D8F55D006866858EBD45E7F907810FB8F6EB9A8E2011D1949186B749B5F8B825CE718D7DE5FAA072C2B9AE366B4D8981C983BA0C1BED5BF575D9106A6A5B1829F31169DAD07C6D02DF96B786DCBD9AD836F1C442747296F28E2867408A3758F56A91DEFC58FD43E17C4FCEBEAFDD10C2CBCB18E4A4D3ADA73D0446D4EC796E2F3AFBB3305E626B136C031D740691257F81A8F1121D79C4928BC89CF839626C4FD773B0D7696C7E7ED164530FD7B7D740BFA34A15A910D794CEFA23436821822BF2A761F32226E28891FE7463EB85594F0AA3C57B9974449FFDCE563C35A5502BAC67B526F107EBD596CE2ECCE8F70BA09C1294490C871AA089295DF779B86FD42C8214CFE27ED339454C0F832B30DDD798BAC792E39BD00B857E5CB7FB21432609AD891AE18FF0203010001A3533051301D0603551D0E04160414E0D318997F74A9B0F959AC9CC0130B545B090DC7301F0603551D23041830168014E0D318997F74A9B0F959AC9CC0130B545B090DC7300F0603551D130101FF040530030101FF300D06092A864886F70D01010B050003820201006593D431FA31A64AAF00A678693794CA66544B3E523CF516DD118B0756A8F5A4B8B789E6C56721142A35DE1D2ADF88E68C8983903826EB105454730B7B4E6B3E3BFDE8C69C7728B3FE06285E3EE1CB8ECF9F7EAF58E347793224DC9F651323CCAF33F8E35CF323AF165596A952BB317ACDDA0B966541AE8E50C000B5060AA19D10AD2F54E6B3A239358A8482CF564186658F7EE11E1ECB1D43F5EEFE15591B101724F46A8A9273EA60C16DB5DBFE385F350642126D565E0E0595640E282966106A4974323A2EF57DEBEF9EEBBB94BC0FD0D4E76ADA54380F5B328B4950F49F979138204C40F7B5E7460AC970C32FA65228438E429042C75FC59370E917425260F89C34F899F3E5D658735254D6102DF22602035E30D145E35FE4940A654039F41FC11BBA1F9168745151B0897239EF18082828DD194FF276C452B4EA837FB1792C13E067B0165C5758204A842908B942A4D31FC6F8213B3F2AE7471F5EA8EA056B92C7BA9676341B617A99A4890F1A59553D0FD8B73BBD067F9C96D2D6015D949442B8BA4EF5CC659FA2397BC4596900A6C39E09B5E4D676A460334A5EC1838EC2F4C745839FCB70E648E9C68F12EED6FAF76028711C7A5E5B14C4EBB059F81A16D07744A4DD5463888DE13E8C17159C5E6A52E4BCBA84324172AA4A1EE51C9553C2E1AC1E27DB66F3738B0D725CF37AF26892D0F7D7B35B98A7B79249828E6F300A30080201003003020103A017031500B63EB3DA34A17BAA91E7FF5851A771D89A5D757E
if $lv_0 != $xx
    
?
    
pause
endif

end

add_Length:
    
value   getpara()

    
tmplen  datalen$value )
    
if $tmplen < 80
        
value   = ( $value )
    
else if $tmplen >= 0100
        
value   82 { $value }
    
else
        
value   81 ( $value )
    
endif

return $value