Exemple #1
0
        /// <summary>
        ///     Returns the <see cref="ICryptoKeyPair" /> for the specified key type.
        /// </summary>
        /// <param name="key">The type of the key to return</param>
        public ICryptoKeyPair GetCryptoKey(CryptoKeyType key)
        {
            Guard.NotNull(() => key, key);

            string settingName = CreateSettingName(key);
            string subjectName = GetSubjectName(settingName);

            return(new CryptoKeyPair(LoadCertBySubjectName(subjectName)));
        }
Exemple #2
0
        public static PublicKey Decode(IByteReader stream)
        {
            PublicKey decodedPublicKey = new PublicKey();

            decodedPublicKey.Discriminant = CryptoKeyType.Decode(stream);
            switch (decodedPublicKey.Discriminant.InnerValue)
            {
            case CryptoKeyType.CryptoKeyTypeEnum.KEY_TYPE_ED25519:
                decodedPublicKey.Ed25519 = Uint256.Decode(stream);
                break;
            }
            return(decodedPublicKey);
        }
        public static MuxedAccount Decode(XdrDataInputStream stream)
        {
            MuxedAccount  decodedMuxedAccount = new MuxedAccount();
            CryptoKeyType discriminant        = CryptoKeyType.Decode(stream);

            decodedMuxedAccount.Discriminant = discriminant;
            switch (decodedMuxedAccount.Discriminant.InnerValue)
            {
            case CryptoKeyType.CryptoKeyTypeEnum.KEY_TYPE_ED25519:
                decodedMuxedAccount.Ed25519 = Uint256.Decode(stream);
                break;

            case CryptoKeyType.CryptoKeyTypeEnum.KEY_TYPE_MUXED_ED25519:
                decodedMuxedAccount.Med25519 = MuxedAccountMed25519.Decode(stream);
                break;
            }
            return(decodedMuxedAccount);
        }
Exemple #4
0
 public static void Encode(IByteWriter stream, CryptoKeyType value)
 {
     XdrEncoding.EncodeInt32((int)value.InnerValue, stream);
 }
 public static void Encode(IByteWriter stream, CryptoKeyType value)
 {
     XdrEncoding.EncodeInt32((int)value.InnerValue, stream);
 }
Exemple #6
0
 private string CreateSettingName(CryptoKeyType key)
 {
     return(CertConfigurationSettingFormat.FormatWith(cryptoKeySettingName,
                                                      key));
 }