Ok, so then it does satisfy "Not be able to log into the machine and decrypt the password as a normal user"... right?
Nope. If you use a unix account for verification, you need to have the password working (and you need to pass the user and password from the perl script). The system service accounts such as nobody don't have a working password and therefor are unusable, the normal user accounts have working passwords, but have access to loginto the system (as implied from the OP) and therefor would have access to both their user:pass and the systems user:pass database (indirectly).
As far as the second one - not necessarily, although I will admit that I haven't actually tested such a thing myself. Externally identified means that the operating system (or third-party system) itself verifies the user validation, meaning that there must be a valid login on the database server. Also, there appears to be Oracle net support via Oracle Advanced Security. see here - there is also some information about identified globally, which allows for Active Directory verification.
I understand what you are showing here, although because of the overlapping requirements in the OP, it makes anything which actually uses a user and password combo not usable. the External User functions in oracle are basically back end hooks for OS, Net, or OSA auth types instead of database user:pass -- the connecting client still needs to send off the user and password, and to do so logically must have a user and password available to it (which is not allowed in the restrictions in the OP). The way the requirements overlap it makes it almost impossible to use DBI in any form. I have asked for more clerification in my other thread, if the OP comes back and gives more info that may open up another solution.