ID: 99fc86 RSA #7 Dec. 30, 2017, 4:21 a.m. No.1713   πŸ—„οΈ.is πŸ”—kun

Our task is simple. We are going to completely break the entire RSA cryptosystem! We're bigshots now.

 

But wait, how are we going to just crack RSA? With the Virtual Quantum Computer! Quick rundown to follow.

 

The main mathematical task that must be achieved to break RSA is to be able to factorize any integer instantly. The VQC is a promising way to do that.

 

What is the VQC?

The virtual quantum computer (VQC) is a grid made of infinite yet constructable sets that follow a known pattern. Like a quantum spreadsheet.

The grid is the superposition. The collapse of that superposition will be two input parameters, d and e which can be calculated easily for all integers, c, where c is the difference of two squares.

 

So, when the integers that are the difference of two squares are arranged into the grid and their corresponding properties are shown, a pattern emerges that shows calculation instead of searching is possible.

 

Legend

The map's legend is {e:n:d:x:a:b}, where d is the result of removing the largest square from c AKA the square root,

e is the remainder,

n is what you add to d to be exactly halfway between a and b,

and x is what you add to a to make d.

c is any number that is the difference of two squares, so odd numbers are included.

na and nb for any c can be found n places apart in the cell at (e,1).

 

Rules of the grid: global rules

Each cell of the grid (e,n) has infinite elements or ZERO elements.

Each cell with one value has infinite elements, since every element can make a new one.

By induction, a cell only needs one value to make infinite values, that's part of the power of this and is why it is a virtual quantum computer as a whole.

The t variable is what will allow you to walk across these infinite elements.

If a grid cell has elements, all elements are constructable from a finite set of root elements.

The grid is indexed using e, n, and t, where e is the rows, n is the columns, and t is the specific element in the cell-group.

Thus, only three variables are required to identify an element: e, n and t.

All products of odd numbers and all products of pairs of even numbers are the difference of two squares.

The x-intercept of the line that goes through the point containing the factors of c is (a + 1).

 

(1, 1) - the key

The values of a and b at 1,1 are related to the length of the longest side in right angled triangles.

The values here can be used to create the entire grid.

The values here determine the values of the rows to the left and right, which determine the values of the whole column.

 

(f, 1) is an interesting cell.

 

Columns

Each cell at n=1 contains the roots of products in the column.

If c is a prime number, it will appear in one column exactly once.

If c is the product of two prime numbers that do not equal eachother, c will appear in two cells of one column.

All products (integers) c that are the sum of two squares appear (only) in columns where e=0,1,4,9,16,25…

All factors in a column are factors of the elements of the first cell in their column.

All Fermat primes (except) 3 appear in column one.

 

(e, 1)

If a number at position t has a factor s, then s is a factor at (t+s), (t+2s) and so on for a at (e,1).

Also, if a number at position t has a factor s at (e+1), then s is a factor at (s+1-t), (2s+1-t), etc for a at (e,1).

 

Rows

(1, n)

The cells in row one where n=1 have a relationship with the cells 2n to the right and 2n to the left.

Each "a" from the first row equals na because xx+e = 2na and na is half of that. That's BIG part of the KEY

Each element in a cell can be generated by moving up (t-1 = x-2) or down (t+1 = x+2). Other variables can be generated from x.

Every single factor of any value of a in the first row will be referred to as s.

 

Useful Equations and Notation

ab = c

dd + e = c

(d + n)(d + n)-(x + n)(x + n) = c

a + 2x + 2n = b

a = d - x

d = a + x

d = floor_sqrt(c)

e = c - (dd)

b = c / a

n = the difference between the square root d and the larger of the two squares

n = ((a + b) / 2) - d

d + n = number that is exactly halfway between a and b

d + n = i

x = d - a

x = (floor_sqrt(( (d+n)*(d+n) - c))) - n

x + n = j

f = e - 2d + 1

t = the variable that lets you traverse the infinite elements in for a given (e, n) that has values.

if (e is even) t = (x + 2) / 2

if (e is odd) t = (x + 1) / 2

ID: 99fc86 Dec. 30, 2017, 4:21 a.m. No.1714   πŸ—„οΈ.is πŸ”—kun   >>2317

CodePost Guide

Because of the tendency for post links to disappear I will now be using Pastebin.

 

C#

BigInteger Square Root β€”β€” pastebin.com/rz1SdACZ

Generate Bitmap within original code β€”β€” pastebin.com/hMTtJF6E

More on generating a bitmap with the original code β€”β€” pastebin.com/JUdtehb4

Generate the large square for e and t β€”β€” pastebin.com/nbjs2kz4

Original VQC code β€”β€” pastebin.com/XFtcAcrz

How to run VQC code on Linux β€”β€” pastebin.com/6HnN7K5X

Unity Script β€”β€” pastebin.com/QgAXLQj3

Unity Script 2 β€”β€” pastebin.com/Y38nVWgT

 

Java

Create a Bitmap using the VQC Generator β€”β€” pastebin.com/Dgu9aP1h

VQCGenerator β€”β€” pastebin.com/VMRnkXFP

Traverse the VQC cells in real-time β€”β€” anonfile.com/W44cofd6b6/VQCGUI.7z

Traverse the VQC cells in real-time [V2] β€”β€” anonfile.com/TeH6q3d8bd/VQCGUI_v2.7z

 

NodeJS

BigInteger Library and Sqrt β€”β€” pastebin.com/y8AXtFFr

 

Python

College Anon's code (VERY USEFUL) β€”β€” pastebin.com/d8xZZnm0

Create the VQC β€”β€” pastebin.com/NZkjtnZL

3D VQC β€”β€” pastebin.com/vdf8SpYt

3D VQC (v2) β€”β€” pastebin.com/wZM5Thzu

Fractal cryptography β€”β€” pastebin.com/XuN4U7Dv

Generate cells for a (and more) β€”β€” pastebin.com/iAizgLFF

Generate any cell in (0,1) and (0,2) β€”β€” pastebin.com/gRTYpdMU

Generate genesis cell β€”β€” pastebin.com/GKzcCpMF

Generate positive AND negative genesis cells β€”β€” pastebin.com/9ixjRyxt

Get A and B from C and N example β€”β€” pastebin.com/s0SZ9BNF

VQC + t β€”β€” pastebin.com/Lgufk0db

 

Rust

Check if a number is prime β€”β€” huonw.github.io/primal/primal/fn.is_prime.html

Create Bitmap using the VQC Generator β€”β€” play.rust-lang.org/?gist=c2446efeec452fe14e1ddd0d237f4173&version=stable

Create Bitmap using the VQC Generator [V2] β€”β€” pastebin.com/zGSusyz5

Additional VQC code β€”β€” play.rust-lang.org/?gist=50def916ad48400bc5d638fbf119ae85&version=stable

Generate the VQC β€”β€” play.rust-lang.org/?gist=6b6beb372b6b931f1abd30642a35a80c&version=stable

 

Previous Threads

RSA #0, or the VQC thread β€”β€” archive.fo/XmD7P

RSA #1 β€”β€” archive.fo/RgVko

RSA #2 β€”β€” archive.fo/fyzAu

RSA #3 β€”β€” archive.fo/uEgOb

RSA #4 (not finished, but dead) β€”β€” archive.fo/eihrQ

