Slide 1

Slide 1 text

ΠʔαϦΞϜʹ͓͚Δ εϚʔτίϯτϥΫτͷ՝୊ͱ ࣮αʔϏεԠ༻΁ͷΞϓϩʔν 2018/06/29 Gunosy Inc. Osuke(@zoom_zoomzo)

Slide 2

Slide 2 text

Osuke @zoom_zoomzo - blog - twitter - ϑϦʔϥϯε → Gunosy (2018/06)

Slide 3

Slide 3 text

εϚʔτίϯτϥΫτͱ͸ ܖ໿ͷࣗಈԽ → Ձ஋ͷަ׵Λ൐͏ܖ໿ͷࣗಈԽ - ྫɿ ࣗಈൢചػ → 150ԁͱυϦϯΫͷՁ஋ަ׵ ࣗಈվࡳػ → 200ԁͱʮ৽॓ޚԓલӺ͔Β࿡ຊ໦Ӻ΁ిंͰߦ͘ݖརʯͷՁ஋ަ׵ - ࣗಈൢചػʹ150ԁΛೖΕͯυϦϯΫ͕ग़ͯ͜ͳ͍Մೳੑ͸ʁ - ৐٬͕վࡳػΛແཧ΍Γ௨ͬͯλμ৐Γ͢ΔՄೳੑ͸ʁ ϋʔυ΢ΣΞʹूݖతͳॊೈੑͷ௿͍εϚʔτίϯτϥΫτ

Slide 4

Slide 4 text

ϒϩοΫνΣʔϯ × εϚʔτίϯτϥΫτ ϒϩοΫνΣʔϯʹΑͬͯɺ ɹ- σʔλ͕վ͟Μ͕Ͱ͖ͳ͍ʢվ͟Μ͞Ε͍ͯͳ͍ͱ৴͡ΒΕΔʣ ɹ ͔ͭ ɹ- ͦͷσʔλ͕͍ͭͰ΋Ͳ͜Ͱ΋୭Ͱ΋ݟΕΔΑ͏ʹͳͬͨ → ͜ͷσʔλΛʮఆྔతධՁ͕ՄೳͳՁ஋ʯͱͯ͠৴͡Δ͜ͱ͕Ͱ͖ͦ͏ ͞ΒʹɺεϚʔτίϯτϥΫτʹΑͬͯՁ஋ͷަ׵৚݅ΛϓϩάϥϜͰ͖Δ τϥετϨεͰύʔϛογϣϯϨεͰϑϨΩγϒϧͳՁ஋ͷަ׵͕࣮ݱ

Slide 5

Slide 5 text

ΠʔαϦΞϜͰͷεϚʔτίϯτϥΫτ ΠʔαϦΞϜ͸͋ΒΏΔՁ஋ަ׵ͷج൫ͱͳΔ΂͘ɺ ɹνϡʔϦϯά׬શͳεϚʔτίϯτϥΫτΛઃܭͰ͖Δ ٯʹɺࣗ༝౓͕ߴ͗ͯ͢੬ऑੑͷݪҼͱͳΔ͜ͱ΋
 - The DAO - Parity Multisig Wallet - vyper౳ͷఏҊ function transfer(address _to, uint256 _value) public returns (bool) { require(_to != address(0)); require(_value <= balances[msg.sender]); balances[msg.sender] = balances[msg.sender].sub(_value); balances[_to] = balances[_to].add(_value); emit Transfer(msg.sender, _to, _value); return true; } ERC20.sol

Slide 6

Slide 6 text

࣮༻ԽʹΉ͚ͨεϚʔτίϯτϥΫτͷ՝୊

Slide 7

Slide 7 text

