added libsodium signature function