public SchemeEccOnePassUnified( IDsaEcc dsa, IEccCurveFactory curveFactory, IKdfOneStepFactory kdfFactory, IKeyConfirmationFactory keyConfirmationFactory, INoKeyConfirmationFactory noKeyConfirmationFactory, IOtherInfoFactory otherInfoFactory, IEntropyProvider entropyProvider, SchemeParametersBase <KasDsaAlgoAttributesEcc> schemeParameters, KdfParameters kdfParameters, MacParameters macParameters, IDiffieHellman <EccDomainParameters, EccKeyPair> diffieHellman ) : base( dsa, curveFactory, kdfFactory, keyConfirmationFactory, noKeyConfirmationFactory, otherInfoFactory, entropyProvider, schemeParameters, kdfParameters, macParameters ) { _diffieHellman = diffieHellman; if (SchemeParameters.KasAlgoAttributes.Scheme != EccScheme.OnePassUnified) { throw new ArgumentException(nameof(SchemeParameters.KasAlgoAttributes.Scheme)); } }
public SchemeEccStaticUnified( IDsaEcc dsa, IEccCurveFactory eccCurveFactory, IKdfOneStepFactory kdfFactory, IKeyConfirmationFactory keyConfirmationFactory, INoKeyConfirmationFactory noKeyConfirmationFactory, IOtherInfoFactory otherInfoFactory, IEntropyProvider entropyProvider, SchemeParametersBase <KasDsaAlgoAttributesEcc> schemeParameters, KdfParameters kdfParameters, MacParameters macParameters, IDiffieHellman <EccDomainParameters, EccKeyPair> diffieHellman ) : base( dsa, eccCurveFactory, kdfFactory, keyConfirmationFactory, noKeyConfirmationFactory, otherInfoFactory, entropyProvider, schemeParameters, kdfParameters, macParameters ) { _diffieHellman = diffieHellman; }
public SchemeFfcDhHybrid1( IDsaFfc dsa, IKdfOneStepFactory kdfFactory, IKeyConfirmationFactory keyConfirmationFactory, INoKeyConfirmationFactory noKeyConfirmationFactory, IOtherInfoFactory otherInfoFactory, IEntropyProvider entropyProvider, SchemeParametersBase <KasDsaAlgoAttributesFfc> schemeParameters, KdfParameters kdfParameters, MacParameters macParameters, IDiffieHellman <FfcDomainParameters, FfcKeyPair> diffieHellman ) : base( dsa, kdfFactory, keyConfirmationFactory, noKeyConfirmationFactory, otherInfoFactory, entropyProvider, schemeParameters, kdfParameters, macParameters ) { _diffieHellman = diffieHellman; if (SchemeParameters.KasAlgoAttributes.Scheme != FfcScheme.DhHybrid1) { throw new ArgumentException(nameof(SchemeParameters.KasAlgoAttributes.Scheme)); } }
public SchemeFfcDiffieHellmanEphemeral( IDsaFfc dsa, IKdfOneStepFactory kdfFactory, IKeyConfirmationFactory keyConfirmationFactory, INoKeyConfirmationFactory noKeyConfirmationFactory, IOtherInfoFactory otherInfoFactory, IEntropyProvider entropyProvider, SchemeParametersBase<KasDsaAlgoAttributesFfc> schemeParameters, KdfParameters kdfParameters, MacParameters macParameters, IDiffieHellman<FfcDomainParameters, FfcKeyPair> dh ) : base(dsa, kdfFactory, keyConfirmationFactory, noKeyConfirmationFactory, otherInfoFactory, entropyProvider, schemeParameters, kdfParameters, macParameters) { _diffieHellman = dh; if (SchemeParameters.KasAlgoAttributes.Scheme != FfcScheme.DhEphem) { throw new ArgumentException(nameof(SchemeParameters.KasAlgoAttributes.Scheme)); } if (SchemeParameters.KasMode == KasMode.KdfKc) { throw new ArgumentException($"{SchemeParameters.KasMode} not possible with {SchemeParameters.KasAlgoAttributes.Scheme}"); } }
protected void SetWithInjectablesToConstructionState() { _withKdfFactory = _originalKdfFactory; _withKeyConfirmationFactory = _originalKeyConfirmationFactory; _withNoKeyConfirmationFactory = _originalNoKeyConfirmationFactory; _withOtherInfoFactory = _originalOtherInfoFactory; _withEntropyProvider = _originalEntropyProvider; _withDiffieHellman = _originalDiffieHellmanFfc; _withMqv = _originalMqv; }
public SchemeBuilder( IDiffieHellman <EccDomainParameters, EccKeyPair> eccDh, IDiffieHellman <FfcDomainParameters, FfcKeyPair> ffcDh, IMqv <EccDomainParameters, EccKeyPair> eccMqv, IMqv <FfcDomainParameters, FfcKeyPair> ffcMqv) { _eccDh = eccDh; _ffcDh = ffcDh; _eccMqv = eccMqv; _ffcMqv = ffcMqv; }
public void should_create_the_key_exchange() { _diffieHellman = MockRepository.GenerateMock<IDiffieHellman>(); _diffieHellman.Stub(x => x.CreateKeyExchange()).Repeat.Once().Return("30"); var executableResult = new KeyInit(_diffieHellman).Execute("howdydoody"); Assert.AreEqual(Constants.SuccessfulKeyInit, executableResult.ExitCode); _diffieHellman.AssertWasCalled(x => x.CreateKeyExchange()); }
public void should_create_the_key_exchange() { _diffieHellman = MockRepository.GenerateMock <IDiffieHellman>(); _diffieHellman.Stub(x => x.CreateKeyExchange()).Repeat.Once().Return("30"); var executableResult = new KeyInit(_diffieHellman).Execute("howdydoody"); Assert.AreEqual(Constants.SuccessfulKeyInit, executableResult.ExitCode); _diffieHellman.AssertWasCalled(x => x.CreateKeyExchange()); }
public SchemeEccOnePassDh( IDsaEcc dsa, IEccCurveFactory curveFactory, IKdfOneStepFactory kdfFactory, IKeyConfirmationFactory keyConfirmationFactory, INoKeyConfirmationFactory noKeyConfirmationFactory, IOtherInfoFactory otherInfoFactory, IEntropyProvider entropyProvider, SchemeParametersBase <KasDsaAlgoAttributesEcc> schemeParameters, KdfParameters kdfParameters, MacParameters macParameters, IDiffieHellman <EccDomainParameters, EccKeyPair> diffieHellman ) : base( dsa, curveFactory, kdfFactory, keyConfirmationFactory, noKeyConfirmationFactory, otherInfoFactory, entropyProvider, schemeParameters, kdfParameters, macParameters ) { _diffieHellman = diffieHellman; if (SchemeParameters.KasAlgoAttributes.Scheme != EccScheme.OnePassDh) { throw new ArgumentException(nameof(SchemeParameters.KasAlgoAttributes.Scheme)); } if (SchemeParameters.KeyConfirmationDirection == KeyConfirmationDirection.Bilateral || (SchemeParameters.KeyAgreementRole == KeyAgreementRole.InitiatorPartyU && SchemeParameters.KeyConfirmationRole == KeyConfirmationRole.Provider) || (SchemeParameters.KeyAgreementRole == KeyAgreementRole.ResponderPartyV && SchemeParameters.KeyConfirmationRole == KeyConfirmationRole.Recipient)) { throw new ArgumentException("Only unilateral Key confirmation possible party V to U"); } }
protected SchemeBuilderBase( IKdfOneStepFactory kdfFactory, IKeyConfirmationFactory keyConfirmationFactory, INoKeyConfirmationFactory noKeyConfirmationFactory, IOtherInfoFactory otherInfoFactory, IEntropyProvider entropyProvider, IDiffieHellman <TDomainParameters, TKeyPair> diffieHellmanFfc, IMqv <TDomainParameters, TKeyPair> mqv ) { _originalKdfFactory = kdfFactory; _originalKeyConfirmationFactory = keyConfirmationFactory; _originalNoKeyConfirmationFactory = noKeyConfirmationFactory; _originalOtherInfoFactory = otherInfoFactory; _originalEntropyProvider = entropyProvider; _originalDiffieHellmanFfc = diffieHellmanFfc; _originalMqv = mqv; SetWithInjectablesToConstructionState(); }
public SchemeBuilderFfc( IDsaFfcFactory dsaFfcFactory, IKdfOneStepFactory kdfFactory, IKeyConfirmationFactory keyConfirmationFactory, INoKeyConfirmationFactory noKeyConfirmationFactory, IOtherInfoFactory otherInfoFactory, IEntropyProvider entropyProvider, IDiffieHellman <FfcDomainParameters, FfcKeyPair> diffieHellmanFfc, IMqv <FfcDomainParameters, FfcKeyPair> mqv) : base( kdfFactory, keyConfirmationFactory, noKeyConfirmationFactory, otherInfoFactory, entropyProvider, diffieHellmanFfc, mqv) { _dsaFfcFactory = dsaFfcFactory; }
public SchemeFfcDhHybridOneFlow( SchemeParameters schemeParameters, ISecretKeyingMaterial thisPartyKeyingMaterial, IFixedInfoFactory fixedInfoFactory, FixedInfoParameter fixedInfoParameter, IKdfFactory kdfFactory, IKdfParameter kdfParameter, IKeyConfirmationFactory keyConfirmationFactory, MacParameters keyConfirmationParameter, IDiffieHellman <FfcDomainParameters, FfcKeyPair> diffieHellman) : base( schemeParameters, thisPartyKeyingMaterial, fixedInfoFactory, fixedInfoParameter, kdfFactory, kdfParameter, keyConfirmationFactory, keyConfirmationParameter) { _diffieHellman = diffieHellman; }
public SchemeEccFullUnified( SchemeParameters schemeParameters, ISecretKeyingMaterial thisPartyKeyingMaterial, IFixedInfoFactory fixedInfoFactory, FixedInfoParameter fixedInfoParameter, IKdfFactory kdfFactory, IKdfParameter kdfParameter, IKeyConfirmationFactory keyConfirmationFactory, MacParameters keyConfirmationParameter, IDiffieHellman <EccDomainParameters, EccKeyPair> diffieHellman) : base( schemeParameters, thisPartyKeyingMaterial, fixedInfoFactory, fixedInfoParameter, kdfFactory, kdfParameter, keyConfirmationFactory, keyConfirmationParameter) { _diffieHellman = diffieHellman; }
public SchemeBuilderEcc( IDsaEccFactory dsaEccFactory, IEccCurveFactory eccCurveFactory, IKdfOneStepFactory kdfFactory, IKeyConfirmationFactory keyConfirmationFactory, INoKeyConfirmationFactory noKeyConfirmationFactory, IOtherInfoFactory otherInfoFactory, IEntropyProvider entropyProvider, IDiffieHellman <EccDomainParameters, EccKeyPair> diffieHellmanEcc, IMqv <EccDomainParameters, EccKeyPair> mqv) : base( kdfFactory, keyConfirmationFactory, noKeyConfirmationFactory, otherInfoFactory, entropyProvider, diffieHellmanEcc, mqv ) { _dsaEccFactory = dsaEccFactory; _eccCurveFactory = eccCurveFactory; }
public EccDhComponent(IDiffieHellman <EccDomainParameters, EccKeyPair> diffieHellman) { _diffieHellman = diffieHellman; }
public KeyInit(IDiffieHellman diffieHellman) { _diffieHellman = diffieHellman; }