RSA General (#5) β€”β€” >>7

RSA #6 β€”β€” >>848

 

Videos and Links

For those who are passionate about cryptography (or want to be).

 

Integer Factorization of any arbitrary integer β€” Part One

youtube.com/watch?v=9FeROMe0KBU

 

The RSA Encryption Algorithm (1 of 2: Computing an Example) (Very Simple)

youtube.com/watch?v=4zahvcJ9glg

 

Encryption and HUGE numbers - Numberphile

youtube.com/watch?v=M7kEpw1tn50

 

Public Key Cryptography: RSA Encryption Algorithm

youtube.com/watch?v=wXB-V_Keiu8

 

RSA-129 - Numberphile

youtube.com/watch?v=YQw124CtvO0

 

Elliptic Curve Cryptography Overview

youtube.com/watch?v=dCvB-mhkT0w

 

A (relatively easy to understand) primer on elliptic curve cryptography

arstechnica.com/information-technology/2013/10/a-relatively-easy-to-understand-primer-on-elliptic-curve-cryptography/2/

 

Elliptic Curve Cryptography: a gentle introduction

andrea.corbellini.name/2015/05/17/elliptic-curve-cryptography-a-gentle-introduction/

 

Elliptic Curve Point Addition

youtube.com/watch?v=XmygBPb7DPM

ID: 99fc86 Dec. 30, 2017, 4:21 a.m. No.1715   πŸ—„οΈ.is πŸ”—kun   >>1721

Map of Chris (lel)

 

RSA #2

>>>/cbts/50228

>>>/cbts/53383

>>>/cbts/53432

>>>/cbts/53436

>>>/cbts/53466

>>>/cbts/53468

>>>/cbts/53469

>>>/cbts/53473

>>>/cbts/53475

>>>/cbts/53479

>>>/cbts/53481 *** importante

>>>/cbts/53482

>>>/cbts/53607

>>>/cbts/53609

>>>/cbts/53613

>>>/cbts/53615

>>>/cbts/53662

>>>/cbts/53668

>>>/cbts/53673

>>>/cbts/53678

>>>/cbts/53680

>>>/cbts/53681

>>>/cbts/53699

>>>/cbts/53770

>>>/cbts/58934

>>>/cbts/59055

>>>/cbts/65200

 

RSA #3

>>>/cbts/87168

>>>/cbts/87234

>>>/cbts/87300

>>>/cbts/87378

>>>/cbts/87414

 

RSA #4

>>>/cbts/98492

>>>/cbts/98560

>>>/cbts/107338

>>>/cbts/107342 rt >>>/cbts/107256

>>>/cbts/111903

>>>/cbts/111975 rt >>>/cbts/111942

>>>/cbts/111983

>>>/cbts/112148

>>>/cbts/112422

>>>/cbts/112425

>>>/cbts/112429 rt >>>/cbts/112172

 

RSA #5

>>11

>>12

>>17

>>18

>>19

>>20

>>21

>>23

>>24

>>25

>>26

>>27

>>28

>>29

>>30

>>31

>>32

>>33

>>495

>>699

>>709

>>710

 

RSA #6 (to date)

>>1099

>>1380

ID: 99fc86 Dec. 30, 2017, 11:44 a.m. No.1747   πŸ—„οΈ.is πŸ”—kun   >>1751

>>1745

The VQC is 3-dimensional, and making an a^3 * b^3 = c^3 cell would create cubes instead of squares.

 

Chris said you could draw a line of symmetry down the VQC and fold it onto itself. (f, 1) is how.

Anonymous ID: 99fc86 Dec. 30, 2017, 12:08 p.m. No.1752   πŸ—„οΈ.is πŸ”—kun   >>1754 >>1768

>>1751

Yeah, and I'm sorry I can't just provide the meat of it, I had a friend that worked through this but would not share all of it.

 

I'm not exactly sure if it's f or -f that shows this, but f shows you that the cells left of 0, e<0 are literally just a mirror of the cells on the right of 0, e>0.

Anonymous ID: 99fc86 Dec. 30, 2017, 6:02 p.m. No.1786   πŸ—„οΈ.is πŸ”—kun   >>1787

>>1785

No, just factor the RSA numbers. You have to delve into the PGP specification to get the c values from public keys, which I'm qualified for and could code if he really has found a solution.

Anonymous ID: 99fc86 Dec. 30, 2017, 6:04 p.m. No.1788   πŸ—„οΈ.is πŸ”—kun

>>1787

I've worked with Bouncy Castle for a long time and I could not figure out how to get the c value. If you google it you get a bunch of stupid irrelevant questions, it's as if nobody besides an academic has ever genuinely tried to crack RSA.

Anonymous ID: 99fc86 Dec. 30, 2017, 10:03 p.m. No.1876   πŸ—„οΈ.is πŸ”—kun   >>1878

>>1875

That's a nice conspiracy theory, but it can't be implemented without a lot of suspicious parts.

They'd need to use an elaborate hashing algorithm if they wanted something to be safe, but to also check for such a condition.

And what are they gonna do, hash your whole memory? CPU would rape itself.

 

Not happening.

Anonymous ID: 99fc86 Dec. 30, 2017, 10:28 p.m. No.1879   πŸ—„οΈ.is πŸ”—kun   >>1880

>>1878

Yes, I came from cbts. You're right, it's pretty ironic that I find a CPU checking for certain factors and keys more outlandish than pete'sgate, CIA killing kennedy, and the rothschilds controlling the world

Anonymous ID: 99fc86 Dec. 30, 2017, 11:08 p.m. No.1893   πŸ—„οΈ.is πŸ”—kun   >>1894 >>1895 >>1932

>>1892

I'm just tired of listening to people who think they are a genius for solving something that was handed to them on a platter compared to solving RSA on your own with no VQC existing yet. Same with people on CBTS. So, if you refuse to share you are just a stuck-up douche, because everyone here agreed to the fallout from the RSA solution being released a long time ago.

Anonymous ID: 99fc86 Dec. 31, 2017, 12:03 a.m. No.1915   πŸ—„οΈ.is πŸ”—kun

>>1912

If I can offer some advice: put your original math code in comments and then rewrite with BigInteger.

 

BigInteger equations are pretty confusing, it's a method for every operation.

Anonymous ID: 99fc86 Dec. 31, 2017, 3:16 a.m. No.1956   πŸ—„οΈ.is πŸ”—kun   >>1959

>>1954

Interestingly your code only works for certain semiprimes, but I tested it after converting it so it's possible I made a mistake.

 

However, it did work for these.

3*313561 = 940683

3*31267=93801

17*439=7463

7*23 = 161

5*29=145

3*3=9

 

Ones it didn't work for:

15 (it gave me -1*-15 lol)

7474

940666

940679

 

I optimized the code a little, based on what was unnecessary, here it is.

I'll try to add to it when I understand it better.

It's very interesting to me that some semiprimes worked even though they were very large.

 

Let me know if there's an error.

pastebin.com/Sx5NHhpU

Anonymous ID: 99fc86 Dec. 31, 2017, 3:26 a.m. No.1960   πŸ—„οΈ.is πŸ”—kun   >>1961

>>1959

I'll take a look at it again tomorrow. I changed the first equation in the beginning method to 1 because that's what it always comes out to (it starts out as 0, so dividing it by 2 is 0 and then taking math.ceil is just adding 1.)

 

I'll see what I did wrong tomorrow.

Anonymous ID: 99fc86 Dec. 31, 2017, 3:32 a.m. No.1962   πŸ—„οΈ.is πŸ”—kun   >>1963 >>1964 >>1966

>>1961

Okay, I see my error, I tested your code and the first equation actually comes out to zero. Let me see if that fixes 15 factorization.

 

You can test my rewrite on RSA numbers when you're ready.

 

[java] public static String rsa100c =

"1522605027922533360535618378132637429718068114961380688657908494580122963258952897654000350692006139"; [/java]

Anonymous ID: 99fc86 Dec. 31, 2017, 3:35 a.m. No.1963   πŸ—„οΈ.is πŸ”—kun

>>1961

>>1962

Yeah, changing from one to zero fixed 15 factorization. It's perfectly fine that you can't factor a number where the factor is even, or 2, because RSA numbers have giant factors and 2 is the only prime even number.

ID: 99fc86 Dec. 31, 2017, 6:30 p.m. No.2036   πŸ—„οΈ.is πŸ”—kun   >>2038 >>2039

>>2035

I'm here. I made a few mistakes when I changed it to BigInteger, I was running on low fuel.

 

Did you implement these changes when you tried it on my BigInteger rewrite?

 

pastebin.com/Ke1ZfW0x

mid_index was supposed to start from zero, not one, according to the original code that Australia Anon posted.

ID: 99fc86 Dec. 31, 2017, 6:33 p.m. No.2037   πŸ—„οΈ.is πŸ”—kun   >>2038 >>2039

>>2035

>8d711d

Wait, it is you. I should really read the IDs. I'll try to understand your code a bit more, can you send me your most recent version?

The only difference there is supposed to be between the BigInteger rewrite and that is that it would be able to tested on RSA numbers.

ID: 99fc86 Dec. 31, 2017, 7:55 p.m. No.2041   πŸ—„οΈ.is πŸ”—kun   >>2042

>>2039

I finally fixed the 15 factorization in my rewrite.

It's because when you use the BigInteger sqrt method on 1 it returns 0, not 1. Made that a special case.

 

I would replace the method for all the grief it's given me but I can't find anything as simple online.

ID: 99fc86 Dec. 31, 2017, 8:44 p.m. No.2050   πŸ—„οΈ.is πŸ”—kun   >>2051 >>2052

>>2044

Doesn't work with rsa100 or rsa2048 yet (but I didn't wait very long. and of course I tried them, hehe)

 

