package key-parsers

  1. Overview
  2. Docs

Module Rsa.PrivateSource

The format for private keys is:

  • 4 bytes: size of d encoded in big endian
  • d
  • 3 bytes: e (0x01 0x00 0x01)
  • p
  • q

d, p and q are encoded with a leading 0x00. The size of p and q is determined from that of d (|p| = |q| = |d|/2 + 1).

The format is a bit ambiguous if e is not 0x010001, so an error will be raised in that case.

Sourcetype t = {
  1. e : Z.t;
  2. d : Z.t;
  3. p : Z.t;
  4. q : Z.t;
}
Sourceval compare : t -> t -> Ppx_deriving_runtime.int
Sourceval decode : Cstruct.t -> (t, string) Result.result