Created
November 20, 2025 00:01
-
-
Save secdev02/f231521f74e7575c3599a94d97f22787 to your computer and use it in GitHub Desktop.
ECC Curve Experiment
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # ALL 156 POINTS ON y² = x³ + 7 (mod 65537) | |
| # WHERE: Both x and y are PRIME, and the point has ORDER 65538 | |
| Points with prime coordinates and maximal order: | |
| 1. (41, 4817) | |
| 2. (257, 7577) | |
| 3. (313, 59351) | |
| 4. (331, 27941) | |
| 5. (383, 25307) | |
| 6. (479, 12373) | |
| 7. (769, 53887) | |
| 8. (797, 51787) | |
| 9. (1373, 44159) | |
| 10. (1447, 39521) | |
| 11. (1487, 50539) | |
| 12. (1553, 3767) | |
| 13. (2153, 55619) | |
| 14. (2389, 35543) | |
| 15. (2423, 9343) | |
| 16. (2659, 36559) | |
| 17. (2791, 46219) | |
| 18. (2963, 50111) | |
| 19. (3659, 56909) | |
| 20. (3697, 2687) | |
| 21. (4463, 8219) | |
| 22. (4679, 16567) | |
| 23. (4889, 12739) | |
| 24. (5171, 27689) | |
| 25. (5351, 37061) | |
| 26. (5419, 49537) | |
| 27. (5639, 43777) | |
| 28. (5879, 16901) | |
| 29. (7079, 23581) | |
| 30. (7681, 63097) | |
| 31. (7901, 1873) | |
| 32. (7993, 11369) | |
| 33. (8053, 1249) | |
| 34. (9013, 30937) | |
| 35. (9311, 19583) | |
| 36. (9413, 11299) | |
| 37. (10067, 11897) | |
| 38. (10169, 39209) | |
| 39. (10369, 45553) | |
| 40. (11617, 60917) | |
| 41. (11833, 33751) | |
| 42. (12007, 45523) | |
| 43. (12239, 20641) | |
| 44. (12269, 11681) | |
| 45. (12323, 5821) | |
| 46. (12433, 59093) | |
| 47. (13037, 43487) | |
| 48. (13109, 197) | |
| 49. (13151, 29347) | |
| 50. (13217, 2963) | |
| 51. (13367, 40559) | |
| 52. (14327, 59509) | |
| 53. (14561, 7793) | |
| 54. (15259, 3079) | |
| 55. (15263, 21211) | |
| 56. (16061, 49177) | |
| 57. (16091, 9551) | |
| 58. (16217, 20857) | |
| 59. (16651, 10193) | |
| 60. (16699, 30757) | |
| 61. (17579, 14281) | |
| 62. (17891, 3613) | |
| 63. (17923, 25577) | |
| 64. (18287, 19403) | |
| 65. (18593, 12497) | |
| 66. (19231, 26003) | |
| 67. (19603, 62617) | |
| 68. (19717, 6763) | |
| 69. (19853, 8081) | |
| 70. (20599, 47881) | |
| 71. (20981, 27751) | |
| 72. (21163, 20357) | |
| 73. (21493, 22961) | |
| 74. (21713, 15299) | |
| 75. (21821, 12113) | |
| 76. (21859, 42073) | |
| 77. (22277, 53189) | |
| 78. (22871, 44269) | |
| 79. (23071, 42017) | |
| 80. (23227, 34939) | |
| 81. (23291, 11801) | |
| 82. (23977, 25471) | |
| 83. (24481, 15973) | |
| 84. (25013, 21943) | |
| 85. (25411, 1031) | |
| 86. (25717, 10979) | |
| 87. (25763, 22039) | |
| 88. (26861, 61483) | |
| 89. (27073, 26927) | |
| 90. (27107, 15227) | |
| 91. (27281, 10937) | |
| 92. (27299, 41759) | |
| 93. (27673, 9749) | |
| 94. (27827, 42719) | |
| 95. (27983, 21317) | |
| 96. (28219, 23201) | |
| 97. (28433, 15889) | |
| 98. (28619, 35267) | |
| 99. (28759, 53047) | |
| 100. (28793, 41189) | |
| 101. (29633, 18443) | |
| 102. (30893, 17519) | |
| 103. (31393, 10753) | |
| 104. (31477, 60679) | |
| 105. (31543, 8597) | |
| 106. (32503, 617) | |
| 107. (32561, 53173) | |
| 108. (32707, 32839) | |
| 109. (33023, 12097) | |
| 110. (33679, 34123) | |
| 111. (33769, 21341) | |
| 112. (34471, 55339) | |
| 113. (34519, 5381) | |
| 114. (35963, 32377) | |
| 115. (36479, 33023) | |
| 116. (36551, 3697) | |
| 117. (36571, 35363) | |
| 118. (36791, 49927) | |
| 119. (36793, 1297) | |
| 120. (36929, 63361) | |
| 121. (37501, 60899) | |
| 122. (37561, 34499) | |
| 123. (37567, 43543) | |
| 124. (37799, 22511) | |
| 125. (38317, 41263) | |
| 126. (38651, 58727) | |
| 127. (38993, 60631) | |
| 128. (40039, 46181) | |
| 129. (40063, 3733) | |
| 130. (40867, 35027) | |
| 131. (41597, 38669) | |
| 132. (41729, 32309) | |
| 133. (41927, 42509) | |
| 134. (41983, 48869) | |
| 135. (42061, 60811) | |
| 136. (42293, 2297) | |
| 137. (42457, 18131) | |
| 138. (42509, 2473) | |
| 139. (42709, 33311) | |
| 140. (42793, 2311) | |
| 141. (42901, 19427) | |
| 142. (43649, 36229) | |
| 143. (43783, 38237) | |
| 144. (44101, 4723) | |
| 145. (44267, 25867) | |
| 146. (44711, 59029) | |
| 147. (45541, 50131) | |
| 148. (45887, 1483) | |
| 149. (46679, 3467) | |
| 150. (47221, 49877) | |
| 151. (47251, 27073) | |
| 152. (47353, 50101) | |
| 153. (47497, 2203) | |
| 154. (47543, 22159) | |
| 155. (48299, 47221) | |
| 156. (48497, 20129) | |
| NOTES: | |
| - All x values are prime numbers | |
| - All y values are prime numbers | |
| - All points have order 65538 (maximal order, equal to p+1) | |
| - These are generators of the full elliptic curve group | |
| - Searched through first 5000 prime x values | |
| EXAMPLE CODE: | |
| from ecc import FieldElement, Point | |
| prime = 65537 | |
| a = FieldElement(0, prime) | |
| b = FieldElement(7, prime) | |
| # Use any of the 156 points listed above | |
| x = FieldElement(41, prime) | |
| y = FieldElement(4817, prime) | |
| p = Point(x, y, a, b) | |
| for s in range(1, 21): | |
| result = s*p | |
| print('{}*(41,4817)=({},{})'.format(s, result.x.num, result.y.num)) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment