UNPKG

@microsoft/dev-tunnels-ssh

Version:
30 lines 1.18 kB
/// <reference types="node" /> import { Buffer } from 'buffer'; import { Disposable } from 'vscode-jsonrpc'; import { SshAlgorithm } from './sshAlgorithm'; export declare abstract class HmacAlgorithm implements SshAlgorithm { readonly name: string; readonly algorithmName: string; readonly keyLength: number; readonly digestLength: number; protected constructor(name: string, algorithmName: string, keyLength: number, digestLength: number); abstract createSigner(key: Buffer): Promise<MessageSigner>; abstract createVerifier(key: Buffer): Promise<MessageVerifier>; } export interface HmacInfo { readonly encryptThenMac?: boolean; readonly authenticatedEncryption?: boolean; } export interface Signer extends Disposable { readonly digestLength: number; sign(data: Buffer): Promise<Buffer>; } export interface MessageSigner extends Signer, HmacInfo { } export interface Verifier extends Disposable { readonly digestLength: number; verify(data: Buffer, signature: Buffer): Promise<boolean>; } export interface MessageVerifier extends Verifier, HmacInfo { } //# sourceMappingURL=hmacAlgorithm.d.ts.map