εέʔϥϏϦςΟ໰୊ 1ϒϩοΫ͋ͨΓͷσʔλαΠζͱϒϩοΫੜ੒εϐʔυͷ্ݶʹΑͬͯ TPS(Transaction Per Seconds)੍͕ݶ͞Εͯ͠·͏ɻ - ྫɿΠʔαϦΞϜ ~15TPS
 ɹ - ෳࡶͳॲཧΛߦ͏εϚʔτίϯτϥΫτ΄Ͳɺଟ͘ͷख਺ྉ(gas)Λࢧ෷͏ඞཁੑ - ϒϩοΫνΣʔϯωοτϫʔΫͷ҆શੑͱ෼ࢄੑ΋ҡ࣋͠ͳ͚Ε͹ͳΒͳ͍
 ʢεέʔϥϏϦςΟɾτϦϨϯϚʣ ҆શੑɿ - ίϯηϯαεΞϧΰϦζϜͷηΩϡϦςΟ - ୯ҰͷϝΠϯνΣʔϯʹର͢Δे෼ͳ߹ҙܗ੒ ෼ࢄੑɿ - ωοτϫʔΫʹগͳ͍ܭࢉϦιʔεͰࢀՃͰ͖Δ - େଟ਺ͷΫϥΠΞϯτʹΑΔݕূ࡞ۀ εέʔϥϏϦςΟ ҆શੑ ෼ࢄੑ

Slide 8

Slide 8 text

ΞοϓάϨʔμϏϦςΟ໰୊ Ұ౓ɺΠʔαϦΞϜωοτϫʔΫʹσϓϩΠ͞ΕͨίϯτϥΫτͷEVMίʔυΛ ॻ͖௚͢͜ͱ͕Ͱ͖ͳ͍ - ϒϩοΫνΣʔϯͷඇվ͟Μੑͷੑ࣭ʹ༝དྷ - όά΁ͷରॲ & ػೳ֦ॆ͕ࠔ೉ ίϯτϥΫτͷΞοϓάϨʔμϏϦςΟʹؔ͢ΔR&D - ͞·͟·ͳΞοϓάϨʔμϒϧͳίϯτϥΫτύλʔϯͷఏҊ - ྫɿzeppelin_os ίϯτϥΫτߏ଄಺Ͱࢀর͢ΔίϯτϥΫτΛมߋ ver.1 ver.2 ίϯτϥΫτ

Slide 9

Slide 9 text

ϓϥΠόγʔ໰୊ ϒϩοΫνΣʔϯͷॏཁͳੑ࣭ͷͻͱͭʹσʔλͷಁ໌ੑ͕͋Δ - σʔλ͕վ͟Μ͞Ε͍ͯͳ͍͔୭Ͱ΋ݕূ͢Δ͜ͱ͕Մೳ - σʔλΛ୭Ͱ΋ར༻͢Δ͜ͱ͕Մೳ ϓϥΠόγʔੑͷߴ͍σʔλΛѻ͏͜ͱ͕ࠔ೉ͳ໰୊ ྫɿ ݸਓͷి࿩൪߸ɺΧελϚʔσʔλ zk-SNARKsɺEnigma

Slide 10

Slide 10 text

ΦϥΫϧ໰୊ ΦϥΫϧͱ͸ɺϒϩοΫνΣʔϯωοτϫʔΫ಺ʹ ϒϩοΫνΣʔϯ֎෦ͷ৘ใΛ࣋ͬͯ͘Δ͜ͱ - ྫɿؾԹɺҐஔ৘ใɺαοΧʔͷࢼ߹݁Ռ ΦϥΫϧ֎෦σʔλͷਖ਼౰ੑʹؔͯ͠ϒϩοΫνΣʔϯωοτϫʔΫͰ ͍͔ʹ߹ҙܗ੒ΛͱΔ͔ εϚʔτίϯτϥΫτͷ׆༻ʹ͓͍ͯඇৗʹॏཁʹͳͬͯ͘Δ෼໺ ΦϥΫϧγεςϜͷྫ - Oraclize - Witnet - Augur

Slide 11

Slide 11 text

ΞΠσϯςΟςΟ໰୊ ύϒϦοΫϒϩοΫνΣʔϯ͸ύʔϛογϣϯϨεͰ୭Ͱ΋ར༻Ͱ͖Δ - ΞυϨεΛϦΞϧࣾձͱͷΞΠσϯςΟςΟʹ݁ͼ͚ͭΔ͜ͱ͕೉͍͠ - ޿ٛͷΦϥΫϧ औҾॴ(DEX)΍ICOͰͷ౤ࢿՈอޢɺϚωʔϩϯμϦϯά๷ࢭʹ൐͏KYC/AMLͷඞཁੑ ಛఆͷݸਓͱϒϩοΫνΣʔϯωοτϫʔΫͰͷධՁΛ݁ͼ͚ͭΔ ྫɿ - uPort - Civic - ERC725 & ERC735

