# Class RekeyChannelRequest | EchoHub Documentation
Passphrase change for an encrypted channel: the client proves knowledge of the old passphrase (old auth key), then supplies the re-wrapped room key under the new one.

# Class RekeyChannelRequest

Namespace
  EchoHub.Core.DTOs

Assembly
  EchoHub.Core.dll

Passphrase change for an encrypted channel: the client proves knowledge of the old passphrase (old auth key), then supplies the re-wrapped room key under the new one.

    public record RekeyChannelRequest : IEquatable<RekeyChannelRequest>

Inheritance
  object
  RekeyChannelRequest

Implements
  IEquatable<RekeyChannelRequest>

Inherited Members
  object.GetType()
  object.MemberwiseClone()
  object.Equals(object, object)
  object.ReferenceEquals(object, object)

## Constructors

### RekeyChannelRequest(RekeyChannelRequest)

    protected RekeyChannelRequest(RekeyChannelRequest original)

#### Parameters

`original` RekeyChannelRequest

### RekeyChannelRequest(string, string, string, string)

Passphrase change for an encrypted channel: the client proves knowledge of the old passphrase (old auth key), then supplies the re-wrapped room key under the new one.

    public RekeyChannelRequest(string OldPassword, string NewPassword, string NewEncryptionSalt, string NewWrappedRoomKey)

#### Parameters

`OldPassword` string
`NewPassword` string
`NewEncryptionSalt` string
`NewWrappedRoomKey` string

## Properties

### EqualityContract

    protected virtual Type EqualityContract { get; }

#### Property Value

Type

### NewEncryptionSalt

    public string NewEncryptionSalt { get; init; }

#### Property Value

string

### NewPassword

    public string NewPassword { get; init; }

#### Property Value

string

### NewWrappedRoomKey

    public string NewWrappedRoomKey { get; init; }

#### Property Value

string

### OldPassword

    public string OldPassword { get; init; }

#### Property Value

string

## Methods

### Deconstruct(out string, out string, out string, out string)

    public void Deconstruct(out string OldPassword, out string NewPassword, out string NewEncryptionSalt, out string NewWrappedRoomKey)

#### Parameters

`OldPassword` string
`NewPassword` string
`NewEncryptionSalt` string
`NewWrappedRoomKey` string

### Equals(RekeyChannelRequest?)

    public virtual bool Equals(RekeyChannelRequest? other)

#### Parameters

`other` RekeyChannelRequest

#### Returns

bool

### Equals(object?)

    public override bool Equals(object? obj)

#### Parameters

`obj` object

#### Returns

bool

### GetHashCode()

    public override int GetHashCode()

#### Returns

int

### PrintMembers(StringBuilder)

    protected virtual bool PrintMembers(StringBuilder builder)

#### Parameters

`builder` StringBuilder

#### Returns

bool

### ToString()

    public override string ToString()

#### Returns

string

## Operators

### operator ==(RekeyChannelRequest?, RekeyChannelRequest?)

    public static bool operator ==(RekeyChannelRequest? left, RekeyChannelRequest? right)

#### Parameters

`left` RekeyChannelRequest
`right` RekeyChannelRequest

#### Returns

bool

### operator !=(RekeyChannelRequest?, RekeyChannelRequest?)

    public static bool operator !=(RekeyChannelRequest? left, RekeyChannelRequest? right)

#### Parameters

`left` RekeyChannelRequest
`right` RekeyChannelRequest

#### Returns

bool