এলিপটিক কার্ভগুলিতে যোগ করা
অস্বীকৃতি: এটি উপবৃত্তাকার বক্ররেখির সমৃদ্ধ বিষয়ে কোনও ন্যায়বিচার করে না। এটি অনেক সরলীকৃত হয়। উপবৃত্তাকার কার্ভগুলি সম্প্রতি এনক্রিপশনের প্রসঙ্গে মিডিয়ায় প্রচুর দৃষ্টি আকর্ষণ করার সাথে সাথে আমি একটি ছোট্ট অন্তর্দৃষ্টি দিতে চেয়েছিলাম যে উপবৃত্তাকার বক্ররেখার "গণনা" আসলে কীভাবে কাজ করে।
ভূমিকা
উপবৃত্তাকার বক্ররেখাগুলি (x,y)
ফর্মের সমতলে বিন্দুগুলির সেট হয় y^2 = x^3+Ax+B
। (অতিরিক্তভাবে, 4A^3+27B^2 ≠ 0
দুষ্টু এককতা এড়াতে।) আপনি যে কোনও ক্ষেত্রে এই বক্ররেখাগুলি বিবেচনা করতে পারেন। যদি আপনি আসল সংখ্যার ক্ষেত্রটি ব্যবহার করেন তবে বক্ররেখাগুলি কল্পনা করা যেতে পারে এবং সেগুলি দেখতে এইরকম লাগে:
এই বক্ররেখাগুলির বিশেষ বিষয়টি হ'ল এগুলি গাণিতিক ক্রিয়াকলাপের একটি বিল্ট রয়েছে যা সংযোজনের এনালগ। আপনি পয়েন্টগুলি যোগ করতে এবং বিয়োগ করতে পারেন এবং এই ক্রিয়াকলাপটি উভয়ই সহযোগী এবং অভিজাত (একটি আবেলীয় দল))
সংযোজন কীভাবে কাজ করে?
দ্রষ্টব্য: উপবৃত্তাকার বক্ররেখগুলিতে পয়েন্ট সংযোজন স্বজ্ঞাত নয়। এই জাতীয় সংযোজনটিকে যেমনভাবে সংজ্ঞায়িত করা হয় কারণ এতে নির্দিষ্ট কিছু চমৎকার বৈশিষ্ট্য রয়েছে। এটা অদ্ভুত, কিন্তু এটি কার্যকর।
উপবৃত্তাকার রেখাচিত্র একদল হিসেবে, একটি হল যুত পরিচয় যে 0. সমতুল্য যে যোগ হয় 0
কোন বিন্দু থেকে ফলাফলের পরিবর্তন করবে না। এই সংযোজনীয় পরিচয়টি অসীমের "পয়েন্ট"। প্লেনের সমস্ত লাইন অনন্ত সময়ে এই বিন্দুটি অন্তর্ভুক্ত করে, তাই এটি যুক্ত করা কোনও তফাত করে না।
ধরা যাক যে কোনও প্রদত্ত রেখাটি বক্ররেখাকে তিনটি পয়েন্টে ছেদ করে, যা হতে পারে 0
এবং এই তিনটি পয়েন্টের যোগফল 0
। এটি মাথায় রেখে এই চিত্রটি একবার দেখুন।
এখন, প্রাকৃতিক প্রশ্ন, কী P+Q
? ঠিক আছে, যদি P+Q+R = 0
, তবে P+Q = -R
(বিকল্প হিসাবে লিখিত R'
)। কোথায় আছে -R
? কোথায় R + (-R) = 0
, যা থেকে x- অক্ষ ওপারে হয় R
, যাতে তাদের মাধ্যমে লাইন উল্লম্ব হয় ছেদ শুধুমাত্র R
, -R
এবং 0
। আপনি এই চিত্রের প্রথম অংশে এটি দেখতে পারেন:
এই চিত্রগুলিতে আপনি দেখতে পাচ্ছেন এমন আরেকটি জিনিস হ'ল নিজের সাথে বিন্দুর যোগফলের অর্থ লাইনটি বক্ররেখার স্পর্শকাতর।
লাইন এবং উপবৃত্তাকার রেখাচিত্রের ছেদগুলি কীভাবে সন্ধান করবেন
দুটি স্বতন্ত্র পয়েন্টের ক্ষেত্রে
সাধারণত দুটি পয়েন্টের মাধ্যমে এক লাইন থাকে P=(x0,y0), Q=(x1,y1)
। ধরে নিচ্ছি যে এটি উলম্ব নয় এবং দুটি পয়েন্ট পৃথক, আমরা এটি লিখতে পারি y = m*x+q
। যখন আমরা উপবৃত্তাকার বক্ররেখার ছেদগুলির বিন্দুগুলি সন্ধান করতে চাই তখন আমরা কেবল লিখতে পারি
0 = x^3+Ax+B-y^2 = x^3+Ax+B-(m*x+q)^2
এটি একটি তৃতীয় ডিগ্রি বহুপদী। এগুলি সমাধান করা সাধারণত সহজ নয়, তবে আমরা ইতিমধ্যে এই x
বহুত্বের দুটি জিরো জানি: x0, x1
আমরা যে দুটি পয়েন্ট যুক্ত করতে চাই তার দ্বি- স্থানাঙ্ক !
এইভাবে আমরা লিনিয়ার ফ্যাক্টরগুলি তৈরি করি (x-x0)
এবং (x-x1)
তৃতীয় রৈখিক ফ্যাক্টর রেখে x
যাই যার মূলটি বিন্দুর সহ-সমন্বয় R
। ( -R
। খুব প্রতিসাম্য কারণ মনে রাখবেন যদি R = (x2,y2)
তারপর -R = (x2,-y2)
। -
গ্রুপ থেকে নয়; এটি একটি ভেক্টর বিয়োগ নয়।)
P
নিজেকে এক পয়েন্ট যুক্ত করার ক্ষেত্রে
এই ক্ষেত্রে আমাদের বক্ররেখাটির স্পর্শক গণনা করতে হবে P=(x0,y0)
। আমরা সরাসরি m
এবং q
শর্তাবলী লিখতে পারেন A,B,x0,y0
:
3*x0^2 + A
m = ------------
2*y0
-x0^3 + A*x0 + 2*B
q = --------------------
2*y0
আমরা সমীকরণটি পেয়েছি y = m*x+q
এবং উপরের অনুচ্ছেদে যেমন একইভাবে এগিয়ে যেতে পারি।
একটি সম্পূর্ণ কেস ট্রি
এই সমস্ত ক্ষেত্রে কীভাবে পরিচালনা করবেন এটির একটি সম্পূর্ণ তালিকা:
P,Q
উপবৃত্তাকার বক্ররেখার বিন্দু হতে দিন ("অনন্ত" পয়েন্ট সহ 0
)
- যদি
P = 0
বাQ = 0
, তারপরP+Q = Q
বাP+Q = P
যথাক্রমে - অন্য
P ≠ 0
এবংQ ≠ 0
, সুতরাং যাকP = (x0,y0)
এবংQ = (x1,y1)
:- যদি
P = -Q
(তার মানেx0 = x1
এবংy0 = -y1
) তবেP+Q = 0
- আর
P ≠ -Q
- তবে যদি
x0 = x1
আমাদের কাছে থাকেP=Q
এবং আমরা পাওয়ার জন্য ট্যানজেন্ট (উপরের অংশটি দেখুন) গণনা করিR
। তারপরP+Q = P+P = 2P = -R
- অন্য:
y = m*x+y
গণনা করার জন্য আমরা সেই দুটি পয়েন্ট (উপরের অংশটি দেখুন) এর মাধ্যমে ফর্মের একটি লাইন তৈরি করতে পারিR
। তারপরP+Q=-R
- তবে যদি
- যদি
সীমাবদ্ধ ক্ষেত্র
এই চ্যালেঞ্জের জন্য আমরা কেবলমাত্র আকারের ক্ষেত্রগুলি বিবেচনা করব p
যেখানে p
প্রধান (এবং কিছু বিশদের কারণে p ≠ 2, p ≠ 3
)। এটি সহজেই গণনা করতে পারেন এর সুবিধা রয়েছে mod p
। অন্যান্য ক্ষেত্রে পাটিগণিত অনেক জটিল much
এটি এই উদাহরণটিতে আমরা সেট করে p = 5
এবং এখানে সমস্ত সমতা একত্রিত mod 5
।
2+4 ≡ 6 ≡ 1
2-4 ≡ -2 ≡ 3
2*4 ≡ 8 ≡ 3
2/4 ≡ 2*4 ≡ 3 because 4*4 ≡ 16 ≡ 1, therefore 1/4 ≡ 4
চ্যালেঞ্জ
A,B
উপবৃত্তাকার কার্ভের প্যারামিটারগুলি দেওয়া , একটি মৌলিক ক্ষেত্রের বৈশিষ্ট্য p
এবং P,Q
উপবৃত্তাকার বক্ররেখার দুটি বিন্দু , তাদের যোগফলটি প্রদান করুন।
- আপনি ধরে নিতে পারেন যে প্যারামিটারগুলি
A,B
আসলে একটি উপবৃত্তাকার বক্ররেখা বর্ণনা করে, এর অর্থ এটি4A^3+27B^2 ≠ 0
। - আপনি ধরে নিতে পারেন যে
P,Q
প্রকৃতপক্ষে উপবৃত্তাকার বক্ররেখা বা0
দফার উপরের বিন্দু । - আপনি ধরে নিতে পারেন যে
p ≠ 2,3
এটি প্রধান।
পরীক্ষার মামলা
আমি ম্যাটল্যাব / অক্টাভেতে একটি (খুব মার্জিত নয়) বাস্তবায়ন করেছি, যা আপনি নিজের পরীক্ষার ক্ষেত্রে ব্যবহার করতে পারেন: আদর্শ one.com আমি আশা করি এটি সঠিক। এটি হাতে হাতে তৈরি কয়েকটি গণনা কমপক্ষে পুনরুত্পাদন করেছিল।
আমরা এখানে বিবেচনা করা সমস্ত বক্ররেখার জন্য কাজ করে এমন তুচ্ছ পরীক্ষার কেসগুলি নোট করুন:
শূন্য যোগ করা: P+0 = P
বিপরীত যুক্ত করা:(x,y) + (x,-y) = 0
জন্য p = 7, A = 0, B = 5
দুই পয়েন্ট P = (3,2)
এবং Q = (6,2)
উপবৃত্তাকার বক্ররেখা হয়। তারপরে নিম্নলিখিতটি ধারণ করে:
2*Q = Q+Q = P
2*P = P+P = (5,2)
3*P = P+P+P = (5,2)+P = (6,5)
4*P = P+P+P+P = (5,2)+(5,2) = (6,5)+(5,2) = Q
উপবৃত্তাকার বক্ররেখার সমস্ত পিনগুলি (3,2),(5,2),(6,2),(3,5),(5,5),(6,5),0
জন্য p = 13, A = 3, B = 8
আমরা পেতে
(1,8)+(9,7) = (2,10)
(2,3)+(12,11) = (9,7)
2*(9,6) = (9,7)
3*(9,6) = 0
জন্য p = 17, A = 2, B = 2
এবং P=(5,1)
আমরা পেতে
2*P = (6,3)
3*P = (10,6)
4*P = (3,1)
5*P = (9,16)
6*P = (16,13)
7*P = (0,6)
8*P = (13,7)
9*P = (7,6)
10*P = (7,11)
আপনি যদি সত্যিই উচ্চাভিলাষী হন তবে নিন
p = 1550031797834347859248576414813139942411
A = 1009296542191532464076260367525816293976
x0 = 1317953763239595888465524145589872695690
y0 = 434829348619031278460656303481105428081
x1 = 1247392211317907151303247721489640699240
y1 = 207534858442090452193999571026315995117
এবং একটি প্রাকৃতিক সংখ্যা খুঁজে বের করার চেষ্টা n
যেমন যে n*(x0,y0) = (x1,y1)
। এখানে আরও তথ্য।
উপাঙ্গ
আমার খসড়াটি পর্যালোচনা ও সম্পাদনা করার জন্য আপনাকে প্রথমে আপনাকে @ এল'এন্ডিয়াস্টারম্যানকে ধন্যবাদ জানাই!
উপবৃত্তাকার বক্ররেখা কেন?
ভাল এটি একরকম স্বেচ্ছাচারী সমীকরণের মতো উপস্থিত হতে পারে তবে এটি সাধারণ নয়: সাধারণত আমরা ভবিষ্যদ্বাণী বিমানে সেই জ্যামিতিক "আকারগুলি" বিবেচনা করি (এটিই "অনন্ত" এসেছে। সেখানে আমরা সমস্ত সমজাতীয় বিবেচনা করি There তৃতীয় ডিগ্রির বহুবর্ষ । (নিম্ন বা উচ্চতর ডিগ্রি প্রাপ্তরা পরীক্ষা করা খুব কঠিন বা কেবল তুচ্ছ হবে।) আমরা চাই এমন দুর্দান্ত বৈশিষ্ট্য পাওয়ার জন্য কিছুটা বিধিনিষেধ প্রয়োগ করার পরে এবং সেই বহুবর্ষগুলি ডিহমোজেনাইজ করার পরে (তিনটি অ্যাফাইন প্লেনের মধ্যে একটিতে প্রবর্তন করা) ) আমরা সমীকরণ মত শেষy^2+a*x*y+b*y = x^3+c*x^2+d*x+e
এটি দীর্ঘ ওয়েয়ার্সট্রাস ফর্মের একটি উপবৃত্তাকার বক্ররেখা। এগুলি মূলত একই ধনুকগুলি যা আমরা বিবেচনা করেছি, তবে কিছুটা স্কিউড। রৈখিক স্থানাঙ্ক রূপান্তরকরণের সাহায্যে আপনি সহজেই এর বাইরে একটি ছোট ওয়েয়ারস্ট্রাস সমীকরণ তৈরি করতে পারেন। উদাহরণস্বরূপ , যা এখনও সমস্ত আকর্ষণীয় বৈশিষ্ট্য ধারণ করে।
আমরা বাদ দিলাম কেন p=2,3
?
এটি এই সংক্ষেপে করতে হবে যে সংক্ষিপ্ত ওয়েয়ারসট্রাস ফর্মের জন্য আমাদের 4A^3+27B^2 ≠ 0
একচেটিয়াতা এড়াতে বাধা দরকার (নীচের দিকের আরও কিছু)। বৈশিষ্ট্যযুক্ত 2 এর 4 = 0
ক্ষেত্রটিতে এবং আমাদের রয়েছে 3 বৈশিষ্ট্যযুক্ত ক্ষেত্রের ক্ষেত্রে 27 = 0
, এই ধরণের ক্ষেত্রগুলির জন্য সংক্ষিপ্ত weierstrass আকারে বক্ররেখা রাখা অসম্ভব করে তোলে।
এককথায় কী কী?
যদি সমীকরণটি 4A^3+27B^2=0
ধারণ করে, আমাদের নীচের মতো একাগ্রতা রয়েছে: আপনি যখন এই পয়েন্টগুলিতে দেখেন যে আপনি একটি অনুভূত এবং কোনও স্পর্শক খুঁজে পেতে পারেন না, যা অপারেশনটিকে "হত্যা করে"। আপনি সমীকরণ তাকান y^2 = x^3
বা হতে পারেy^2 = x^3-3*x+2
কেন তাদের উপবৃত্তাকার বক্ররেখা বলা হয়?
কারণটি হ'ল এই আকারের সমীকরণগুলি উপবৃত্তাকার ইন্টিগ্রালগুলিতে পপ আপ হয়, উদাহরণস্বরূপ, যখন আপনি একটি ক্যালকুলেট করতে চান তখন আপনি যা পাবেন যেমন একটি উপবৃত্তের ধনু দৈর্ঘ্য। নামের উত্স সম্পর্কে একটি সংক্ষিপ্ত স্লাইডশো।
ক্রিপ্টোগ্রাফি দিয়ে তাদের কী করার আছে?
nP = P+P+...+P
খুব দক্ষতার সাথে গণনা করার উপায় রয়েছে । এটি ডিফি হেলম্যান কী এক্সচেঞ্জের জন্য উদাহরণস্বরূপ ব্যবহার করা যেতে পারে । মডুলার গাণিতিকটি টোরশন সাবগ্রুপগুলিতে সংযোজন দ্বারা প্রতিস্থাপিত হতে পারে, এগুলি সীমাবদ্ধ ক্রমযুক্ত বক্ররেখার কেবলমাত্র পয়েন্ট। (এর অর্থ কারও কারও mP = 0
জন্য m
, যা মূলত কেবল গণনা করা হয় mod m
)।
y^2 = x^3 + x
এটি একটি বৈধ উপবৃত্তাকার বক্ররেখা এবং বক্ররেখার(0,0) ≠ 0
একটি বিন্দু!)