how does node validate scriptSig

how does node validate scriptSig

Let’s say I sent some BTC to Bob, so I created a transaction (forget about scriptPubKey) since let’s say I was able to prove it by executing scriptPubKey. so After I sent BTC to BOB, new transaction’s input looks like this:

in: [
  {
     "prev_out": {
        "hash": txId,
        "n": 0
     },
     scriptSig:"3045....e5f5"
  }
],

Now, this scriptSig exists because when other nodes come and see this, they should be able to validate it. Now, all we have here is the signature , public key (mine), txId(output transaction that I used).

How can another Node which got this transaction validate it ?

You might say: he will see signature + public key of yours. so what will it do to validate it ? if you say that it will try to decrypt signature with public key, that’s not enough. Because what I could do is encrypt blablabla string my private key and I’d put that signature there.

So I guess, my question relates to: how Node will prove I proved that I had BTC with scriptSig + txId ?