I have question about public key and private key. If one user sends a message to b, encrypted by public key of b, then how can user b decrypt it using its private key? I mean the public and private key are not different?