blockchain.tokyo#15で発表した資料です。 HL-Reportのコントラクトを開発するに当たり、注意した点やつまづいた点をまとめました。
)-3FQPSUίϯτϥΫτ։ൃཪגࣜձࣾϞόΠϧϑΝΫτϦʔΤϯδχΞࢁڹ
View Slide
ࣗݾհࢁڹגࣜձࣾϞόΠϧϑΝΫτϦʔΤϯδχΞ ৽ଔ5XJUUFS!SJOHPI(JU)VC3PBEBHBJO
࣍w)-3FQPSUͱw)-3FQPSUͷಛwνϡʔχϯάw݁Ռw͓·͚
)-3FQPSUͱ
)-3FQPSUͱฐࣾͰӡӦ͍ͯͨ͠ҐஔήʔϜʮϨΩγτίωΫτʯͷࢿ࢈Λ׆༻ͨ͠%"QQT
)-3FQPSUͱϓϨΠϠʔͷࢿ࢈ΛϒϩοΫνΣʔϯʹ Ҡ২ͯ͠ɺαʔϏεऴྃޙҭͯͨ ΩϟϥΫλʔͨͪʹձ͑ΔαʔϏε
)-3FQPSUͷಛ
)-3FQPSUͷಛτʔΫϯΛҰؾʹൃߦHBTΛαʔϏεఏڙऀ͕ෛ୲τʔΫϯΛചങͰ͖ͳ͍
)-3FQPSUͷಛ࣮࣭తʹ͍ͬͯΔͷ%#ͷҠτʔΫϯൃߦ˺&UIFSFVNͷอଘ
)-3FQPSUͷಛHBTͱτʔΫϯചങʹ͍ͭͯ๏తͳৄ͘͠աڈެ։ͨ͠6OJRZT1SPKFDUͷεϥΠυ[email protected]
νϡʔχϯά
HBTઅ͍ͨ͠νϡʔχϯά
νϡʔχϯάύϥϝʔλΛݶք·ͰΔwը૾w໊લwઆ໌จwϨϕϧࢉग़εςʔλε
νϡʔχϯάίϯτϥΫτεϦϜԽ&OVNFSBCMFͬͨΓͱ͔NBQQJOHΛྻʹͨ͠Γͱ͔
νϡʔχϯάίενϡʔϜ'VOHJCMF5PLFOˠݸίϯτϥΫτཧͰ͖ͳ͍&3$ΛͬͯҰׅཧ
νϡʔχϯάτϥϯβΫγϣϯεϦϜԽෳͷτʔΫϯΛ·ͱΊͯ͢Δ֤ύϥϝʔλΛͦΕͧΕྻͰ͛Δ&3$ݩ͔ΒͰ͖ΔΑ͏ʹͳ͍ͬͯͨ
νϡʔχϯά࣮ࡍͷίʔυ
݁Ռ
݁ՌൃߦτʔΫϯΩϟϥΫλʔମணͤସ͑ҥछྨແࣄʹྃɺϛεͳ͠
݁ՌτϥϯβΫγϣϯ૯ແࣄʹ͓Ҿӽྃ͠͠·ͨ͠
·ͱΊ
·ͱΊطଘσʔλͷτʔΫϯԽΩπ͍ྗෆͳ෦ଟ͋ͬͨ͘Ͱָ͍͠τʔΫϯԽ·ͨΓ͍ͨ
͓·͚ͱ͍͏໊ͷۤ࿑
0QFO;FQQFMJO0QFO;FQQFMJOͷίʔυ͕(JU)VCͱOQNͰҧͬͨ(JU)VC3$OQN
0QFO;FQQFMJOओʹӨڹ͕͋ͬͨͷ͜Ε4FQBSBUFE&3$JOUPUIFEJGGFSFOUPQUJPOBMJOUFSGBDFT BOEJOUSPEVDFE&3$'VMMXIJDIJNQMFNFOUTBMM
0QFO;FQQFMJOղܾࡦ
τʔΫϯ໊ͱTZNCPMτʔΫϯͷ໊લͱTZNCPMͰΉΞϓϦදݱͷྲྀ༻ߟ͕͑ͨʜ$SZQUP,JUUJFTˠ$,Έ͍ͨʹΓ͍ͨ
τʔΫϯ໊ͱTZNCPMͪΐ͏Ͳ͜ͷ࣌ظʹ.$)͕ϓϨηʔϧίʔυެ։͞Ε͍ͯͨͷͰ໊લͷࢀߟʹMyCryptoHeroes:HeroˠHL-Report:IjinTZNCPM͍Ζ͍Ζߟ͑ͨ݁ՌIJINʹΩϟϥΫλʔͰ͋Δ͜ͱ͕͙͢ʹ͔Δଞͱ͔ͿΓʹ͍͘
τʔΫϯ໊ͱTZNCPMணͤସ͑ҥͷτʔΫϯ໊ήʔϜͱಉ͡TZNCPMCOSͰ౷ҰछྨTZNCPMߟ͍͑ͯΔ༨༟͕ͳ͍ίενϡʔϜˠ$PTUVNFˠ$04
ςετωοτͰͷࢼݧൃߦ͍͖ͳΓຊ൪ා͍͔ΒςετωοτͰ ͓ࢼ͍ͨ͠͠3JOLFCZͰ͓ࢼ͠ɺ͍͔ͭ͘ൃݟ͕͋ͬͨ
ςετωοτͰͷࢼݧൃߦςετωοτ༻ͷ໊લΛ༻ҙ͢͠
ςετωοτͰͷࢼݧൃߦଞͷൃݟHBOBDIFΑΓऔΓࠐΈ͕͍UPUBM4VQQMZ͕ͳ͍
ຊ൪ൃߦϝΠϯωοτUSVGqFDPOTPMF͕λΠϜΞτ͢ΔͪΌΜͱൃߦͰ͖͍ͯΔ͜ͱΛفͬͯؼ
ຊ൪ൃߦ5Yࢭ·ͬͯՃൃߦ͠·ͨ͠
ίʔυQVCMJTIίʔυQVCMJTI͠·ͨ͠ΩϟϥΫλʔ &3$ϕʔεIUUQTFUIFSTDBOJPUPLFOYCCDGEECEFBCGFE͖͔ͤ͑ҥ &3$ϕʔεIUUQTFUIFSTDBOJPBEESFTTYCCDEFGFC
ίʔυQVCMJTIʮ͜ͷίʔυTPMIJOU௨Βͳ͍ʯexternalΛpublicͷޙΖʹஔ͘ͱ͍͏SVMF
͓·͚ͷ͓·͚
ϦϦʔεલτʔΫϯϑϩϯτͷެ։લϦϦʔεલʹόϨͳ͍͔ෆ҆ͩͬͨˠ࣮ࡍશવͦͷؾ͕ͳ͔ͬͨϒϩοΫνΣʔϯΛΒͳ͍ਓ Ҿ͖ࠐΉ͜ͱ͕Ͱ͖ͨͱղऍ͢Δ
ϦϦʔεޙͻͨ͢ΒΤΰαϢʔβʔ͕تΜͰ͍Δɺٽ͍͍ͯΔਓੜͰҰ൪ָ͍͠