- Yuta Kikuchi(菊池佑太) - Do&Do., inc. - https://corp.doando.club/
- Yuta Kikuchi(菊池佑太) - Do&Do., inc. - https://corp.doando.club/

Subscribe to Y's note

Subscribe to Y's note
Share Dialog
Share Dialog
意識と感情
はじめに@yutakikuchi_です。 人間の心は非常に複雑で、多くのことに感動したり、悲しんだり。または目標を持って自分の意志で行動するなど、心にも多くの要素があるかと思います。この投稿では心の中でも特に「意識」と「感情」の要素について僕自身が普段考えていることを書きます。特に僕自身の経験で書いている部分が多く、学術的に何かを参考にして書いたものではないので、言葉の使い方や解釈が誤っている可能性はあります。意識と感情の違いと関係意識と感情の2つは関連があるものの、基本的には異なるものであると考えています。それぞれをWikipediaで調べてみると、 意識とは「起きている状態にあること(覚醒)」または「自分の今ある状態や、周囲の状況などを認識できている状態のこと」を指す。 日本語では、「ある物事について注意を払っている」という意味で「意識する」、「考え方や取り組み方について努力が行われている」といったことを表す場合「意識が高い(または低い)」といった言い方がなされる感情とはヒトなどの動物がものごとや対象に対して抱く気持ちのこと。喜び、悲しみ、怒り、諦め、驚き、嫌悪、恐怖などがあ...
Polygon ScanのAPI調査
はじめに@yutakikuchi_ です。 BlockChainのTransaction履歴を見れる xxscanは見たことある方多いと思いますが、履歴を見るだけではなく、Transactionのデータを自動で引っ張ってきて処理を行うなど後続の処理を自動化したい場合はAPIを利用する良いと思います。 ETHとPolygonのAPIは下記がDocumentとなっています。ざっとAPI Documentを見た感じ、EndpointのBaseとなるURLは異なるものの、EndpointのPath, Interfaceともに同じ構成になっているようです。 https://docs.etherscan.io/api-endpoints/accounts https://docs.polygonscan.com/api-endpoints/accountsPolygon ScanのAPIで特定ContractのEvent listを取得するまずはじめに、Polygon ScanのAPIを利用するには、下記の作業を行う必要があります。Polygon scan上にアカウント登録。こちらからAPI...
意識と感情
はじめに@yutakikuchi_です。 人間の心は非常に複雑で、多くのことに感動したり、悲しんだり。または目標を持って自分の意志で行動するなど、心にも多くの要素があるかと思います。この投稿では心の中でも特に「意識」と「感情」の要素について僕自身が普段考えていることを書きます。特に僕自身の経験で書いている部分が多く、学術的に何かを参考にして書いたものではないので、言葉の使い方や解釈が誤っている可能性はあります。意識と感情の違いと関係意識と感情の2つは関連があるものの、基本的には異なるものであると考えています。それぞれをWikipediaで調べてみると、 意識とは「起きている状態にあること(覚醒)」または「自分の今ある状態や、周囲の状況などを認識できている状態のこと」を指す。 日本語では、「ある物事について注意を払っている」という意味で「意識する」、「考え方や取り組み方について努力が行われている」といったことを表す場合「意識が高い(または低い)」といった言い方がなされる感情とはヒトなどの動物がものごとや対象に対して抱く気持ちのこと。喜び、悲しみ、怒り、諦め、驚き、嫌悪、恐怖などがあ...
Polygon ScanのAPI調査
はじめに@yutakikuchi_ です。 BlockChainのTransaction履歴を見れる xxscanは見たことある方多いと思いますが、履歴を見るだけではなく、Transactionのデータを自動で引っ張ってきて処理を行うなど後続の処理を自動化したい場合はAPIを利用する良いと思います。 ETHとPolygonのAPIは下記がDocumentとなっています。ざっとAPI Documentを見た感じ、EndpointのBaseとなるURLは異なるものの、EndpointのPath, Interfaceともに同じ構成になっているようです。 https://docs.etherscan.io/api-endpoints/accounts https://docs.polygonscan.com/api-endpoints/accountsPolygon ScanのAPIで特定ContractのEvent listを取得するまずはじめに、Polygon ScanのAPIを利用するには、下記の作業を行う必要があります。Polygon scan上にアカウント登録。こちらからAPI...
<100 subscribers
<100 subscribers
上で書いたNFT購買プロセスにおいての独自SmartContract(以下独自Contract)において、どれほど処理に関わっているかについて調査しましたが、独自Contractはほぼ関係しておらず、ほとんどがOpenSea側のContractに委ねられているという結論でした。
調査の目的が独自ContractでNFTを公開した際に、そのContractがNFT購買プロセスの中にどれほど外部からデータと通貨のやりとりを独自ロジックとして組み込めるかを見極めたかったのですが、OpenSea上での売買プロセスでは関わりは持てないという事になっています。継続して調査中なのが、売買プロセス完了後に別の独自Contractにトランザクションを飛ばすことで、データと通貨のやりとりに独自性をもたせることが可能かを見ており、そちらは状況が分かり次第別のEntryとして公開します。
このEntryではOpenSeaに対して独自ContractでNFTを公開していることを前提とし、CollectionにてRoyaltyを設定した際の購買トランザクションの挙動におけるTokenの移行処理について纏めます。
権限的な話として、独自SmartContractにてNFTを公開すると、SmartContractのOwner(作成者、Deployした人)が自動的にそのSmartContractに紐づく形でOpenSeaのCollectionのOwnerになります。
手数料の話として、購買プロセスの中でOpenSeaに対して売り手が払うものは売買価格の2.5%と決まっています。またOpenSeaのCollectionで毎回の売買の手数料の一部をCreator(自身や他者)送金する機能が備わっています。これをRoyalty機能と呼びます。
CreatorのPublic Addressに対して販売手数料として10%まで送金設定することができる
CreatorのPublic Addressとして、自身でも他者でも設定可能
item一個ずつに対してはRoyaltyを設定できないため、Collectionで設定する
Royalty機能はデフォルトではOffになっているため、CollectionのOwner自身で設定する必要がある
おおよそ下記の図のようになっています。(少し曖昧に書いている部分もあります。)

③のSet Approval for allについてはPolygonで独自Contractを実装している場合において、下記の実装を加えることでステップとして省略可能ではありますが、おおよそ売り手がNFTを出品し、買い手が購入するまでのお金とNFTの権限移譲は図のとおりになります。
https://docs.opensea.io/docs/polygon-basic-integration#code-example-for-erc721
処理の中心を担っているのはOpenSeaのContractであり、買い手が「Buy」をするとOpenSeaのContractからお金のやり取りが始まり、主に下記の流れを作る役割を担っています。
購買価格の送金を買い手から売り手に対して行う
売り手から販売手数料とRoyaltyをセットで受け取る
販売手数料をOpenSeaのPublic Addressへ送金する
Royaltyとして設定したCreatorのPublic Addressへ送金
下記は僕がPolygon mumbaiでRoyaltyを10%で設定した上で走らせた購買プロセスですが、具体的なToken(暗号通貨)の動きは下記のようになります。

NFTを0.001ETHとして売り
買い手から売り手に0.001ETH移行
売り手から0.000125ETH(売買価格の12.5%)をOpenSeaのContractへ送金
OpenSeaのContractから0.000025ETH(売買価格の2.5%)をOpenSeaのPublic Addressへ送金
OpenSeaのContractからCreatorのPublic Addressへ0.0001ETH(売買価格の10%)を送金
上で書いたNFT購買プロセスにおいての独自SmartContract(以下独自Contract)において、どれほど処理に関わっているかについて調査しましたが、独自Contractはほぼ関係しておらず、ほとんどがOpenSea側のContractに委ねられているという結論でした。
調査の目的が独自ContractでNFTを公開した際に、そのContractがNFT購買プロセスの中にどれほど外部からデータと通貨のやりとりを独自ロジックとして組み込めるかを見極めたかったのですが、OpenSea上での売買プロセスでは関わりは持てないという事になっています。継続して調査中なのが、売買プロセス完了後に別の独自Contractにトランザクションを飛ばすことで、データと通貨のやりとりに独自性をもたせることが可能かを見ており、そちらは状況が分かり次第別のEntryとして公開します。
このEntryではOpenSeaに対して独自ContractでNFTを公開していることを前提とし、CollectionにてRoyaltyを設定した際の購買トランザクションの挙動におけるTokenの移行処理について纏めます。
権限的な話として、独自SmartContractにてNFTを公開すると、SmartContractのOwner(作成者、Deployした人)が自動的にそのSmartContractに紐づく形でOpenSeaのCollectionのOwnerになります。
手数料の話として、購買プロセスの中でOpenSeaに対して売り手が払うものは売買価格の2.5%と決まっています。またOpenSeaのCollectionで毎回の売買の手数料の一部をCreator(自身や他者)送金する機能が備わっています。これをRoyalty機能と呼びます。
CreatorのPublic Addressに対して販売手数料として10%まで送金設定することができる
CreatorのPublic Addressとして、自身でも他者でも設定可能
item一個ずつに対してはRoyaltyを設定できないため、Collectionで設定する
Royalty機能はデフォルトではOffになっているため、CollectionのOwner自身で設定する必要がある
おおよそ下記の図のようになっています。(少し曖昧に書いている部分もあります。)

③のSet Approval for allについてはPolygonで独自Contractを実装している場合において、下記の実装を加えることでステップとして省略可能ではありますが、おおよそ売り手がNFTを出品し、買い手が購入するまでのお金とNFTの権限移譲は図のとおりになります。
https://docs.opensea.io/docs/polygon-basic-integration#code-example-for-erc721
処理の中心を担っているのはOpenSeaのContractであり、買い手が「Buy」をするとOpenSeaのContractからお金のやり取りが始まり、主に下記の流れを作る役割を担っています。
購買価格の送金を買い手から売り手に対して行う
売り手から販売手数料とRoyaltyをセットで受け取る
販売手数料をOpenSeaのPublic Addressへ送金する
Royaltyとして設定したCreatorのPublic Addressへ送金
下記は僕がPolygon mumbaiでRoyaltyを10%で設定した上で走らせた購買プロセスですが、具体的なToken(暗号通貨)の動きは下記のようになります。

NFTを0.001ETHとして売り
買い手から売り手に0.001ETH移行
売り手から0.000125ETH(売買価格の12.5%)をOpenSeaのContractへ送金
OpenSeaのContractから0.000025ETH(売買価格の2.5%)をOpenSeaのPublic Addressへ送金
OpenSeaのContractからCreatorのPublic Addressへ0.0001ETH(売買価格の10%)を送金
No activity yet