File : ffa_rng.ads


 1 ------------------------------------------------------------------------------
 2 ------------------------------------------------------------------------------
 3 -- This file is part of 'Finite Field Arithmetic', aka 'FFA'. --
 4 -- --
 5 -- (C) 2019 Stanislav Datskovskiy ( www.loper-os.org ) --
 6 -- http://wot.deedbot.org/17215D118B7239507FAFED98B98228A001ABFFC7.html --
 7 -- --
 8 -- You do not have, nor can you ever acquire the right to use, copy or --
 9 -- distribute this software ; Should you use this software for any purpose, --
 10 -- or copy and distribute it to anyone or in any manner, you are breaking --
 11 -- the laws of whatever soi-disant jurisdiction, and you promise to --
 12 -- continue doing so for the indefinite future. In any case, please --
 13 -- always : read and understand any software ; verify any PGP signatures --
 14 -- that you use - for any purpose. --
 15 -- --
 16 -- See also http://trilema.com/2015/a-new-software-licensing-paradigm . --
 17 ------------------------------------------------------------------------------
 18 ------------------------------------------------------------------------------
 19 
 20 with Ada.Sequential_IO;
 21 
 22 with FFA; use FFA;
 23 use type FFA.Word;
 24 
 25 
 26 package FFA_RNG is
 27  
 28  Default_RNG_Path : constant String := "/dev/random";
 29  
 30  -- For reading from RNGs:
 31  package Word_IO is new Ada.Sequential_IO(Element_Type => Word);
 32  
 33  -- Represents an RNG Device:
 34  type RNG_Device is record
 35  F : Word_IO.File_Type;
 36  end record;
 37  
 38  -- Prepare an RNG for use; at given path, or will use default
 39  procedure Init_RNG(RNG : out RNG_Device;
 40  RNG_Unix_Path : in String := Default_RNG_Path);
 41  
 42  -- Fill a FZ from RNG
 43  procedure FZ_Random(RNG : in RNG_Device;
 44  N : out FZ);
 45  
 46 end FFA_RNG;

AltStyle によって変換されたページ (->オリジナル) /