This question already has an answer here:

Does a smart contract have a private key ? Can it send the result of exucuting his code to the other nodes ?

marked as duplicate by Ismael, Richard Horrocks, eth Nov 2 '17 at 9:45

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.


There are two types of accounts in Ethereum: 1. Externally Owned Accounts(EOA) 2. Contracts Accounts

Every contract binds to a contract account. Contracts accounts has associated code and code execution is triggered by transactions or messages (calls) received from other contracts. So the contract account is not managed by a private key but transactions/messages from EOAs or other contract accounts. And yes, it can send result through sending message to other "contract".

  • 1
    And if a smart contract (an instruction of its code) encrypts information with its public key how will it decipher it later? In fact I'm thinking of designing an online voting system on a blockchain that has a smart contract allowing to generate the ballots and send them to the voters (who are EAOs). the smart contract will need to decipher the votes during the counting phase using the complementary of its public key. It is'nt possible ? – M.CHAIEB Nov 1 '17 at 11:26

Not the answer you're looking for? Browse other questions tagged or ask your own question.