The anchor documentation recommends not using the UncheckedAccount type unless you are sure that there are no security vulnerabilities.
Explicit wrapper for AccountInfo types to emphasize that no checks are performed
In the following scenario where I make a transfer from one account to another
#[derive(Accounts)]
pub struct Transfer<'info> {
#[account(mut)]
pub from: Signer<'info>,
#[account(mut)]
/// CHECK: Fine to be unsafe, we only need to send the funds to the winner
pub to: UncheckedAccount<'info>
}
is it safe to mark the to
account as UncheckedAccount
? What are the security implications?