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 X-Google-Attributes: gid103376,public From: Brian Rogoff Subject: Re: Bignum modular types in Ada95 Date: 1998/01/30 Message-ID: #1/1 X-Deja-AN: 320593484 References: <34CE568C.55D7E23D@cl.cam.ac.uk> <34CF3E78.F816DB5@cl.cam.ac.uk> <34D053EB.167E@cl.cam.ac.uk> Content-Type: TEXT/PLAIN; charset=US-ASCII X-Trace: 886177834 20838 bpr 206.184.139.132 Mime-Version: 1.0 Newsgroups: comp.lang.ada Date: 1998-01-30T00:00:00+00:00 List-Id: On Thu, 29 Jan 1998, Markus Kuhn wrote: > The cryptosupport in the next generation of workstation processors > will not mean that the full internal bus will get 1024 bits wide! OK, I misunderstood you then. > The 1024-bit registers will be more like the floating-point registers > that we have already today: only few, only special operations, > and much larger than the bus width. It is also not necessary to > actually implement full 1024-bit registers to do 1024 bit operations: > If you have suitably designed 256-bit registers and arithmetic > logic, then you can easily fold 1024, 768, and 512 bit operations > efficiently into this hardware by just iterating a few times. True even if you have 64 (or 32 or ...) bit registers of course. > You can get today already microcontrollers for security applications > from Siemens, Phillips, SGS Thompson, Dallas Semiconductor, > Motorola, etc. that feature hardware support for efficient 768 or > 1024 bit modular integer arithmetic (especially exponentiation). Could you point me to some datasheets for some of these parts? A part number, or a URL for the Acrobat file would be helpful. I'm still not sure we're on the same page, so to speak. > I would suggest that System.Max_int be redefined to show the largest > integer word size that the processor can handle efficiently (usually > 2**31-1 or 2**63-1) in case the compiler supports bignum integers > and does not actually have a fixed largest integer value. Does > this sound reasonable? I'm not sure what this would mean. Scalar types are passed by value, and there would seem to be a conflict. I agree with your general point about the growing importance of cryptographic applications and the nice match to Ada 95's modular types, but it seems that what you want (very big modular types) will be very hard to achieve. -- Brian