This is certainly possible: the easiest way to do this is with some appropriate big number/arbitrary precision package. Sage, for example, makes it very easy, and it's not much harder to implement in python. David Bailey has lots of helpful resources if you want to write in Fortran, or C++, etc, at http://crd-legacy.lbl.gov/~dhbailey/mpdist/
As for speed, it depends on the environment; sage tends to be slow but friendly (and Mathematica and Maple are probably similar): there is some overhead to using any arbitrary precision package, but if you look at the number of bit operations to do 4096 bit operations versus 64 bit operations, the ratio of the speeds should be somewhat comparable.