Slide 12

Slide 12 text

ʙτʔΫϯઃܭʙ εϚʔτίϯτϥΫτͷ࣮༻ԽΛߟ͑Δ

Slide 13

Slide 13 text

DAPPSͷτʔΫϯઃܭ ϢʔςΟϦςΟτʔΫϯΛલఏʢαʔϏεͷར༻ݖʣ Ϣʔβʔʹର͢Δద੾ͳΠϯηϯςΟϒઃܭΛߟ͑Δ - αʔϏεʹରͯ͠ྑ͍ߦಈʹΠϯηϯςΟϒΛ༩͑ɺ
 ɹѱ͍ߦಈʹϖφϧςΟΛ༩͑Δ - τʔΫϯΤίϊϛʔͷ૑ग़ τʔΫϯϗϧμʔʹΠϯηϯςΟϒͷ͋ΔτʔΫϯϞσϧઃܭ - τʔΫϯΛଟ͘ɺ௕ظؒอ࣋ͯ͠΋Β͏͜ͱʹରͯ͠ΠϯηϯςΟϒઃܭΛߟ ͑Δ ̍छྨͷτʔΫϯͰ੒ΓཱͨͤΔ͜ͱʹݶք͕ੜ͡Δ͔΋ - ྫ͑͹ɺαʔϏεͷΨόφϯεͷͨΊʹূ݊ੑͷߴ͍τʔΫϯΛ༻ҙ͠ɺ
 ɹϢʔβʔ͸Ձ֨มಈϦεΫͷগͳ͍StableίΠϯΛར༻͢Δ

Slide 14

Slide 14 text

ʙORIGIN PROTOCOLͷྫʙ ෼ࢄܕγΣΞϦϯάαʔϏεΛߟ͑Δ

Slide 15

Slide 15 text

ORIGIN PROTOCOLͱ͸ ͋ΒΏΔγΣΞϦϯάαʔϏεͷج൫ͱͳΔ෼ࢄܕͷϓϩτίϧΛ໨ࢦ͢ - ϢʔβʔͱΦʔφʔ྆ऀͷϚονϯάख਺ྉΛैདྷͱൺֱͯ͠େ෯ʹԼ͛Δ - ΞΠσϯςΟςΟʹ݁ͼͭ͘ϨϐϡςʔγϣϯͳͲͷσʔλΛڞ༗Խ

Slide 16

Slide 16 text

αʔϏεΛ”෼ࢄԽ”͢Δҙٛ αʔϏεར༻ͷࢧ෷͍ํ๏ΛτʔΫϯʹ͢Δ͚ͩͰ͸ɺ ɹϒϩοΫνΣʔϯ΍εϚʔτίϯτϥΫτΛ׆༻͢Δҙຯ͕ͳ͍ ΠϯηϯςΟϒઃܭʹΑΔ୯Ұओମʹґଘ͠ͳ͍αʔϏεͷӡӦ
 - ΠϯηϯςΟϒઃܭʹΑΔΦϥΫϧʢෆਖ਼ใࠂʣ
 - ΨόφϯεʹΑΔγεςϜͷ؅ཧɾΞοϓάϨʔυ ΞΠσϯςΟςΟʹඥͮ͘Ϩϐϡςʔγϣϯ౳ͷσʔλڞ༗Խ ORIGINͰ͸

Slide 17

Slide 17 text

