Generates a 32-byte session key from the Key Derivation Parameters KDP and the given SharedSecret.

Namespace: BasicCard.Crypto.EC
Assembly: BasicCard (in BasicCard.dll) Version: 2.5.2.0 (2.5.2.0)

Syntax

C#
public byte[] SessionKey(
	byte[] KDP,
	byte[] SharedSecret
)
Visual Basic
Public Function SessionKey ( 
	KDP As Byte(),
	SharedSecret As Byte()
) As Byte()
Visual C++
public:
virtual array<unsigned char>^ SessionKey(
	array<unsigned char>^ KDP, 
	array<unsigned char>^ SharedSecret
) sealed
F#
abstract SessionKey : 
        KDP : byte[] * 
        SharedSecret : byte[] -> byte[] 
override SessionKey : 
        KDP : byte[] * 
        SharedSecret : byte[] -> byte[] 

Parameters

KDP
Type: array<System..::..Byte>[]()[][]
Key derivation parameter KDP.
SharedSecret
Type: array<System..::..Byte>[]()[][]
Shared secret.

Return Value

Type: array<Byte>[]()[][]
Session key.

Implements

EllipticCurve..::..SessionKey(array<Byte>[]()[][], array<Byte>[]()[][])

Remarks

This is IEEE P1363 scheme ECKAS-DH1: Elliptic Curve Key Agreement Scheme, Diffie-Hellman version, where each party contributes one key pair. This function uses SHA-256 hash function.

See Also