Package com.trilead.ssh2.crypto

# Class KeyMaterial

java.lang.Object
com.trilead.ssh2.crypto.KeyMaterial

public class KeyMaterial extends Object
Establishes key material for iv/key/mac (both directions).

## Field Summary

Fields
Modifier and Type
Field
Description
`byte[]`
`enc_key_client_to_server`
`byte[]`
`enc_key_server_to_client`
`byte[]`
`initial_iv_client_to_server`
`byte[]`
`initial_iv_server_to_client`
`byte[]`
`integrity_key_client_to_server`
`byte[]`
`integrity_key_server_to_client`

## Constructor Summary

Constructors
Constructor
Description
`KeyMaterial()`

## Method Summary

Modifier and Type
Method
Description
`static KeyMaterial`
`create(String hashType, byte[] H, BigInteger K, byte[] SessionID, int keyLengthCS, int blockSizeCS, int macLengthCS, int keyLengthSC, int blockSizeSC, int macLengthSC)`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Field Details

### initial_iv_client_to_server

public byte[] initial_iv_client_to_server

### initial_iv_server_to_client

public byte[] initial_iv_server_to_client

### enc_key_client_to_server

public byte[] enc_key_client_to_server

### enc_key_server_to_client

public byte[] enc_key_server_to_client

### integrity_key_client_to_server

public byte[] integrity_key_client_to_server

### integrity_key_server_to_client

public byte[] integrity_key_server_to_client

## Constructor Details

### KeyMaterial

public KeyMaterial()

## Method Details

### create

public static KeyMaterial create(String hashType, byte[] H, BigInteger K, byte[] SessionID, int keyLengthCS, int blockSizeCS, int macLengthCS, int keyLengthSC, int blockSizeSC, int macLengthSC) throws IllegalArgumentException

Throws:
  `IllegalArgumentException`