1<?php
2
3/**
4 * ECPrivateKey
5 *
6 * From: https://tools.ietf.org/html/rfc5915
7 *
8 * PHP version 5
9 *
10 * @category  File
11 * @package   ASN1
12 * @author    Jim Wigginton <terrafrost@php.net>
13 * @copyright 2016 Jim Wigginton
14 * @license   http://www.opensource.org/licenses/mit-license.html  MIT License
15 * @link      http://phpseclib.sourceforge.net
16 */
17
18namespace phpseclib3\File\ASN1\Maps;
19
20use phpseclib3\File\ASN1;
21
22/**
23 * ECPrivateKey
24 *
25 * @package ASN1
26 * @author  Jim Wigginton <terrafrost@php.net>
27 * @access  public
28 */
29abstract class ECPrivateKey
30{
31    const MAP = [
32        'type' => ASN1::TYPE_SEQUENCE,
33        'children' => [
34            'version' => [
35                'type' => ASN1::TYPE_INTEGER,
36                'mapping' => [1 => 'ecPrivkeyVer1']
37            ],
38            'privateKey' => ['type' => ASN1::TYPE_OCTET_STRING],
39            'parameters' => [
40                'constant' => 0,
41                'optional' => true,
42                'explicit' => true
43            ] + ECParameters::MAP,
44            'publicKey' => [
45                'type' => ASN1::TYPE_BIT_STRING,
46                'constant' => 1,
47                'optional' => true,
48                'explicit' => true
49            ]
50        ]
51    ];
52}
53