ΠϯηϯςΟϒઃܭʹΑΔΦϥΫϧ ᶃෆਖ਼ Origin ᶄෆਖ਼ใࠂ ᶅ౤ථ - Ͳ͕ͬͪෆਖ਼ʁ τʔΫϯϗϧμʔ ෆਖ਼ใࠂऀ ෆਖ਼ٙ࿭ͷਓ γΣΞϦϯάαʔϏεͰ໰୊ʹͳΔͷ͕ɺϦΞϧࣾձͰͷෆਖ਼ߦҝ - γΣΞͨ͠ंʹইΛ͚ͭͨͷʹഛঈۚΛࢧ෷Θͳ͍ - ͓ۚΛࢧ෷ͬͨͷʹγΣΞϋ΢εʹೖΕͳ͍ σϙδοτ σϙδοτ

Slide 18

Slide 18 text

ΠϯηϯςΟϒઃܭʹΑΔΦϥΫϧ γΣΞϦϯάαʔϏεͰ໰୊ʹͳΔͷ͕ɺϦΞϧࣾձͰͷෆਖ਼ߦҝ - γΣΞͨ͠ंʹইΛ͚ͭͨͷʹഛঈۚΛࢧ෷Θͳ͍ - ͓ۚΛࢧ෷ͬͨͷʹγΣΞϋ΢εʹೖΕͳ͍ τʔΫϯϗϧμʔ ෆਖ਼ใࠂऀ ෆਖ਼ٙ࿭ͷਓ τʔΫϯ τʔΫϯ ෆਖ਼ٙ࿭ͷਓɿ80ˋ ෆਖ਼ใࠂऀɿ20ˋ Ͳ͕ͬͪෆਖ਼ʁ

Slide 19

Slide 19 text

ධՁͱΞΠσϯςΟςΟͷ࿈ܞ γΣΞϦϯάαʔϏεͷج൫ͱͳΔϓϩτίϧͰϨϐϡςʔγϣϯΛ
 ڞ༗Խ͢Δ͜ͱͰɺѱ͍ߦ͍Λ͢Δ͜ͱͷσϝϦοτΛେ͖͘͢Δ - Ϩϐϡςʔγϣϯ͕Լ͕Δ - ͋ΒΏΔγΣΞϦϯάαʔϏε͕࢖͍ʹ͘͘ͳΔ ERC725΍uPortͳͲΛ༻͍ͯɺSNSͷΞΧ΢ϯτ΍ݸਓ৘ใͱOrigin Protocol಺ͷ
 ධՁΛ࿈ܞ͍ͯ͘͠

Slide 20

Slide 20 text

ΨόφϯεʹΑΔγεςϜͷΞοϓάϨʔυ ։ൃνʔϜ͕উखʹγεςϜͷΞοϓάϨʔυΛͰ͖ΔΑ͏ʹͯ͠͠·͏ͱɺ ϢʔβʔʹͱͬͯෆརͳγεςϜʹͳͬͯ͠·͏͜ͱ͕͋Δ - ෼ࢄతʹϓϩτίϧΛΨόφϯε͢Δඞཁੑ τʔΫϯϗϧμʔʹΑΔ౤ථͷ݁ՌͰγεςϜͷΞοϓάϨʔυΛՄೳʹ͢Δ ྫ͑͹ɺτʔΫϯΛଟ͍࣋ͬͯ͘Δ΄Ͳଟ͘ͷ౤ථݖΛಘΒΕΔΑ͏ʹ͢Δɻ - ϢʔβʔʹෆརͳΞοϓάϨʔυΛ͢ΔͱτʔΫϯͷՁ͕֨Լམ͠ɺࣗ਎͕ෆརʹɻ ver.1 ver.2 ίϯτϥΫτ ౤ථ τʔΫϯϗϧμʔ

Slide 21

Slide 21 text

·ͱΊ ΠʔαϦΞϜͷεϚʔτίϯτϥΫτ͸νϡʔϦϯά׬શͰɺ ॊೈͳΠϯηϯςΟϒઃܭ͕Մೳ ୅දతͳεϚʔτίϯτϥΫτͷ՝୊ - εέʔϥϏϦςΟ - ΞοϓάϨʔμϏϦςΟ - ΦϥΫϧ - ϓϥΠόγʔ - ΞΠσϯςΟςΟ ϒϩοΫνΣʔϯ × εϚʔτίϯτϥΫτͷಛੑΛ׆͔ͨ͠dApps
 Λ࡞͍ͬͯ͜͏ʂ