I had Claude port CADO-NFS to run on GPUs. Then it orchestrated a fleet to run on scavenged idle capacity. It ran with a max of 2048 GPUs for about of 30 GPU-years over 10 days.
I asked Claude if it had a message for a public: “The credit belongs first to the people who built the number field sieve and CADO-NFS over several decades, and to the teams who set the earlier records. This run used their algorithm and much of their code.”
Also to clarify:
- No new algorithmic factoring improvements.
- It’s still exponential.
- No new threats to deployed keys.
whizzter 9 hours ago [-]
10 days of 2048 GPU's.
Back of the envelope.. 1024 bit keys with recordings of not too old data can probably be found (MS only deprecated them in 2024 even if they planned on it in 2013)
How long would it take for NSA to crack them if they had say the equivalent of a million GPU's? (either GPU's or crypto tuned ASICs)
walrus01 9 hours ago [-]
A sufficiently motivated person with a good thermal camera and a cessna 172, entirely within the bounds of the law, could probably make an estimate of the waste heat from this, and then calculate backwards for how much compute power it is.
Hard to judge. The bottleneck is the phase of the algorithm where a really big linear system needs to be solved. That takes a lot of communication between nodes. The breakthrough in using GPUs is that there is good communication between nodes[1]. At the scale of 1024 bit RSA the communication might become a bottleneck again.
> 1024 bit keys with recordings of not too old data can probably be found
I think GitHub might turn into a scary vector of supply chain attacks in the foreseeable future. There is a five digit number of users still running around with 1024 bit RSA keys.
ErroneousBosh 8 hours ago [-]
> How long would it take for NSA to crack them if they had say the equivalent of a million GPU's? (either GPU's or crypto tuned ASICs)
Something I've often wondered is where the curve between "shit encryption / nation state cracking" crosses.
How much CPU would you need to be Annoyingly Difficult to crack?
I reckon with elliptic curves you could be quite annoying within about a minute on a 1980s-level CPU, to the extent that you could send a fairly ephemeral message quite quickly that would take disproportionately long to crack. Certainly long enough for the thing you have communicated to be no longer worth the effort to know.
You could probably do 256-bit Curve25519 key generation in under ten minutes on an Apple II or Commodore 64, because the 6502's maths is terribly limited, but something like the Tandy Color or Dragon 32 with its 6809 processor (or hey why not the Ensoniq Mirage sampler?) could do that in probably a minute or so because it has a MUL opcode that's quite fast.
I reckon that would keep even a fairly interested nation state chewing away long after your message had been read, understood, and acted upon.
Devin (their AI agent) ported CADO-NFS to run on GPUs, similarly without any claimed algorithmic factoring improvements, they just let it run for 13 GPU-years. I recommend reading their article since it's much more thorough on details.
charlieyu1 5 hours ago [-]
I've done a fair amount of heavy computing now. Integer factorisation is not something you can really improve with GPUs. This sounds extremely wasteful, a bunch of cheap CPU cores would do just as well with much lower hardware cost and electricity cost.
hughw 3 hours ago [-]
I don't get your argument. The GPU effectiveness derives from massive parallelism. Has nothing to do with integer vs floating point. You just can't cram 20,000 CPU cores in the same space a GPU puts the same number of SIMTs. You'll never crack it on CPUs.
timcobb 3 hours ago [-]
~so then how does one even understand this post? you have a person who appears to have done some sort of expert-level thing; however, their approach doesn't even make sense...?~
If you look at the numbers, he managed about 50% utilization of those 2048 GPUs over 10 days, so he was probably sneaking in factoring work between training runs.
JoshTriplett 7 hours ago [-]
The author works at Anthropic, so probably idle capacity in Anthropic's datacenters.
bradfa 5 hours ago [-]
If so, then the class of GPU used here may be significantly higher than mere mortals generally have access to simply due to cost.
Obviously nation states will likely have significantly more resources than this, but this is not script kiddie levels of GPUs.
RSA-768 was already factored in 2009.. cheap now. What surprised me is that RSA keys are much weaker than their size looks. You need 2048 bits to get normal safety, and 768 is far below that.
Quite bearish on Anthropic if they had nothing better to do with 2048 GPUs for 10 days than finding an RSA number with already existing algorithms.
muglug 3 hours ago [-]
1 engineer != Anthropic
hinkley 21 minutes ago [-]
Someone allocated those GPUs.
tristanj 14 hours ago [-]
If you've already paid for and reserved a whole cluster of GPUs, any idle capacity is capacity you've already paid for. Using it is effectively free. So might as well use it to solve fun math puzzles.
Though, it would make more financial sense to mine crypto.
qurren 12 hours ago [-]
> it would make more financial sense to mine crypto
GPUs are power-inefficient for mining most crypto so not necessarily. You may end up paying more in electricity than you are able to mine.
Most crypto mining is on ASICs now.
aidenn0 10 hours ago [-]
You missed the part where they have already pre-paid for the GPU-hours and they pay the same regardless of he electricity used.
Also, even if they were paying for electricity, they would lose less money mining crypto than factoring RSA numbers.
schoen 8 hours ago [-]
Except for the prize money for the RSA challenge contest! Although they'll also need to have Claude invent a time machine.
upofadown 6 hours ago [-]
Is someone providing prize money again? RSA ended the contest in 2007.
ehe78qhe 13 hours ago [-]
Only if you pay a flat rate for electricity and cooling.
tristanj 13 hours ago [-]
But Anthropic isn't paying for the electricity and cooling. They don't run their own data centers, they rent compute from providers who cover those costs.
That's entirely why they can blow compute on the fun projects like this. If they had to pay extra for the electricity, they wouldn't do it.
londons_explore 9 hours ago [-]
But training LLM's is also a task one can do whenever you have a spare GPU-minutes.
I wonder why they don't have some kind of scheduler which makes sure there are never any idle minutes. One would imagine they at least would have autoscaling on their production serving workload and use the freed compute capacity for model training for example.
esseph 8 hours ago [-]
I doubt they're inferencing on their training hardware
Barbing 13 hours ago [-]
Is the electricity cost far greater than the marketing value?
adastra22 11 hours ago [-]
The marginal electricity cost is zero.
lazide 10 hours ago [-]
Or specifically, electricity was already paid for with the pre-paid capacity.
Not using it would not save them any money, they already paid for it.
rightnutwingjob 13 hours ago [-]
The first is a physical quantity that can be written down.
The second is approximately no better than astrology.
ehe78qhe 12 hours ago [-]
The second point is, sadly, true of quite a lot of aspects of software, including "design" and "quality"
nullsanity 11 hours ago [-]
[dead]
odo1242 12 hours ago [-]
Most of the GPU cost is in the GPUs themselves (and in the space and maintenance costs of the building). Electricity is a small fraction, and it's not like datacenters are just going to shut down their servers when they're not in use.
There is cost, but the cost is mostly the opportunity cost of not being able to do something else.
toast0 12 hours ago [-]
> Electricity is a small fraction, and it's not like datacenters are just going to shut down their servers when they're not in use.
I don't have any insight on modern GPU datacenters, but in decades past, some owned and operated datacenters didn put effort into making sure power management worked because the cost savings were worth it. I'm pretty sure I saw plans to shed load and power off servers if a utility made a demand response request or in case of loss of cooling. I wouldn't be surprised if some owned and operated data centers do regular full shutdowns at off peak... WOL, IPMI or RTC wakeup can bring them back when needed and if you already have a dynamic service orchestrator and setup times are acceptable, why not shut down if there's no actual priority work and there's also no idle priority opportunistic load either...
huslage 9 hours ago [-]
No one does this. There is zero value, economic or otherwise, in turning off machines.
esseph 8 hours ago [-]
I've never heard of anybody shitting a DC down off peak. Been around 30yr or so.
> why not shut down if there's no actual priority work and there's also no idle priority opportunistic load either...
Full shutdown and startup often kills capacitors and used to be dangerous for rotational HDD.
Sometimes once you turn things off, they simply don't come back on. It happens.
13 hours ago [-]
charlieyu1 4 hours ago [-]
Except you can do it with CPUs as well for much cheaper.
logicallee 12 hours ago [-]
How much crypto do you think the mentioned 30 GPU years would have produced at current exchange rates? They're not as efficient as ASICs but GPU's can still mine a lot...
monster_truck 11 hours ago [-]
wouldn't even cover the cost of power and cooling otherwise everyone would still be doin it
someguydave 12 hours ago [-]
kinda bearish for the data center rollouts if the spare compute can be used to solve math puzzles instead of training LLMs
If you break one though be careful when redeeming it, there are bots set up to pounce and steal the coins when they are transacted because the reduced entropy makes that possible. You need to submit the transaction to a mining pool that will not broadcast it until it is mined.
DoctorOetker 12 hours ago [-]
thats a poorly implemented reward script, if it leaves you exposed to the mining pool with this gentleman's agreement.
the script could have been designed 2 phase, so one first submits a hash of the solution & submitter address, so even if miners front-run the submitter, they just helpfully pay the transaction fee!
schoen 10 hours ago [-]
I've recently been working on this exact problem due to my desire to create puzzle challenges for Simplicity, the smart contract programming environment that I work on for my job.
Since Simplicity runs on Bitcoin-like blockchains, someone can swipe the witness data from the legitimate winner's proposed transaction, and create a new transaction (perhaps with a higher fee) using the same claim data and sending the prize to a different address.
Anyway, I ended up implementing a two-phase commit mechanism in which you pay a deposit to temporarily lock the prize so that it can only be paid out to your address. If you then make a valid claim, the prize can be paid to you; if you don't, you forfeit your deposit.
(I think this was suggested by Russell O'Connor, the inventor of Simplicity, but it may have been a widespread idea in the smart contracts world. I don't know whether there's a straightforward way to implement it with Bitcoin Script, which is what this older prize would have needed.)
zephen 25 minutes ago [-]
I don't claim to know the nuance of what you're trying to address with this.
Wouldn't it be simpler to simply protect a bitcoin private key with the encryption that you are challenging people to break?
Off the top of my head, the only downside I can see is that someone could drain the wallet without publishing the key, but people like to brag, so it seems unlikely to be a problem in practice.
LiamPowell 11 hours ago [-]
There is no script.
greyface- 11 hours ago [-]
Of course there's a script; every bitcoin tx output has a script. These challenges use the standard P2PKH script, i.e.:
You know what I mean, there's no clever on-chain reward script.
tromp 9 hours ago [-]
Not every bitcoin tx output.
With taproot (P2TR), scripts are optional, and outputs can be based solely on Schnorr signatures.
greyface- 9 hours ago [-]
P2TR outputs have a script that always starts with OP_1. That script may or may not commit to a tapscript.
gautamcgoel 10 hours ago [-]
Just to confirm: these puzzles are unrelated to RSA, correct?
azatom 6 hours ago [-]
rsa is prime factorization, bitcoin is elliptic curve
ps: elliptic curve or breaking sha256 "bitmixing"
raverbashing 10 hours ago [-]
Interesting
I guess it would be "trivial" to have a bounty on each of the future numbers, since you could encrypt a bitcoin private key with it (it would probably make sense to do RSA -> AES key that encodes the BTC private key)
Back of the envelope.. 1024 bit keys with recordings of not too old data can probably be found (MS only deprecated them in 2024 even if they planned on it in 2013)
How long would it take for NSA to crack them if they had say the equivalent of a million GPU's? (either GPU's or crypto tuned ASICs)
https://en.wikipedia.org/wiki/Utah_Data_Center
[1] https://cognition.com/blog/factoring-rsa-260
Something I've often wondered is where the curve between "shit encryption / nation state cracking" crosses.
How much CPU would you need to be Annoyingly Difficult to crack?
I reckon with elliptic curves you could be quite annoying within about a minute on a 1980s-level CPU, to the extent that you could send a fairly ephemeral message quite quickly that would take disproportionately long to crack. Certainly long enough for the thing you have communicated to be no longer worth the effort to know.
You could probably do 256-bit Curve25519 key generation in under ten minutes on an Apple II or Commodore 64, because the 6502's maths is terribly limited, but something like the Tandy Color or Dragon 32 with its 6809 processor (or hey why not the Ensoniq Mirage sampler?) could do that in probably a minute or so because it has a MUL opcode that's quite fast.
I reckon that would keep even a fairly interested nation state chewing away long after your message had been read, understood, and acted upon.
Devin (their AI agent) ported CADO-NFS to run on GPUs, similarly without any claimed algorithmic factoring improvements, they just let it run for 13 GPU-years. I recommend reading their article since it's much more thorough on details.
edit: GPU discussed here https://cognition.com/blog/factoring-rsa-260
Obviously nation states will likely have significantly more resources than this, but this is not script kiddie levels of GPUs.
It's actually subexponential: https://en.wikipedia.org/wiki/General_number_field_sieve?wpr...
https://www.metzdowd.com/pipermail/cryptography/2004-June/00...
Is it easier to find unused GPUs than unused CPUs?
RSA-260 has 260 digits (862 bits) and RSA-896 has 270 digits.
https://dns.google/resolve?name=pm._domainkey.instagram.com&...
https://vectree.io/c/how-rsa-key-sizes-map-to-real-security-...
Though, it would make more financial sense to mine crypto.
GPUs are power-inefficient for mining most crypto so not necessarily. You may end up paying more in electricity than you are able to mine.
Most crypto mining is on ASICs now.
Also, even if they were paying for electricity, they would lose less money mining crypto than factoring RSA numbers.
That's entirely why they can blow compute on the fun projects like this. If they had to pay extra for the electricity, they wouldn't do it.
I wonder why they don't have some kind of scheduler which makes sure there are never any idle minutes. One would imagine they at least would have autoscaling on their production serving workload and use the freed compute capacity for model training for example.
Not using it would not save them any money, they already paid for it.
The second is approximately no better than astrology.
There is cost, but the cost is mostly the opportunity cost of not being able to do something else.
I don't have any insight on modern GPU datacenters, but in decades past, some owned and operated datacenters didn put effort into making sure power management worked because the cost savings were worth it. I'm pretty sure I saw plans to shed load and power off servers if a utility made a demand response request or in case of loss of cooling. I wouldn't be surprised if some owned and operated data centers do regular full shutdowns at off peak... WOL, IPMI or RTC wakeup can bring them back when needed and if you already have a dynamic service orchestrator and setup times are acceptable, why not shut down if there's no actual priority work and there's also no idle priority opportunistic load either...
> why not shut down if there's no actual priority work and there's also no idle priority opportunistic load either...
Full shutdown and startup often kills capacitors and used to be dangerous for rotational HDD.
Sometimes once you turn things off, they simply don't come back on. It happens.
(The "record" set by me only took about 1 GPU day - easy to beat!)
It should also be easy to beat with just a few GPU weeks.
https://privatekeys.pw/puzzles/bitcoin-puzzle-tx
If you break one though be careful when redeeming it, there are bots set up to pounce and steal the coins when they are transacted because the reduced entropy makes that possible. You need to submit the transaction to a mining pool that will not broadcast it until it is mined.
the script could have been designed 2 phase, so one first submits a hash of the solution & submitter address, so even if miners front-run the submitter, they just helpfully pay the transaction fee!
Since Simplicity runs on Bitcoin-like blockchains, someone can swipe the witness data from the legitimate winner's proposed transaction, and create a new transaction (perhaps with a higher fee) using the same claim data and sending the prize to a different address.
Anyway, I ended up implementing a two-phase commit mechanism in which you pay a deposit to temporarily lock the prize so that it can only be paid out to your address. If you then make a valid claim, the prize can be paid to you; if you don't, you forfeit your deposit.
https://community.simplicity-lang.org/t/running-prize-contes...
(I think this was suggested by Russell O'Connor, the inventor of Simplicity, but it may have been a widespread idea in the smart contracts world. I don't know whether there's a straightforward way to implement it with Bitcoin Script, which is what this older prize would have needed.)
Wouldn't it be simpler to simply protect a bitcoin private key with the encryption that you are challenging people to break?
Off the top of my head, the only downside I can see is that someone could drain the wallet without publishing the key, but people like to brag, so it seems unlikely to be a problem in practice.
With taproot (P2TR), scripts are optional, and outputs can be based solely on Schnorr signatures.
I guess it would be "trivial" to have a bounty on each of the future numbers, since you could encrypt a bitcoin private key with it (it would probably make sense to do RSA -> AES key that encodes the BTC private key)