Slide 1

Slide 1 text

Hackthonٕज़৘ใ 2019–04-20 MCH Hackathon @rmanzoku

Slide 2

Slide 2 text

஫ҙ ͜͜Ͱ঺հͨ͠΋ͷΛඞͣ࢖Θͳ͚Ε͹ͳΒͳ͍Θ͚Ͱ͸͋ Γ·ͤΜɻ Ұ෦API͸͜ͷϋοΧιϯͷͨΊʹ࡞੒ͨ͠΋ͷͰ͢ɻ༧ࠂ ͳ͘มߋɺ࡟আ͞ΕΔ৔߹͕͋Γ·͢ɻ GitHubʹ΋ެ։ࡁΈ https://github.com/doublejumptokyo/mch-hackathon ౰ͨΓલͷઆ໌΍஌Βͳ͍୯ޠ͕ͰΔ͔΋͠Ε·ͤΜ͕ɺ͜ ͷ͋ͱϝϯλʔͷํʑʹ࣭໰ͯ͠Έ͍ͯͩ͘͞ɻ

Slide 3

Slide 3 text

MyCryptoHeroesʹ͍ͭͯ

Slide 4

Slide 4 text

MyCryptoHeroes͓͞Β͍ ERC721Λ࢖ͬͨHero / Extension / LandSectorͷ Ethereum্ͷAsset Ethereum্Ͱͷॴ༗ݖΛӡӦॴ༗ͷεϚʔτίϯτ ϥΫτʹ༬͚Δ͜ͱͰɺCryptoWorldʢήʔϜ಺ʣͰ ར༻ՄೳʹͳΔʢLandSector͸ྫ֎ʣ ήʔϜ಺ͷ৘ใ͸Ұ෦ެ։APIΛ௨ͯ͠ࢀরͰ͖Δ

Slide 5

Slide 5 text

MyCryptoHeroes͓͞Β͍ Ϣʔβʔ͸ήʔϜ಺ʹUserIDΛ͍࣋ͬͯΔ UserIDͱEthereumΞυϨεΛඥ͚ͮͯ؅ཧ͍ͯ͠Δ EthereumΞυϨεΛެ։͢ΔػೳʹΑΓɺ༗ޮͳ Ϣʔβʔ͸EthereumΞυϨε͔ΒϢʔβʔ৘ใΛऔ ಘͰ͖Δ

Slide 6

Slide 6 text

ERC 721 / Metadata

Slide 7

Slide 7 text

ERC 721 Ethereumͷඪ४ن֨ͷҰͭͰNon-Fungible TokenʢNFTʣΛنఆ ͨ͠ΠϯλʔϑΣʔε NFTͱ͸ɺ୅ସෆՄೳͳ΋ͷ CryptoKittiesΛൃ୺ʹEthereum্ͰToken/Assetͷॴ༗ݖͳͲΛنఆ ࢀর࣮૷ͱͯ͠OpenZeppelinOSͷ΋ͷ͕༗໊ CryptoZombies΋ERC721 ERC20ͱൺֱ͞ΕΔ

Slide 8

Slide 8 text

ERC721 ར༻Πϝʔδ MCHΞηοτ͸OpenZeppelinΛར༻ͨ͠ERC721ʹ ४ڌ͍ͯ͠ΔͷͰɺ޿͘࢖ΘΕΔERC721ͱͯ͠ར༻ Ͱ͖Δ ϨϯσΟϯάͳͲ

Slide 9

Slide 9 text

ERC 721 Metadata MCHͷHero͕HeroͨΒ͠Ί͍ͯΔϝλ৘ใ Heroͷ໊લ΍ϨϕϧɺύϥϝʔλͳͲ ΦϑνΣʔϯ৘ใΛ఻͑ΔJSON APIͰ͋Δ͜ͱ͕ଟ͍ OpenSea΍bazaaar.ioͳͲ͸͜ͷ৘ใΛऔಘͯ͠දࣔͯ͠ ͍Δ MCH+Ͱ͸ɺ͜ͷMetadataΛ֦ு͢Δ͜ͱʹΑͬͯΞ ηοτʹ͍ΖΜͳՁ஋Λ௥Ճ͍͚ͯ͠ΔͷͰ͸ͳ͍͔

Slide 10

Slide 10 text

ERC 721 Metadata Hero https://www.mycryptoheroes.net/metadata/heroes/ 50010001 Extension https://www.mycryptoheroes.net/metadata/extensions/ 50010001 LandSector https://www.mycryptoheroes.net/metadata/ landSectors/50010001

Slide 11

Slide 11 text

MCH৘ใऔಘܥAPI

Slide 12

Slide 12 text

Ξηοτʹؔ͢Δ৘ใAPI Skillઆ໌จͳͲͷऔಘ https://www.mycryptoheroes.net/experimental-api/skill/ 1001 HeroTypeͷऔಘ https://www.mycryptoheroes.net/experimental-api/ heroType/5001 ExtensionTypeͷऔಘ https://www.mycryptoheroes.net/experimental-api/ extensionType/5001

Slide 13

Slide 13 text

Ϣʔβʔ৘ใAPI UserID΋͘͠͸EthereumΞυϨεͰϢʔβʔΛݕࡧ https://www.mycryptoheroes.net/experimental-api/ proxy/mch/users/10001 https://www.mycryptoheroes.net/experimental-api/ proxy/mch/users/ 0xd868711BD9a2C6F1548F5f4737f71DA67d821090 ޙऀ͸EthreaumΞυϨεΛެ։͍ͯ͠Δ৔߹ͷΈ༗ޮ

