For my company, Marval Land, to send another company we might be working with we would have our own public key and private key. For us to send them a message we would ask for their public to to encrypt our message and then send it to them. They use their private key to decrypt the message so they can read it. It is just the opposite if we have to sign a message to authenticate it. We will use our private key to decrypt and then send it to the reciever. The receiver uses our public key to encrypt and verify that it is us who signed it.