GNU Privacy Guard (GnuPG or GPG) is GNU's tool for secure communication and data storage. It can be used to encrypt data and to create digital signatures. It includes an advanced key management facility and is compliant with the OpenPG
But when decryption GPG sometimes not asking for password, This is normal, gpg now uses gpg-agent to manage private keys, and the agent caches keys for a certain amount of time (up to two hours by default, with a ten minute inactivity timeout).
GPG Agent is a daemon to cache your OpenPGP secret keys. This way you can avoid passphrase usage on the console, tty and even ssh while having the ability to use it everywhere else.