Trurl Posted January 24 Author Share Posted January 24 The problem is it is Sqrt[(x^3*pnp^3)/(x^3*pnp+x)-pnp Where pnp is the constant SemiPrime. 2564855351 in this case x is the value on the axis. Where y on the graph equals zero, x approaches the smaller SemiPrime. I believe in your graphs y is variable. I am working on testing the program. But if you take p = 2564855351; x = 3; Monitor[While[x <= p, If[(Sqrt[p^3/(p*x^2 + x)] - p) < 0.5, Print[x]; Break[];]; x += 2;]; and display x when it breaks it should be within range of the smaller Prime factor. I know testing sounds simple enough but my computers and software are aging. Software upgrades faster than I do. All my software is scattered across 5 computers. And I don’t think Win7 and XP systems are safe on the internet. But that is just my computer maintenance problems. Hope this helps. Link to comment Share on other sites More sharing options...

Trurl Posted January 24 Author Share Posted January 24 p = 2564855351; x = 3; Monitor[While[x <= p, If[(Sqrt[p^3/(p*x^2 + x)] - p) < 0.5, Print[x]; Break[];]; x += 2;]; Syntax error. Should read: p = 2564855351; x = 3; Monitor[While[x <= p, If[x*(Sqrt[p^3/(p*x^2 + x)]) - p) < 0.5, Print[x]; Break[];]; x += 2;]; That is why it wasn’t working. It was y, the second Prime factor. But we would have no way of knowing when y was reached. Multiple y by x to get p. Subtract p and the y of graph equal to zero. That y intercept is where x approaches the value of the smaller Prime factor. Link to comment Share on other sites More sharing options...

Ghideon Posted January 25 Share Posted January 25 On 1/24/2024 at 9:06 PM, Trurl said: and display x when it breaks it should be within range of the smaller Prime factor. What does "within range" mean? 23 hours ago, Trurl said: That y intercept is where x approaches the value of the smaller Prime factor. What do you mean by "approaches"? Link to comment Share on other sites More sharing options...

Trurl Posted January 26 Author Share Posted January 26 Well leaving out the x was a happy accident. It just shows again x times y = p and we are just using algebra. 4 hours ago, Ghideon said: What does "within range" mean? That is why the second part of the program used division. The first algorithm found where x value of the small factor approached zero value at y. I put the value of y at p minus x times y so it is easier to find. I could have said x at factor and y equals pnp. I said within range because there is some error with x. It is close but within error. 4 hours ago, Ghideon said: What do you mean by "approaches”? The equation is too complex to solve for x even though it has x as the only unknown. I say approaches because I am plugging in a test value of x to find y. That is why I graphed it. I know it is not pretty math and is more of a hack. But using test values you know the area of the factors because the further away the y value on the graph is from zero the further away you are from the factor. Link to comment Share on other sites More sharing options...

Ghideon Posted January 27 Share Posted January 27 Your descriptions do not match program code you have posted. What program do you try to describe? Link to comment Share on other sites More sharing options...

Trurl Posted January 27 Author Share Posted January 27 p = 2564855351; x = 3; Monitor[While[x <= p, If[(Sqrt[p^3/(p*x^2 + x)] - p) < 0.5, Print[x]; Break[];]; x += 2;]; If[x <= p, While[x <= p, If[Divisible[p, x], Print[x]; Break[];]; x += 2;];], x] First function corrected: p = 2564855351; x = 3; Monitor[While[x <= p, If[x*(Sqrt[p^3/(p*x^2 + x)]) - p) < 0.5, Print[x]; Break[];]; x += 2; Same as all my recent descriptions. Link to comment Share on other sites More sharing options...

Ghideon Posted January 28 Share Posted January 28 Your code does not seem syntactically correct. 12 hours ago, Trurl said: p = 2564855351; x = 3; Monitor[While[x <= p, If[(Sqrt[p^3/(p*x^2 + x)] - p) < 0.5, Print[x]; Break[];]; x += 2;]; If[x <= p, While[x <= p, If[Divisible[p, x], Print[x]; Break[];]; x += 2;];], x] First function corrected: p = 2564855351; x = 3; Monitor[While[x <= p, If[x*(Sqrt[p^3/(p*x^2 + x)]) - p) < 0.5, Print[x]; Break[];]; x += 2; Same as all my recent descriptions. Link to comment Share on other sites More sharing options...

Trurl Posted January 29 Author Share Posted January 29 p = 2564855351; x = 3; Monitor[While[x <= p, If[(x*(Sqrt[p^3/(p*x^2 + x)]) - p) < 0.5, Print[x]; Break[];]; x += 2; Missing parentheses, but the logic is there. The language is Mathematica. I collaborated with another Mathematica coder. I’m not familiar with the “Monitor” class. But this class is the representation of everything I have posted. If it is the syntax I will have to consult more Mathematica coders. Attention all coders!!! Link to comment Share on other sites More sharing options...

Trurl Posted January 31 Author Share Posted January 31 This code works!!!!!!! Working Mathematica Code: Clear[x,p]; p=2564855351; x=3; Monitor[While[x<p, If[(x*(Sqrt[p^3/(p*x^2+x)])-p)<0.5, Print[x]; Break[];]; x+=2;]; If [x <= p, While[x<p, If[Divisible[p,x], Print[x]; Break[];]; x +=2;];], x] 3 41227 Link to comment Share on other sites More sharing options...

Trurl Posted April 21 Author Share Posted April 21 Ok, I haven’t been here in 3 months. I was walking around and read the writing on the wall. And it made me think I should be working on mechanics instead of such abstract ideas of factoring SemiPrimes. But my work was not without reward. But of course graphs can appear deceiving. Often graphs show a limited view. (Like in the old days of CAD when you couldn’t revolve the view in 360 degrees. You had to change the angle of the view by typing in coordinates). The question is, “Is this graph deceiving?” Clear[x, pnp] pnp = 2564855351 Show[ Plot[(( (((pnp^2/x) + x^2)) / x) /pnp), {x, 0, 60000}] ] Plot[((pnp - (Sqrt[(x^2 * pnp^4 + 2 *pnp*x^5) + x^8])/ pnp^4 - (1 - (x^2/(2*pnp))) *(pnp^2/x^2))), {x, 40000, 60000}] Plot[(1/((pnp / (((pnp^2/x) + x^2)) / x))), {x, 0, 60000}] Link to comment Share on other sites More sharing options...

KJW Posted April 21 Share Posted April 21 27 minutes ago, Trurl said: I should be working on mechanics instead of such abstract ideas of factoring SemiPrimes. But my work was not without reward. As a result of this thread, I did some exploration of factoring semiprimes. I even came up with a solution of sorts, but this didn't seem to be any more efficient than brute force. Link to comment Share on other sites More sharing options...

Trurl Posted April 24 Author Share Posted April 24 You are right about the brute force. I don’t know how useful it is when the smaller factor is occurring close to zero anyway. But what is given me a glimmer of hope is the first graph of my last post cross the x axis at around 41227. That’s where it appears to cross but computer generated graphics can be deceiving. If anyone could show where y on the graph equal zero that is the x intercept of that fist graph of the last post, it would be well appreciated. Link to comment Share on other sites More sharing options...

Trurl Posted April 25 Author Share Posted April 25 On 4/20/2024 at 11:25 PM, KJW said: As a result of this thread, I did some exploration of factoring semiprimes. I even came up with a solution of sorts, but this didn't seem to be any more efficient than brute force. I also wanted to say I’m happy to hear this post encouraged you to research SemiPrimes. That is what it is all about. I was going to be an adult educator until the professor failed me. But that is another story. I also hope that if you take the inverse of the dozens of equations that it will make the graph better for visual inspection. I also would be interested in what you are working on. Maybe you will share in the forums someday. BTW does anyone know what the picture of the writing on the wall is? Link to comment Share on other sites More sharing options...

Trurl Posted April 28 Author Share Posted April 28 Clear[x, pnp] pnp = 2564855351 Show[ Plot[(( (((pnp^2/x) + x^2)) / x) /pnp), {x, 0, 60000}] Graph this equation. It is the inverse. It should make it easier to find the SemiPrime. It will decrease number of trails, but on small numbers will still be more time than brute force. It will however give you a graphical understanding of the smaller SemiPrime. Remember 2 unknowns should be impossible. Link to comment Share on other sites More sharing options...

Trurl Posted May 5 Author Share Posted May 5 105951 105950 105909 105910 105911 Ok on an odometer when there are at least 3 matching numbers say 555 or two sets of repeating numbers, say 5500, then we will try to predict when each occur chronologically on the odometer. Sure you could just fill in the numbers with the corresponding numbers. But imagine these numbers were related to Prime distribution. The pattern is harder to see with the odometer as it moves linearly. Imagine you have a regular odometer. It goes zero through nine. So in the single-digit place of the odometer (the start of counting), you note that 3, 5, 7 are Prime. So now you go to the tens-digit. And note that 3+1 or 3+3 or 3+5 or 3+7 are eliminated as Prime. To get another Prime number you would have to add an even number to 3, 5, or 7. Of course adding an even number doesn’t always result in a Prime. This is just a graphical representation of a sieve. But just as repeating numbers in the odometer are hard to predict linearly throughout the revolutions of the odometer, are we not doing the same thing when looking for patterns in Prime numbers? I study Prime numbers because I like finding patterns. Patterns can confuse or look like they could be there, but patterns are what we see in math. I might have stretched the truth when I claimed RSA was in trouble, but that one-way function is why I started all this math in the first place. The odometer sieve would require a lot of calculation. Again it would only show what is going on. It is the same with my graphs. I can only estimate where the semi-Prime factor is on a graph. Graphing 128-bit numbers and analyzing the graph is a challenge, but necessary to prove as the curve on the graph approaches zero x approaches the smaller Prime factor. That is where I believe if the graph holds true, for larger N’s, it will be superior to brute force. But as the graph becomes larger and more difficult to evaluate so does choosing an N. I have read that if N becomes too large, the enciphering of the message becomes too cumbersome. In a future post I will be sending a graph. But It is important for anyone reading this to share if they had any results with the graph. I have tried to make the graph more useful (less test values) by inverting the equation. Link to comment Share on other sites More sharing options...

Trurl Posted May 12 Author Share Posted May 12 We are going to try and factor a RSA number that has yet been factored. No guarantees it will work. My estimate by graphing is that if we start at 4.0 X 10^37 and increase in value using brute force to divide into PNP, we may be rewarded with an answer. I understand it is still many values but at least we have a starting point. I also understand that if we are unsuccessful, we may be aided by finding the error of the factoring equation. Also graphs can be deceiving. If it is wrong starting point, it could be the graph is right, but the view of the graph is wrong. Clear[x,z, pnp]; pnp = 2211282552952966643528108525502623092761208950247001539441374831912882294140 2001986512729726569746599085900330031400051170742204560859276357953757185954 2988389587092292384910067030341246205457845664136645406842143612930176940208 46391065875914794251435144458199 z=pnp/(pnp/2) Show[ Plot[(( (((pnp^2/x) + x^2)) / x) /pnp), {x,5000000000000000000000000000000000000, 200000000000000000000000000000000000000}] ] 2211282552952966643528108525502623092761208950247001539441374831912882294140 2001986512729726569746599085900330031400051170742204560859276357953757185954 2988389587092292384910067030341246205457845664136645406842143612930176940208 46391065875914794251435144458199 2 Clear[x]; Plot[((pnp - (Sqrt[(x^2 * pnp^4 + 2 *pnp*x^5) + x^8])/pnp^4 - (1 - (x^2/(2*pnp))) *(pnp^2/x^2))), {x,5000000000000000000000000000000000000, 200000000000000000000000000000000000000}] Clear[x]; Plot[(1/((pnp / (((pnp^2/x) + x^2)) / x))), {x,5000000000000000000000000000000000000, 200000000000000000000000000000000000000}] Link to comment Share on other sites More sharing options...

Trurl Posted May 17 Author Share Posted May 17 @Ghideon you are right much processing power is needed. I thought if I could get the size needed to test down to the size of a smaller RSA number that has already been factored, I could crunch it. Three hours no results. I had some help with the programming. A tester pointed out that I get 41351 instead of 41227. That is 124 digits off. But I am hoping is close enough to guess. Does anyone here do number crunching? I could use some tips on brute force crunching. Clear[x, pnp]; pnp = 2211282552952966643528108525502623092761208950247001539441374831912882294140 2001986512729726569746599085900330031400051170742204560859276357953757185954 2988389587092292384910067030341246205457845664136645406842143612930176940208 46391065875914794251435144458199; x = 30000000000000000000000000000000000001; While[x <=pnp,If[Divisible[pnp,x], Print[x]]; x+2]; While[x<=pnp,If[Divisible[pnp,x],Print[x]];x+2]; Clear[x,pnp];pnp=2564855351; eqn=((pnp-(Sqrt[(x^2*pnp^4+2*pnp*x^5)+x^8])/pnp^4-(1-(x^2/(2*pnp)))*(pnp^2/x^2))); Solve[eqn==0&&x>=0,x,Reals]//N (*{{x41350.98025},{x6.387801493*10^11}}*) In[1]:= While[x<=pnp,If[Divisible[pnp,x],Print[x]];x+2]; Clear[x,pnp];pnp=pnp = 2211282552952966643528108525502623092761208950247001539441374831912882294140 2001986512729726569746599085900330031400051170742204560859276357953757185954 2988389587092292384910067030341246205457845664136645406842143612930176940208 46391065875914794251435144458199; eqn=((pnp-(Sqrt[(x^2*pnp^4+2*pnp*x^5)+x^8])/pnp^4-(1-(x^2/(2*pnp)))*(pnp^2/x^2))); Solve[eqn==0&&x>=0,x,Reals]//N (*{{x41350.98025},{x6.387801493*10^11}}*) Out[2]= 2211282552952966643528108525502623092761208950247001539441374831912882294140 Out[3]= 2001986512729726569746599085900330031400051170742204560859276357953757185954 Out[4]= 2988389587092292384910067030341246205457845664136645406842143612930176940208 Computational processing required. Link to comment Share on other sites More sharing options...

Trurl Posted May 22 Author Share Posted May 22 I may have factored a RSA number previously unfactored. That is is the number crunching is right. Clear[x,pnp];pnp=pnp = 2211282552952966643528108525502623092761208950247001539441374831912882294140 2001986512729726569746599085900330031400051170742204560859276357953757185954 2988389587092292384910067030341246205457845664136645406842143612930176940208 46391065875914794251435144458199; eqn=((pnp-(Sqrt[(x^2*pnp^4+2*pnp*x^5)+x^8])/pnp^4-(1-(x^2/(2*pnp)))*(pnp^2/x^2))); NSolve[eqn==0&&x>=0,x,Reals]//N (*{{x41350.98025},{x6.387801493*10^11}}*) 2211282552952966643528108525502623092761208950247001539441374831912882294140 2001986512729726569746599085900330031400051170742204560859276357953757185954 2988389587092292384910067030341246205457845664136645406842143612930176940208 {{x->3.83952*10^37},{x->1.67814*10^94}} {{x->3.83952*10^37},{x->1.67814*10^94}} x should be just larger than 3.84*10^37 Test it. I hope it is close. Too bad there is no longer a reward for factoring RSA numbers 🤑 Link to comment Share on other sites More sharing options...

Trurl Posted May 22 Author Share Posted May 22 If these numbers hold close, RSA is no more. I realize I have to expand the accuracy to 37 digits, but I got these numbers in 2 seconds. If they hold true so does the Pappy Craylar Conjecture! In[1]:= Clear[x,pnp];pnp=pnp = 2519590847565789349402718324004839857142928212620403202777713783604366202070 7595556264018525880784406918290641249515082189298559149176184502808489120072 8449926873928072877767359714183472702618963750149718246911650776133798590957 0009733045974880842840179742910064245869181719511874612151517265463228221686 9987549182422433637259085141865462043576798423387184774447920739934236584823 8242811981638150106748104516603773060562016196762561338441436038339044149526 3443219011465754445417842402092461651572335077870774981712577246796292638635 6373289912154831438167899885040445364023527381951378636564391212010397122822 120720357 eqn=((pnp-(Sqrt[(x^2*pnp^4+2*pnp*x^5)+x^8])/pnp^4-(1-(x^2/(2*pnp)))*(pnp^2/x^2))); NSolve[eqn==0&&x>=0,x,Reals]//N (*{{x41350.98025},{x6.387801493*10^11}}*) Out[1]= 2519590847565789349402718324004839857142928212620403202777713783604366202070 Out[2]= 7595556264018525880784406918290641249515082189298559149176184502808489120072 Out[3]= 8449926873928072877767359714183472702618963750149718246911650776133798590957 Out[4]= 9733045974880842840179742910064245869181719511874612151517265463228221686 Out[5]= 9987549182422433637259085141865462043576798423387184774447920739934236584823 Out[6]= 8242811981638150106748104516603773060562016196762561338441436038339044149526 Out[7]= 3443219011465754445417842402092461651572335077870774981712577246796292638635 Out[8]= 6373289912154831438167899885040445364023527381951378636564391212010397122822 Out[9]= 120720357 Out[11]= {{x->4.09845*10^37},{x->1.97554*10^94}} 4.09845*10^37 Hopefully is close. Link to comment Share on other sites More sharing options...

Trurl Posted May 25 Author Share Posted May 25 eqn=((pnp-(Sqrt[(x^2*pnp^4+2*pnp*x^5)+x^8])/pnp^4-(1-(x^2/(2*pnp)))*(pnp^2/x^2))); SetPrecision[NSolve[eqn==0&&x>=0,x, Reals]//N,94] Out[23]= 2519590847565789349402718324004839857142928212620403202777713783604366202070 Out[24]= 7595556264018525880784406918290641249515082189298559149176184502808489120072 Out[25]= 8449926873928072877767359714183472702618963750149718246911650776133798590957 Out[26]= 9733045974880842840179742910064245869181719511874612151517265463228221686 Out[27]= 9987549182422433637259085141865462043576798423387184774447920739934236584823 Out[28]= 8242811981638150106748104516603773060562016196762561338441436038339044149526 Out[29]= 3443219011465754445417842402092461651572335077870774981712577246796292638635 Out[30]= 6373289912154831438167899885040445364023527381951378636564391212010397122822 Out[31]= 120720357 Out[33]= {{x->4.098447549634527496690402228228115660800000000000000000000000000000000000000000000000000000000*10^37},{x->1.975537793137120663017279930682231182622035891422434710723887074852770653001767985540861473587*10^9 Why would a quantum computer render RSA useless? Link to comment Share on other sites More sharing options...

Trurl Posted June 7 Author Share Posted June 7 This is the smaller factor of: RSA-2048 = 2519590847565789349402718324004839857142928212620403202777713783604366202070 7595556264018525880784406918290641249515082189298559149176184502808489120072 8449926873928072877767359714183472702618963750149718246911650776133798590957 0009733045974880842840179742910064245869181719511874612151517265463228221686 9987549182422433637259085141865462043576798423387184774447920739934236584823 8242811981638150106748104516603773060562016196762561338441436038339044149526 3443219011465754445417842402092461651572335077870774981712577246796292638635 6373289912154831438167899885040445364023527381951378636564391212010397122822 120720357 Verify Link to comment Share on other sites More sharing options...

Ghideon Posted June 8 Share Posted June 8 21 hours ago, Trurl said: This is the smaller factor of: RSA-2048 No. You are mistaken; trivial to see per definition. Link to comment Share on other sites More sharing options...

Trurl Posted June 8 Author Share Posted June 8 Well it worked here: Clear[x,pnp];pnp=2564855351; eqn=((pnp-(Sqrt[(x^2*pnp^4+2*pnp*x^5)+x^8])/pnp^4-(1-(x^2/(2*pnp)))*(pnp^2/x^2))); Solve[eqn==0&&x>=0,x,Reals]//N (*{{x41350.98025},{x6.387801493*10^11}}*) In[1]:= 41350 is close to 41227 By trivial you mean the division. I did not divide yet. I only used the equations. The magnitude should be close. I still have programming limitations on my own part. But I thought the number seemed reasonable. Close enough for good old brute force. What numbers do you get? Link to comment Share on other sites More sharing options...

Trurl Posted June 16 Author Share Posted June 16 Klapacusis you are right it is trivial. This is a game of trivial pursuit. I don’t know the factoring pair of this 2048 bit semiPrime. But if the number of the equation where it equals zero is correct than the factor is less than that number. And I added the percentage of error which brings us closer to that smaller factor. I know your argument is that it is still a large number. However checking all odd numbers descending from my estimate should be close enough to not require as much computation. 4*10^37 divided by 2. Still a bunch of numbers but more manageable. Still too many numbers but the actual factor should be close (slightly less) than the estimate. And if anyone could add any advice in crunching numbers, particularly in Mathematica I would appreciate the help. There is a function call Monitor. I don’t know how to “keep track” of what is happening behind the scenes when Mathematica is processing. It just says, “Running.” I don’t know if it is going to take hours, days, or months. I understand why someone would not believe my methods. We are not supposed to be able to factor semiPrimes. It is impossible. But is it possible for impossible to exists? I chose the largest RSA number that is open source. I don’t know the factors, but I feel I am getting close. RSA is critical for authentication using digital signatures. It is still one of the most used cryptography schemes on the web. I have recently read that the original Xbox used RSA to secure its hardware. I didn’t know cryptography was used in hardware. But don’t be afraid to factor semiPrimes because it will mean the end of RSA. I think it was flawed from the beginning. Secrets can not be keep if you share them. By encrypting secrets you have just marked them as valuable. That is why misinformation is so prevalent in media. 1977 it made sense to encrypt you secrets. Now it is difficult to determine truth from reports. For instance Trump is found guilty on trial. He says witch-hunt ; they say guilty of influencing the election. We hear the verdict, but we weren’t at the trial. We didn’t see all the evidence. And if the County is 50 50 Trump / Biden why wasn’t this reflected in the jury? Politics aside who is right? It all is based on which candidate you believe. But who is trustworthy? I think the true is the same with cryptography. We trust is because we can mathematically test it. If the numbers require too many brute force attempts it is secure. But which crypto systems are trustworthy. If I do go on to break RSA, I hope to break it along with you. If it works, I showed you how to do it. And that you can believe the answer. If I fail and it still is impossible, we have more trust in RSA. Link to comment Share on other sites More sharing options...

Ghideon Posted August 23 Share Posted August 23 On 6/9/2024 at 12:39 AM, Trurl said: By trivial you mean the division No. Let's express it as a small task intended to approve your critical thinking. Task: Show, in at least two individual and different ways, why the following statement is false: On 6/8/2024 at 1:23 AM, Trurl said: This is the smaller factor of: RSA-2048 Hint: Spoiler The task can easily be solved in a few minutes. No tools are needed but pen and paper may be handy. Solutions does not depend on dividing the RSA-2048 number with the given number. More hints can be added upon request. Link to comment Share on other sites More sharing options...

## Recommended Posts

## Create an account or sign in to comment

You need to be a member in order to leave a comment

## Create an account

Sign up for a new account in our community. It's easy!

Register a new account## Sign in

Already have an account? Sign in here.

Sign In Now