Slide 14

Slide 14 text

MCH৘ใऔಘܥAPIΠϝʔδ ਤؑ΍ότϧγϡϛϨʔλʔͳͲ

Slide 15

Slide 15 text

MarkingContract

Slide 16

Slide 16 text

Ethereum্ͰϢʔβʔ৘ใΛ࢖͏ ʮϢʔβʔ৘ใʯ͸͋͘·ͰΦϑνΣʔϯͷ৘ใ Ethereum্Ͱ৘ใΛѻ͏͜ͱ͕Ͱ͖ͳ͍ Ϣʔβʔͷ೚ҙͰEthereum্ͷεϚʔτίϯτϥΫ τ΁৘ใΛॻ͖ࠐΈͰ͖ΔػೳΛ௥Ճ MarkingContractʢԾশʣΛσϓϩΠࡁΈ ։࢝࣌఺Ͱ50ਓҎ্ͷϢʔβʔ͕ެ։͍ͯ͠Δ

Slide 17

Slide 17 text

MarkingContractʢԾশʣ https://etherscan.io/address/ 0x0085C150c1eb0e084E50a80beA91bc414AA6cbaa ΦϑνΣʔϯͷϢʔβʔ৘ใΛه࿥ͨ͠ίϯτϥΫ τ ͋ΔEthereumΞυϨεͷϢʔβʔ৘ใɺPrime༗ແɺ Landॴଐ৘ใ͕औಘͰ͖Δ ϥϯυॴଐऀͷΞυϨεҰཡऔಘ΋Մೳ

Slide 18

Slide 18 text

MarkingContractར༻Πϝʔδ ಁ໌ੑͷ͋ΔநબίϯτϥΫτ ϥϯυϝϯόʔઐ༻ϖʔδ MarkingContractʹ৘ใΛ଍͢͜ͱͰʓʓ͕Ͱ͖Δͱ ͍͏Ҋ΋׻ܴ GitHubʹιʔείʔυެ։ࡁΈ

Slide 19

Slide 19 text

֦ுMetadata

Slide 20

Slide 20 text

Ձ஋಺༰͸MetadataͰࢀরͰ͖Δ ΞηοτͷMetadataΛ௥ՃͰ͖Δ͜ͱͰɺMCHӡӦ Ҏ֎͕Ձ஋Λ෇༩Ͱ͖Δ Ձ஋͕Ξηοτʹू·Δ͜ͱͰɺ༷ʑͳαʔϏεͷ HubʹͳΔ Ξηοτ͕ܧଓՄೳͳ΋ͷͱͯ͠Ձ஋Λ࣋ͭΑ͏ʹ

Slide 21

Slide 21 text

Plus Meta APIʢԾশʣ ʮΞηοτͷՁ஋಺༰͸MetadataͰࢀরͰ͖Δʯͱ ͍͏ߟ͑ʹج͖ͮɺʮՁ஋಺༰ΛMetadataͱͯ͠ొ ࿥Ͱ͖ΔʯAPI ͜͜Ͱ͸MCH΋ҰͭͷMetadataͰ͔͠ͳ͍

Slide 22

Slide 22 text

Plus Meta APIొ࿥ POST https://www.mycryptoheroes.net/experimental- api/plusmeta/heroes/50010001 { "iss": "0xd868711BD9a2C6F1548F5f4737f71DA67d821090", "metadata": { "sub": "my crypto derbies", "aud": [ "https://example.com/" ], "name": "deeeeep blue", "description": "͍͢͝", "attributes": { "hp": 100, "speed": 100, "skill": [ "dart", "sunny" ], "kind": "Mare" } } }

Slide 23

Slide 23 text

Plus Meta APIऔಘ GET https://www.mycryptoheroes.net/experimental- api/plusmeta/heroes/50010001

Slide 24

Slide 24 text

Plus Meta APIར༻Πϝʔδ MCHΞηοτΛ࢖ͬͨϛχήʔϜͷ࡞੒ͱͦͷύϥ ϝʔλొ࿥ ΞηοτऔҾॴͳͲʹΑΔ৽ண৘ใͷొ࿥

Slide 25

Slide 25 text

࠶౓஫ҙࣄ߲ ͜͜Ͱ঺հͨ͠΋ͷΛඞͣ࢖Θͳ͚Ε͹ͳΒͳ͍Θ͚Ͱ͸͋ Γ·ͤΜɻ Ұ෦API͸͜ͷϋοΧιϯͷͨΊʹ࡞੒ͨ͠΋ͷͰ͢ɻ༧ࠂ ͳ͘มߋɺ࡟আ͞ΕΔ৔߹͕͋Γ·͢ɻ GitHubʹ΋ެ։ࡁΈ https://github.com/doublejumptokyo/mch-hackathon ౰ͨΓલͷઆ໌΍஌Βͳ͍୯ޠ͕ͰΔ͔΋͠Ε·ͤΜ͕ɺ͜ ͷ͋ͱϝϯλʔͷํʑʹ࣭໰ͯ͠Έ͍ͯͩ͘͞ɻ

Slide 26

Slide 26 text

No content