string getFileMD5Sum(string filepath)

The function computes MD5 digest for the file.

string getFileSha256Sum(string filepath)

The function computes SHA-2556 digest for the file.

string getFileStreebogSum(alias bits)(string filepath) 
if (bits == 256 || bits == 512)

The function computes Streebog hash sum for the file.

string getFileStreebog256Sum(string filepath)

256-bit version of file Streebog hash sum.

string getFileStreebog512Sum(string filepath)

512-bit version of file Streebog hash sum.

ubyte[64] modulo512(in ubyte[64] a, in ubyte[64] b)

Auxiliary function of the remainder of the division for the Streebog algorithm.

ubyte[64] xor512(in ubyte[64] a, in ubyte[64] b)

Auxiliary XOR-function for the Streebog algorithm.

immutable(Char)[] atbash(Char)(immutable(Char)[] message, immutable(Char)[][] alphabets) 
if (isSomeChar!Char)

Atbash encryption.

Parameters

message

Text for encryption.

alphabets

Array of alphabets to use when flipping.

Returns

Encrypted message.

immutable(Char)[] atbashEnRu(Char)(immutable(Char)[] message) 
if (isSomeChar!Char)

A special case of Atbash encryption — for English and Russian alphabets.

Parameters

message

Text for encryption.

Returns

Encrypted message.

immutable(Char)[] caesarCypher(Char)(immutable(Char)[] message, immutable(Char)[][] alphabets, ssize_t shift) 
if (isSomeChar!Char)

Caesar encryption.

Parameters

message

Text for encryption.

alphabets

Array of alphabets for internal shifting.

shift

Numerical value of the shift.

Returns

Encrypted message.

ubyte[] vernamByteCipher(in ubyte[] message, in ubyte[] key)

Vernam encryption.

Parameters

message

Byte array for encryption.

key

Encryption key. Its length must be equal to the length of the message.

Returns

Encrypted message.

The module contains the Streebog cryptographic hash function and several simple cryptographic functions.

Public imports