2019年7月13日土曜日

190713(2)

Sage


公開鍵作成(ビットコイン)(1)

https://qiita.com/rintaromasuda/items/2e54f35683facb519446
の記事を見ながら、公開鍵を計算してみた。

sage: p=0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFC2F
sage: p
115792089237316195423570985008687907853269984665640564039457584007908834671663
sage: E=EllipticCurve(GF(p), [0, 7])
sage: Gx=0x79BE667EF9DCBBAC55A06295CE870B07029BFCDB2DCE28D959F2815B16F81798
sage: Gy=0x483ADA7726A3C4655DA4FBFC0E1108A8FD17B448A68554199C47D08FFB10D4B8
sage: G=E([Gx, Gy])
sage: N=0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364141
sage: N
115792089237316195423570985008687907852837564279074904382605163141518161494337
sage: N*G
(0 : 1 : 0)
sage: 2017101920171019*G
(36572950727085182085382801403406684418997739286809164939833038507156062366242 : 43641162618061335383666517243600726585787626462467298998793806674351551668099 : 1)
sage: for i in [1..50]:
....:     print [i, i*G]
....:
[1, (55066263022277343669578718895168534326250603453777594175500187360389116729240 : 32670510020758816978083085130507043184471273380659243275938904335757337482424 : 1)]
[2, (89565891926547004231252920425935692360644145829622209833684329913297188986597 : 12158399299693830322967808612713398636155367887041628176798871954788371653930 : 1)]
[3, (112711660439710606056748659173929673102114977341539408544630613555209775888121 : 25583027980570883691656905877401976406448868254816295069919888960541586679410 : 1)]
[4, (103388573995635080359749164254216598308788835304023601477803095234286494993683 : 37057141145242123013015316630864329550140216928701153669873286428255828810018 : 1)]
[5, (21505829891763648114329055987619236494102133314575206970830385799158076338148 : 98003708678762621233683240503080860129026887322874138805529884920309963580118 : 1)]
[6, (115780575977492633039504758427830329241728645270042306223540962614150928364886 : 78735063515800386211891312544505775871260717697865196436804966483607426560663 : 1)]
[7, (41948375291644419605210209193538855353224492619856392092318293986323063962044 : 48361766907851246668144012348516735800090617714386977531302791340517493990618 : 1)]
[8, (21262057306151627953595685090280431278183829487175876377991189246716355947009 : 41749993296225487051377864631615517161996906063147759678534462689479575333124 : 1)]
[9, (78173298682877769088723994436027545680738210601369041078747105985693655485630 : 92362876758821804597230797234617159328445543067760556585160674174871431781431 : 1)]
[10, (72488970228380509287422715226575535698893157273063074627791787432852706183111 : 62070622898698443831883535403436258712770888294397026493185421712108624767191 : 1)]
[11, (53957576663012291606402345341061437133522758407718089353314528343643821967563 : 98386217607324929854432842186271083758341411730506808463586570492533445740059 : 1)]
[12, (94111259592240215275188773285036844871058226277992966241101117022315524122714 : 76870767327212528811304566602812752860184934880685532702451763239157141742375 : 1)]
[13, (109699032664856045668214896063362497021339186688470416858630178803463338613416 : 4835088675770141268294878046681321747490758260515711581034896622314066275713 : 1)]
[14, (33301309993451753050311554695703528430361259803437469669590207169100761277412 : 91711666877231500617203373035680263572492971120307578300405368749466283229019 : 1)]
[15, (97505755694356382817881959832717013755620551362654128955029190924747025549326 : 39856815248295663243990443767776362321337592747889787217974905533720651000664 : 1)]
[16, (104059883622109321374094289636044428849728529177856482232626205340719788190730 : 112122903140080327253741791678230372394936108416576609264408917599318947489825 : 1)]
[17, (100862081773581120499222301212791081193994281440454033593790618293887747050036 : 29883864782608871580821802176208615141762369223249393426421538275393411672951 : 1)]
[18, (38901272619685732968285380035171577070479117282397203902622597987558769928140 : 87393127487643849618870152207476122589010570440825041333620493866032028851544 : 1)]
[19, (19588375357829479297593261744848590434972900972071148260168833594658324503404 : 60568592333449737531184420002591396163903580402725242236305558432410218044282 : 1)]
[20, (34773495056115281091786765947597603724784643419904767525769502836017890139287 : 8470533044743364938367028725608288731153024648869546164814808839694950063162 : 1)]
[21, (24049875635381557237058143631624836741422505207761609709712554171343558302165 : 22669890352939653242079781319904043788036611953081321775127194249638113810828 : 1)]
[22, (29908081367423272746086114569421970207888665320998202915346633185016778189308 : 19705544727792599099830884487151299095417296550955739824847212341657057716097 : 1)]
[23, (21545045623056848826483343441081830815719530893582365358444562918095175994431 : 1296978981679745807043951140304019026881137717020402959957988455650813508967 : 1)]
[24, (115090238283566018960826468250608273126387416636633736439689841211757211870926 : 47185183227829754668635270747409548752084785367264057948864458978444304762303 : 1)]
[25, (66165162229742397718677620062386824252848999675912518712054484685772795754260 : 52018513869565587577673992057861898728543589604141463438466108080111932355586 : 1)]
[26, (46375854666189782329411331467438732923135312366454677774518044107217916677258 : 28872066516664221627799718496556756366588329842312456769228220433104069963108 : 1)]
[27, (99023490166718961467148584643029653267652245207820783364668071358307234645801 : 75362751621984629832705305750958516370071248757681753180287377123479199292501 : 1)]
[28, (38862517885349586199469132990077977525522399615397327331631717567532241615208 : 56796032415390392137148811074183321813766115156763923072036584114852967736264 : 1)]
[29, (88789495143442116025801984763830218317601484092281216301053684219001740388315 : 14971629676138079947354454610178388572791590863859394042797260533911845233794 : 1)]
[30, (49378132684229722274313556995573891527709373183446262831552359577455015004672 : 78123232289538034746933569305416412888858560602643272431489024958214987548923 : 1)]
[31, (48009403158434809478298710137233764200988036438868259456275038304221065242292 : 101379581344212856035375194820281365028426536613141130008386086305632315345538 : 1)]
[32, (95440839670107969455973995843666399663662641812074432045896568980475242364517 : 67400892360194400039319989411395972789004161889863182881857158544061243615929 : 1)]
[33, (10219441022991940610048493520113102240595005085840974180672104038719657072293 : 84023467742492607926612431243360899514584580916128500081114886405247779677078 : 1)]
[34, (12619776604307790469550660645393525758448419897555601226868753617320214526993 : 86272100689574882152938150858861318820088413186167100601966648021512258522745 : 1)]
[35, (43584328072464330665967763306297595761508151294385275883849271528835646125177 : 1171731419844835688478928898148416329180259014376715189840427072871218252873 : 1)]
[36, (101419098787597942766661010883841213675986572091206578880178916574081925093625 : 53748097764673089702489673031527129553025318704228137363806494938199580582828 : 1)]
[37, (44696466249196887777481833878429299174322536392992392205634510941844339159869 : 58341336599715296255997469230977942456412351469447624645098110293822755987119 : 1)]
[38, (82592391416753704330480457266605199466589998476548643675167586509583694299127 : 96352244311289141626709213538144106127822954871227876742730890119647945927428 : 1)]
[39, (58245954963044076335222193032419637688317373475605757277584156718458924469103 : 12764036181290433088658499435961200322530176588733628912045896254235383420282 : 1)]
[40, (65977930378964483966842705159007630837451149704819265634327747226133817150731 : 106574384264472205627876631445935175739834375489227447805380155393950263965849 : 1)]
[41, (55442706224332212356956949983947160877073898960448236395042968736464621521147 : 5905242281663190858892708265754696019921609450612128937011632221309721495543 : 1)]
[42, (115136800820456833737994126771386015026287095034625623644186278108926690779567 : 3479535755779840016334846590594739014278212596066547564422106861430200972724 : 1)]
[43, (96414945312501980282409358461754977502747357521062737878469375231739675541449 : 108016644921439980219149763541432916357155273945921323318636524851968650287411 : 1)]
[44, (42072772011086351294328511389423850314698152445154323541536957340534349973349 : 99133657745585934968186133288050721248258413615930917407282740640761199917928 : 1)]
[45, (2069755349039566255304036353648839232649715781170511813011535420394543798627 : 53173698995439924366951845531266805314230463309822098990695656330917108292762 : 1)]
[46, (112485767891133126222498548010271946438760990210983300801299715976951536768791 : 85739109496996784368776054024999276184984966609644199395125789597014054674947 : 1)]
[47, (54253141229701892740678441538472478126466317116121420289154985997987923385716 : 67647191893224491627918802490479062705030965032432110320079555712709270724822 : 1)]
[48, (50111670963408569345385204828013406423962206186815367070190059614189255189955 : 96344650049071302355595011727277439354119658646232861677212062449792674989672 : 1)]
[49, (109846273198995465046214558810696509369395695668678477567979041624391316796720 : 101711840700253487202274292900077312932162220876743713596510869779955653950519 : 1)]
[50, (18752372355191540835222161239240920883340654532661984440989362140194381601434 : 88478450163343634110113046083156231725329016889379853417393465962619872936244 : 1)]

0 件のコメント:

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。