/// <summary> /// Calls RAND_pseudo_bytes() /// </summary> /// <param name="len"></param> /// <returns></returns> public static byte[] PseudoBytes(int len) { byte[] buf = new byte[len]; Native.ExpectSuccess(Native.RAND_pseudo_bytes(buf, buf.Length)); return(buf); }
/// <summary> /// Calls RAND_bytes() /// </summary> /// <param name="len"></param> /// <returns></returns> public static byte[] Bytes(int len) { byte[] buf = new byte[len]; Native.ExpectSuccess(Native.RAND_bytes(buf, len)); return(buf); }
public void Override() { Marshal.StructureToPtr(this.raw, this.ptr, false); Native.ExpectSuccess(Native.RAND_set_rand_method(this.ptr)); }
private void Restore() { Native.ExpectSuccess(Native.RAND_set_rand_method(original)); }
/// <summary> /// Calls RAND_egd_bytes() /// </summary> /// <param name="path"></param> /// <param name="bytes"></param> public static void GatherEntropy(string path, int bytes) { Native.ExpectSuccess(Native.RAND_egd_bytes(path, bytes)); }
/// <summary> /// Calls RAND_poll() /// </summary> public static void Poll() { Native.ExpectSuccess(Native.RAND_poll()); }
/// <summary> /// Calls RAND_write_file() /// </summary> /// <param name="filename"></param> public static void WriteFile(string filename) { Native.ExpectSuccess(Native.RAND_write_file(filename)); }
/// <summary> /// Calls RAND_egd() /// </summary> /// <param name="path"></param> public static void GatherEntropy(string path) { Native.ExpectSuccess(Native.RAND_egd(path)); }
/// <summary> /// Calls RAND_load_file() /// </summary> /// <param name="filename"></param> /// <param name="max_bytes"></param> public static void LoadFile(string filename, int max_bytes) { Native.ExpectSuccess(Native.RAND_load_file(filename, max_bytes)); }
/// <summary> /// Creates a BigNumber by calling BN_set_word() /// </summary> /// <param name="value"></param> public BigNumber(uint value) : this() { Native.ExpectSuccess(Native.BN_set_word(this.ptr, value)); }
/// <summary> /// Calls BN_print() /// </summary> /// <param name="bio"></param> public override void Print(BIO bio) { Native.ExpectSuccess(Native.BN_print(bio.Handle, this.ptr)); }
/// <summary> /// Calls BN_bn2bin() /// </summary> /// <param name="bytes"></param> public void ToBytes(byte[] bytes) { Native.ExpectSuccess(Native.BN_bn2bin(ptr, bytes)); }
/// <summary> /// Calls ASN1_STRING_set() /// </summary> /// <param name="data"></param> public Asn1String(byte[] data) : this() { Native.ExpectSuccess(Native.ASN1_STRING_set(ptr, data, data.Length)); }