I was reading about the differences between the GCM and the CBC more here and I have a follow up doubt on the same.
In the CBC mode the person who performs the encryption is the one who provides the IV for the encryption -- and the IV is required to decrypt the ciphertext.
However, in GCM i read that the nonce value
is internal -- so is it a value which needs to be kept in track off by the person who encrypts / decrypts the values? I'm specifically referring to the Java BouncyCastle implementation of AES-GCM.
Is the nonce value effectively an IV supplied by the person who encrypts the data appended with an internal counter?