// Copyright (c) 2011 DMTF.  All rights reserved.
   [Version ( "2.29.0" ), 
    UMLPackagePath ( "CIM::User::PublicKey" ), 
    Description ( 
       "A UnsignedCredential represents an unsigned public key "
       "credential. Services accept the public key as authentic "
       "because of a direct trust relationship, rather than via a "
       "third-party Certificate Authority." )]
class CIM_UnsignedCredential : CIM_Credential {

      [Key, Override ( "InstanceID" )]
   string InstanceID;

      [Description ( 
          "The Identity of the Peer with whom a direct trust "
          "relationship exists. The public key may be used for "
          "security functions with the Peer." ), 
       MaxLen ( 256 ), 
       ModelCorrespondence { 
          "CIM_UnsignedCredential.PeerIdentityType" }]
   string PeerIdentity;

      [Description ( 
          "PeerIdentityType is used to describe the type of the "
          "PeerIdentity. The currently defined values are used for "
          "IKE identities." ), 
       ValueMap { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", 
          "10", "11" }, 
       Values { "Other", "IPV4_ADDR", "FQDN", "USER_FQDN", 
          "IPV4_ADDR_SUBNET", "IPV6_ADDR", "IPV6_ADDR_SUBNET", 
          "IPV4_ADDR_RANGE", "IPV6_ADDR_RANGE", "DER_ASN1_DN", 
          "DER_ASN1_GN", "KEY_ID" }, 
       ModelCorrespondence { "CIM_UnsignedCredential.PeerIdentity" }]
   uint16 PeerIdentityType;

      [Description ( 
          "The public key, encoded as indicated by PublicKeyEncoding."
           ), 
       OctetString, ModelCorrespondence { 
          "CIM_UnsignedCredential.OtherPublicKeyEncoding", 
          "CIM_UnsignedCredential.PublicKeyEncoding" }]
   string PublicKey[];

      [Description ( 
          "An enumeration defining the encoding in PublicKey.\n"
          "ASN.1 DER: encoded according to the Abstract Syntax "
          "Notation One (ASN.1) Distinguished Encoding Rules (DER), "
          "defined in the ITU-T X.680 series of standards.\n"
          "SSH mpint: encoded according to the mpint format defined "
          "in IETF RFC4251 for representation of multiple-precision "
          "integers in SSH and other network protocols." ), 
       ValueMap { "0", "1", "2", "3", ".." }, 
       Values { "Unknown", "Other", "ASN.1 DER", "SSH mpint", 
          "DMTF Reserved" }, 
       ModelCorrespondence { "CIM_UnsignedCredential.PublicKey", 
          "CIM_UnsignedCredential.OtherPublicKeyEncoding" }]
   uint16 PublicKeyEncoding;

      [Description ( 
          "A string that describes the encoding of PublicKey when "
          "PublicKeyEncoding is set to 1 (\"Other\"). This property "
          "shall be set to null when PublicKeyEncoding is any value "
          "other than 1." ), 
       ModelCorrespondence { 
          "CIM_UnsignedCredential.PublicKeyEncoding", 
          "CIM_UnsignedCredential.PublicKey" }]
   string OtherPublicKeyEncoding;


};