Ones it did solve:

1613*1619=2611447

5563*7951=44231413

11699*14843=173648257

73259*93739=6867225401

104723*104729=10967535067

885289*979423=867072408247

took too long on 81311001417221

 

And your number.

ID: 99fc86 Dec. 31, 2017, 9:38 p.m. No.2068   πŸ—„οΈ.is πŸ”—kun   >>2069

>>2066

So, I created a multithreaded solution to print out each i value, and it's doing some strange things with the i value when calculating 81311001417221. It never goes any higher than the upper bound, it goes lower to negative upper bound, then resets.

ID: 99fc86 Jan. 1, 2018, 1:14 a.m. No.2099   πŸ—„οΈ.is πŸ”—kun   >>2100 >>2102 >>2330

>>2092

That doesn't make much sense, because (x + n)^2 is what you add to c to make a square. I'll try to find where he said that.

 

>>2097

All RSA numbers don't work, neither does that 45-digit semiprime.

 

The smallest number that doesn't work is

81311001417221

 

It doesn't make a lot of sense to me right now why, because these do, and they are one digit longer:

215303158862641=13903207*15485863

237051716747561=15358451*15434611

 

I'll get you some more small-semiprimes that don't work for you to make a graph. Would including the RSA numbers help, or too large to work with? Because I tested all of them.

