It sounds to me like you are struggling to understand what ECDSA (Elliptic Curve Digital Signature Algorithm) is and how it works. This is a well established and widely used cryptographic algorithm for "signing" information using a private key in such a way that anyone with the associated public key can prove that the signature could only have been provided by the holder of the private key. The private key is never revealed (which is why it is called "private"), but the public key must be revealed (which is why it is called "public"). I don't fully understand the process, but it has been vetted by enough people that I trust it.
You can find some of the process involved here:
http://en.wikipedia.org/wiki/ECDSAWhen sending bitcoin, the bitcoin address is provided in the output but the public key is not. It is not possible to determine what the public key is if you only have the bitcoin address.
Since the public key is required to verify the signature, and since the owner of the private key can easily/quickly calculate both the public key and the bitcoin address, the owner of the private keys scans the blockchain for outputs that are associated with addresses that can be generated from those private keys. Then they choose one and calculate the public key from the private key. The public key is then presented along with the signature in the scriptSig.
Now there is enough information available to prove that the spender has the right to do so. Being given the public key in the scriptSig means that anyone can:
Base58Check(CONCATENATE(VERSION, RIPEMD-160(SHA-256(public key)), SUBSTR(0,4,SHA-256(RIPEMD-160(SHA-256(public key))))))
To verify that the resulting bitcoin address is the same as the address provided in the previous output.
Being given the public key and the signature in the scriptSig means that using ECDSA, anyone can confirm that the signature provided could only have been provided by a person who holds the private key associated with the given public key.
Since the public key and signature provide proof of control of the private key, and the public key can be confirmed as the correct public key for the given address, authorization to spend the previous output is verified.
Understanding the fact that a signature created by a private key can be verified with the public key, and that the same signature cannot be created with the public key is essential to understanding how the bitcoin transaction verification process works. Understanding
how and why the signature can be verified and
how and why the same signature can't be created if you only have the public key is not essential to understanding how the transaction verification process works.
You'll probably want to seek out a cryptography forum if you really want to understand the internals of SHA-256, RIPEMD-160, and ECDSA.