Sign a message using the key pair. The noise can be null in order to create deterministic signatures. If deterministic signatures are not required, the noise should be randomly generated instead. This helps defend against fault attacks.

Parameters

key_pair: KeyPair,
msg: []const u8,
noise: ?[noise_length]u8,