I am using qbittorrent for torrenting and my ISP has refused to open up firewall because of fucking "security" reasons. however I can still seed the torrent how is that possible? I mean all the incoming connections should be blocked right? isn't it how firewall works?
Except that no good VPN does this anymore (I believe Mullvad was one of the last to pull the service and cited massive headaches due to CP violations). So if you find one that does, it's most likely pretty sketch or just not that secure.
however I can still seed the torrent how is that possible?
Yes you can still seed as well as download. But you are limited and can only upload and download torrent data in swarms that contain peers that are themselves fully connectable (port forwarded).
So say you join a torrent swarm that only contains peers just like you (firewalled, no ports forwarded) then no one will transfer any torrent data with each other. Everyone is stuck waiting for a fully connectable (port forwarded) peer to join that swarm.
Right, only one side of the connection needs an open port (and most clients will let that be either seed or leech side)... this is why having an open port on your end is useful if you're downloading, since you can download from seeders that don't have an open port.
BT protocol works thru both parties. You have seeders and leachers (called peers). Both need to make a connection but how that connection is initiated and opened is important. If a peer initiates the connection and has their ports open, you're good, regardless of your own setup.
Unfortunately not every seeder does this (for various reasons). And that's when having your ports open makes a world of difference. Because if the peer also has their ports blocked, you will never get a successful handshake between the two of you.
On torrents that have hundreds of peers, you're likely fine; they'll be plenty that can initiate the transfer for you. But when you get obscure torrents with only a handful of peers, you're likely fucked. I'm over simplifying for the sake of discussion.
A seedbox is going to be your friend in instances where your ISP blocks P2P traffic like this. As another user mentioned, it's likely the ISP is using something called CGNAT to route traffic from multiple customers over the same IP. This is a pain for self-hosted services and the easiest way to deal with it is to simply not go through your own ISP. There's a lot of options for seedbox vendors out there, I'd take a look around and determine what's affordable for you.