UNPKG

gnablib

Version:

A lean, zero dependency library to provide a useful base for your project.

45 lines (44 loc) 1.46 kB
/*! Copyright 2023-2025 the gnablib contributors MPL-1.1 */ import { IBlockCrypt } from '../interfaces/IBlockCrypt.js'; declare class Simon_32bit implements IBlockCrypt { readonly blockSize: number; private readonly keySize; private readonly rounds; constructor(blockSize: number, keySize: number, rounds: number, key: Uint8Array); keySchedule(key: Uint8Array): void; encryptBlock(block: Uint8Array, offset?: number): void; decryptBlock(block: Uint8Array, offset?: number): void; } export declare class Simon32 extends Simon_32bit { constructor(key: Uint8Array); } export declare class Simon48_72 extends Simon_32bit { constructor(key: Uint8Array); } export declare class Simon48_96 extends Simon_32bit { constructor(key: Uint8Array); } export declare class Simon64_96 extends Simon_32bit { constructor(key: Uint8Array); } export declare class Simon64_128 extends Simon_32bit { constructor(key: Uint8Array); } export declare class Simon96_96 extends Simon_32bit { constructor(key: Uint8Array); } export declare class Simon96_144 extends Simon_32bit { constructor(key: Uint8Array); } export declare class Simon128_128 extends Simon_32bit { constructor(key: Uint8Array); } export declare class Simon128_192 extends Simon_32bit { constructor(key: Uint8Array); } export declare class Simon128_256 extends Simon_32bit { constructor(key: Uint8Array); } export declare class Speck { } export {};