PersonalName.php 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. <?php
  2. /**
  3. * PersonalName
  4. *
  5. * PHP version 5
  6. *
  7. * @category File
  8. * @package ASN1
  9. * @author Jim Wigginton <terrafrost@php.net>
  10. * @copyright 2016 Jim Wigginton
  11. * @license http://www.opensource.org/licenses/mit-license.html MIT License
  12. * @link http://phpseclib.sourceforge.net
  13. */
  14. namespace phpseclib\File\ASN1\Maps;
  15. use phpseclib\File\ASN1;
  16. /**
  17. * PersonalName
  18. *
  19. * @package ASN1
  20. * @author Jim Wigginton <terrafrost@php.net>
  21. * @access public
  22. */
  23. abstract class PersonalName
  24. {
  25. const MAP = [
  26. 'type' => ASN1::TYPE_SET,
  27. 'children' => [
  28. 'surname' => [
  29. 'type' => ASN1::TYPE_PRINTABLE_STRING,
  30. 'constant' => 0,
  31. 'optional' => true,
  32. 'implicit' => true
  33. ],
  34. 'given-name' => [
  35. 'type' => ASN1::TYPE_PRINTABLE_STRING,
  36. 'constant' => 1,
  37. 'optional' => true,
  38. 'implicit' => true
  39. ],
  40. 'initials' => [
  41. 'type' => ASN1::TYPE_PRINTABLE_STRING,
  42. 'constant' => 2,
  43. 'optional' => true,
  44. 'implicit' => true
  45. ],
  46. 'generation-qualifier' => [
  47. 'type' => ASN1::TYPE_PRINTABLE_STRING,
  48. 'constant' => 3,
  49. 'optional' => true,
  50. 'implicit' => true
  51. ]
  52. ]
  53. ];
  54. }