ID: 99fc86 Jan. 1, 2018, 1:37 a.m. No.2101   πŸ—„οΈ.is πŸ”—kun   >>2103

>>2100

That doesn't mean RSA isn't compatible with such an algorithm.

 

Read the picture. For example, the distance between rsa100a and rsa100b is relatively small.

 

37975227936943673922808872755445627854565536638199

*

40094690950920881030683735292761468389214899724061

 

RSA-155's factors are close as well.

102639592829741105772054196573991675900716567808038066803341933521790711307779

*

106603488380168454820927220360012878679207958575989291522270608237193062808643

ID: 99fc86 Jan. 1, 2018, 1:58 a.m. No.2105   πŸ—„οΈ.is πŸ”—kun

>>2102

Okay, I'll try to find some smaller semiprimes that don't work.

 

>>2103

It's not even that the algorithm is taking too long, it's just inaccurate. Try it yourself by printing out each i. You'll see that it repeats very quickly, meaning it already searched all the space. If the variables are configured properly it could factor those numbers.

ID: 99fc86 Jan. 1, 2018, 2:09 a.m. No.2106   πŸ—„οΈ.is πŸ”—kun   >>2137

>>2095

>>2093

>>2092

Figured it out. c MINUS f makes a square.

 

c = 3057

a = 3

b = 1019

f = -79

c - f = 56^2

 

c = 8883

a = 9

b = 987

f = -142

c - f = 95^2

 

c = 187452

a = 254

b = 738

f = -37

c - f = 433^2

 

c = 194421

a = 283

b = 687

f = -60

c - f = 441^2

 

Therefore, c + (x + n)^2 and c - f are two perfect squares to the right of c (on the number line).

ID: 99fc86 Jan. 1, 2018, 1:12 p.m. No.2142   πŸ—„οΈ.is πŸ”—kun

>>2141

Furthermore, the way I was able to list all perfect squares was by only printing out the cell when

