Class FinSecurityMediaRDH

Namespace
Subsembly.FinTS
Assembly
Subsembly.FinTS.Core.dll

Implements the IFinSecurityMedia and IFinSecurityMediaSetup interfaces for RDH files as defined by the DDBAC.

public class FinSecurityMediaRDH : IFinSecurityMedia
Inheritance
FinSecurityMediaRDH
Implements
Inherited Members

Constructors

FinSecurityMediaRDH()

public FinSecurityMediaRDH()

Properties

Capabilities

public FinSecurityMediaCaps Capabilities { get; }

Property Value

FinSecurityMediaCaps

ContactCapacity

Always returns 1.

public int ContactCapacity { get; }

Property Value

int

MaxKeyLength

public int MaxKeyLength { get; }

Property Value

int

PassphraseFlags

Always returns CanChange.

public FinSecurityMediaPassphraseFlags PassphraseFlags { get; }

Property Value

FinSecurityMediaPassphraseFlags

PassphraseMaxLength

Always returns 256.

public int PassphraseMaxLength { get; }

Property Value

int

PassphraseMinLength

Always returns 0.

public int PassphraseMinLength { get; }

Property Value

int

SecurityMediaID

Provides the filename of the currently selected keyfile. Returns null if none was selected so far.

public string SecurityMediaID { get; }

Property Value

string

SecurityMediaType

Always returns KeyFile.

public FinSecurityMediaType SecurityMediaType { get; }

Property Value

FinSecurityMediaType

SecurityProfiles

Always just returns "RDH-1".

public FinSecurityProfile[] SecurityProfiles { get; }

Property Value

FinSecurityProfile[]

State

Indicates the current state of this FinSecurityMediaRDH instance.

public FinSecurityMediaState State { get; }

Property Value

FinSecurityMediaState

Methods

Authenticate(string, string)

Authenticate access to secure keys on keyfile with the given passphrase.

public FinAuthenticateResult Authenticate(string sUserName, string sPassphrase)

Parameters

sUserName string
sPassphrase string

Returns

FinAuthenticateResult

AuthenticateAdmin(string, string)

public FinAuthenticateResult AuthenticateAdmin(string sUserName, string sAdminPassphrase)

Parameters

sUserName string
sAdminPassphrase string

Returns

FinAuthenticateResult

AuthenticateSecure()

Always just returns AuthenticateSecureNotSupported

public FinAuthenticateResult AuthenticateSecure()

Returns

FinAuthenticateResult

CanAuthenticateSecure()

public bool CanAuthenticateSecure()

Returns

bool

CanChangePassphraseSecure()

public bool CanChangePassphraseSecure()

Returns

bool

Cancel()

public void Cancel()

ChangePassphrase(string, string, string)

public FinAuthenticateResult ChangePassphrase(string sUserName, string sOldPassphrase, string sNewPassphrase)

Parameters

sUserName string
sOldPassphrase string
sNewPassphrase string

Returns

FinAuthenticateResult

ChangePassphraseSecure()

Always just returns AuthenticateSecureNotSupported

public FinAuthenticateResult ChangePassphraseSecure()

Returns

FinAuthenticateResult

Create(string, string, string)

Creates a new RDH key file in the DDBAC standard format.

public void Create(string sSecurityMediaID, string sUserName, string sPassphrase)

Parameters

sSecurityMediaID string
sUserName string
sPassphrase string

CreateContact()

public FinContact CreateContact()

Returns

FinContact

Decrypt(FinContact, FinSecureKey, FinOperationMode, byte[])

public byte[] Decrypt(FinContact aContact, FinSecureKey aKey, FinOperationMode nOpMode, byte[] vbCrypt)

Parameters

aContact FinContact
aKey FinSecureKey
nOpMode FinOperationMode
vbCrypt byte[]

Returns

byte[]

ElevateKey(FinContact, FinSecureKey, FinSecureKeyState)

public void ElevateKey(FinContact aContact, FinSecureKey aKey, FinSecureKeyState nNewKeyState)

Parameters

aContact FinContact
aKey FinSecureKey
nNewKeyState FinSecureKeyState

Encrypt(FinContact, FinSecureKey, FinOperationMode, byte[])

public byte[] Encrypt(FinContact aContact, FinSecureKey aKey, FinOperationMode nOpMode, byte[] vbData)

Parameters

aContact FinContact
aKey FinSecureKey
nOpMode FinOperationMode
vbData byte[]

Returns

byte[]

EraseContact(int)

public void EraseContact(int nContactIndex)

Parameters

nContactIndex int

EraseKey(FinContact, FinSecureKey)

public void EraseKey(FinContact aContact, FinSecureKey aKey)

Parameters

aContact FinContact
aKey FinSecureKey

GenerateKey(FinContact, FinSecureKeyType, int, int, int)

Generates a new public/private key pair.

public FinSecureKey GenerateKey(FinContact aContact, FinSecureKeyType nKeyType, int nKeyLength, int nKeyNumber, int nKeyVersion)

Parameters

aContact FinContact
nKeyType FinSecureKeyType
nKeyLength int
nKeyNumber int
nKeyVersion int

Returns

FinSecureKey

InitPassphrase(string, string)

Always throws a NotSupportedException.

public FinAuthenticateResult InitPassphrase(string sUserName, string sPassphrase)

Parameters

sUserName string
sPassphrase string

Returns

FinAuthenticateResult

ObtainContact(int)

public FinContact ObtainContact(int nContactIndex)

Parameters

nContactIndex int

Returns

FinContact

ObtainKey(FinContact, FinSecureKeyType, int, int)

public FinSecureKey ObtainKey(FinContact aContact, FinSecureKeyType nKeyType, int nKeyNumber, int nKeyVersion)

Parameters

aContact FinContact
nKeyType FinSecureKeyType
nKeyNumber int
nKeyVersion int

Returns

FinSecureKey

Release()

public void Release()

ResetKey(FinContact, FinSecureKey)

public void ResetKey(FinContact aContact, FinSecureKey aKey)

Parameters

aContact FinContact
aKey FinSecureKey

Select(string)

Selects a key file for subsequent access through this FinSecurityMediaRDH instance.

public FinAuthenticateResult Select(string sSecurityMediaID)

Parameters

sSecurityMediaID string

Returns

FinAuthenticateResult

SignHash(FinContact, FinSecureKey, FinOperationMode, FinHash, byte[])

public byte[] SignHash(FinContact aContact, FinSecureKey aKey, FinOperationMode nOpMode, FinHash nHash, byte[] vbHash)

Parameters

aContact FinContact
aKey FinSecureKey
nOpMode FinOperationMode
nHash FinHash
vbHash byte[]

Returns

byte[]

StoreContact(int, FinContact)

Stores or updates the contact data record on the security media.

public void StoreContact(int nContactIndex, FinContact aContact)

Parameters

nContactIndex int
aContact FinContact

StoreKey(FinContact, FinSecureKey)

Stores or updates the public bank key on the security media.

public void StoreKey(FinContact aContact, FinSecureKey aKey)

Parameters

aContact FinContact
aKey FinSecureKey

Verify(FinContact, FinSecureKey, FinOperationMode, FinHash, byte[], byte[])

public bool Verify(FinContact aContact, FinSecureKey aKey, FinOperationMode nOpMode, FinHash nHash, byte[] vbHash, byte[] vbSignature)

Parameters

aContact FinContact
aKey FinSecureKey
nOpMode FinOperationMode
nHash FinHash
vbHash byte[]
vbSignature byte[]

Returns

bool