Boost logo

Boost :

From: Rene Rivera (grafik.list_at_[hidden])
Date: 2006-05-10 00:03:02


Beman Dawes wrote:
> "Mateusz Rukowicz" <mateusz.rukowicz_at_[hidden]> wrote in message
> news:4454DE3E.5000701_at_vp.pl...
>> Hi,
>>
>> I would like to participate in summer of code 2006. I was very surprised
>> that boost doesn't have multi precision arithmetic, and since I'm quite
>> algorithm/C++ concerned, I wish to propose/make it as a SoC project.
>> I'll appreciate any response about that idea, what do you feel about
>> that etc.
>
> At the Berlin C++ committee meeting earlier this month the LWG decided
> expressed interest in getting a further proposal for infinite precision
> arithmetic for TR2 based on
> http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2004/n1718.pdf

One aspect that isn't address by that paper, and non of the others I've
seen references to, is use of infinite precision integer in the
cryptography domain. There are a few aspects in that domain that make
the proposals I've seen useless. There are two aspects which must be
addressed:

1. Security of memory allocation.
2. Access to normalized representation.

Aspect #2 is needed for extraction and injection (IO but not iostream).
In crypto there are a variety of ways to represent such numbers as
required by certificates, keys, protocols, etc. So a documented access
to the representation is essential for implementing such translation
efficiently.

Aspect #1; Crypto needs to make specific guarantees for the memory it
uses for computation. For C++ this usually means that all the code needs
to work with some for a special secure allocator. The way that Botan
<http://botan.randombit.net/> (this is the lib I use for the crypto uses
I have) is to implement secure versions of some containers, and use
those in its BigInt implementation.

-- 
-- Grafik - Don't Assume Anything
-- Redshift Software, Inc. - http://redshift-software.com
-- rrivera/acm.org - grafik/redshift-software.com
-- 102708583/icq - grafikrobot/aim - grafikrobot/yahoo

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk