The signature is provided by the bootloader, so you can configure the bootloader to lie about the signature in order to allow uploading to the board with the "Arduino Nano" board definition selected from Arduino IDE's Tools > Board menu without a signature verification error.
https://github.com/Optiboot/optiboot/issues/184#issuecomment-230144696
the optiboot bootloader returns a signature that is hard-coded in the bootloader, rather than the actual signature of the chip. ie - the bootloader lies
The 328PB is backwards-compatible enough with the 328P that you can substitute a (cheaper) 328PB and run 328P firmware on it without any problems. The PB has extra IO pins (A6 and A7 become digital-capable, and some of the power pins become IO), an extra UART, and extra I2C and SPI peripheral, two extra times. But none of that will come into play if you don't try to turn them on.