fsqrt(c+x+f is less than d-1 or where it is greater than d+1

 

Meaning that this is true for all perfect squares, namely fsqrt(c+f+x) = d - 2

ID: 99fc86 Jan. 1, 2018, 4:29 p.m. No.2150   πŸ—„οΈ.is πŸ”—kun   >>2151

>>2149

Don't believe any of that nonsense they posted. Whichever CIANigger cracked Q's trip is probably suicidal over wasting 8k 60fps gaming hardware on "Matlock".

 

What a brilliant crumb..

 

Matlock.

[A]ndy [G]riffith.

Likes hotdogs.

ID: 99fc86 Jan. 1, 2018, 4:51 p.m. No.2154   πŸ—„οΈ.is πŸ”—kun   >>2155 >>2157 >>2158

>>2151

Regardless of my waivering opinion on whether he is legitimate, I think this can be solved. You don't know what you don't know.

 

All the variables we use to represent Fermat's factorization algorithm (that's what this started off of) are so much more advanced than what the world knows at this point. The most advanced factorization algorithm in the world is literally a brute force, but with a slightly smaller search space using a polynomial (I can explain sieving if you think that's relevant.) These are so much different. We can do so much better. We have these crazy gradients that can factor numbers using a line, and we have the grid, which has so many untapped and unexplored secrets in it.

 

He's already accomplished half of his goal: turning the people here into apprentice mathematicians.

ID: 99fc86 Jan. 1, 2018, 5:11 p.m. No.2159   πŸ—„οΈ.is πŸ”—kun   >>2161 >>2162

>>2158

From channing for a very long time and having participated when We The People exposed PG and Seth Rich all on our own (and with the help of some patriotic martyrs), I don't believe anyone is going to get suicided for mathematics. People our watching. Our work isn't in vain. Look how many lurkers revealed themselves when someone used Q's tripcode.

 

In fact, it's our duty to expose the fact that the world's security is based on a lie. A 2KB number.

ID: 99fc86 Jan. 1, 2018, 9:11 p.m. No.2196   πŸ—„οΈ.is πŸ”—kun   >>2197 >>2204 >>2217 >>2316 >>2357

>>2193

>>2194

>>2195

Think about the number line.

 

For any c value, you start out knowing 2 perfect squares, d^2 and (c - f). (c - f) is adjacent to d^2, meaning you can calculate (c - f) by adding one to d and then squaring that value.

 

c = 123824

d = 351

f = -80

c - f = 123904

(d+1)^2 = 123904 = (c - f)

 

The two squares you want to get to are called the nonadjacent squares, and they are they are how the factors of c are created. There is a larger one and a smaller one, like the picture I posted. c is equal to the difference of those two nonadjacent squares, a is equal to the difference of the roots of those squares, and b is equal to the sum of the roots of those squares.

 

i^2 = (d+n)^2

j^2 = (x+n)^2

 

c = i^2 - j^2 = (d+n)^2 - (x+n)^2

a = i - j = (d + n) - (x + n)

b = i + j = (d + n) + (x + n)

 

Previously in the field of integer factorization it was thought that you had to know both to instantly factorize the number, but you only have to know one. Look at the picture I posted and you will understand Fermat's equation and the difference of two squares.

ID: 99fc86 Jan. 1, 2018, 9:13 p.m. No.2197   πŸ—„οΈ.is πŸ”—kun

>>2196

Actually, they can factor it by knowing either nonadjacent square. But it was still something nobody could solve, namely getting to those nonadjacent squares. That's why sieves exist, they are an search algorithm that uses a polynomial to decrease the search space based on a few proofs. Nothing like what we have here.

ID: 99fc86 Jan. 1, 2018, 9:43 p.m. No.2201   πŸ—„οΈ.is πŸ”—kun   >>2202

>>2200

>>2199

>>2198

Thanks, but I didn't solve anything, I just delved deeper into premise of what the goals of factorization can be simplified into, namely:

 

-finding either of the nonadjacent squares

-finding the root of i^2 (which is what >>1946

does)

-finding n

-finding x

-finding na

 

There's many you could solve it.

 

>>2013

Also, is it useful that in the case of (1,25,4) that the e we need to get to is adjacent to -n?

ID: 99fc86 Jan. 1, 2018, 10:02 p.m. No.2207   πŸ—„οΈ.is πŸ”—kun

>>2206

>>2205

I think I can help with that. Since i^2 = (d+n)^2, the big square that you subtract the little square from to make c. So, we just need some measure that's small enough but also includes the big square's sqrt in the search space.

 

>>2179

The side length of the big square (d+n) in that picture is what you want to find out.

ID: 99fc86 Jan. 1, 2018, 10:17 p.m. No.2214   πŸ—„οΈ.is πŸ”—kun   >>2215

>>2213

Yes, good going! So, where do we go from now? Binary search useless? What's next? Ready to code something out here, I've been studying different factorization algorithms recently. Seeing the bigger picture is VERY useful.

ID: 99fc86 Jan. 1, 2018, 10:43 p.m. No.2219   πŸ—„οΈ.is πŸ”—kun   >>2220

>>2218

Less than a quarter of a second.

 

All I did was change

 

i_poss = c.subtract(eight).divide(six).add(five);

to

i_poss = c.subtract(eight).divide(six).add(three);

 

and

 

BigInteger correct_i = binary_search(mid_index, upper_bound_real, zero);

to

BigInteger correct_i = binary_search(mid_index, upper_bound_real, d.add(one));

ID: 99fc86 Jan. 1, 2018, 10:55 p.m. No.2221   πŸ—„οΈ.is πŸ”—kun   >>2224

>>2218

Next number in order of magnitude that doesn't work is

 

523022617466601111760007224100074291200000001

 

I think this a step forwards because the same algorithm works better for all semiprimes, however I noticed that changing the lower bound to d+1 only makes it work SOME of the time.

 

10967535067 only works with the previous edit.

So lower bound = 0 factors this,

 

but it doesn't factor 81311001417221 and lower bound = d+1 does. Interestingly, changing the gradient from +5 to +3 doesn't change the results, but lower bound does.

 

Any ideas on how I would be able to programmatically check it a certain starting value didn't work?

ID: 99fc86 Jan. 1, 2018, 11:06 p.m. No.2225   πŸ—„οΈ.is πŸ”—kun   >>2226 >>2227

>>2224

4 seconds for a sieving method

70 minutes for rsa100

800 years for rsa200

14000years for the higher ones that have been cracked

(this is cpu time)

 

Not very impressive, but with the level of jumps we're making I think we'll surpass them quite quickly. Besides, your algorithm is unique in that if it works, it's always around a few seconds. Right?

ID: 99fc86 Jan. 1, 2018, 11:14 p.m. No.2226   πŸ—„οΈ.is πŸ”—kun   >>2227

>>2225

I should also mention that the 45 digit semiprime I've been trying to factor is

 

38! + 1

 

So it might be special.

It takes 4 seconds for that with advanced sieving algorithms. But that shouldn't deter us.

ID: 99fc86 Jan. 1, 2018, 11:20 p.m. No.2228   πŸ—„οΈ.is πŸ”—kun   >>2229

>>2227

It loops from

 

22869687743093501059308 to 87170436244433518626667870683345715199995947

 

(highest value it prints out to lowest)

 

the highs and lows it prints out are all slightly different after that, but it just keeps looping around the same magnitudes

ID: 99fc86 Jan. 1, 2018, 11:26 p.m. No.2230   πŸ—„οΈ.is πŸ”—kun   >>2232

>>2229

523022617466601111760007224100074291200000001

 

don't factor this one.. hehe

22701801293785014193580405120204586741061235962766583907094021879215171483119139894870133091111044901683400949483846818299518041763507948922590774925466088171879259465921026597046700449819899096862039460017743094473811056991294128542891880855362707407670722593737772666973440977361243336397308051763091506836310795312607239520365290032105848839507981452307299417185715796297454995023505316040919859193718023307414880446217922800831766040938656344571034778553457121080530736394535923932651866030515041060966437313323672831539323500067937107541955437362433248361242525945868802353916766181532375855504886901432221349733

ID: 99fc86 Jan. 2, 2018, 2:11 a.m. No.2279   πŸ—„οΈ.is πŸ”—kun

>>2278

Good, I had a feeling this prime search nonsense would lead us astray.

 

It's another problem the world can't solve yet.

Checking if a number is prime in a not terrible time.

Anonymous ID: 99fc86 Jan. 2, 2018, 5:08 a.m. No.2301   πŸ—„οΈ.is πŸ”—kun

This looks useful! I thought we would be stuck with Sieves for prime number identification until I saw this.

 

https://en.wikipedia.org/wiki/Prime_number_theorem#Table_of_Ο€(x),x/_log_x,_and_li(x)

ID: 99fc86 Jan. 2, 2018, 5:41 p.m. No.2337   πŸ—„οΈ.is πŸ”—kun

>>2336

I found the perfect lower bound setting: d-1

It works for semiprimes where the factors are sufficiently close, regardless of size.

 

9999999999999999999197600000000000000000184023=99999999999999999991999*99999999999999999999977

ID: 99fc86 Jan. 2, 2018, 11:24 p.m. No.2356   πŸ—„οΈ.is πŸ”—kun

>>2355

Well, they can do whatever they want with it.. Just a race against time. Their window would be from solution produced to the world finally taking us seriously.. (they don't right now).

ID: 99fc86 Jan. 2, 2018, 11:58 p.m. No.2361   πŸ—„οΈ.is πŸ”—kun   >>2362

>>2360

I didn't mean n, I meant N. Lmao, they're different things apparently. I should find the definition and include it in the batter. Even I have to go back to it. It's apparently the next step in factoring from the genesis element.

ID: 99fc86 Jan. 3, 2018, 2:04 a.m. No.2372   πŸ—„οΈ.is πŸ”—kun

>>2371

It's because the factors were close together.

 

RSA numbers have factors that are calculated in a way so as that the normal Fermat factorization algorithm takes thousands of years.

But I have faith in us.

 

>>2371

Yep, d-1 as the lower bound works the best. I can post the code I have, it's not been modified really.

ID: 99fc86 Jan. 3, 2018, 2:51 p.m. No.2416   πŸ—„οΈ.is πŸ”—kun   >>2417 >>2427

>>2415

This is exactly what I dreamt of.

 

(c-f)^2 is close to i^2, relatively.

Take those 2 squares and the c^2 square,

and

take (d+1) from c, and now you have a distance that includes j.

 

It's the distance from the c^2 square's side length (c) to sqrt(c-f) which is d+1.

ID: 99fc86 Jan. 3, 2018, 9:44 p.m. No.2432   πŸ—„οΈ.is πŸ”—kun   >>2433

AAanon: I noticed something about your binary search code.

 

You know the higher bound that's calculated based on the gradient?

 

That value of i is always right when c is a perfect square. Meaning the first guess is what it would be if c was a perfect square.

ID: 99fc86 Jan. 3, 2018, 10:06 p.m. No.2436   πŸ—„οΈ.is πŸ”—kun

Also, Chris said you add f to c to make a perfect square because he was using 2d+1 - e as f, where I use e - (2d+1)

 

It just makes it so I subtract from c to make a square instead of adding.

ID: 99fc86 Jan. 4, 2018, 10:07 a.m. No.2484   πŸ—„οΈ.is πŸ”—kun   >>2485 >>2486

>>2483

Hey, you're right!

 

The factorization works as long as e = 1!

17 = 1*17

145 = 5*29

2117 = 29*73

5777 = 53*109

10001 = 73*137

20165 = 5*4033

1077445 = 5*215489

10023557 = 17*589621

634939205 = 5*126987841

102503110881925 =

 

I factored these with what you posted! This is definitely great! We just have to find a way to get the c we want into these first rows.

ID: 99fc86 Jan. 4, 2018, 10:46 a.m. No.2492   πŸ—„οΈ.is πŸ”—kun   >>2493

>>2491

Well, you can factor the square of c using this algorithm but it doesn't give you the right factors.

 

It's not able to factor 15, but it can factor the square of it albeit the wrong factorization.

225 = 3 * 75

 

It can also factor 7463^2

55696369 = 17 * 3276257

 

And 9^2

81 = 3 * 27

 

And 2611447^2

6819655433809 = 1613*4227932693

 

So, it can factor these numbers' squares but not the number itself.

I have a hunch you can do something by knowing a factorization of the square.

ID: 99fc86 Jan. 4, 2018, 12:11 p.m. No.2510   πŸ—„οΈ.is πŸ”—kun   >>2511

>>2508

Maybe you can draw a conclusion from the amount of iterations it takes, then.

 

9 = 3 * 3iterations: 314 = 2 * 7iterations: 395 = 5 * 19iterations: 32145 = 5 * 29iterations: 57463 = 17 * 439iterations: 307493801 = 3 * 31267iterations: 234512611447 = 1613 * 1619iterations: 1282742

 

>>2509

Yes, and c is not a square, it's just the difference of two squares.

ID: 99fc86 Jan. 4, 2018, 2:36 p.m. No.2530   πŸ—„οΈ.is πŸ”—kun   >>2531

>>2528

I think we're actually pretty close to a log(n) factorization.

 

for any number in row 1

 

k = sqrt(n - (e/2) - 1) / 2 + 1

 

is the exact same number as the amount of iterations of my program required to reach (e,n).