It expects a Perl file handle (which doesn't mean it needs to be connected to a file).
open will do. Any descendant of
IO::Handle (such as
IO::File) will do as well. A tied file handle should work as well.
Update: If you want to create a file handle that accesses a scalar, then you can do the following in ≥5.8.0:
open(my $fh, '<', \$blob)