1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- #if !BESTHTTP_DISABLE_ALTERNATE_SSL && (!UNITY_WEBGL || UNITY_EDITOR)
- using System;
- using Org.BouncyCastle.Asn1;
- using Org.BouncyCastle.Asn1.Pkcs;
- using Org.BouncyCastle.Utilities;
- namespace Org.BouncyCastle.Crypto.Parameters
- {
- public class DHKeyParameters
- : AsymmetricKeyParameter
- {
- private readonly DHParameters parameters;
- private readonly DerObjectIdentifier algorithmOid;
- protected DHKeyParameters(
- bool isPrivate,
- DHParameters parameters)
- : this(isPrivate, parameters, PkcsObjectIdentifiers.DhKeyAgreement)
- {
- }
- protected DHKeyParameters(
- bool isPrivate,
- DHParameters parameters,
- DerObjectIdentifier algorithmOid)
- : base(isPrivate)
- {
- // TODO Should we allow parameters to be null?
- this.parameters = parameters;
- this.algorithmOid = algorithmOid;
- }
- public DHParameters Parameters
- {
- get { return parameters; }
- }
- public DerObjectIdentifier AlgorithmOid
- {
- get { return algorithmOid; }
- }
- public override bool Equals(
- object obj)
- {
- if (obj == this)
- return true;
- DHKeyParameters other = obj as DHKeyParameters;
- if (other == null)
- return false;
- return Equals(other);
- }
- protected bool Equals(
- DHKeyParameters other)
- {
- return Org.BouncyCastle.Utilities.Platform.Equals(parameters, other.parameters)
- && base.Equals(other);
- }
- public override int GetHashCode()
- {
- int hc = base.GetHashCode();
- if (parameters != null)
- {
- hc ^= parameters.GetHashCode();
- }
- return hc;
- }
- }
- }
- #endif
|