How does the contract TwitterHumanityApplicant queries the Twitter API?Can an external account create a contract which can do anything the external account tells it to do?How can a DApp user make function calls to his and only his contract at a later stage after creating and deploying the contract to Ethereum?Contract variable changes predictionIf a contract's function calls a function of another contract within it, is the address of the contract the msg.sender?How does this honeypot contract work?What is causing gas required exceeds allowance or always failing transaction?Best practices for handling payment in smart contractsBeginner - Design pattern for a hybrid dappAre there a standard for generating a unique thing to send to the smart contract?How to cearte a contract with sub contracts
How to prevent bad sectors?
Can an old DSLR be upgraded to match modern smartphone image quality
Windows 10 Programs start without visual Interface
Self-Preservation: How to DM NPCs that Love Living?
Fastest way to perform complex search on pandas dataframe
The deliberate use of misleading terminology
Future enhancements for the finite element method
Differences between “pas vrai ?”, “c’est ça ?”, “hein ?”, and “n’est-ce pas ?”
When a current flow in an inductor is interrupted, what limits the voltage rise?
Can a wire having a 610-670 THz (frequency of blue light) AC frequency supply, generate blue light?
How can I grammatically understand "Wir über uns"?
Why would Lupin kill Pettigrew?
Did airlines fly their aircraft slower in response to oil prices in the 1970s?
What was this black-and-white film set in the Arctic or Antarctic where the monster/alien gets fried in the end?
The qvolume of an integer
If Sweden was to magically float away, at what altitude would it be visible from the southern hemisphere?
What are the benefits of cryosleep?
Can you move on your turn, and then use the Ready Action to move again on another creature's turn?
Is there an evolutionary advantage to having two heads?
Understanding STM32 datasheet regarding decoupling capacitors
Biblical Basis for 400 years of silence between old and new testament
Different PCB color ( is it different material? )
Why is there a need to modify system call tables in linux?
What is game ban VS VAC ban in steam?
How does the contract TwitterHumanityApplicant queries the Twitter API?
Can an external account create a contract which can do anything the external account tells it to do?How can a DApp user make function calls to his and only his contract at a later stage after creating and deploying the contract to Ethereum?Contract variable changes predictionIf a contract's function calls a function of another contract within it, is the address of the contract the msg.sender?How does this honeypot contract work?What is causing gas required exceeds allowance or always failing transaction?Best practices for handling payment in smart contractsBeginner - Design pattern for a hybrid dappAre there a standard for generating a unique thing to send to the smart contract?How to cearte a contract with sub contracts
TwitterHumanityApplicant is (as I understand) a smart contract that validates that a human (or a Twitter user) owns a wallet.
I was expecting to see in the contract code something that resembles a call to the Twitter API to find a tweet by the user that includes the wallet address. I couldn't find anything that looks like an API endpoint. Maybe I missed it, as I am very new to Solidity.
How does this contract checks that the Twitter account owner tweeted the wallet address?
contract-development
New contributor
add a comment |
TwitterHumanityApplicant is (as I understand) a smart contract that validates that a human (or a Twitter user) owns a wallet.
I was expecting to see in the contract code something that resembles a call to the Twitter API to find a tweet by the user that includes the wallet address. I couldn't find anything that looks like an API endpoint. Maybe I missed it, as I am very new to Solidity.
How does this contract checks that the Twitter account owner tweeted the wallet address?
contract-development
New contributor
add a comment |
TwitterHumanityApplicant is (as I understand) a smart contract that validates that a human (or a Twitter user) owns a wallet.
I was expecting to see in the contract code something that resembles a call to the Twitter API to find a tweet by the user that includes the wallet address. I couldn't find anything that looks like an API endpoint. Maybe I missed it, as I am very new to Solidity.
How does this contract checks that the Twitter account owner tweeted the wallet address?
contract-development
New contributor
TwitterHumanityApplicant is (as I understand) a smart contract that validates that a human (or a Twitter user) owns a wallet.
I was expecting to see in the contract code something that resembles a call to the Twitter API to find a tweet by the user that includes the wallet address. I couldn't find anything that looks like an API endpoint. Maybe I missed it, as I am very new to Solidity.
How does this contract checks that the Twitter account owner tweeted the wallet address?
contract-development
contract-development
New contributor
New contributor
New contributor
asked 8 hours ago
VictorVictor
1062
1062
New contributor
New contributor
add a comment |
add a comment |
2 Answers
2
active
oldest
votes
As per Lauri's answer, it doesn't immediately appear there are any oracle calls in any of the contracts used. (I had a poke around.)
Looking at this Medium post, it appears that verification currently relies on real humans:
"Unfortunately, authenticating a human identity is not a problem that
a smart contract can solve. Instead, it is up to the community to come
to a consensus on the best approach for identity verification.
As a first approach, we recommend social verification."
add a comment |
Without trying to interpret everything the contract does, it's obvious that there is nothing concrete about verifying Twitter handle. It has multiple calls to other external contracts which may do the verification part but impossible to know.
In general smart contracts can't interact with the rest of the world. They are fully isolated inside the EVM (Ethereum Virtual Machine) and are deterministic. All information they have must be already inside the blockchain and therefore they can't directly query external sources.
What is needed is something called oracles. They provide data from the internet into the blockchain on demand. So you can call an oracle smart contract, it emits certain events, the oracle's backend systems notice the events and issue a transaction to the blockchain where they include the requested data. In that way the requested data is added into the blockchain and made available for any smart contract which requested the data.
So if the contract you showed us really does some Twitter verification it has to utilize oracles somewhere. As there are no direct oracle calls in the displayed code the call must be somewhere in the external contracts.
add a comment |
Your Answer
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "642"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Victor is a new contributor. Be nice, and check out our Code of Conduct.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fethereum.stackexchange.com%2fquestions%2f71210%2fhow-does-the-contract-twitterhumanityapplicant-queries-the-twitter-api%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
As per Lauri's answer, it doesn't immediately appear there are any oracle calls in any of the contracts used. (I had a poke around.)
Looking at this Medium post, it appears that verification currently relies on real humans:
"Unfortunately, authenticating a human identity is not a problem that
a smart contract can solve. Instead, it is up to the community to come
to a consensus on the best approach for identity verification.
As a first approach, we recommend social verification."
add a comment |
As per Lauri's answer, it doesn't immediately appear there are any oracle calls in any of the contracts used. (I had a poke around.)
Looking at this Medium post, it appears that verification currently relies on real humans:
"Unfortunately, authenticating a human identity is not a problem that
a smart contract can solve. Instead, it is up to the community to come
to a consensus on the best approach for identity verification.
As a first approach, we recommend social verification."
add a comment |
As per Lauri's answer, it doesn't immediately appear there are any oracle calls in any of the contracts used. (I had a poke around.)
Looking at this Medium post, it appears that verification currently relies on real humans:
"Unfortunately, authenticating a human identity is not a problem that
a smart contract can solve. Instead, it is up to the community to come
to a consensus on the best approach for identity verification.
As a first approach, we recommend social verification."
As per Lauri's answer, it doesn't immediately appear there are any oracle calls in any of the contracts used. (I had a poke around.)
Looking at this Medium post, it appears that verification currently relies on real humans:
"Unfortunately, authenticating a human identity is not a problem that
a smart contract can solve. Instead, it is up to the community to come
to a consensus on the best approach for identity verification.
As a first approach, we recommend social verification."
answered 7 hours ago
Richard HorrocksRichard Horrocks
22.6k1049106
22.6k1049106
add a comment |
add a comment |
Without trying to interpret everything the contract does, it's obvious that there is nothing concrete about verifying Twitter handle. It has multiple calls to other external contracts which may do the verification part but impossible to know.
In general smart contracts can't interact with the rest of the world. They are fully isolated inside the EVM (Ethereum Virtual Machine) and are deterministic. All information they have must be already inside the blockchain and therefore they can't directly query external sources.
What is needed is something called oracles. They provide data from the internet into the blockchain on demand. So you can call an oracle smart contract, it emits certain events, the oracle's backend systems notice the events and issue a transaction to the blockchain where they include the requested data. In that way the requested data is added into the blockchain and made available for any smart contract which requested the data.
So if the contract you showed us really does some Twitter verification it has to utilize oracles somewhere. As there are no direct oracle calls in the displayed code the call must be somewhere in the external contracts.
add a comment |
Without trying to interpret everything the contract does, it's obvious that there is nothing concrete about verifying Twitter handle. It has multiple calls to other external contracts which may do the verification part but impossible to know.
In general smart contracts can't interact with the rest of the world. They are fully isolated inside the EVM (Ethereum Virtual Machine) and are deterministic. All information they have must be already inside the blockchain and therefore they can't directly query external sources.
What is needed is something called oracles. They provide data from the internet into the blockchain on demand. So you can call an oracle smart contract, it emits certain events, the oracle's backend systems notice the events and issue a transaction to the blockchain where they include the requested data. In that way the requested data is added into the blockchain and made available for any smart contract which requested the data.
So if the contract you showed us really does some Twitter verification it has to utilize oracles somewhere. As there are no direct oracle calls in the displayed code the call must be somewhere in the external contracts.
add a comment |
Without trying to interpret everything the contract does, it's obvious that there is nothing concrete about verifying Twitter handle. It has multiple calls to other external contracts which may do the verification part but impossible to know.
In general smart contracts can't interact with the rest of the world. They are fully isolated inside the EVM (Ethereum Virtual Machine) and are deterministic. All information they have must be already inside the blockchain and therefore they can't directly query external sources.
What is needed is something called oracles. They provide data from the internet into the blockchain on demand. So you can call an oracle smart contract, it emits certain events, the oracle's backend systems notice the events and issue a transaction to the blockchain where they include the requested data. In that way the requested data is added into the blockchain and made available for any smart contract which requested the data.
So if the contract you showed us really does some Twitter verification it has to utilize oracles somewhere. As there are no direct oracle calls in the displayed code the call must be somewhere in the external contracts.
Without trying to interpret everything the contract does, it's obvious that there is nothing concrete about verifying Twitter handle. It has multiple calls to other external contracts which may do the verification part but impossible to know.
In general smart contracts can't interact with the rest of the world. They are fully isolated inside the EVM (Ethereum Virtual Machine) and are deterministic. All information they have must be already inside the blockchain and therefore they can't directly query external sources.
What is needed is something called oracles. They provide data from the internet into the blockchain on demand. So you can call an oracle smart contract, it emits certain events, the oracle's backend systems notice the events and issue a transaction to the blockchain where they include the requested data. In that way the requested data is added into the blockchain and made available for any smart contract which requested the data.
So if the contract you showed us really does some Twitter verification it has to utilize oracles somewhere. As there are no direct oracle calls in the displayed code the call must be somewhere in the external contracts.
answered 7 hours ago
Lauri PeltonenLauri Peltonen
6,6432527
6,6432527
add a comment |
add a comment |
Victor is a new contributor. Be nice, and check out our Code of Conduct.
Victor is a new contributor. Be nice, and check out our Code of Conduct.
Victor is a new contributor. Be nice, and check out our Code of Conduct.
Victor is a new contributor. Be nice, and check out our Code of Conduct.
Thanks for contributing an answer to Ethereum Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fethereum.stackexchange.com%2fquestions%2f71210%2fhow-does-the-contract-twitterhumanityapplicant-queries-the-twitter-api%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown