RSA_public_decrypt function

  1. @RecordUse.new()
  2. @Native<Int Function(Size, Pointer<Uint8>, Pointer<Uint8>, Pointer<RSA>, Int)>(ffi.Size, ffi.Pointer<ffi.Uint8>, ffi.Pointer<ffi.Uint8>, ffi.Pointer<RSA>, ffi.Int)>(symbol: 'bssl_dart_RSA_public_decrypt')
int RSA_public_decrypt(
  1. int flen,
  2. Pointer<Uint8> from,
  3. Pointer<Uint8> to,
  4. Pointer<RSA> rsa,
  5. int padding,
)

RSA_public_decrypt performs the public key portion of verifying flen bytes of signature from from using the public key from rsa. It writes the result to to, which must have at least RSA_size bytes of space. It returns the number of bytes written, or -1 on error.

For the interpretation of padding and the result, see RSA_verify_raw.

WARNING: This function is a building block for a signature scheme, not a complete one. See RSA_verify_raw for details.

WARNING: This function is dangerous because it breaks the usual return value convention. Use RSA_verify_raw instead.

Implementation

@meta.RecordUse()
@ffi.Native<
  ffi.Int Function(
    ffi.Size,
    ffi.Pointer<ffi.Uint8>,
    ffi.Pointer<ffi.Uint8>,
    ffi.Pointer<RSA>,
    ffi.Int,
  )
>(symbol: 'bssl_dart_RSA_public_decrypt')
external int RSA_public_decrypt(
  int flen,
  ffi.Pointer<ffi.Uint8> from,
  ffi.Pointer<ffi.Uint8> to,
  ffi.Pointer<RSA> rsa,
  int padding,
);