Do OpenSea users have direct interaction with the proxy contract?

I've been trying to understand how OpenSea works and feel confused about this part.

As far as I know, if I sell an NFT on OpenSea, I don't literally need to create a proxy by myself because users just interact with the OpenSea website during the whole procedure. So I want to know: Does OpenSea help to create a proxy contract for users? If so, when and how?

Also, I know OpenSea uses the wyvern protocol to handle the exchange. To sell an item, you grant control of some assets to the proxy and sign approval of particular transactions. Do users interact with the proxy contract and call corresponding functions in these operations? Or they just send some digital signature to OpenSea frontend and later Opensea will interact with the proxy for users?

And an additional question: Given a proxy contract, is it possible to find out the corresponding OpenSea user?


Using Wyvern protocol, in Opensea, the exchange smart contract will interact with the user proxy smart contract. User does not interact with user proxy smart contract.

Given a proxy contract, is it possible to find out the corresponding OpenSea user?

how do you expect to interact with the proxy contract?

1 Like

@victory015 Thanks for the answer.

Let me explain more about my last question. To allow the proxy to transfer a certain token, the user needs to authorize this proxy. Although I am not sure about the detail, I guess for the proxy, a signature is required to verify that such authorization is really issued by the token owner. In that case, the proxy must store the public key (Ethereum address) of this user in the contract code for verification. Therefore, I can check the contract code of this proxy and find out the address of its user.

Please tell me if my understanding is correct or not.