From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,9a441a9594e85d08,start X-Google-Attributes: gid103376,public X-Google-Thread: fb57f,9a441a9594e85d08,start X-Google-Attributes: gidfb57f,public From: Markus Kuhn Subject: Bignum modular types in Ada95 Date: 1998/01/27 Message-ID: <34CE568C.55D7E23D@cl.cam.ac.uk>#1/1 X-Deja-AN: 319782850 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=us-ascii Organization: Cambridge University, Computer Laboratory Mime-Version: 1.0 Newsgroups: comp.lang.ada,sci.crypt Date: 1998-01-27T00:00:00+00:00 List-Id: One of the especially nice things about Ada seem to be the modular types. Many of the calculations in asymmetric cryptography are done over the integers modulo N, where N is a huge number (typically 1024 bits long or more). I wonder how many Ada compilers support bignum arithmetic directly without any special library calls, as in type Unsigned1024 is range 0..2**1024-1; Modulus, Public_Key: Unsigned1024; type Message is mod Modulus; Clear_Text, Cipher_Text: Message; Cipher_Text := Clear_Text ** Public_Key; Considering that the next generation of server processors will feature 1024-bit registers and hardware for fast modular exponentiation, it is nice to know that Ada95 has already the language constructs available today to use these forthcoming capabilities comfortably. Neither C nor Java has. I wonder however, whether existing Ada95 compilers for existing processors do already support bignum modular arithmetic in a (certainly slower) software emulation. If not, bignum arithmetic would not be a portable feature and would therefore be of limited use once the crypto-coprocessor with suitable hardware registers and ALUs become available. Which Ada95 compilers do support 1024-bit integers today and can do an efficient modular exponentiation over them? Markus -- Markus G. Kuhn, Security Group, Computer Lab, Cambridge University, UK email: mkuhn at acm.org, home page: