为什么我的密码没有加密就通过了网络


why does my password go through the network unencrypted?

  <form action="<?php
$pass = $_POST['password'];
$password = password_hash($pass, PASSWORD_DEFAULT);
    if (password_verify($pass, file_get_contents("pass/pass.txt"))) {
        file_put_contents($file, $data);
    }
?>" method="post">

这个php代码安全吗?我被黑客入侵的可能性有多大,密码会通过网络吗?这是我的管理面板的一部分,我没有SSL,如果有帮助的话

这个结构很奇怪。我建议阅读HTML 101,您的action属性应该指向一个PHP页面,该页面将处理所有请求。不要在这个属性中插入任何php。

,这取决于您的目录结构。如果你的wwwroot/htdocs中有pass/pass.txt,那么你就有风险了。由于任何汤姆,迪克或哈里都可以拉你网站的结构。导航到目录&可能会看到敏感数据

所以,我建议:

仔细检查你对HTML和工作原理的了解,(特别是在这个场景中的表单)

和目录结构。把你不想让公众看到/访问的文件放在你的htdocs/wwwroot

目录之前

您实际上无法阻止您的密码通过网络传播,除非您需要客户端脚本来登录(但由于这不是一个好主意,因此您不应该这样做)。

最好的办法是正确配置https;那么密码将被SSL加密,你就不会有问题了。