initial commit for public key functions