With EFS, we know that a symmetric key, File Encryption Key (FEK), is used for encrypting files. The FEK is then protected by encrypting it with the public key of the user that can be recovered by decrypting with their corresponding private key. The private key is again encrypted with the user's log-in password. My argument is, if the FEK is ultimately being protected using the user's log-in password, then the use of public key encryption is a redundant step which doesn't improve the security of the File Encryption Key (FEK) at all. Am I right or I'm missing a point?
[Or] I'm missing a point?
Actually there are at least two reasons why you would want to involve public:
First using public key allows you to rather precisely map permissions into keys. So suppose you create a file, how do you get the new file key to everyone who should have access to it? Public key encryption solves this readily. Or suppose you remove access to a file for somebody, you obviously need to pick a new file encryption key, so that that person doesn't have access anymore even if they accessed in the past. How do you communicate the new key? Public key encryption.
Second reason is mostly historic. EFS was mostly designed for corporations and governmental use. They already had smart cards deployed or saw the obvious usefulness of smart cards. But these smart cards typically don't support symmetric key encryption, but only public key encryption, so if you wanted to integrate smart card based authentication into the process, you'd have to involve public key encryption at some point.