Aliens provided me with efficient algorithm to solve P=NP problem (it's arleady known that if we have solution for any problem of this class, we have solution to all of them so it doesn't really matter which we can solve).

Aliens they don't plan any other influence. They said that solution is highly unortodox and it's unlikely humans will be able to find it soon.

I decided to test their solution. I tested on factorization. It took about 100 machine-hours of medium Amazon EC2 instance to get private key for DigiCert's root CA from public one.

Due to my mistakes, MY_COUNTRY security services found about this solution. I know that MY_COUNTRY is ok to use this for their own advantage.

Should I reveal algorithm to whole world? So at least balance will be kept.

Should I just try to get Clay's prize first? Should I just start generating bitcoins(algorithm can be used for this task too).

If I go with Clay prize - I think they will firstly perform initial validation, after that - announce they checking details. There will be some time between announcement and reveal to whole world. Also, it's possible that NSA send NSL to Clay asking for:

  • Give solution for us to check
  • Pay prize if they want to but do not release solution.

Let's also assume that NSA either has no jurisdiction over me or I'm arleady of USA and ok with NSL directed to me personally (I will just ask for asylum somewhere).

I want to make world better place (making some money in process is also ok) but issue is I'm not sure how to do this in this situation? (side note: I also voted for another candidate for president of MY_COUNTRY on last elections).

Why not JUST publish: solution is unorthodox and it's unlikely humans found it soon. Why it can make me reach: I also tested practical applications (like forging SSL certificates so I can sell faked CA certificates to anybody who need them, for a price). I also think I can use this solution to make very efficient bitcoin miner.

  • $\begingroup$ So, my question is, what does this have to do with Worldbuilding? $\endgroup$ Apr 24, 2018 at 13:35
  • 4
    $\begingroup$ By trying for the Clay Prize, you'd -- by definition -- reveal the algorithm to the whole world when you publish the paper required to try and claim the prize. $\endgroup$
    – RonJohn
    Apr 24, 2018 at 13:44
  • 1
    $\begingroup$ I suppose it depends a lot of you. are you patriot? are you selfish or want to help the world? $\endgroup$
    – Kepotx
    Apr 24, 2018 at 13:58
  • 2
    $\begingroup$ @Kepotx: That's what I'm not getting. Let's say I make a general proof that P=NP, which holds for any problem. That does not give me an algorithm to solve any problem, it merely tells me that a solution exists. Finding algorithms for each specific problem is a completely different matter. Just because I know there is probably a simple algorithm to solve a given problem doesn't get me any further ahead in working out what that algorithm is, other than telling me that it can't be more complex than the test to verify that it works. Conversely, if P is proven!= NP, I wouldn't be any worse off. $\endgroup$
    – nzaman
    Apr 24, 2018 at 14:39
  • 1
    $\begingroup$ "Should I reveal this information" is entirely up to you. $\endgroup$
    – Vincent
    Apr 24, 2018 at 15:22

1 Answer 1


As stated in the comments, it depends a lot on your personality, so here are 3 possible things to do if you have a generic algorithm for any NP-complete algorithm:

The Good

reveal that you have solved P=NP, with a proof (breaking a private key should be ok), but reveal the way to do it after a choosen amount of time, like one year. Why? So that world can change. P=NP would have lot of effects on many fields, including critique one like cryptography. 1 year should be enough so a large amount of application switch to more secure way (longer hash, one-time password...). Also reveal that your government also know it so critical system adapt immediately. After one year, reveal the algorithm, create an open-source organization with the money of Clay's prize

The Bad

Beside cryptography, there are lot of NP complete problems, knowing how to resolve them can improve lot of things in many fields. Make your own company exploiting such algorithm as travelling salesman problem, without revealing the code. Everyone would want your software, are they are much more efficient than others. However, doing this alone would be hard, choose wisely your coworker and prepare to be attacked regulary as other people would want to know your secret algorithm.

The Ugly

You can be one-time millionaire with Clay's prize. You can be multiple time millionaire with your new software company. But that's not enough, you want to be billionaire. Mine bitcoin, steal bank acounts, sold protected documents... the more illegal it is, the more money you get. As for stock exchange, diversification is the key, and avoid to exploit only one security breach on one field, as it would collapse and reveal something.

  • 1
    $\begingroup$ I assume tha you are really optimistic on the "but reveal the way to do it after a choosen amount of time, like one year" side ;-) $\endgroup$ Apr 24, 2018 at 15:23
  • 1
    $\begingroup$ Maybe. Lot of current website use http instead of https, still use flash, some website don't even hash passwords... and legacy is really heavy for some systems like banking who still use cobol... The thing is, revealing it would have lot of impact, positive and negative, a year was just an example but it's up to you. and remember that the government also know the algorithm, so the more you wait, the more they profit $\endgroup$
    – Kepotx
    Apr 24, 2018 at 15:29

Not the answer you're looking for? Browse other questions tagged .