From Single-Bit to Multi-bit Public-Key Encryption via Non-malleable Codes